Direct Play - Dialogbox

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Nooby

Betreff: Direct Play - Dialogbox

BeitragFr, Jul 20, 2007 19:47
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragFr, Jul 20, 2007 20:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, soweit ich weiß, geht das mit DirectPlay nicht. Aber mit TCP/IP oder UDP ist so etwas möglich.

MFG Lador
 

ChristianK

BeitragFr, Jul 20, 2007 21:12
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragFr, Jul 20, 2007 22:32
Antworten mit Zitat
Benutzer-Profile anzeigen
mach doch ne 3-fache fo-nex schleife... das hört sich doof an aberich denke anders wirds kaum möglich sein

aMul

Sieger des Minimalist Compo 01/13

BeitragFr, Jul 20, 2007 22:48
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragFr, Jul 20, 2007 22:54
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragSo, Jul 22, 2007 14:25
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 14:53
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 15:01
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 15:10
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 16:38
Antworten mit Zitat
Benutzer-Profile anzeigen
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.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMo, Jul 23, 2007 17:25
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragMo, Jul 23, 2007 18:39
Antworten mit Zitat
Benutzer-Profile anzeigen
@Dreamora
Kannst du mir nen Link zum Beispiel geben?
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/
 

Dreamora

BeitragMo, Jul 23, 2007 18:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Board Suche benutzen
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Nooby

BeitragMo, Jul 23, 2007 19:10
Antworten mit Zitat
Benutzer-Profile anzeigen
habs versucht... aber nix gefunden Confused
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/

Nooby

BeitragDi, Jul 24, 2007 11:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Ups...
Hab mich bei der Suche verklickt... Rolling Eyes
Jetzt hab ich da einiges.
Ok, DANKE!
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group