Forensics Config
PoliceApp
Forensics Evidence System
Overview
The forensics system lets law enforcement collect scene evidence, store it in an evidence locker, analyze it in the lab, and attach the results to incident reports.
It is designed around this flow:
Evidence is created in the world.
Officers collect the evidence into an evidence bag.
Officers deposit the evidence bag at the evidence locker.
Authorized lab officers analyze stored evidence.
Analyzed evidence can be linked to police reports.
Evidence Types
The system supports these evidence types:
shell_casingblood_dnafingerprintweaponvehiclephotobodycam
By default, shell casings and blood DNA can be created automatically. Fingerprint evidence is not automatically generated unless another script calls the fingerprint export.
Configuration
Main settings are located in:
Important options:
Jobs
Only configured law enforcement jobs can use the evidence system:
Lab analysis uses LabAllowedJobs if set. If LabAllowedJobs is nil, it uses the same jobs as AllowedJobs.
Evidence Locker
Collected evidence must be deposited at an evidence locker before it can be analyzed.
Current locker location:
When an officer is near this location, they will see:
Pressing E opens the locker menu and lists collected evidence bags that can be stored.
Requirements:
The player must have an allowed police job.
The evidence must already be collected.
The player must be inside the locker zone.
If
LockerStoreRequiresBag = true, the player must have the matchingevidence_bag.
Forensics Lab
Stored evidence is analyzed from the Police App inside the tablet.
Current lab location:
To analyze evidence:
Open the tablet.
Open the Police App.
Go to the Forensics Lab tab.
Select stored evidence.
Run lab analysis.
Requirements:
The evidence status must be
stored.The officer must be inside the lab zone.
The officer must have an allowed lab job.
The officer grade must be at least
LabMinGrade.
Default required grade:
Collecting Evidence
Officers can collect nearby evidence in the world.
Default collection distance:
Default scanner distance:
If the scanner is enabled, nearby evidence is shown with markers. When close enough, press E to collect it.
Collected evidence is placed into an evidence bag:
The inventory item should exist in your inventory system and support metadata such as:
evidence_idevidence_typelabel
Shell Casings
Shell casing evidence can be created automatically when a player fires a valid weapon.
Relevant settings:
Shell casings can be collected from the street by authorized officers.
During lab analysis, shell casings can match by:
weapon serial
ballistic hash
Blood DNA
Blood DNA evidence can be created automatically when a player takes damage, depending on chance and cooldown.
Relevant settings:
During lab analysis, blood DNA is matched against the forensic profile database.
Fingerprints
Fingerprint evidence is supported, but automatic fingerprint creation is disabled by default:
Fingerprints can be created by another script using the export:
Example:
After a fingerprint is created, officers collect and store it like any other evidence.
During lab analysis, fingerprint evidence is matched against fingerprint_hash in the forensic profile database.
Tablet Police App
The Police App uses the forensics system in two places:
Forensics Lab
Used to view stored evidence and run analysis.
Path:
Incident Reports
Used to attach stored or collected evidence to a report.
Path:
Officers can browse the evidence locker and link relevant evidence to the report.
Evidence Status Flow
Evidence moves through these states:
Meaning:
created/uncollected: Evidence exists in the world.collected: Officer collected it into an evidence bag.stored: Evidence was deposited at the locker.analyzed result: Lab analysis generated match data.
linked: Evidence was attached to an incident report or case.
Troubleshooting
No evidence appears near the officer
Check:
ForensicsConfig.Enabledplayer job is in
AllowedJobsscanner state and scanner distance
evidence has not expired
database tables were created
Cannot store evidence
Check:
player is inside
LockerZonesevidence status is
collectedplayer has the correct
evidence_bagLockerStoreRequiresBag
Cannot analyze evidence
Check:
player is inside
LabZonesevidence status is
storedplayer job is allowed
player grade is at least
LabMinGrade
Fingerprints do not appear
This is expected unless another script creates fingerprint evidence. Use:
Recommended Setup Checklist
Add
evidence_bagto your inventory items.Add
forensic_scannerifRequireForensicScannerItem = true.Adjust
LockerZonesandLabZonesfor your police station MLO.Confirm police job names in
AllowedJobs.Set
LabMinGradeto match your department ranks.Add fingerprint export calls from your vehicle, burglary, robbery, or interaction scripts if fingerprint evidence is needed.
Last updated