Mechanized Assault & eXploration Reloaded



#1 Dec 16, 2007 12:44 pm
Duke Offline
Mitglied
Registered since: Jun 04, 2004
Posts: 176


Subject: M.A.X. IPX Packete
Heyho,

Ich und SAL sind ja schon seit jahren am tüfteln, wie wir das original MAX spielbar bekommen.

Aufgrund der Tatsache, dass MAX seine Frames synchonisiert, sprich der Host schickt so schnell wie möglich hintereinander ein neuen Sync an die Clients, und diese führen Aktionen aus (alle EInheiten ein Feld bewegen, Schiessen etc.).

Bei Spielen über IPX/TCP Router oder über serielle Verbindung ist der Ping wesentlich höher und die Clients scheinen zwischen den Frames mehr zeit zuhaben die Aktionen abzuarbeiten. Aufjedenfall haben wir bei diesen Spielvarianten deutlich weniger Fehler, bzw bei seriell sogar mal garkeinen Sync fehler gehabt.

Daher hab ich mich an die Arbeit gemacht einen IPX-Server zu basteln, der die Rolle des Hosts übernimmt, sprich zum einen die Syncs zu übernehmen und den Clients immer genug Zeit zu lassen, zum anderen später evntl. ein Abbild des aktuellen Spiels zu machen, so dass man im Spiel einzelne Clients neu verbinden lassen kann um Positionsfehlern der Einheiten zu korrigieren.

Das dumme, MAX scheint bei den Packeten eine kleine Checksum eingebaut zuhaben. Aufjedenfall bin ich soweit, dass ein Client meinen Host sieht, sobald er sich aber in das Spiel einloggen soll, schickt der Client eine kurzes Packet und ohne verzögerung sofort eine Bestätigung an dne Host, dass man sich einlogen will.
An meinen Server schickt er nur dieses kurze erste Paket.

In dem Packet, welches der Host an alle Broadcastet, gibt es 2x 2Bytes, welche irgendein Zeitstempel oder eine Checksumme darstellen, soweit ich vermute. An denen scheint es zu hacken, dass der Client den Host nicht akzeptiert, das scheint er also beim generieren seines Antwort-Packets festzustellen.

Naja wollte nur mal berichten, was wir so treiben ;-)
↑  ↓

#2 Dec 16, 2007 1:18 pm
beko beko Offline
Developer, Administrator
Registered since: Jun 04, 2004
Posts: 2,279


Subject: M.A.X. IPX Packete
Ich finds Klasse dass du da im stillen Kämmerlein noch dran bastelst Duke Respect

Wir haben bei MAXR eine MessageID, die sich aus ClientID, Minuten, Sekunden und Millisekunden seit Spielstart zusammen setzt. Die könnte sich also frühstens nach einer vollen Spielstunde wiederholen. Und bis dahin sollte dann schon alles synchronisiert sein :rolleyes:

Da soll auf jeden Fall auch ein Verbindungsmanager mit rein, der Anhang dieser ID erkennen kann ob der Client nur die Verbindung verloren hat und nun automatisch wiederverbinden will.
Bernd Kosmahl
"Sir, we are surrounded!" - "Great - we can attack in any direction."
↑  ↓

#3 Dec 16, 2007 3:16 pm
Sal Sal Offline
, G-Mod
Registered since: Jun 07, 2004
Posts: 1,525


Subject: M.A.X. IPX Packete
Ahajajaj!
Meine Güte es wäre soviel mehr möglich per serieller Schnittstelle als irgendwie anders.
Hab gestern als ich versuchte Duke irgendwie zu unetrstützen das hier wiedergefunden->
http://www.maxthegame.de/...1085345325
boaaaaaah und da hat es mir wirklich fast die Sprache verschlagen!
Mit dem Ski habe ich damals in einem seriellem Spiel 382! Runden zuende gespielt
Das wäre per IPX nie möglich gewesen...
naja ich halt mich kurz

Man braucht ein Win98, einen seriel 2 etherent tool ( gibts massig ) und schon müsste man mit 4 leuten fast problemlos spielen können
Per Virtual PC, der OS emu Software von M$ kann man viel rumtesten,aber da XP nicht gleich mit Win98 die COM Schnittstellen anspricht, geht da auch nix mit Virtual PC da er vom eigenem System die Com Schnittstellen verwedent (hier xp haha) ( vel einstellbar aber nichts führte zum Erfolg)

somit..
leute...helft mir o,,o
A.H.
- easy logic -
↑  ↓

#4 Dec 16, 2007 3:23 pm
100%camillo Offline
Mitglied
Registered since: Nov 15, 2007
Posts: 25


Subject: M.A.X. IPX Packete
hm ... haben damals auch mit seriellem kabel probiert ... leider zaubert es auchnicht, obwohl man damit um ca. 50% mehr runden spielen konnte. Endstation war aber leider genauso das "out of sync", das halt dann immer häufiger kam, bis es halt nimmer wegging ...
↑  ↓

Pages (1): 1

All times are GMT +02:00. Current time: 6:19 am.