# Valve Anti-Cheat

Valve Anti-Cheat, abreviado VAC, es una "solución anti-trampas" desarrollada por Valve Corporation como un componente de su plataforma de desarrollo de videojuegos Steam.

## Historia

VAC fue lanzado al mercado junto con Counter-Strike 1.4 en 2002, por la decisión de Valve de renunciar a PunkBuster a favor de un sistema propietario. La versión inicial, VAC1, fue un éxito durante un tiempo, pero en marzo-abril de 2004 dejaron de realizarse actualizaciones de este, ya que los ingenieros de Valve que lo mantenían dejaron de hacerlo, para producir lo que sería su sucesor, VAC2. VAC1 se volvió virtualmente inútil en este periodo de desarrollo, pero desde el lanzamiento en 2005 de VAC2, se ha visto un decremento notable en el número de jugadores protegidos por este sistema. VAC3 fue lanzado en noviembre de 2010, funcionado codo con codo con VAC2.
Valve no suele hablar de VAC, y se conoce muy poco sobre su funcionamiento interno. No obstante, el 17 de noviembre de 2006 anunciaron que una "nueva tecnología [VAC]" había detectado "más de 10 000" intentos de hacer trampas en únicamente la semana anterior, la primera indicación real de la escala de las operaciones antitrampas. No todas las cuentas vetadas habrían contenido juegos comprados y legítimos, y no se dispone de una auditoría externa de este número.
Alrededor de 2010, fuentes no oficiales estiman más de un millón de cuentas de Steam vetadas por VAC.

## Ventajas

* Integración total en Steam, incluyendo el uso del Steam framework para cualquier tipo de actualización
* Los vetos demorados privan a los productores de trampas de información precisa y a tiempo
* Desde VAC2, no siempre se requieren actualizaciones del lado del cliente para detectar nuevas trampas, de nuevo privando a productores de trampas información sobre actualizaciones.

## Desventajas

* Los vetos demorados (ver debajo) significan que los vetos impuestos por el sistema no son activados hasta después de un tiempo, con fin de no dar resultados de efectividad de trampas inmediatamente.
** El trabajo de vetar a tramposos que han sido detectados por VAC pero no vetados todavía queda a merced de los administradores de los servidores.
** Esto también puede llevar a una falta de fiabilidad y sesgo incorrecto de los sistemas de ranking y estadísticas, incluso si los datos de los tramposos se borran cuando se vetan.
* VAC no puede detectar 'hacks de contenido', en los que, por ejemplo, se manipule la transparencia de texturas o color, ya que esto no implica la alteración de código de programa. En el motor Source la opción para crear servidores "puros" (sv_pure) evita que el contenido personalizado sobreescriba los valores por defecto del juego y fue creada para mitigar esto.

## Vetos demorados, criticismo y razón de ser

Si se encuentra un truco la cuenta de Steam del jugador será marcada como tramposa de forma inmediata, pero el jugador no recibirá ningún aviso de esta detección. Tan solo "días o incluso semanas" después se veta la cuenta permanentemente de los servidores seguros VAC ("VAC Secure") de ese juego, junto con otros juegos que usen el mismo motor. (e.g. Juegos con el motor Source, juegos GoldSrc, o juegos con el Unreal Engine). Valve jamás revela qué trampas fueron detectadas.

### Falsos positivos

Algunos de los vetados por VAC aseguran que se produjo un falso positivo. Aquí debe de hacerse una distinción entre falsos positivos causados por detección incorrecta y falsos positivos grises' causados por modificaciones de código correctamente identificadas y que no ofrecen en realidad ningún tipo de ventaja injusta.
* Hay cuatro casos registrados de detecciones incorrectas, todas rápidamente revocadas:
** VAC1: En su lanzamiento inicial, VAC expediría vetos por accesos corruptos a memoria. Se actualizó VAC para solo echar (kick) por corrupción de memoria y revirtió todos los vetos por memoria corrupta.
** VAC1: El efecto de correr un juego protegido por VAC a través de la capa de compatibilidad de Cedega para Linux.
** VAC1: Un aparente error del lado del servidor el 1 de abril de 2004.
** VAC2: En dos semanas de julio de 2010, aproximadamente 12 000 poseedores de Call of Duty: Modern Warfare 2 fueron vetados cuando steam actualizó una DLL en el disco después de que hubiese sido cargada en memoria por el juego. Los afectados recibieron una copia de Left 4 Dead 2 y/o una copia regalo para enviar a un amigo.
* Hay cuatro registros de "trampas benignas" de las descritas arriba que produjeron vetos. Estas son:
** VAC1: HLamp, que permitía al usuario controlar Winamp desde la interfaz del juego. La detección fue anulada, y posteriormente todos los vetos causados por ella rescindieron.
** VAC2: La herramienta X-Spectate, que permitía a los administradores de servidores activar un efecto de wallhack mientras se estaba como espectador para ayudar a decidir si otro jugador estaba haciendo lo mismo. Posteriormente esto se volvió un kick del servidor, pero los vetos no rescindieron.
** VAC2: Las modificaciones para un jugador de Half-Life Paranoia y Half-Life FX, que producía cambios en el renderer del motor que se propagaban a los juegos multijugador. Esto todavía produce un veto y ningún veto causado por ello ha sido revertido.
** VAC y VAC2: sXe Injected, un sistema antitrampas para Counter-Strike, puede producir un veto por parte del VAC.
Pueden ocultarse trampas en mods o pieles descargadas y que son creadas maliciosamente para vetar a gente inocente. Como no se puede probar cuál ha sido la fuente de un truco instalado en un ordenador, los vetos debidos a esto jamás rescinden.
Valve tiene una política de tolerancia cero para trucos y no levantará vetos de VAC bajo ninguna circunstancia. Esto incluye robo de cuentas y otras circunstancias más allá del control del propietario de la cuenta.

### Vetos aplicados a mano

En julio de 2010, varios jugadores que utilizaron información filtrada desde Valve con éxito para aumentar sus oportunidades de encontrar un objeto especial de Team Fortress 2 llamado la Llave Dorada fueron vetados por VAC.

## Videojuegos que soportan VAC

* Call of Duty: WWII
* Call of Duty: Advanced Warfare
* Call of Duty: Infinite Warfare
* Call of Duty: Black Ops
* Call of Duty: Black Ops II
* Call of Duty: Black Ops III
* Call of Duty: Modern Warfare 2
* Call of Duty: Modern Warfare 3
* Counter-Strike
* Counter-Strike: Condition Zero
* Counter-Strike: Source
* Counter-Strike: Global Offensive
* Counter-Strike 2
* Dark Messiah of Might and Magic
* Day of Defeat
* Day of Defeat: Source
* Dead by Daylight
* Deathmatch Classic
* DayZ
* Dying Light
* Grand Theft Auto V
* ARMA 3
* Half-Life
* Half-Life: Opposing Force
* Half-Life 2: Deathmatch
* Half-Life Deathmatch: Source
* Killing Floor
* Left 4 Dead
* Left 4 Dead 2
* Lost Planet: Extreme Condition
* Magicka
* Magic: The Gathering - Duels of the Planeswalkers
* Moonbase Alpha
* Monday Night Combat
* PUBG: Battlegrounds
* Red Orchestra: Ostfront 41-45
* Red Orchestra 2: Heroes of Stalingrad
* Ricochet
* R.U.S.E.
* Shattered Horizon
* Team Fortress Classic
* Team Fortress 2
* Payday: The Heist
* Rust
Los mods multijugador basados en los juegos arriba indicados heredan el soporte VAC de su juego anfitrión.