Scenario 1: the player can sniff the network.
Questo può essere prevenuto con HTTPS.
Solo, se il giocatore ha il pieno controllo del cliente, potrebbe aggiustare il cliente al fine di fornire e magari modificare le informazioni di testo in chiaro direttamente nell'applicazione (ad esempio il gioco). Ma questo non è coperto dalle tue ipotesi nello scenario 1.
Scenario 2: ... and has access to the source code of the game (not of the server).
Assicurati che il codice sorgente del client non sia sufficiente per giocare al gioco, cioè implementa parti rilevanti della logica di gioco fuori dalla portata del client: sul server. Come questo può essere fatto dipende molto da come funziona il gioco.
A parte questo puoi provare a offuscare il codice per rendere più difficile la retroingegnerizzazione, firmare digitalmente tutti i messaggi dal server in modo che un utente malintenzionato non possa falsificarli (anche se potrebbe semplicemente cambiare il codice per disabilitare il controllo della firma) ... Ma alla fine puoi renderlo solo più difficile e non impossibile. Ad esempio, i giocatori esperti possono provare a scrivere il proprio server che implementa una logica di gioco simile per non dipendere più dai server.
Questo significa che deve essere più facile e più attraente pagarti invece di provare a hackerare il gioco. Può essere d'aiuto per questo se il gioco è abbastanza economico per cominciare. O se ci sono interessanti oggetti fuori dal gioco che ne valgono la pena.
Per rendere l'hacking più difficile potrebbe essere utile avere diverse versioni del gioco con diversi tipi di protezioni in modo che gli hack "generici" coprano solo alcune delle versioni del gioco che lo rendono di nuovo più economico solo per comprare di hackerare il gioco. Oppure crea parti della comunicazione specifiche per ogni installazione di gioco, ad esempio in base all'utente dell'utente id per l'autenticazione. Un altro modo contro la diffusione degli hack generici consiste nel rilasciare regolarmente nuove versioni che interagiscono in modo diverso con il server e che richiederebbero lo sviluppo di un nuovo hack, frustrando così gli utenti che si affidano agli hack invece di pagare.