Winsock in VB (TCP) / Multiplayer

Ok, danke :) Ohne Firewall gehts natürlich, ich habe auch keine drin. Aber meine Kumpels, die zu blöd sind, Updates zu machen ;) Nimmt mich bloss wunder, wie die das bei anderen Games machen. Früher hatte ich die Firewall immer aktiviert und dann gings trotzdem.
 
@ Retlaw jetz werden die Namen endlich ohne Code Schnipsel angezeigt :) DANKE!

-----hier ekläre ich mal kurz den Aufbau meines Progs----
PC1 hier läuft die server.exe
empfängd daten von client und sendet an alle clienten zurück

PC1 client.exe -> connected sich zur eingegeben ip wenn da der server läuft

PC2 client.exe -> ...
--------------------------------
Hier zu zuhause habe ich 2 Rechner die per switch der an einem Router angeschlossen ist im Netz sind

- Du musst über die dynamische IP deines Spielpartners verbinden
Die aktuelle kann ich ja mir ja im Router menü anzeigen lassen

- Der gewählte Port darf nicht schon belegt oder durch eine Firewall geblockt sein
also ich ~glaube~ ich habe keine fw !? :| und im router habe ich port 1001 freigegeben für alle rechner im lan

- Wenn einer der Spieler nicht direkt am Internet hängt, z.B. über Router, muss dieser entsprechend konfiguriert sein um die Datenpakete weiterzuleiten

?
 
Beispiel:
Sagen wir mal du hast im LAN auf irgendeinem Rechner, z.B. 192.168.0.5 (IP im LAN), einen Server laufen auf Port 1001. Im LAN bist du jetzt unter 192.168.0.5 und Port 1001 erreichbar.
Dein Router wählt sich bei deinem ISP ein und der gibt dir die dynamische IP xxx.yyy.zzz.qqq. Wenn jetzt jemand über Internet auf deinen Server verbinden will muss er als Adresse xxx.yyy.zzz.qqq und als Port 1001 angeben. Dann landen die Datenpakete beim Router. So und den musst du jetzt so konfigurieren das Anfragen auf Port 1001 an die interne IP 192.168.0.5 (siehe oben) weitergeleitet werden weil der Server schließlich nicht auf dem Router läuft.
Dazu gibts im Webmaster-Forum sicher schon einige Beispiele weil du das eigentlich bei jedem Server machen musst den du in deinem LAN fürs Internet bereitstellen willst.

Tipp:
Wenn ihr öfter spielen wollt benutz einen DynDNS-Client der dann eine von dir gewählte Adresse automatisch immer in die richtige IP umsetzt.
 
Zuletzt bearbeitet:
wenn ich das so mache würde das ja heißen, das wenn der Server auf dem einen Rechner läuft, ich nur übers Internet auf ihm spielen kann - also beide Clienten übers Internet connecten müssen, weil ja alle port 1001 Anfragen nach 05 gehen und ein Client 06 niemals Daten kriegen würde !?


Und noch eine Frage:
Wenn ich mit dem MediaPlayer eine Datei immer und immerwiederholen möchte,
wie mache ich das am besten?
Wenn ich es so mache:
Private Sub mp_loop_EndOfStream(ByVal Result As Long)
mp_loop.Play
End Sub
Dann gibt es immer eine kurze Pause, die darf aber nicht sein, weil es eine Loop Datei ist - Als Hintergrundmusik
und ja man kann sie ausschalten wenn mans nervig findet :) bzw man muss sie erst einschalten


Und hier mein LayOut:
4gewinntnich2.2testing.jpg

Bitte einfach was dazu sagen!

der_graf
 
Zuletzt bearbeitet von einem Moderator:
Probiers aus, wenns nicht geht lass deinen Client im LAN auf einem anderen Port laufen.

Enthält deine Musikdatei am Anfgang oder Ende eine kurze "Lücke"? Die würde dann natürlich auch abgespielt. Falls ja musst du die mit einem entsprechenden Programm raus schneiden. Wenn das nichts hilft und die kurze Pause bleibt liegts am MediaPlayer. In dem Fall könntest du schauen ob der nicht schon eine eigene Funktion für das Abspielen in einer Schleife hat und die einfach nutzen anstatt die Datei per Code am Ende neu zu starten.
 
Zurück