Come posso implementare una scala globale di punteggio elevato? [chiuso]


15

Ci sono dei framework esistenti su cui posso basarmi? Dovrei costruirne uno mio? Come posso evitare di pubblicare punteggi falsi?


Di quali piattaforme stai parlando? Deve funzionare su più piattaforme?
— Dennis Munsie,

@Dennis utilizza specificamente Java e lo sviluppo per Android.
— Bryan Denny,

Risposte:


6

ScoreLoop è disponibile per la piattaforma Android.

Puoi usare ScoreNinja anche . ScoreNinja offre un modo semplice per implementare punteggi globali ma richiede di visualizzare il punteggio nell'applicazione ScoreNinja.

Altrimenti Cocos iphone fornisce un punteggio globale con CocosLive . Puoi utilizzare CocosLive.net o utilizzare la tua VM di GoogleApp Engine. CocosLive non è disponibile sulla piattaforma Android ma il protocollo è REST con JSON e può essere facilmente trasferito.

La mia soluzione attuale è CocosLive per Android e iPhone con la mia VM, ma userò ScoreLoop nel mio prossimo gioco per l'integrazione con i social network.




1

Fare quanto segue:

(1) L'utente ottiene un punteggio nel gioco.

(2) Crea la stringa "Nome utente, punteggio, data e ora" o qualcosa di simile.

(3) Aggiungi un salt (stringa segreta) a questa stringa: "username, score, timestamp, SALTSTRING"

(4) Calcola un hash di questa stringa con il tuo algoritmo preferito, (MD5, SHA ...).

(5) Pubblica "Nome utente, punteggio, timestamp" insieme all'hash che hai calcolato sul tuo sito: www.yoursite.com?str=username, punteggio, timestamp&hash=MYHASH o qualcosa di simile

(6) Sul server, ripetere il calcolo, ovvero creare "nome utente, punteggio, timestamp, SALTSTRING" e confrontarlo con l'hash inviato dall'utente. Se nessuna corrispondenza, allora qualcosa è stato manomesso.

Nota, se l'utente può ottenere i file di classe, allora possono essere decompilati e quindi si può vedere il salt. Tuttavia, se l'utente può decompilare il tuo programma, non c'è modo di prevenire falsi punteggi alti: l'utente può modificare il codice per semplificare il gioco e utilizzare quella versione. Non avrai modo di verificarlo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.