HALLOWEEN31 Save 31% off on your first purchase
The Raven JournalMay 8, 2025 · 2 min

Detection · Technical

Trust scoring vs signature detection: what each one means

Signature detection matches known cheats. Behavioural trust scoring flags players who play unlike the rest. What each means, and what Raven's trust score measures.

Trust scoring and signature detection come up in most FiveM anticheat comparisons, often as two ways of doing the same job. They are different tools, and Raven's own trust score is simpler than either.

Signature detection

Signature detection compares what is running on a player's machine with a list of known cheats. A match is strong evidence, so it suits automatic bans. Its weak point is time: a new or repackaged cheat is missed until the vendor adds it to the list, so the speed of updates decides how well it works.

Behavioural trust scoring

Behavioural trust scoring watches how each player plays and compares them with everyone else. Players who look unusual are flagged for review. It can notice a cheat nobody has listed yet, but it needs plenty of normal play to compare against, and a very good player can look unusual too. For that reason the score usually sends a player to review and bans no one by itself.

Raven's trust score

Raven's trust score is neither of these. It runs from 0 to 100 and measures a player's history. Every player starts at 50. Play time on any Raven server raises it, fastest in the first hours. A ban lowers it by 25 when a detection issued it and by 10 when an admin filed it, and each attempt to dodge a ban costs another 10. Lifting the ban gives the points back. A player on the Raven Network ban list shows 0.

The score looks at play time and bans only, and it never bans anyone. It tells your admins who is new and who has a history. You see it in the dashboard's player filters and in Lookup, in the in-game menu's lowest-trust list, and in your own scripts through the gettrustscore export:

server.lua
local trust = exports['rac']:gettrustscore(source)
-- nil means no score is available, which is not the same as a low one
if trust ~= nil and trust < 30 then
    print('Low trust, watch this one')
end

Reviewing a suspicious ban shows where the score helps when you decide on an appeal.

Keep reading03