¿Cómo puedo implementar una escalera de puntaje global? [cerrado]

15

¿Hay marcos existentes sobre los que pueda construir? ¿Debo construir el mío? ¿Cómo puedo evitar que se publiquen puntajes falsos?

Bryan Denny
fuente
¿De qué plataformas estás hablando? ¿Tiene que funcionar en todas las plataformas?
Dennis Munsie
@Dennis específicamente usando Java y desarrollando para Android.
Bryan Denny

Respuestas:

6

ScoreLoop está disponible para la plataforma Android.

También puedes usar ScoreNinja . ScoreNinja ofrece una manera fácil de implementar puntajes globales, pero requiere ver su puntaje en la aplicación ScoreNinja.

De lo contrario, Cocos iphone proporciona una puntuación global con CocosLive . Puede usar CocosLive.net o usar su propia máquina virtual de GoogleApp Engine. CocosLive no está disponible en la plataforma Android, pero el protocolo es REST con JSON y se puede portar fácilmente.

Mi solución actual es CocosLive para Android y iPhone con mi propia VM, pero usaré ScoreLoop en mi próximo juego para la integración de redes sociales.

Ellis
fuente
5

No estoy seguro de que haya un marco que abarque varias plataformas, pero hay marcos específicos de plataforma con seguridad. Dos que vienen a la mente para el iPhone son Scoreloop y OpenFeint .

Carson
fuente
OpenFeint se ha anunciado para Android: consulte openfeint.com/developers/android .
Dennis Munsie
1

Haz lo siguiente:

(1) El usuario obtiene una puntuación en el juego.

(2) Cree la cadena "Nombre de usuario, puntuación, marca de tiempo" o algo similar.

(3) Agregue una sal (cadena secreta) a esta cadena: "nombre de usuario, puntaje, marca de tiempo, SALTSTRING"

(4) Calcule un hash de esta cadena con su algoritmo favorito, (MD5, SHA ...).

(5) Publique "Nombre de usuario, puntaje, marca de tiempo" junto con el hash que calculó en su sitio: www.yoursite.com?str=username,score,timestamp&hash=MYHASH o algo similar

(6) En su servidor, vuelva a hacer el cálculo, es decir, cree "nombre de usuario, puntaje, marca de tiempo, SALTSTRING" y luego compárelo con el hash que envió el usuario. Si no hay coincidencia, entonces algo ha sido manipulado.

Tenga en cuenta que si el usuario puede obtener los archivos de clase, se pueden descompilar y, por lo tanto, se puede ver la sal. Sin embargo, si el usuario puede descompilar su programa, no hay forma de evitar puntajes falsos: el usuario puede modificar el código para facilitar el juego y usar esa versión. No tendrás forma de comprobarlo.

Por Alexandersson
fuente