Detecciones
Riesgo en vez de baneos por una sola alerta
Cada detección tiene un peso y una confianza. El riesgo del jugador (0–100) los suma por categoría y baja con el tiempo. Las detecciones débiles o ambiguas (heartbeats perdidos, una sola muestra de combate) tienen un tope por muestra, así que un caso aislado nunca llega a un castigo.
- Las señales del servidor (posiciones, entidades, daño, eventos, dinero) son la base de las decisiones.
- Las señales del cliente (comandos de menús, resources inyectados, modo espectador) cuentan la mitad y nunca llevan por sí solas a un baneo automático.
- Cuando el staff marca detecciones como falso positivo o confirmada, SafeGuard ajusta el peso de ese tipo en tu servidor (a partir de 20 veredictos).
Contra los menús de cheats
Los menús más usados (Eulen, Skript, y los menús Lua que se ejecutan a través de ellos) cambian constantemente para no ser reconocidos en el ordenador del jugador. Por eso SafeGuard se centra en lo que hacen en el servidor, que es lo mismo sea cual sea el menú:
- teletransportarse, volar, noclip (también con la colisión desactivada), súper salto, velocidad, invisibilidad;
- godmode (daño que no baja la vida), vida y chaleco por encima del máximo;
- matar o paralizar jugadores con armas que no están en la mano, disparar a través de paredes, aimbot (giros bruscos que siempre acaban en el objetivo) y silent aim (impactos con la mira al lado de la víctima);
- hacer explotar a jugadores desde lejos, explosiones invisibles o en ráfaga;
- tirar props enormes, crear decenas de entidades, efectos de partículas enormes;
- sacar a jugadores de los coches, congelarlos o desarmarlos;
- disparar los eventos de pagos y objetos ("money exploits") de scripts populares;
- ganancias anormales de dinero u objetos;
- coches que no reciben daño bajo fuego (godmode de vehículo);
- mensajes de chat o nombres con HTML/JavaScript que se ejecuta en la pantalla de los demás jugadores.
Modo aprendizaje
En la página de cada servidor hay un interruptor para el modo aprendizaje. Mientras está activado, SafeGuard detecta, puntúa y reporta todo como siempre, pero no castiga a nadie automáticamente: cada castigo queda registrado como "lo que habrían hecho las reglas".
El informe, que se mantiene cuando lo desactivas, muestra para cada tipo de detección a cuántos jugadores marcó:
- Ruidosa: marca al 10 % o más de los jugadores. En tu servidor eso casi siempre es juego normal (un script de carreras, un mapa con saltos). SafeGuard sugiere una sensibilidad más tolerante que aplicas con un clic (se convierte en una nueva versión de la configuración, reversible en Reglas).
- Revisar: algunos jugadores. Revísalos antes de automatizar.
- Fiable: solo jugadores aislados, como suelen ser las trampas reales. Es seguro dejar que actúen las reglas.
Lo recomendamos durante la primera semana tras instalar y siempre que añadas scripts grandes.
Todas las detecciones
| Categoría | Detección | Código | Peso |
|---|---|---|---|
| Integridad | Heartbeats perdidos | integrity.heartbeat_missed | 4 |
| Integridad | Salto en la secuencia de heartbeats | integrity.heartbeat_gap | 3 |
| Integridad | Heartbeat reenviado | integrity.heartbeat_replay | 15 |
| Integridad | Desafío-respuesta fallido | integrity.challenge_failed | 15 |
| Integridad | Token de sesión no coincide | integrity.token_mismatch | 8 |
| Integridad | Cliente del anticheat ausente | integrity.client_absent | 10 |
| Integridad | Cliente reiniciado | integrity.repeated_hello | 8 |
| Integridad | Exceso de telemetría | integrity.telemetry_flood | 15 |
| Integridad | Telemetría malformada | integrity.malformed_telemetry | 10 |
| Integridad | Posición cliente/servidor no coincide | integrity.position_mismatch | 10 |
| Movimiento | Teletransporte | movement.teleport | 10 |
| Movimiento | Speed hack (a pie) | movement.speed | 12 |
| Movimiento | Noclip | movement.noclip | 15 |
| Movimiento | Vuelo | movement.fly | 15 |
| Movimiento | Súper salto | movement.super_jump | 10 |
| Movimiento | Velocidad del vehículo | movement.vehicle_speed | 10 |
| Movimiento | Invisible | movement.invisible | 25 |
| Movimiento | Modificador de vida | movement.health_modifier | 35 |
| Movimiento | Modificador de armadura | movement.armor_modifier | 35 |
| Movimiento | Modelo de ped bloqueado | movement.ped_change | 30 |
| Movimiento | Espectar / freecam | movement.spectate | 15 |
| Movimiento | Asiento de conductor tomado a distancia | movement.vehicle_hijack | 35 |
| Movimiento | Godmode | movement.godmode | 30 |
| Movimiento | Vehículo que no recibe daño | movement.vehicle_godmode | 30 |
| Armas | Arma prohibida | weapon.blacklisted | 45 |
| Armas | Arma dada a otro ped | weapon.give_other | 40 |
| Armas | Modificador de daño | weapon.damage_modifier | 25 |
| Armas | Disparo rápido | weapon.rapid_fire | 20 |
| Armas | Arma fuera del inventario | weapon.not_in_inventory | 40 |
| Combate | Ángulo de impacto imposible | combat.impossible_angle | 20 |
| Combate | Mira instantánea (aim snap) | combat.aim_snap | 15 |
| Combate | Tasa de headshots anormal | combat.headshot_ratio | 20 |
| Combate | Impacto sin línea de visión | combat.no_line_of_sight | 20 |
| Combate | Impacto fuera del alcance del arma | combat.out_of_range | 30 |
| Combate | Muchos jugadores alcanzados a la vez | combat.multi_target | 40 |
| Combate | Daño con un arma que no está en la mano | combat.weapon_mismatch | 35 |
| Combate | Demasiadas muertes por minuto | combat.kill_rate | 20 |
| Combate | Silent aim (impactos con la mira al lado del objetivo) | combat.silent_aim | 30 |
| Combate | Aimbot (giros bruscos repetidos hacia el objetivo) | combat.aimbot | 35 |
| Combate | Táser desde lejos o en serie | combat.taser_abuse | 30 |
| Combate | Golpe cuerpo a cuerpo desde lejos (kill player) | combat.melee_range | 35 |
| Entidades | Modelo de entidad prohibido | entity.blacklisted_model | 35 |
| Entidades | Spam de entidades | entity.spam | 30 |
| Entidades | Spawn masivo | entity.mass_spawn | 45 |
| Entidades | Lluvia de coches | entity.vehicle_rain | 45 |
| Entidades | Explosión prohibida | entity.explosion_blacklisted | 40 |
| Entidades | Explosión invisible / silenciosa | entity.explosion_invisible | 40 |
| Entidades | Spam de explosiones | entity.explosion_spam | 35 |
| Entidades | Explosión remota | entity.explosion_remote | 35 |
| Entidades | Abuso de eventos del juego | entity.game_event_abuse | 25 |
| Entidades | Eventos de juego contra otros jugadores | entity.player_tampering | 35 |
| Entidades | Objetos pegados a otros jugadores | entity.attach_to_player | 35 |
| Eventos | Evento honeypot | event.honeypot | 80 |
| Eventos | Evento prohibido | event.forbidden | 50 |
| Eventos | Intento de exploit en un script que este servidor no usa | event.exploit_probe | 40 |
| Eventos | Barrido de eventos de exploit en scripts que este servidor no usa | event.exploit_sweep | 100 |
| Eventos | Argumentos de evento no válidos | event.schema_violation | 15 |
| Eventos | Límite de eventos superado | event.rate_limit | 10 |
| Eventos | Evento sin permiso | event.permission | 20 |
| Eventos | Evento demasiado lejos | event.distance | 15 |
| Eventos | Spam de eventos | event.spam | 20 |
| Eventos | HTML o script en el chat | event.markup_injection | 45 |
| Eventos | Ráfaga de muchos eventos distintos | event.fanout | 40 |
| Economía | Pico de dinero | economy.money_spike | 25 |
| Economía | Límite de economía superado | economy.limit_exceeded | 30 |
| Economía | Duplicación | economy.duplication | 40 |
| Executor | Comando prohibido | executor.blacklisted_command | 45 |
| Executor | Resource desconocido | executor.unknown_resource | 35 |
| Executor | Variable global sospechosa | executor.suspicious_global | 20 |
| Executor | Resource del anticheat detenido | executor.resource_stopped | 20 |
| Integridad | Godmode activo en el jugador (cliente) | integrity.local_godmode | 15 |
| Integridad | Visión térmica o nocturna a pie | integrity.vision_mode | 8 |
| Integridad | Todos los jugadores en el mapa (blips de ESP) | integrity.player_blips | 10 |
| Movimiento | Cámara lejos del jugador (freecam) | movement.freecam | 15 |
| Movimiento | Potencia del vehículo aumentada | movement.vehicle_boost | 20 |
Informe semanal
Cada semana los propietarios y los administradores reciben un resumen por correo: detecciones, baneos (automáticos y manuales), apelaciones pendientes de decisión y los jugadores más sospechosos. Los canales de Discord con el evento Informe semanal también lo reciben. Se desactiva en Ajustes.
Falsos positivos
Si una detección salta sin motivo:
- Márcala como falso positivo en la página de la detección.
- Si sigue pasando, baja su sensibilidad en Reglas → Detecciones.
- Para los scripts que teletransportan jugadores (garajes, casas, cárcel), usa el export
allowTeleport(consulta Scripts e integraciones). - Cuéntanoslo en Discord con el código de la detección: nos ayuda a ajustar los límites para todos.