Guide · Updated 19 Sep 2026

How to set up law enforcement on a RedM server: witnesses, duty, badges and evidence

Crime roleplay only works if the law can answer it. A robbery nobody hears about is a free payday, and a deputy with nothing to respond to logs off. This guide covers how to set up law enforcement on a RedM server so the two sides meet: how crimes get reported, how duty and law counts work, badges, evidence lockers, crime scene text, jail, and how much law your player count needs. Every Poggy script named here runs on VORP Core, RSG Core and QBCore RedM through the free Poggy Core (Free).

Why crime needs law that can respond

A crime creates a story only when someone else learns about it. On a live server that takes three things:

  1. A report. A witness, a victim calling it in, or the robbery script raising an alarm.
  2. A route to the right people. The alert should reach lawmen who are on duty, not every character who once held the job.
  3. Something to find. A blip, a waypoint, and a scene to read on arrival.

Job names, grades and several jobs per character are covered in how to set up jobs on a RedM server. Read that first; almost every "the law gets nothing" ticket is a job name that does not match.

The pieces, and where to get them

PieceFree optionWhat we run
Cuffs, drag, duty, jailvorp_police on VORP; rsg-lawman and rsg-prison on RSG Core; qbr-policejob on QBRvorp_police
Crime reports and alertsvorp_police has a /callpolice command; rsg-lawman has map alertsWitnesses (from $6.99/mo)
On-duty law countCheck your law resourcePoggy Util (Free)
Badgesvorp_police and rsg-lawman put a stock badge on the outfitPoggy Badges ($20)
Evidence locker and armoryvorp_police has station storages; Poggy Storage (Free) is freePoggy Storage (Free)
Crime scene textChat /me and /doPoggy Scenes ($9.99)

NPC witnesses and crime alerts

Witnesses (from $6.99/mo) makes the town report crime. When a player commits one, a nearby NPC turns to look, then flees. If the witness gets far enough away and stays away for a few seconds, on-duty law gets an alert with an icon, a blip, an area circle and a waypoint. Catch the witness first and nobody hears about it. That gap is the point: the criminal has a reason to act fast, and the law gets a chase instead of a teleport.

Crimes it notices: shooting and aiming, threatening with a weapon, fist fights and melee, lassoing, trampling, stealing a horse or wagon, and riding with a hogtied hostage. Out of the box only shooting, hijacking and carrying a hostage are on. Players get /callpolice, /calldoctor and /undertaker, each with its own cooldown, and your robbery or break-in scripts can fire alerts of their own with one server export. It needs PolyZone for the town zones.

Tuning it so it is fair

  • Start with few crimes. Leave melee and lassoing off until your law team asks for them. A brawl outside the saloon should not call the sheriff every time.
  • Use the chances. Each crime has its own probability in Config.Checks. Shooting at 100 and hijacking at 80 means a horse thief sometimes gets away clean.
  • Limit where it works. With Config.EnforceTownLimits on, only the eleven towns in Config.Towns count, so a shootout in the hills stays between the players in it. Sisika, Van Horn and Wapiti are blacklisted by default so prison and outlaw-town roleplay stays quiet.
  • Cap the noise. Config.MaxActiveWitnesses is 3 by default and there is a 120-second cooldown between witness reports.
  • Protect your own. Law immunity stops witnesses reporting players with a law job. Aiming a lasso, camera or binoculars never counts; add other items to Config.NonThreateningAimItems. Add other scripts' job NPCs to Config.BlacklistNPCs so a shop clerk does not run off.

One clash to know on VORP: vorp_police also registers /callpolice. If you run both, rename one of them.

On duty, and how many lawmen are on

With Config.DutyCheckEnabled on, Witnesses only alerts law players who are on duty. Duty comes from poggy_core. On VORP it comes from vorp_police and vorp_medic, so with neither running nobody counts as on duty and law gets no alerts. On RSG Core and QBCore RedM duty is part of the job, so it always has an answer.

Players should be able to see how much law is out. Poggy Util (Free)'s duty count shows on-duty law and doctors in the area-of-play box, refreshed every 10 seconds. Law is whatever you list in Config.DutyCount.LawJobs; doctors are poggy_core's medical jobs.

Gating robberies on law count is the robbery script's job: most have a minimum police setting, so set it, and check its job names match yours. A script built on poggy_core can count for itself with Poggy('players.onDuty', { job = { 'sheriff', 'marshal' } }). When no law is on, Witnesses can send an NPC posse instead. It is off by default, rides out only for the crimes you choose, and with PlayerLEOPriority on it stands down while any player lawman is on duty.

Badges and visible rank

Rank matters more when others can see it. vorp_police and rsg-lawman can put a stock badge on a lawman's outfit. Poggy Badges ($20) pins a 3D badge prop to law, marshal and medical characters, chosen by job and grade, so a deputy and the sheriff wear different badges on the same job. Players place it with a live editor and save presets per outfit. Show Badge plays a pocket-watch animation and flashes the badge, the character's name and your server name to players within a couple of metres, which is how a deputy proves who they are in a standoff. It ships 21 badge images and uses the game's own badge props, so nothing needs streaming.

Evidence lockers and the armory

Seized guns and stolen goods need somewhere to go that only the law can open. Poggy Storage (Free) is free and ships a job storage called police_evidence: one shared locker opened from eight sheriff and police stations, for the police, sheriff and marshal jobs. Access is set per job:

authorized_jobs = {
    ["sheriff"] = { all_grades = true }, -- every grade
    ["marshal"] = { grades = { 2 } },    -- grade 2 and above
},

Inside, the grade decides what a player can do with the locker's money. Config.ManagerJobGrades and Config.MemberJobGrades match exact grades, not "and above", so list every senior grade you have. Each job storage can post its contents and a who-took-what log to Discord, which settles "who took the evidence" arguments. The same script adds job-locked armories: a gun rack with endless stock that checks the job again on every take.

Scene text for crime scenes

A lawman arriving at a crime needs something to read. Poggy Scenes ($9.99) lets players place coloured text fixed to a spot in the world: "Blood on the boards" at the bank counter, "Tracks head north" by the hitching post. Scenes survive restarts. By default the police, sheriff and marshal jobs can remove any scene, so the law can clear a scene once it is worked. /do describes what is there, and a status tag such as "Shot, left arm" tells the doctor and the deputy what happened without breaking character. The Scenes panel in /poggy lets staff delete old scenes in bulk. RedM roleplay commands covers /me and /do in more depth.

Jail, bounties and wanted posters

We do not sell a jail or a bounty board. vorp_police jails at Sisika with /jail, and jail time lasts through relogs. On RSG Core, rsg-prison does the same job. If you turn on Witnesses' NPC posse, a player can surrender and be arrested; to add jail time, point JailExportCall at a jail script with a server export, because stock VORP has none.

For bounties and wanted posters, search GitHub or the Cfx.re forum for "RedM bounty" and read the code before you trust it. Witnesses ships a "bounty spotted" alert that a bounty script can fire when a wanted character is recognised in town.

Sizing law to your player count

Too little law and crime is free. Too much and outlaws have nothing to do. A starting point we use, not a rule:

Players onlineLaw on dutyHow to run it
Under 150 to 2Keep few crimes on and let the NPC posse cover quiet hours
15 to 402 to 5One sheriff's office, one evidence locker, robbery minimums of 2 or more
40 and up5 or moreSeparate departments by town, marshals for the open country, grade-locked lockers

On a small server most lawmen also hold another job. Poggy Multijob (Free) lets a character keep both and switch with /mj, so the rancher can pin on the badge when a call comes in.

Setup checklist

  1. Pick your law job names and grades, and write them down once.
  2. Install a free law resource for cuffs and jail, and start it before the Poggy scripts.
  3. Add your law jobs to LawJobs in poggy_core/config.lua. On RSG Core that means the town jobs (vallaw, rholaw, blklaw, strlaw, stdenlaw).
  4. Paste the same exact names into Witnesses' Config.PoliceJobList and Config.PoliceJobRanks, Poggy Util's Config.DutyCount.LawJobs, your badge sets, the evidence locker and the armory. On VORP, include vorp_police's Police.
  5. Choose which crimes witnesses notice, and which towns count.
  6. Set each robbery script's minimum police.
  7. Go on duty as a deputy, fire a shot in Valentine, and check the alert arrives. /dumpalertgroups shows who is registered.

New to installing scripts? How to install a RedM script covers start order.

Questions this guide answers

Is there a free police script for RedM?

Yes. VORP has vorp_police: going on duty, cuffs, dragging, station storages, a boss menu and jail at Sisika. RSG Core has rsg-lawman and rsg-prison, and QBCore RedM has qbr-policejob. They cover the lawman's tools. None of them has NPC witnesses who see a crime and run to report it; that is what Witnesses adds.

How do NPC witnesses report crimes in RedM?

With Witnesses, an NPC near the crime turns to look, then flees. If they get far enough away and stay away for a few seconds, on-duty law gets an alert with a blip, an area circle and a waypoint. If the criminal catches the witness first, nobody hears about it. Which crimes count, the chance for each and the towns it works in are all in the config.

Why do my deputies get no crime alerts?

Usually one of three things. The job name is not in Witnesses' PoliceJobList exactly as the character has it (vorp_police names its job "Police" with a capital P). The deputy is not on duty, and on VORP duty only exists while vorp_police or vorp_medic runs. Or the crime happened outside the towns in the config. /dumpalertgroups shows who is registered.

How do I stop robberies when no law is online?

The check belongs in the robbery script: most robbery scripts have a minimum police setting, so set it and make sure its job names match yours. Poggy Util shows the on-duty law count to everyone, and a script built on poggy_core can count on-duty law itself. Witnesses can also send an NPC posse, which by default only rides out when no player lawmen are on duty.

Scripts mentioned in this guide

Whole store →
Witnesses — RedM Witness System
RedM Witness System

Witnesses

NPC witnesses see crimes, flee the scene and report them to on-duty law, with blips and alerts routed to your police or sheriff jobs.

From$6.99
Poggy Util — Free RedM Server Utilities Pack
Free RedM Server Utilities Pack

Poggy Util

Eleven optional server utilities in one resource, from area of play and duty count to unstuck, weapon jams, armor and a help menu, each with its own switch.

PriceFree
Poggy Badges — RedM Badge Script
RedM Badge Script

Poggy Badges

Job-locked 3D badge props with a live position editor, saved presets, 21 badge images and a pocket-watch show animation for law and medical roles.

Price$20

Best RedM Scripts for a New Server

Economy, law, activities, roleplay tools and admin utilities. What to run, what it costs, and where the free options are.

Read the guide →

VORP vs RSG Core vs QBCore for RedM

Script availability, structure and inventory for each framework, and what "runs on VORP, RSG and QBCore" actually means.

Read the guide →

How to Install a RedM Script

Download, resources folder, SQL, start order, config and the escrow licence check. Then the five common errors.

Read the guide →

Free RedM Scripts Worth Installing

Eight free scripts, what each one does, what it needs, and what it does not do.

Read the guide →

How to Update RedM Scripts Without Breaking Your Config

The manual routine that keeps your config safe, and the automatic route that removes the routine.

Read the guide →

RedM Server Economy: How to Balance Money, Jobs and Shops

Sources, sinks, player shops, auctions, jobs and a stipend. The model, the starting numbers and the scripts.

Read the guide →

How to Set Up Jobs on a RedM Server

Job names and grades, duty, several jobs per character, badges, and making every script agree.

Read the guide →

How to Back Up a RedM Server

The database, resources, configs, licence files and txData. How to automate it, and how to test the restore.

Read the guide →

Cfx Escrow Explained for RedM Server Owners

Which files are encrypted, what you can still change, the licence file, and the error everyone hits once.

Read the guide →

RedM Server Performance: How to Reduce Lag

Measure first, then the usual causes: hot client loops, dead entities, unindexed queries and NPC systems tuned too high.

Read the guide →

Using Poggy Core in Your Own RedM Scripts

The free framework layer under your own resources: install, first script, menus, storage, jobs, standalone mode, diagnostics.

Read the guide →

RedM Script Subscriptions vs Buying Outright

The break-even maths with live prices, what cancelling does, how updates and licences work, and when each one wins.

Read the guide →

How to Choose a RedM Script: Checks Before You Buy

Framework claims, performance, open config, versions, support and video. Ten checks, and the red flags that should end the sale.

Read the guide →

How to Run a Player Economy on a RedM Server

Player-owned shops, auctions, taxes, moving prices and the weekly checks that keep a live economy healthy.

Read the guide →

How to Set Up Crafting on a RedM Server

Recipe chains, benches and campfires, job locks, skillchecks, telling players where ingredients come from, and pricing it all.

Read the guide →

How to Add Items to a RedM Server

Where each framework keeps its item list and icons, how to add an item to each, and the mistakes that break scripts.

Read the guide →

How to Set Up Fishing on a RedM Server

What makes fishing worth playing, installing it, bait and seasons, tuning the difficulty, and pricing the catch.

Read the guide →

How to Make a RedM Server

Server artifacts, txAdmin, the licence key, server.cfg, the database, a framework, ports, admins, backups and a launch checklist.

Read the guide →

RedM /me and /do Commands: Roleplay Tools Guide

Writing a good /me and /do, overhead text or chat, scene text, status labels, skillchecks instead of dice, animations, and keeping it all clean.

Read the guide →

RedM Server Event Ideas and How to Run Them

Eight events that bring players back, how to run each, when to schedule and announce them, prizes that keep the economy intact, and a checklist.

Read the guide →

RedM Animations: Dictionaries, Scenarios, Emotes

Dictionaries, clips and scenarios, playing one from Lua, props on bones, multi-step scenes, syncing, cleanup and emotes players use.

Read the guide →

RedM Admin Tools: Moderating a Roleplay Server

txAdmin, ACE permissions, framework admin menus, admin blips, reports and evidence, staff ranks, and a moderation checklist.

Read the guide →
Join the Discord Discord