Alle detectieonderwerpen

Heartbeat anti-tamper: hoe Raven Anticheat merkt dat zijn clientlaag is uitgeschakeld

Een heartbeat-loop rapporteert continu de runtimestatus van de client aan de server. Stopt de heartbeat, loopt hij achter of komen er verkeerde waardes terug, dan behandelt de server de client als aangetast en grijpt hij in.

Het probleem dat heartbeat oplost

De lastigste cheat om te detecteren is die ene die stilletjes je anticheat-client uitschakelt en daarna ongezien doordraait. Signaturechecks kun je hooken. NUI-inspectie kun je blokkeren. Functies die de integriteit tijdens runtime bewaken kun je met een no-op patchen. Zodra de clientlaag stil is, is een AC met één laag blind. Heartbeat anti-tamper bestaat om “stil” duur te maken: het uitblijven van een heartbeat is zelf een detectie.

Hoe de heartbeat-loop werkt

De Raven-client stuurt op een vaste frequentie een ondertekende payload (per server aangepast, zie de changelog-entry van 2026-02-17; eerder vast op 1500 ms). De payload bevat een cryptografische hash van de kritieke runtimestatus (integriteit van resources, vingerafdrukken van de hooktabel, adressen van event handlers) plus een tijdstempel en een nonce per sessie. De server controleert de handtekening, vergelijkt de hash met de verwachte basislijn en let op de tijd tussen twee berichten. Er worden drie faalmodi gedetecteerd: de heartbeat komt niet aan (stille client), de heartbeat komt aan maar de payload klopt niet meer met de verwachte waardes (aangetaste client), of de heartbeat komt op de verkeerde frequentie aan (herhaalde of verouderde client).

Waarom de frequentie uitmaakt

Een vast heartbeat-venster is makkelijker te ontwijken. Een cheat die de client kort tussen twee heartbeats uitschakelt, houdt de loop in leven en draait toch ongezien door. Een per server aangepaste frequentie (geijkt op de gemiddelde ticklatency over de eerste 24 uur) maakt dat venster onvoorspelbaar voor de cheat, zonder problemen voor legitieme spelers op routes met hoge latency. De release van 2026-03 verving het standaardvenster van een vaste 1500 ms door een aangepast bereik van 800-1500 ms, wat de false positives op EU/AS-routes met ongeveer 38% verlaagde.

Wat er gebeurt als de heartbeat faalt

Reacties op falen zijn per server instelbaar in drie niveaus. Niveau 1 (waarschuwen) markeert de speler op de live kaart en waarschuwt admins via de ingestelde Discord-webhook. Niveau 2 (kicken) gooit de speler van de server met een algemene disconnect-reden en logt het voorval met volledig bewijs (laatste geldige heartbeat, huidige tijdstempel, verschil in de payload). Niveau 3 (automatisch bannen) bant de speler op de lokale server en zet hem in de wachtrij om na beoordeling door een admin te worden doorgezet naar de globale bandatabase. De standaardconfiguratie is behoudend (eerst waarschuwen, pas escaleren bij herhaling), omdat de heartbeat-laag false positives kan opleveren bij gewone netwerkproblemen.

Hoe heartbeat samenhangt met de trust score

Elke afwijking in de heartbeat telt mee in de trust score per speler (geïntroduceerd in versie 2026.4.0, zie /changelog). Eén late heartbeat is ruis. Meerdere late heartbeats van dezelfde speler over meerdere sessies, een heartbeat die juist achterloopt zodra de speler in bepaalde gamestatussen komt, of een heartbeat die steeds dezelfde hash teruggeeft terwijl het resourcepakket is bijgewerkt: dat zijn allemaal signalen die de speler op de live kaart zetten voor beoordeling door een admin, ruim voordat er een ban op niveau 3 afgaat.

Veelgestelde vragen

Wat is heartbeat anti-tamper in een FiveM anticheat?

Bij een heartbeat anti-tampersysteem stuurt de anticheat-client periodiek een ondertekende cryptografische payload naar de server. Die payload bevat hashes van de kritieke runtimestatus aan de clientkant. Komt de payload niet meer aan, komt hij te laat aan of bevat hij verkeerde waardes, dan behandelt de server de client als aangetast en voert hij de ingestelde reactie uit.

Kun je een heartbeat spoofen?

Een heartbeat spoofen betekent de juiste ondertekende payload op de juiste frequentie produceren, met de juiste hash van de huidige runtimestatus. Dat doen terwijl je ook cheatlogica draait is niet triviaal, omdat de hash integriteitswaardes van resources bevat die veranderen zodra injectie lukt. De heartbeat alleen is niet genoeg, en daarom draait Raven ook signaturedetectie en server-side eventvalidatie.

Heeft de heartbeat invloed op de serverprestaties?

Geen meetbare invloed. De heartbeat-payload is klein (onder 1 KB) en de verificatiestap kost constante tijd. De totale kost van de Raven Anticheat-resource blijft onder 0,5 ms op de FiveM resource monitor.

Andere detectieonderwerpen

Wil je dit op je eigen server?

Installatie in twee minuten. ESX, QBCore, vRP en QBox worden automatisch herkend. Vanaf $20.