Hey,
Ik ben van plan om voor Informatica samen met een vriend een oud NES spelletje na te maken als massive-multiplayer webbased spel.
Het gaat hier om een actiespel, dus niet turn-based of whatsoever
Als server wou ik zoieso een C++ server schrijven die voor elke client bijhoud welke positie, snelheid, etc hij heeft, en ook collision enzo doet en alles synched. Maarja, ik zit hier in W&G dus daar gaan we het (nog) maar niet over hebben.
Ik heb wel eens eerder zoiets gedaan in flash, maar was toen niet zo goed met flash, en het kwam erop neer dat ik positie van elke speler opsloeg, en af en toe een update van de server kreeg en daar de objecten dan naartoe bewoog. Dit heeft als nadeel dat alles zoieso een seconde ofzo achterloopt, en de bewegingen gaan verre van vloeiend.
Daarom wil ik het nu fundamenteel anders doen: Elke client bevat in feite dezelfde codes ed als de server, en kan ook zonder server prima uitvogelen waar players zich zouden moeten bevinden als de omstandigheden niet veranderen. Zodra de server een update geeft, worden de posities en snelheden ed geupdate, en het kleine beetje dat hij dan verplaatst ten opzichte van de voorspelde positie kan ik nog een beetje interpoleren. Dit heb ik al eens eerder gedaan in MSN games, en dit werkt verbazende goed
Echter nu de grote vraag: Waarin ga ik de client coden?
Ik had drie vier ideeen op dit moment:
Of weten jullie een andere oplossing die ik nu over het hoofd zie ?
Alvast bedankt,
TB
Ik ben van plan om voor Informatica samen met een vriend een oud NES spelletje na te maken als massive-multiplayer webbased spel.
Het gaat hier om een actiespel, dus niet turn-based of whatsoever
Als server wou ik zoieso een C++ server schrijven die voor elke client bijhoud welke positie, snelheid, etc hij heeft, en ook collision enzo doet en alles synched. Maarja, ik zit hier in W&G dus daar gaan we het (nog) maar niet over hebben.
Ik heb wel eens eerder zoiets gedaan in flash, maar was toen niet zo goed met flash, en het kwam erop neer dat ik positie van elke speler opsloeg, en af en toe een update van de server kreeg en daar de objecten dan naartoe bewoog. Dit heeft als nadeel dat alles zoieso een seconde ofzo achterloopt, en de bewegingen gaan verre van vloeiend.
Daarom wil ik het nu fundamenteel anders doen: Elke client bevat in feite dezelfde codes ed als de server, en kan ook zonder server prima uitvogelen waar players zich zouden moeten bevinden als de omstandigheden niet veranderen. Zodra de server een update geeft, worden de posities en snelheden ed geupdate, en het kleine beetje dat hij dan verplaatst ten opzichte van de voorspelde positie kan ik nog een beetje interpoleren. Dit heb ik al eens eerder gedaan in MSN games, en dit werkt verbazende goed
Echter nu de grote vraag: Waarin ga ik de client coden?
Ik had drie vier ideeen op dit moment:
- Client zelf wordt JavaScript en DHTML. Voor verbinding naar de server schrijf ik een kleine Java applet die niks anders doet dan alle informatie doorpasen naar Javascript, en informatie van javascript doorstuurt naar de server. Javascript en DHTML heb ik al veel ervaring mee, Java niet zo, maar met documentation moet zoiets simpels best lukken.
- Client zelf wordt JavaScript en DHTML. Voor verbinding naar de server een Flash "video" vergelijkbaar aan die Java Applet. Dit kan ik zonder veel moeite maken.
- Client wordt geheel Flash, en ook de verbinding wordt in Flash geregeld. Helaas moet ik dan wel veel leren qua flash, aangezien ik bijv niet zou weten hoe ik de timing van de update kan regelen (bij elke 20ms kan ik javascript met settimeout, en zo'n timing is nodig om de updates gelijk te laten lopen aan de server). Voordeel is dat de graphics er wel mooier op worden.
- Client wordt in Java. Geen tot weinig ervaring met Java games, behalve wat kleine MIDLets voor mn telefoon
- Client in ActiveX (of alleen socket-soort in ActiveX), groot nadeel: Geen firefox...
Of weten jullie een andere oplossing die ik nu over het hoofd zie ?
Alvast bedankt,
TB
[img=http://www.web2messenger.com/smallstatus/w2m/theblasp.png]