Quando si progetta un gioco multiplayer in rete in cui un giocatore ospita e altri si connettono, ci sono due strategie di cui sono a conoscenza:
- Fai in modo che il gioco del giocatore ospitante sia l'autorità , con tutti gli altri giocatori come clienti stupidi che cercano di raggiungere l'attuale stato del gioco. Nel codice, ci dovranno essere molti casi speciali, a seconda che il giocatore attuale sia l'host o meno.
- Trasforma l'host in un client stupido come tutti gli altri eseguendo un server dedicato nascosto su un altro thread. Il server dedicato sarà l'autorità e l'host si connetterà ad esso come tutti gli altri (tramite localhost).
Quali sono i vantaggi / gli svantaggi di ciascuno di questi? Quale viene utilizzato più spesso (o varia in base al tipo / dimensione del gioco)?