For the complete documentation index, see llms.txt. This page is also available as Markdown.

F.A.Q

Common questions, common errors, and their quick fixes.

The /safezonecreator command does nothing

Check permissions:

  • Framework admin (ESX/QB/QBX admin flag), or

  • ACE: default is command.safezone — must match ace in config/main.lua and your server.cfg principals.

Restart the resource after config changes.

Zones are not saving

The server writes to data/zones.json. If the file is missing, corrupt, or the folder is not writable, the resource logs repeated load errors and zones will not persist.

Fix: ensure data/ exists, restore valid JSON ({} at minimum), and check file permissions on your host.

Players are not disarmed in a no-weapons zone

Disable Firearms uses disarmPlayer in config/main.lua. For ox_inventory, the default ox_inventory:disarm event must work. For other inventories, extend that function to call your inventory’s disarm API.

No enter/leave notification

Check three layers:

  1. notifications.enabled = true in config

  2. Per-zone Notification enabled in the editor

  3. customNotificationstrue shows the NUI banner; false uses LT.Notify toasts (needs a working notify backend from setup.notify)

Zone borders are invisible

The zone needs Show Zone Borders on in the editor. You must also be within zoneDistance (default 500 units) for the debug outline to draw.

Job whitelist does not work

Job name in the whitelist must match the framework job id exactly (police, not Police). Min Grade is inclusive — grade 2 allows grade 2 and above if your framework uses numeric grades.

Whitelisted players are exempt from restrictions; they still physically enter the zone.

Server feels heavy with many zones or busy areas

Raise intervals in config/main.luasafezone (vehicleScanMs, pedCollisionMs, vehicleCollisionMs). Disable heavy per-zone options (vehicle collision scans, ghost mode on huge areas) where you do not need them.

Last updated