Vorrei sviluppare un gioco da tavolo a turni (come ad esempio Risiko o Monopoli), completamente online (senza bisogno di un client per giocare, utilizzando direttamente il browser).
Le mie conoscenze per quanto riguarda la programmazione web si limitano ad HTML, PHP, SQL, CSS e JavaScript.
Mi chiedevo in particolare come potrei gestire gli aspetti grafici (ad esempio se un utente clicca su una specifica area del gioco si devono spostare delle pedine o comunque si deve "muovere" qualcosa graficamente), come potrei gestire il problema di mantenere gli utenti sincronizzati, nel senso che quando un utente fa qualcosa sul tabellone, anche gli altri utenti devono visualizzarne gli effetti, anche se non è ancora il loro turno e, infine, come potrei gestire i turni.
Vi ringrazio in anticipo per qualunque chiarimento e suggerimento!
In realtà avevo anche io in progetto una cosa del genere ma purtroppo dovendo lavorare tutti i giorni in azienda non riesco, speravo alla cassa integrazione, invece ...
Avevo pensato a questo genere di struttura: per evitare baruffe da parte degli utenti, l'input dell'utente viene direttamente inviato (tramite fetch?) al server. Il server risponderà quindi con il nuovo stato delle pedine/elementi visualizzati.
Per la gestione grafica ho pensato a canvas, che agisce quindi a seguito della risposta del server.
La parte "principale" che gestisce turni etc è quindi affidata al server, così l'utente non potrà in nessun modo alterare il normale svolgimento della partita; lato client sarà quindi solamente una visualizzazione dello stato presente sul server.