Todos los juegos multijugador populares luchan batallas interminables contra los tramposos. Pero a medida que Counter-Strike: Global Offensive subió en 2014 para convertirse en el FPS más jugado del mundo, algunas cosas lo hicieron particularmente susceptible a la piratería.

Como el décimo juego lanzado en Source (y el tercer CS principal), ya había montones de conocimientos sobre cómo manipular el motor de Valve. Los hacks creados para cosas antiguas como Half-Life 2: Deathmatch podrían, con unos pocos minutos de ajuste, funcionar en CS: GO (aunque Valve dice que serían triviales de detectar). En cuanto al diseño, los rasgos que hacen de CS: GO un hábil juego de ángulos y precisión también hacen que las trampas sean más efectivas. Las armas son altamente letales, por lo que poner esas armas en manos de aimbots las hace aún más devastadoras. Y el enfoque de CS: GO en la información y el sigilo significa que conocer la ubicación de tu oponente es invaluable: un terreno fértil para los wallhacks.

La lucha de CS: GO contra los piratas informáticos es «un trabajo importante y valioso» según Valve, pero si has jugado al FPS, es posible que hayas notado hace un par de años que las cosas estaban empezando a mejorar dramáticamente. No solo las quejas de Reddit y los clips de reproducción frustrados de los tramposos parecían circular con menos frecuencia, sino que la percepción de hacer trampa, tan peligrosa como cualquier cosa para la salud de un juego competitivo, parecía disiparse. Publicamos historias de prohibiciones de alto perfil, junto con noticias de miles de tramposos que fueron prohibidos en oleadas individuales. ¿Cómo estaba Valve purgando la mayoría de estos idiotas?

“Los tramposos no recibieron la nota de que lo estábamos haciendo, y los jugadores estaban súper felices y simplemente estábamos derrotando a los tramposos de izquierda a derecha. Se sintió tan bien «.

—John McDonald, Valve

En uno de los únicos momentos de transparencia en profundidad sobre este tema, el programador de Valve, John McDonald, habló en la Conferencia de Desarrolladores de Juegos la semana pasada en San Francisco sobre cómo él y Valve utilizaron técnicas de aprendizaje profundo para abordar el problema de trampas de CS: GO. Este enfoque ha sido tan efectivo que Valve ahora está utilizando el aprendizaje profundo en «un montón de problemas», desde la lucha contra el fraude hasta aspectos de Dota 2, y Valve está buscando activamente otros estudios con los que trabajar en la implementación de su sistema anti-trampas de aprendizaje profundo. solución en otros juegos en Steam.

Resolviendo el problema de trampas de CS: GO

Mientras pasaba de un proyecto a otro en 2016, McDonald notó que “de lo único que hablaba la comunidad era de hacer trampa”, basándose en una discusión en línea y una dirección de correo electrónico privada que recibía correo de profesionales de CS: GO. “Fue una conversación ensordecedora”, dice. El repunte de las prohibiciones de VAC en este período, dice McDonald, apoyó lo que estaba escuchando Valve.

Para combatir el problema, Valve y McDonald buscaron el aprendizaje profundo, una solución que tenía el potencial de operar y adaptarse con el tiempo a nuevas técnicas de trampa, rasgos atractivos para Valve, que históricamente ha optado por automatizar aspectos de Steam en lugar de contratar a cientos de nuevos. empleados para abordar cuestiones como la curaduría. Lo que Valve creó se conoce como VACnet, un proyecto que representa alrededor de un año de trabajo.

VACnet trabaja junto Supervisión, La herramienta de reproducción operada por el jugador de CS: GO para evaluar a los jugadores que han sido denunciados por mal comportamiento. VACnet no es una nueva forma de VAC, la tecnología del lado del cliente y del servidor que Valve ha utilizado durante años para identificar, por ejemplo, cuando alguien ejecuta un programa malicioso junto con un juego. VACnet es un sistema nuevo y adicional que utiliza el aprendizaje profundo para analizar el comportamiento de los jugadores en el juego, aprender cómo se ven los trucos y luego detectar y prohibir a los piratas informáticos según un criterio dinámico.

«Nuestros clientes ven menos tramposos hoy que antes, y la conversación en torno a las trampas se ha calmado enormemente».

—John McDonald, Valve

McDonald dice que los trucos «sutiles» siguen siendo difíciles de resolver, pero al construir VACnet, Valve decidió apuntar a los aimbots primero porque se presentan en puntos específicos y fácilmente definibles durante las rondas de CS: GO: cuando estás disparando. Esto permitió a Valve construir un sistema que capturaba los cambios de cabeceo (eje Y) y guiñada (eje X) —medidas de grados en la perspectiva de un jugador— medio segundo antes de un disparo y un cuarto de segundo después. Estos datos, junto con otras piezas de información como qué arma está usando el jugador, su distancia, el resultado del disparo (¿acertar, fallar, disparar a la cabeza?) Son las ‘partículas de datos’ individuales que juntas forman lo que Valve llama «átomos». esencialmente un paquete de datos que describe cada toma.

Sin embargo, VACnet no necesariamente puede detectar a un tramposo basado en un átomo. “Necesitamos una secuencia de ellos, lo que realmente queremos son 140 de ellos, o al menos eso es lo que usa el modelo en este momento … Simplemente sacamos los 140 de una ventana de ocho vueltas y los metemos en el modelo, y ‘ son como, ‘Oye, si presentaras esta secuencia de 140 tomas a un [human] jurado, ¿cuál es la probabilidad de que obtenga una condena? ‘”

Resulta bastante bueno. Tanto los jugadores como VACnet informan a los jugadores para juzgarlos en Overwatch. Pero cuando VACnet informa sobre un presunto tramposo, casi siempre es un tramposo.

“Cuando un humano envía un caso a Overwatch, la probabilidad de que obtenga una condena es solo del 15 al 30 por ciento, y eso varía según una serie de factores, como la época del año, el juego en oferta, las vacaciones de primavera . Hay un montón de cosas, pero la cuestión es que las convicciones humanas son muy bajas ”, dice McDonald. «Las condenas de VACnet son muy altas, cuando VACnet presenta un caso, condena entre el 80 y el 95 por ciento de las veces».

Una diapositiva de la charla de McDonald’s: un modelo de la relación entre Overwatch y VACnet.

Eso no significa que Valve planea eliminar gradualmente su teatro de tramposos, Overwatch. Ambos sistemas funcionan juntos: VACnet aprende técnicas de detección de Overwatch, dice McDonald. «Debido a que estamos usando Overwatch y en realidad no reemplazamos todos los informes de los jugadores, simplemente los complementamos, eso significa que el alumno [VACnet] está teniendo la oportunidad de evolucionar junto con los jurados humanos. Entonces, a medida que los miembros del jurado identifican un nuevo comportamiento de trampa, el alumno tiene la oportunidad de hacer lo mismo «.

McDonald agrega que cuando VACnet ha sido reentrenado recientemente con datos de jugadores para detectar un nuevo tramposo, la tasa de condenas podría ser casi del 100 por ciento durante un período corto antes de que los tramposos se adapten a él. Cuando Valve implementó silenciosamente VACnet en el modo competitivo 2v2 de CS: GO a principios de este mes, McDonald dice que “la tasa de condenas para ese modo fue del 99 por ciento durante un tiempo, fue excelente. Los tramposos no recibieron la nota de que lo estábamos haciendo, y los jugadores estaban súper felices y simplemente estábamos derrotando a los tramposos de izquierda a derecha. Se sintió tan bien «.

Gran Colisionador Hacker

Para darle vida a VACnet, se tuvo que construir una granja de servidores que pudiera manejar los millones de reproductores, cargas de datos de CS: GO y crecer a medida que crecía CS: GO. En este momento, hay alrededor de 600.000 partidos CS: GO 5v5 por día, y para evaluar a todos los jugadores en esos partidos, Valve necesitó unos cuatro minutos de cálculo, lo que equivale a 2,4 millones de minutos de esfuerzo de la CPU por día. Necesita alrededor de 1.700 CPU para realizar ese trabajo diario.

Entonces Valve compró 1.700 CPU. Y 1.700 más, «así que tendremos espacio para expandirnos», dice McDonald, insinuando la intención de Valve de llevar VACnet a otros juegos. De manera conservadora, Valve tuvo que haber gastado al menos unos pocos millones de dólares en ese hardware: 64 servidores blades con 54 núcleos de CPU cada uno y 128 GB de RAM por blade. Eso es una gota en el cubo en comparación con el estimado $ 120 millones CS: GO trajo solo las ventas de copias de juegos en 2017, pero probablemente representa una de las granjas anti-trampas más robustas construida para un solo juego.

El trabajo continúa, pero desde la perspectiva de McDonald’s, VACnet está pateando traseros y tiene una aplicación potencial no solo en juegos que no son de Valve, sino en otras cosas en Steam. “El aprendizaje profundo es esta tecnología de cambio radical para el comportamiento evolutivo”, dice McDonald. “Creemos que realmente nos está ayudando a sacar a los desarrolladores de la cinta sin afectar a nuestros clientes de ninguna manera. Nuestros clientes ven menos tramposos hoy que antes, y la conversación sobre el engaño ha disminuido enormemente en comparación con donde estaba antes de comenzar este trabajo «.

A principios de diciembre de 2017, se produjo un nuevo hito para el sistema: VACnet comenzó a producir más condenas que no condenas en Overwatch. “El sistema funciona muy bien”, dice McDonald.