Sé del algoritmo Truskill, es bastante complejo pero efectivo.
Mi pregunta, ¿hay otros algoritmos / métodos para determinar la habilidad de un jugador para medir con precisión el juego competitivo multijugador?
Sé del algoritmo Truskill, es bastante complejo pero efectivo.
Mi pregunta, ¿hay otros algoritmos / métodos para determinar la habilidad de un jugador para medir con precisión el juego competitivo multijugador?
Respuestas:
Creo que pedir el "más simple y efectivo" es un requisito poco realista, pero ciertamente hay algunos buenos enfoques. En lugar de entrar en detalles, vincularé a un artículo:
http://www.lifewithalacrity.com/2006/01/ranking_systems.html
Esto cubre:
En general, verás que todas son variaciones del mismo tema: eliges un valor inicial o promedio para un jugador, y luego los valores se usan para predecir el resultado del juego. La diferencia entre el resultado real y el resultado previsto se utiliza para modificar los puntajes de cada jugador, y el proceso se repite con los puntajes ajustados. Dado que cada modificación de los puntajes hace que el resultado predicho sea más preciso, los puntajes convergen en sus valores "verdaderos". (En realidad, esto supone que es un juego de habilidad en lugar de azar, que la habilidad en cuestión es capaz de ser clasificada linealmente, etc.)
Depende del juego. Hay algunos problemas en los que puede meterse:
Para los juegos que tienen un componente de suerte y un componente de habilidad (Bridge, Poker, Magic: the Gathering, etc.), la mayoría de los algoritmos no tienen en cuenta el hecho de que un jugador más débil a veces puede tener suerte. Si tu juego cae en esta categoría, deberás hacer algo de trabajo. En general, esto significa averiguar qué porcentaje es suerte y qué porcentaje es habilidad (un truco difícil, pero si ya ha estado utilizando un algoritmo basado en habilidades como Elo, podría ejecutar algunas métricas en los resultados para averiguar con qué frecuencia el algoritmo predice un malestar frente a la frecuencia con la que realmente sucede). Luego tiene que cambiar el algoritmo, y exactamente a qué cambiarlo probablemente esté más allá del alcance de esta pregunta.
Para los juegos en los que se pueden manipular los partidos (puedo elegir jugar un juego clasificado contra mi amigo), debes poner medidas de seguridad adicionales para evitar que los jugadores tomen partidos a propósito.
Para los juegos en los que un jugador puede "dejar de practicar" si no juega regularmente, el sistema podría implicar algún tipo de degradación basada en el tiempo. El sistema Glicko es un mod de Elo que agrega una variable de "incertidumbre" a la clasificación de cada jugador, en función de cuántos juegos han jugado y qué tan recientemente los jugaron; cuanto más seguro es el ranking de un jugador, menos cambia de un juego a otro.
Los juegos multijugador (ya sean gratuitos para todos, basados en equipos u otra estructura de jugadores) necesitan un cuidado especial, por supuesto. Algunos juegos basados en equipos hacen que sea más fácil determinar la contribución de cada individuo, en comparación con otros.
También pregunte cuál es el propósito de su sistema de calificación / clasificación. En los juegos y deportes profesionales, el propósito es estadístico: la calificación se usa como un predictor del resultado de un partido determinado. El objetivo principal aquí es la precisión. Sin embargo, esto rara vez es lo que quieren los jugadores; en su lugar, quieren progresión, una sensación de que están mejorando y subiendo de rango (ya sea que estén mejorando o no). En resumen, hay una compensación entre precisión y diversión que debes considerar.
¿Qué te pareció complicado de TrueSkill ? Pensé que era un algoritmo directo con la cantidad justa de botones para ajustar para diferentes modos de juego, y se reduce a Elo cuando el juego se enfrenta cara a cara con gran certeza.
Si está buscando la forma más sencilla de clasificar y medir efectivamente a un jugador en un entorno multijugador, mi recomendación es TrueSkill.
¿Qué pasa con un sistema por pares como elo ? Se ha utilizado durante siglos en deportes "normales" con excelentes resultados.
Para las partidas libres para todos, puede interpretarlas como un montón de coincidencias por pares y asignar puntos en función de la clasificación relativa.