Come rilevare le modifiche al client

1

Sto sviluppando un gioco Java e il denaro è coinvolto. In quanto tale, voglio evitare che le persone modifichino il cliente se possibile (sono un game designer, non un esperto di sicurezza). So che è impossibile impedire alle persone di modificare il client, quindi qual è il modo in cui posso rilevare se le persone hanno cambiato il client? C'è un modo per verificare che il client sia legittimo all'avvio o qualcosa del genere? So che non posso fermarlo completamente o rilevare tutti i cambiamenti, ma voglio solo renderlo il più difficile possibile per le persone che modificano i loro client per non essere individuati e ottenere un vantaggio.

    
posta Zach Sugano 18.12.2013 - 03:21
fonte

2 risposte

4

Stai affrontando il problema da una prospettiva completamente sbagliata.

Qualunque cosa si trovi sul lato client è fuori dal tuo controllo. Qualsiasi persona determinata sufficientemente sarà in grado di bypassare qualsiasi misura tu usi. Invece, controlla il tuo server e convalida i dati importanti. Non c'è motivo per cui il denaro del gioco debba essere controllato dal cliente a meno che non si tratti di un gioco per giocatore singolo e, in tal caso, perché preoccuparsi?

    
risposta data 18.12.2013 - 04:01
fonte
4

Non puoi mai proteggere completamente il cliente da manomissioni. Se hai a che fare con i soldi del gioco, una cosa è affrontare i truffatori. Possono sbilanciare il gioco e rovinarlo per tutti. Ma quando si ha a che fare con denaro reale del dollaro americano reale, pagato con moneta rigida, si tratta di un altro problema.

La tua prima preoccupazione sarà la gestione del rischio. Ciò che hanno fatto i giochi di successo è rendere la spesa denaro asimmetrica. Diciamo che il gioco funziona in lingonberries (~ lB). Istituiscono un server in cui i giocatori possono acquistare ~ 1.000 lB per $ 10.00 USD su una carta di credito o un account paypal. In questo modello, i lingonberry del gioco rappresentano il valore reale del mondo (un penny ciascuno). Ma se il gioco consente ai giocatori di "guadagnare" lingonberries attraverso l'estrazione o l'agricoltura o la macinatura, non vogliono rischiare che un hacker configuri un bot per guadagnare questo fa schifo un milione di libbre al giorno. Un modo per gestire questo rischio è impostare il server di gioco per limitare la velocità con cui è possibile guadagnare lB per account. Forse i giocatori si limitano a guadagnare non più di ~ 10 lB al giorno, e solo in circostanze davvero speciali. Altrimenti, possono guadagnare solo "stelle d'oro", "punti salute", "manna" o qualsiasi altra risorsa del gioco. Quindi, anche quando potrebbero avere clienti inaffidabili, limitano la loro esposizione a soli $ 0,10 al giorno per conto.

C'è un altro problema interessante quando una valuta del gioco ha un valore reale. Devono limitare e limitare tutto su di loro, come i trasferimenti di mirtilli rossi o gli oggetti acquistati con mirtilli rossi tra i giocatori. Se i lingonberries possono mantenere un valore e se gli oggetti di valore possono essere trasferiti tra i giocatori, possono essere acquistati e venduti su eBay. E se possono essere trasformati in denaro, possono diventare un canale per attività di riciclaggio di denaro nel mondo reale! Inoltre, lingonberries nei conti giocatore diventa passività reali sui libri della società. Ciò significa che una società di giochi avrà altre regole finanziarie da seguire, come l'escheatment (cosa fare con i soldi rimasti in conti abbandonati che hanno ancora un saldo.)

I MMORPG sono diventati così grandi da assumere economisti reali per aiutare a gestire le loro economie in gioco. Si occupano di problemi come l'inflazione, i bug di gioco che causano deflazione, forniture di denaro e altri, il tutto per aiutare a mantenere un equilibrio di gioco divertente durante la gestione del rischio. I problemi nei giochi più grandi sono incredibilmente complessi. Quindi speriamo che il tuo gioco diventi così popolare che ti imbatti in tutti questi problemi! : -)

    
risposta data 18.12.2013 - 05:22
fonte

Leggi altre domande sui tag