Troubleshooting

Symptom-indexed checklists for common oxide-police issues — startup failures, clock-in problems, MDT/radar/mugshot/bodycam/ESX job sync diagnostics.

Common issues for oxide-police.

Startup

Duty & Hiring

MDT

Radar

Mugshot & Booking

Field Interactions

Custody

Bodycam

ESX Compatibility

Banking & Fines

General Debugging

Enable debug mode

-- shared/config.lua
Config.Debug = true

Enables verbose console output from the module boot logs and per-call diagnostics. Note that /police duty is disabled by default because Config.RequireStationClockIn defaults to true (officers must use a station clock-in zone); set it to false to re-enable the /police duty command and the radial duty toggle.

Useful checks

  • Confirm oxide-police initialised by looking for the boot log lines from each module (Departments, Officers, Duty, MDT, Custody, etc.).
  • Use the mugshot Preview in /police admin → Detention Mugshot to check booth placement, then book a test suspect to validate the full capture-and-upload pipeline.
  • Turn on debug-level logging in your o-link / oxide-logger setup to surface bridge calls — most cross-resource issues are visible there.

Getting Help

If none of the above resolve your issue:

Enable debug mode and reproduce the problem.

Check your server console for errors from oxide-police, o-link, oxmysql, and screenshot-basic.

Note your framework (QBCore / Qbox / ESX), inventory resource, and dispatch resource.

Contact Oxide Studios support with your debug output.

Next Steps