[rosedu-general] O mana de ajutor
Alex Palcuie
alex.palcuie at gmail.com
Thu Feb 14 15:35:59 EET 2013
Am trecut și eu prin problema asta când am încercat cu un prieten să
facem un joc „water pipe” întru hackaton. Până la urmă am ajuns la o
soluție destul de faină cu SocketIO. Scopul era ca mai mulți jucători
să se conecteze, și într-o matrice să unească o căsuță din stânga cu
una din dreapta, utilizând diferite piese pe care le controlează cu
tastatura.
* un obiect „game” se creează pe server atunci când se conectează primul client
* atunci când clientul „mută” piesa, verific că mutarea e „legală”
local, apoi fac un apel către server care execută același lucru în
obiectul „game” pe care îl deține și face un broadcast cu mutarea
către restul clienților care execută și ei aceiași mișcare
* când un alt client se conectează, pur și simplu primește obiectul „game”
* ca să evit desincronizările, făceam ca la fiecare 10 secunde
jucătorii să își schimbe random poziția
https://github.com/vladvelici/tzava
---
Alex Palcuie
palcu.blogspot.com
2013/2/14 cosmin Didii <cosmin_didii at yahoo.com>:
> Salut,
> Am facut cu un coleg un fel de multiplayer game in javascript cu node.js,
> dar nu pot sincroniza harta.
> Imi poate da cineva niste sugestii?
> Ce ar trebui sa folosesc?(node.js e asincron)
> Sau cum se face asta in mod normal la jocurile mmorpg?
> Daca poate cineva sa se uite un pic peste cod si sa ne dea niste sugestii.
> Important: Jocul este pentru windows8. Dintr-un motiv necunoscut, jocul
> merge foarte bine pe ultima versiune de internet explorer, dar are buguri pe
> chrome, mozilla si restul.
>
> Server side:
> https://github.com/cosmin1123/ImagineCupGame/blob/master/lib/synchronize.js
>
> Client side:
> https://github.com/cosmin1123/ImagineCupGame/blob/master/TheImpossibleGame/js/utils/clientSide.js
>
> _______________________________________________
> http://lists.rosedu.org/listinfo/rosedu-general
> http://lists.rosedu.org/guidelines - Mailing List Guidelines
More information about the rosedu-general
mailing list