Lan ins Spiel einbauen.
Übersicht

Roma3htBetreff: Lan ins Spiel einbauen. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo Leute.. Ich habe in der suche nix passendes gefunden und da dachte ich mir ich mach mal ein theard auf.. undzwar möchte ich in mein spiel lan einbauen..hab aber keine ahnung wie.. giebt es dazu ein tut oder so ? ![]() |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Online Hilfe!
Wenn du die Sampels mal anschaust+probierst kannst ja wieder posten. (schau dir UPD und TCP an) |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hab mir ein paar beispiele angekuckt.. welche befehle benötige ich genau für die verbindung und erstellung..weil mein spiel ist ja kein chat..da ist es schwieriger sowas zu machen denk ich. | ||
DjDETE |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Der Unterschied zwischen einem Spiel und einem Chat ist nur, dass du anstatt Nachrichten Koordinaten, etc. versendest. Das machst du aber vom Prinzip her genauso. Du kannst ja z.B. ein X vorne an die Nachricht hängen, wenn es sich um die X-Koordinate handelt, ein Y, wenn es sich um die Y-Koordinate handelt, ein G wenn es sich um den Gesundheitszustand handelt,... . Wenn du die Nachricht dann empfängst, musst du nur den 1. Buchstabe vom Rest der Nachricht trennen.
MfG DeTe |
||
Aktuelles Projekt: XXX |XXX | 3% der v1b fertig
www.emu-soft.de.vu Für die Homepage suche ich noch Linktauschpartner, bei Interesse einfach melden. |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
CreateUDPStream
WriteByte / Writeline ReadByte / Readline Ob Chat oder Game alles das gleiche, du tauscht Daten aus ![]() Es gab vor kurzem einen BCC, das Thema davon war Lan/Netzwerk Games https://www.blitzforum.de/foru...hp?t=29284 Vlt kannst du dir dort das eine oder andere Angugen/Abgugen ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Hab mir ein paar beispiele angekuckt.. welche befehle benötige ich genau für die verbindung und erstellung..weil mein spiel ist ja kein chat..da ist es schwieriger sowas zu machen denk ich.
Bittesehr. Eine deutsche erklärung zu allen Netzwerkbefehlen ![]() https://www.blitzforum.de/help/?cat=3 DjDETE hat Folgendes geschrieben: Der Unterschied zwischen einem Spiel und einem Chat ist nur, dass du anstatt Nachrichten Koordinaten, etc. versendest. Das machst du aber vom Prinzip her genauso. Du kannst ja z.B. ein X vorne an die Nachricht hängen, wenn es sich um die X-Koordinate handelt, ein Y, wenn es sich um die Y-Koordinate handelt, ein G wenn es sich um den Gesundheitszustand handelt,... . Wenn du die Nachricht dann empfängst, musst du nur den 1. Buchstabe vom Rest der Nachricht trennen.
MfG DeTe Nja, das stimmt mehr oder weniger schon. Für die meisten Spiele wäre es aber besser, wenn man immer ein komplettes Packet mit allen nötigen Koordinaten, ect verschickt. Nicht nur immer die einzelnen Positionen. 1. 1 Byte -> für die Art der Nachricht (z.B. Chat=2 oder Positionsangaben=1, oder iwas anderes) 2. Positionen oder Chat-Inhalt -> Je nach der Art, wie die Nachricht ausgelesen werden soll Aufbau der Nachricht: Zitat: ;Beispiel für Positions-Senden WriteByte(stream,1) WriteFloat(stream,EntityX(lala)) WriteFloat(stream,EntityY(lala)) WriteFloat(stream,EntityZ(lala)) WriteFloat(stream,EntityYaw(lala)) SendUDPMsg() ;Beispiel für Chat-Senden WriteByte(stream,2) WriteString(stream,Chat_Eingabe$) SendUDPMsg() Das Auslesen der Nachricht könnte dann so aussehen: Zitat: ;Beispiel für Nachricht empfangen
Byte=ReadByte(stream) If Byte=1 Then ____X=ReadFloat(stream) ____Y=ReadFloat(stream) ____Z=ReadFloat(stream) ____Rot=ReadFloat(stream) ElseIf Byte=2 Then ____chat_msg=ReadLine(stream) Endif Man merkt, dass das Byte, was am Anfang gesendet wird nur dazu da ist, damit der Server weiß, wie er die Nachfolgende Nachricht behandeln muss. Ich hoffe, ich konnte helfen. |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn man es einfach will, kann man für LAN einfach DirectPlay nehmen, dann muss man aber damit rechnen dass dank der schlampigen Arbeit von Microsoft man schnell Nachrichtenstaus ab 4 Spielern bekommt. (Das hab ich von peacemak3r erfahren. Traurig aber wahr.)
Ansonsten ist DirectPlay einfach zu bedienen. MfG |
||
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke Nici ich werds gleich versuchen. | ||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Direct Play ist schrott. Einfach so tuen als gäbe es das nicht. Fertig. | ||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hhmm... wenns schrott ist für was wurde es dann gebaut ? was kann man damit sonst noch so machen ? | ||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Frage nicht nach dem Sinn wen Microsoft die Finger im Spiel hat ![]() Eben wie gesagt für das Versenden von Daten gibt es 2 Tolle Protokolle UPD und TCP! |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kann ich auch mit UDP daten versenden ? also Bytes ? wenn ja wie mach ich das so unegfähr weil ich kenn das nur bei speichern oder öffnen WriteByte und so.. kann man das auch bei UDP verwenden ? wenn ja wie ?
![]() |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
https://www.blitzforum.de/help/SendUDPMsg
Kurze Erklärung Senden Du öffnest einen Steam, CreateUDPStream Dann schreibst deine Bytes in den so eben erstellten Stream Schlussendlich schickst dein geschriebenes ab, SendUDPMsg Empfangen Du öffnest den Stream Danach empfängst des Zeug mit RecvUDPMsg und liest es mittels readbyte aus. Wichtig ist es einen freien Port bei CreateUPDStream zu nehmen nimm zmb 8000 und achte darauf das deine Firewall/Router den Port nicht sperrt ![]() mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke^^ das Problem ist ich muss noch den Router sagen das er die freigeben soll.. giebt es ports die immer offen sind ? | ||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ka kommt auf dein Teil draufan probier mal 8000 | ||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wieso umbedingt 8000 ? war die bei dir auch frei ? | ||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
OMG probieren geht über studieren, auf der Hilfe seite hats ja nen Code zum das Testen. | ||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann normalerweise beim Router die Ports öffnen. Router haben normalerweise immer ein Benutzerinterface welches über die IP erreichbar ist. Um die IP des Routers herauszufinden, starte die cmd.exe und gebe folgenden Befehl ein:
ipconfig Die IP bei "Standardgateway" ist die IP des Routers. Wie du bei deinem Router Ports forwardest, erfährst du unter www.portforwarding.com. MfG |
||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
DirectPlay war ein Versuch auch Netzwerkstuff in DirectX bereitzustellen. Microsoft hat Ende 2007 selbst eingesehen, dass das nix taugt und die entsprechende Funktionalität aus dem DirectX-SDK entfernt. | ||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hab mal noch ne frage: Ich habe Scrollx und Scrolly wie kann ich machen das es nur bis eine bestimmte position scrollen kann ? also wenn x und y 0 errreicht haben sie nicht mer in die negative scroll ebene scrollen können. | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group