Questione interessante.
Non mi azzardo a postarti codice per una faccenda tanto complessa come questa, posso dirti che generalmente i giochi multiplayer in tempo reale usano una tecnica simile a quella che ti illustrerò. Un proiettile sparato ha due punti fondamentali: quello di partenza e quello di arrivo, creando una taballa 'eventi' e consultando ripetutamente il suo contenuto con AJAX (almeno una volta ogni mezzo secondo) ti basterà trovare la riga contenente 'proiettile' (tipo e grafica di proiettile), 'to' (da dove parte), 'from' (dove è destinato). Leggendo tali informazioni a livello di client potrai tracciare graficamente una traiettoria semplicemente con due punti.
In alternativa puoi usare sempre AJAX con un refresh più alto cambiando costantemente le coordinate del proiettile. A questo punto la tabella eventi prenderà la forma 'proiettile','x','y'.
In questo caso potrai usare un parametro 'stato' per indicare se il proiettile è in movimento o se è arrivato (inibendo di fatto la sua visualizzazione). Impostando la 'velocità' potrai regolare uno SCHEDULER a livello di database che ogni tot millisecondi modifichi le coordinate secondo una formula precisa ed arrivato ad un certo punto imposti lo stato 'done'!
Spero di averti dato qualche spunto![]()