Ho un server di gioco online che funziona come segue:
- Una volta che un giocatore si è connesso, si trova in una delle sessioni predefinite (considerale posizione fisica, ad esempio Isola, posizione sotterranea, ecc.).
- Quindi qualsiasi azione (movimento, attacco) viene sempre trasmessa a tutti gli altri giocatori nella stessa sessione. Inoltre, quando partecipa a una sessione, tutti gli oggetti lasciati in quella sessione vengono inviati a lui, così come i giocatori che si trovano lì.
Questo è semplice e facile, ma nel client, il concetto di dividere il gioco in luoghi sta rovinando l'esperienza di "un mondo", se sai cosa intendo. Sto cercando di capire come trasmettere sempre / ricevere dati solo su oggetti che sono abbastanza vicini, ma mi rendo conto che iterare attraverso tutti i giocatori / elementi ogni volta e confrontare la distanza sarebbe un'assurdità.
C'è qualche approccio standard che potrei usare?