Direct Play - Dialogbox
Übersicht

![]() |
NoobyBetreff: Direct Play - Dialogbox |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moinmoin,
nachdem die letzte Frage super geklärt wurde, habe ich noch eine ebenfalls zu Direct Play: Mit dem Befehl "StartNetGame" wird eine Dialogbox aufgerufen, die, wenn man "Internet-TCP/IP" als Verbindungsart auswählt und keine IP-Adresse angibt, automatisch nach Spielen sucht. Das gefällt mir aus dem Grunde nicht, das es schon da und nicht von mir ist. Außerdem kann ich es nicht gestalten, wie ich will. Der Befehl "HostNetGame" passt mir schon eher. Das problem ist nur: Der entsprechende befehl zum beitreten braucht eine IP-Adresse. Wenn man die nicht weiß, kommt man nicht ins Spiel. Wie kann ich es erreichen, dass auch hier automatisch nach Spielen gesucht wird? Geht das überhaupt? |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Lador |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi, soweit ich weiß, geht das mit DirectPlay nicht. Aber mit TCP/IP oder UDP ist so etwas möglich.
MFG Lador |
||
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich glaub, das geht mit nem Broadcast. Einfach mal suchen.
Zitat: Außerdem kann ich es nicht gestalten, wie ich will.
Wenn du die erstellte .exe oder die runtime.dll mit dem ResourceHacker öffnest, kannst du die Anordnung der Objekte und ihre Beschriftung ändern. |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
mach doch ne 3-fache fo-nex schleife... das hört sich doof an aberich denke anders wirds kaum möglich sein | ||
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wieso eine dreifache? Also entweder nimmt man eine zweifache(IP = 168.192.XXX.XXX) oder eine vierfache(IP = XXX.XXX.XXX.XXX).
Oder? |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
ups mein ich doch nebenbei 192.168.xxx.xxx
man kann ja wählbar machen: scan normal LAN: 192.168.xxx.xxx scan WWW (was bei den meisten nix bringen wird da sie hinter nem router hängen) xxx.xxx.xxx.xxx scan Hamachi Network 5.xxx.xxx.xxx |
||
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe diesen Beitrag jetz mal geändert, weil mir da noch was eingefallen ist, was, wie ich finde, eines neuen Themas nicht würdig ist. | ||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
- Zuletzt bearbeitet von Nooby am Mo, Jul 23, 2007 18:40, insgesamt einmal bearbeitet
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe mir überlegt, dass ich parallel zu dem Direct Play - Host auch noch einen TCP-Server aufmachen müsste, damit dieser auf Anfragen nach einem Spiel antworten könnte, denn es wäre umständlich, wenn ein Spieler, der Spiele sucht, versuchen müsste jeder möglichen IP-Adresse beizutreten. So müsste er an jede mögliche Adresse eine Spielanfrage schicken und auf Antwort warten.
Meine überlegung ist jetzt, ob man den TCP-Server überhaupt braucht. Ist der Host nicht schon ein TCP-Server, weil er ja auf Anfrage der standartmäßigen Dialogbox antwortet. (Ein Spiel mit "HostNetGame" wird von "StartNetGame" gefunden) Könnte ich also nicht einfach das Spiel mit "HostNetGame" hosten und mit "OpenTCPStream" finden? Und wenn ja, WIE? |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nein kannst du nicht weil DP ein eigenes kommunikationsprotokoll hat.
Aber für ein Spiel ist DP sowieso nicht zu gebrauchen. Wenns rundenbasierend ist oder so, kannst du TCP nehmen, sonst musst du mit UDP was machen (oder alternativ ne userlib wie knetlib oder so nehmen) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
Erstes hatte ich befürchtet.
Aber wieso nicht für ein Spiel zu gebrauchen? Es heißt doch Direct PLAY... Ich habe das Gefühl, dass das mit TCP ganz schön kompliziert wird, zumal ich trotz der OH und Robs Kurs immer noch nicht alles dazu verstanden habe. Wie sollte ich das machen? |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Warums nicht zu gebrauchen ist:
DP ist langsam. DP benutzt nicht nur einen Port sondern eine Port Range was es bei vielen Routern total wertlos macht. Die Tatsache dass es mies ist wird dadurch unterstützt dass es DP seit DX8 nimmer gibt ... Mit TCP / UDP läufts in beiden Fällen gleich: Du musst dir überlegen was für nachrichten zwischen server / client ausgetauscht werden müssen. Diese Daten werden dann zu Messages zusammengefasst. Dabei ist eine Message eigentlich prinzipiell immer gleich aufgebaut Int/Byte ID - Damit der server weiss was für daten drin sind Int ClientID - damit die clients und der server wissen wohers überhaupt kommt. muss nicht zwingend drin sein, kann auch via IP und einer internen lookup table gemacht werden. Daten - Das kann prinzipiell alles sein. Position, eine Chatmitteilung etc Es gibt im Codearchiv ein chatbeispiel, dass dir diesbezüglich vielleicht ein wenig weiterhilft. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Weil hier grad so schön über DP, TCP und UDP geredet wird, habe ich mal eine Frage dazu. Da DP so langsam ist, dafür aber automatisch die Gegenspieler findet, die anderen Protokolle wiederrum schön schnell sind, aber das Problem die anderen zu finden da ist, habe ich mir überlegt ein Mischung aus beiden Vorzügen zu machen. Ginge es nicht, über DP eine Verbindung auf zu machen, nur um die IP-Adressen auszutauschen um dann über TCP oder UDP weiter zu komunizieren?
Wie sieht es dann damit aus, die Verbindung über die Firewall frei zu schalten. Bei meiner Firewall ist es nur ein Mausklick. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
bei einem router ist es eben kein mausklick und da DP keinen fixen port hat kannst du da net ma was gescheites angeben.
Prinzipiell kannst du natürlich schon das primäre IP austauschen darüber machen. nutzt aber nur bedingt, da UDP portdinge dann doch wieder ihren eigenen kopf haben, dazu hats in den blitzbasic boards nen noch recht frischen thread (zum thema wie router die ports verändern wenn du von draussen im netz drauf guckst was als port raus kommt, denn das ist nicht der gleiche wie der interne) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Dreamora
Kannst du mir nen Link zum Beispiel geben? |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Board Suche benutzen | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
habs versucht... aber nix gefunden ![]() |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ups...
Hab mich bei der Suche verklickt... ![]() Jetzt hab ich da einiges. Ok, DANKE! |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group