Fehler bei NETCREATEPLAYER$()

Previous topic - Next topic

Tiuz

Ich kann es hier nur mit der Demo Version testen, aber leider ist das Problem mit dem Erstellen von Spielern noch da. Wenn ich den eingangs geposteten Code ausführe funktieniert beim ersten Mal alles problemlos. Beende ich das Programm und führe es sofort danach erneut aus, gibt es einen Fehler beim Erstellen des Spielers. :wah:

Wenn ich einige Zeit warte, oder mich neu anmelde funktioniert es manchmal wieder einmal korrekt. Zuverlässig hilft aber nur ein Systemneustart.

Kitty Hello

Also, besser aber immer noch schlecht? Ich hab eine Stelle gefunden. Der bekommt da ein Timeout. Ich werd's nochmal größer setzen.

Tiuz

Ja so könnte man sagen.
Es ist tatsächlich so, dass wenn man einige Minuten wartet, das Programm sich erneut normal ausführen lässt.

Rein interessehalber gefragt: Musst der Timeout nicht eher kleiner eingestellt werden, damit der Prozess (oder was auch immer) möglichst bald nach dem Beenden des Prgramms gelöscht wird?

Schranz0r

Also die Demo vom Netzwerk läuft gut hatte einmal einen -1 nachdem ich gleich wieder drauf wollte auf den host
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

Tiuz

Nächstes Netzwerkproblem?  ;)

Folgender Code müsste meiner Meinung nach 2x auf demselben Rechner ausfgeführt zu etwa folgender Ausgabe führen (Clientfenster) :

101  SP, Host : 1
102  SP, Host : 0

tatsächlich führt er nur zu aber zu:

101  SP, Host : 1
102


Code (glbasic) Select
// --------------------------------- //
// Project: test
// Start: Wednesday, October 10, 2007
// IDE Version: 5.040

AUTOPAUSE FALSE
SYSTEMPOINTER TRUE
GLOBAL ident$, name$, i, num, host;

IF NETJOINGAME(0, "test", "127.0.0.1", "") = 0 THEN host = NETHOSTGAME(0, "test", "", "")
IF NETCREATEPLAYER$("SP, Host: " + host) = "-1" THEN END

WHILE TRUE
num = NETNUMPLAYERS()
FOR i=0 TO num-1
ident$ = NETGETPLAYERID$(i)
name$ = NETPLAYERNAME$(ident$)
PRINT ident$ +"  " +name$, 100, 100+10*i
NEXT
SHOWSCREEN
WEND
Sprich, für den zweiten Spieler wird kein Name zurückgegeben, obwohl er der Identnummer nach vorhanden ist.
Laut Doku sollte bei einem Fehler mit  NETPLAYERNAME$() "NO_DATA" ausgegeben werden.

Kitty Hello

Nochmal ein Update. Die Netzwerkbefehle waren echt kaputt.
Sind sie immer noch.
Aber: Ich verspreche sie zu richten. Bitte mal testen und feedback geben. Bitte, bitte schreibt mal einer ein einfaches Spiel/Chat Programm?

Tiuz

Versprochen, ich bleibe an den Netzwerkbefehlen dran ;)

Zum Testen benutze ich ein einfaches Chatprogramm, dass ich, wenn alles funktioniert, gerne in den Showroom lade.

trucidare

ich mach ein sample für deine unterlagen...
nachrichten und variablen übergabe
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

Kitty Hello


Tiuz

Die Sache mit den Namen der Teilnehmer abzufragen geht bei mir immer noch nicht.  
(Siehe zuletzt geposteten Beispielcode)

trucidare

ähm noch nicht so wirklich.
Ich bekomm ein -1 wenn ich kurz nach einem start das ganze nochmal starte.
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

Kitty Hello

Ja, hab' ich auch. Ein paar Sekunden später geht's dann aber wieder, oder?
Evtl. weil der Port noch offen ist!?

trucidare

ich denke schon. zerstörst du denn auch die verbindung wenn man esc drückt?
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

Kitty Hello

Update online. Netzwerk sollte jetzt voll funktionieren.

trucidare

Ja geht einwandfrei das ding ;) und das NetzwerkBeispiel kommt auch bald. nur noch ein paaar gimicks rein
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC