Admin & Developer Tools

Commands, the in-game settings editor, admin permissions, builder usage, and progression SQL examples for oxide-animalcontroljob.

Reference for commands, permissions, builder output, and progression management.

Commands

CommandDescriptionPermission
/animalcontrol settingsOpens the in-game settings editor (all settings save to the database and apply live)Admin (group.admin)
/animalcontrolbuilderOpens the builder UIAdmin (group.admin)
/animalcontroltutorialsToggles tutorial prompts (also /animalcontrol tutorials)None
/animalcontroltutorialresetClears tutorial seen-state (also /animalcontrol tutorialreset)None

Settings Editor

/animalcontrol settings opens the in-game editor for nearly every setting: calls and dispatch, offices and the full event list (with in-world scene placement), animals, the tranquilizer, stealth and behavior, the shelter delivery point, NPCs and blips, props, animations, uniforms, model replacements and tutorials. Values are checked before saving, and a bad value is rejected with a reason. Saved changes go to the database and apply live, with no restart.

  • When the editor refuses a change, it shows the actual reason.
  • If a setting can't be saved to the database, the editor says it couldn't be saved and the old value stays. A reset that fails shows a message too.
  • Logging out with the editor open closes it.
  • The editor's text comes from locales/en.json and can be translated.

It uses the same admin permission as the builder (see below). See How Settings Work for how the editor relates to the config files.

The dart gun, gun item and dart item (Config.Tranquilizer.weaponName, weaponItem and ammoItem) can't be changed while anyone is on shift. End active shifts first.

Builder

/animalcontrolbuilder opens the in-game builder used to create office locations and event sets without hand-editing config files.

Permission

This command is restricted to admins. To make someone an admin, add them to the admin group and grant that group the admin ace in your server.cfg:

server.cfg
add_principal identifier.license:<their-license> group.admin
add_ace group.admin admin allow

If you already run QBCore, Qbox, or ESX admins, they pass automatically — no extra setup is needed.

Current builder workflow

Create an office location.

Set the vehicle spawn.

Finish the location.

Add event points for each job type.

Set the shelter delivery point.

Export the result.

Export behavior

Current exports are written to the resource root as:

  • exported_locations.lua
  • exported_events.lua

They are also printed to the server console.

The builder is a way to capture accurate coordinates and event data. What you do with that export depends on whether the resource has ever started:

  • On a running install (the normal case): offices, events, and the shelter point are stored in the database and edited in-game with /animalcontrol settings (admins only), under Locations & Events: Offices, Shelter drop-off and Call scenes (Call scenes is on the Advanced tab). Use the exported coordinates as the values you enter there, or use Place in world on a coordinate to set it by standing where you want it — changes save to the database and apply live. Copying the export into shared/config/locations.lua or shared/config/events.lua only changes the factory defaults: restarting alone changes nothing on a server that has already started once. It takes effect after a restart and pressing Reset to default on Offices, Shelter drop-off and Call scenes in the menu. Each reset replaces that whole stored setting with the file's version, so anything you added or changed in the menu and didn't also put in the file is lost. The menu has no fields for an office's menu camera or a wildlife call's patrol waypoints, so this is how you bring those in from the builder.
  • Before the resource's first-ever boot: the config files are the factory defaults that get imported into the database on that first start, so you can paste the exported content into shared/config/locations.lua and shared/config/events.lua at that point and it will be picked up with no reset needed.

See How Settings Work for the full explanation.

Builder coverage

The builder supports:

  • office location creation
  • vehicle spawn capture
  • per-type event creation (aggressive, stray, wildlife, deceased)
  • shelter delivery point capture
  • import of current config
  • event editing and deletion
  • undo
  • vehicle preview testing
  • 3D marker previews

Tutorial Commands

/animalcontroltutorials

Toggles the local player's tutorial system on or off. /animalcontrol tutorials does the same.

/animalcontroltutorialreset

Clears the local player's tutorial progress so all prompts can show again. /animalcontrol tutorialreset does the same.

Progression Management

Player progress lives in the shared job_progression database table (used by all current Oxide jobs), not in a table of its own. Rows for this resource use job = 'animalcontrol'.

In the queries below, replace the ? with the character's ID in quotes — for example WHERE char_id = 'ABC12345'. You can run these in your database tool (HeidiSQL, phpMyAdmin, etc.).

View progression

SELECT *
FROM job_progression
WHERE char_id = ?
  AND job = 'animalcontrol';

Reset progression

UPDATE job_progression
SET level = 1,
    total_count = 0,
    daily_streak = 0,
    last_activity_date = NULL,
    complaints = 0,
    timeout_until = NULL
WHERE char_id = ?
  AND job = 'animalcontrol';

Clear complaints

UPDATE job_progression
SET complaints = 0
WHERE char_id = ?
  AND job = 'animalcontrol';

Clear timeout

UPDATE job_progression
SET timeout_until = NULL
WHERE char_id = ?
  AND job = 'animalcontrol';

Set level manually

UPDATE job_progression
SET level = 3
WHERE char_id = ?
  AND job = 'animalcontrol';

Notes

  • Shift pay is deposited when the shift ends, into the account set in Config.Payment.payoutAccount (bank by default). Pay for a shift that ended on a disconnect or logout waits in the job_pending_payouts table and is paid at that character's next login.
  • Destroyed-truck fines and animal-kill fines are charged immediately, from the account set in Config.Payment.fineAccount (cash by default).
  • The builder and settings-editor permission checks happen on the server, so players cannot bypass them. The settings editor checks again every time something is saved. Refused admin commands and settings attempts are written to the server log: one line per player and action per minute, so someone repeating a command can't flood the log. The log also records whether each settings change came from the menu or another resource.

Next Steps