Desarrollo: Eliminar a los tramposos de LoL
Luchar contra programas de bots, secuencias de comandos y manipulación de ELO.
Si estáis leyendo esto, probablemente no os han suspendido la cuenta de League of Legends y nuestros caminos nunca se han cruzado. Al igual que nuestros enemigos, los tramposos, operamos desde las sombras para no desvelar nuestra metodología de detección y evitar llamar la atención de los proveedores de trampas. La falta de luz solar mejora nuestras habilidades de programación y nos protege de aquellos que no siempre juegan limpio.
En definitiva, somos vuestro equipo antitrampas de confianza y creemos que este final de temporada de LoL es el mejor momento para 1) compartir con vosotros algunas estadísticas de las trampas más utilizadas, 2) recordaros que somos partidarios de los videojuegos justos y limpios, y 3) intentar batir el récord mundial de “Cero tramposos” (Guinness, cógeme el teléfono).
¿QUÉ ES EL EQUIPO ANTITRAMPAS?
Por lo general, el objetivo de los equipos antitrampas es proteger al juego de problemas que puedan afectar a su viabilidad competitiva, como un mecanismo, una aplicación o una estrategia que otorgue una ventaja injusta. Somos quienes deciden si estas técnicas forman parte del diseño del juego intencionalmente (elegir a Malzahar) o no deberían estar permitidas (subir de nivel de forma ilícita para conseguir el famoso borde de Oro).
Disponemos de varios métodos para lidiar con estos comportamientos no deseados, pero podemos dividirlos en tres categorías principales: prevención, detección y disuasión (o, como nos gusta llamarlos, los esplendorosos niveles de la justicia™).
- Disuasión: A veces, es necesario tener mano dura. Aunque puede que sean necesarias varias oleadas de suspensiones antes de que cale el mensaje, las medidas punitivas hacen que algunos jugadores se moderen, o incluso provocan la catarsis de los inocentes que hayan caído en las redes de otros tramposos.
Si queréis obtener más información acerca de nuestra estrategia técnica, podéis escuchar a nuestro querido Michael VanKuipers hablar sobre el cifrado y la depuración en una de sus últimas publicaciones en el blog técnico (en inglés).
¿POR QUÉ EXISTE EL EQUIPO ANTITRAMPAS?
Porque algunos jugadores hacen trampas. A la gente le gusta ganar o, mejor dicho, le gusta el prestigio que otorga la victoria. Los proveedores de trampas quieren capitalizar el estado asociado con la habilidad para obtener un beneficio económico (o, en ocasiones, la ovación de internet). Nuestro objetivo es garantizar que no se convierta en una actividad lucrativa y que no sintáis la necesidad de recurrir a malware para seguir siendo competitivos.
En resumen, si queremos que League of Legends se tome en serio como deporte (cosa que queremos), todo el mundo debe seguir las mismas normas. Si pudieseis comprar directamente el trofeo, no valdría su peso en oro, precisamente.
¿QUIÉN FORMA PARTE DEL EQUIPO ANTITRAMPAS?
Toda una manada de hackers con gabardinas, palacios de monitores y pantallas que renderizan constantemente un aluvión de rectángulos openGL. El equipo está compuesto por unos cuantos desarrolladores (antaño tramposos, para darnos credibilidad), algunos científicos de datos (para que nuestros gráficos sean bonitos) y un analista o dos (para que lleguemos a un nuevo siglo todos con las cuentas suspendidas).
Gracias a las diferentes disciplinas ninja que hemos ido aprendiendo, hemos implementado potentes combinaciones de tecnologías de protección e identificación.
¿DÓNDE ESTÁ EL EQUIPO ANTITRAMPAS?
Detrás de ti.
NOVEDADES DE 2018
Hace poco, asistimos a un entrenamiento en Shenzhen con los grandes maestros antitrampas de Tencent. El panorama tramposo de China juega en la dificultad Inferno, pero juntos estamos desarrollando nuevas formas de identificar a los proveedores de trampas en primera instancia. Tratamos de crear una norma global sobre cómo deberían ser los videojuegos competitivos y, para ello, mejoramos la eliminación de servicios e implementamos sistemas de detección más discretos.
HACER TRAMPAS EN LEAGUE OF LEGENDS
Ahora que todo ha quedado claro, empieza lo bueno.
Si descubrís que os han suspendido la cuenta por hacer trampas (deshonra sobre toda tu familia, deshonra sobre ti, deshonra sobre tu vaca), puede deberse a uno de estos tres motivos: secuencias de comandos, manipulación del ELO o programas de bots.
Secuencias de comandos (scripting)
League of Legends es un juego basado en un servidor autoritativo. Cada cliente se conecta a una instancia que gestiona el estado del juego. Esto significa que el tipo de trampas que se detecten no será nada arriesgado, como “godmodes” (modificaciones) o pirateos del mapa (podemos eliminarlos fácilmente con una actualización), sino intentos de automatización del rendimiento. El scripting, seguramente la forma más común de hacer trampa en el género MOBA, hace referencia al uso de un programa externo que ejecuta entradas o habilidades que contrarrestan al enemigo automáticamente (como bots de puntería, reductores de enfriamiento o combos), lo que da lugar a resultados injustos y una destreza sobrehumana.
"Nadie quiere dar un borde de Diamante a una barra espaciadora".
La forma de implementar estas técnicas suele ser un tanto complicada. Primero, un hacker desarmará el cliente del juego con ayuda de un software especializado y su talento innato. A continuación, determinará dónde se encuentran las funciones más importantes del juego y escribirá un código personalizado para hacer referencia a ellas. Por último, inyectará en el juego la enfermedad que ha creado para, de este modo, exponer una API que permita a otros desarrolladores escribir secuencias de comandos automáticas o lógica específica de un campeón. Los tramposos más optimistas que ejecuten estas secuencias en sus versiones del juego lograrán impresionar brevemente a sus amigos con su capacidad para reducir el tiempo de inactividad entre ataques automáticos, por ejemplo.
Echemos un vistazo a la presencia de scripting en LoL durante los últimos años.
La línea verde representa los usuarios que utilizan secuencias de comando como un porcentaje diario de las partidas clasificatorias jugadas. Como podemos ver, su presencia se ha reducido con el paso del tiempo. En estadística, este fenómeno se conoce como “una buena línea”. Las oleadas de suspensiones (representadas en dorado, el color de la justicia) se muestran en la misma escala temporal, así que podéis comparar ambas. A mi jefe le “preocupaba” compartir “información confidencial”, así que hemos decidido no incluir los datos completos de suspensiones.
Algunas estadísticas relevantes:
- En los últimos tres años, hemos suspendido más de 7 millones de cuentas por scripting en todo el mundo, 5 millones de los cuales gestionó Tencent en China. Actualmente, la probabilidad de que un jugador se encuentre con otro que utilice secuencias de comandos es de una cada 400 partidas clasificatorias.
- Solo el 9 % de las suspensiones por scripting en 2018 lograron que mejorase la actitud de los jugadores, y se necesita una media de 5,1 cuentas suspendidas antes de que un tramposo decida desinstalar LoL.
- Redujimos considerablemente el scripting, pero si nos hubiésemos limitado a suspender cuentas, no habríamos llegado muy lejos; al fin y al cabo, los tramposos tienden a reincidir. Nuestra lucha ha tomado un nuevo rumbo, así que ahora nos centraremos en las medidas preventivas también, no solo en las punitivas.
"Pero, mirageofpenguins, ¿sirve de algo hacer trampas? Es para un amigo".
Me alegra que me lo preguntes. Veamos qué nos dice el gráfico.
Seguramente sea obvio, pero lo diré de todas formas para aquellos que hacían pellas durante la clase de matemáticas: el porcentaje de victorias de una muestra aleatoria debería ser del 50 %, pero parece que estas aplicaciones otorgan algún tipo de ventaja igualmente. Dicho esto, existen una serie de factores que contribuyen a la reducción del rendimiento.
- Las secuencias de comandos resultan más útiles en campeones que son intensos en sus mecánicas en general, como los ADC o Cassiopeia. Con el fin de reducir la eficacia de los lanzamientos perfectos, hemos decidido “perdonar” y pasar por alto algunos usos constantes de habilidades (como mantener la Q de Evelyn pulsada), lo que permite que los humanos puedan competir con las máquinas.
- En un intento por evitar la detección del comportamiento, los desarrolladores agregaron un retraso adicional a las acciones automatizadas, obligando a las máquinas a actuar más como humanos.
- Las continuas e implacables eliminaciones de los proveedores de scripting obligan a las plataformas y las bases de códigos a rotar constantemente. Imaginad que estáis intentando conducir un coche, pero alguien (yo) no deja de robaros las tuercas de las llantas.
Ha sido un proceso lento, pero creemos poder afirmar que la rebelión de las máquinas se ha retrasado un par de décadas más. Podéis seguir utilizando el microondas como de costumbre, siempre y cuando no interactúe con el cliente de LoL.
Manipulación del ELO (boosting)
A veces, la rutina de los jugadores de Plata puede ser un poco tediosa, y los menos escrupulosos podrían pensar en pedir algún que otro favor. La manipulación de ELO, también conocida como boosting, “comprar el trofeo” o “comprar bordes”, está estrechamente ligada con el reparto de las recompensas de final de temporada (el 68 % de los casos es para llegar solo a Oro V), aunque también hay quien recurre a ella por el deseo de parecer más hábil.
"No pasa nada por decirles a vuestros amigos que sois Plata, los buenos amigos os querrán como sois".
Puede ser muy frustrante ver a un jugador Diamante II en vuestras partidas clasificatorias como Oro III, o incluso peor: encontraros con un tramposo en vuestra fase de promoción a Platino V. Las mejores partidas son aquellas entre jugadores con un nivel de habilidad similar. Por eso, consideramos que se produce una manipulación del ELO cuando un jugador juega en una cuenta con un nivel muy distinto al suyo con el objetivo de aumentar su posición en la clasificación.
Es complicado evitar estas manipulaciones, por eso centramos nuestros esfuerzos en detectar los casos más obvios. Como queremos proteger nuestros secretos más preciados, no se me permite explicar el proceso con pelos y señales, pero, básicamente, observando la desviación en los patrones de juego entre un jugador y su mejora/manipulación, hemos logrado crear un pequeño algoritmo que ejecutamos una vez por temporada para eliminar las recompensas de los usuarios que menos lo merezcan. Puede que no los pillemos a todos, pero hemos mejorado mucho.
Los picos más evidentes están directamente relacionados con dos fenómenos muy conocidos:
- “Tío, juega los posicionamientos por mí”.
- “Va, consígueme a Graves victorioso”.
Nuestro objetivo al penalizar este tipo de comportamientos es desincentivar a aquellos que esperan convertirlo en un negocio lucrativo, pero aún nos queda mucho por hacer. Suspender las cuentas de los tramposos es solo una parte de la ecuación. Tenemos intención de mejorar nuestra capacidad de identificar y cerrar los servicios que ofrecen este tipo de técnicas ilícitas, una táctica que hemos tomado prestada de los maestros de Tencent.
Programas de bots
Ah, sí, los bots que ayudan a subir de nivel de forma ilícita. Son como una espinita clavada en el universo de los videojuegos. League of Legends es un juego gratuito y, como tal, no existen muchos impedimentos a la hora de crear una cuenta. Los jugadores frecuentes de Yasuo necesitan nuevas cuentas smurf para practicar, así como los millones de scripters que hemos bloqueado “necesitan” nuevas cuentas con las que molestarnos. Se ha desarrollado todo un mercado de cuentas recién llegadas al nivel 30 y no podemos dejar que prospere. Nuestro objetivo es que los nuevos jugadores puedan disfrutar de una experiencia saludable y que las penalizaciones sigan siendo estrictas.
"¿Por qué tienes tantos frigoríficos inteligentes en el garaje?"
Seguimos trabajando para lograrlo. Hemos contratado a unos cuantos candidatos con un doctorado, y esos frikis están creando modelos de máquinas de las que diferencian los lavavajillas eléctricos de los humanos. Robots contra robots: ¿quién ganará? También funcionan con las denuncias de los jugadores, así que si os enfrentáis a una licuadora de prensado en frío, no os lo penséis dos veces y pulsad el botón Denunciar.
ARAM sufre un desafortunado escrutinio esta vez: es el modo de juego más fácil para diseñar un bot y el más corto en el que se puede conseguir experiencia: todos al centro, atacar con todo y recoger la cápsula de campeones.
Lo que veis en el gráfico es el efecto de una campaña que enfrenta a los bots entre sí (más conocida como las “Olimpiadas robóticas”), tan solo un paso más hacia la victoria. Nuestro objetivo es bloquear estos sistemas y devolverlos a la tienda de electrodomésticos de la que salieron, pero nos conformamos con que los jugadores no se crucen con ellos. Los bloquearemos antes incluso de que salgan a la venta. Por ahora, estamos dispuestos a tragarnos los costes del servidor si eso significa mantener a raya la rebelión de las máquinas.
Planes de futuro
Esta lista no es cien por cien exhaustiva: aquellos que quieran hacer trampas, acabarán encontrando la manera de hacerlo. Aunque eso me garantiza un puesto de trabajo, significa que nuestra labor no tiene fin. Nos comprometemos a luchar por vuestro derecho a disfrutar de un videojuego competitivo, y haremos todo lo posible por promover un juego limpio y sin trampas.
"No eres bienvenido en esta comunidad si no estás dispuesto a jugar limpio".
Es bastante sencillo, en realidad.
Estaremos atentos a vuestros comentarios. Si tenéis alguna pregunta, no dudéis en escribirnos. ¿Os gustaría leer más artículos sobre este tema? Si vuestra cuenta ha sido suspendida hace poco, también podéis usar la sección de comentarios para quejaros (vivo de eso).