Admin Tools
Every /gangs command, the staff admin panel, the live settings editor, and how to grant staff access in Oxide Gangs.
Every command in oxide-gangs, what the staff admin panel can do, and how to grant staff access.
Permissions
There is exactly one level of staff access in oxide-gangs. A command is either staff-only or it is open to everyone — there are no tiers.
Staff commands check with o-link, which counts a player as staff if they hold either of these two FiveM permissions (an "ACE" is FiveM's built-in permission system — a named permission you grant to a group in server.cfg):
- the
commandACE, or - the
adminACE.
You are probably already set up
Stock QBCore, QBX, and ESX server configs ship with this line, which grants your admins the command ACE:
add_ace group.admin command allowIf that line is in your server.cfg, your existing admins can use every staff command in this resource with no further changes.
If you need to add it
Two lines. Put the player in the admin group, then grant that group the permission:
add_principal identifier.license:YOUR_LICENSE_HERE group.admin
add_ace group.admin admin allowBeing a member of group.admin is not enough by itself — you need the add_ace line too. Groups that inherit from group.admin (such as group.superadmin) get it automatically.
On ESX, a player your framework already treats as an admin also passes, even without either ACE.
The server console
The server console (and txAdmin's console) always counts as staff. You can run any staff command there without setting up permissions at all. Commands that need a game window — the ones that open a panel — tell you so instead of failing silently.
Denied attempts are logged
When a non-admin tries a staff command, they get "You do not have permission to do that." and a warning is written to your server log with their identifier.
Commands Overview
Everything lives under one command, /gangs, with a subcommand after it. Typing /gangs on its own prints the usage line, and typing it in the server console prints the full list of subcommands.
Staff commands
| Command | Description | Works in console |
|---|---|---|
/gangs admin | Open the staff admin panel | No |
/gangs settings | Open the live settings editor | No |
/gangs create | Create a gang | Yes |
/gangs disband | Disband a gang | Yes |
/gangs setgang | Put a player in a gang, or change their rank | Yes |
/gangs removeplayer | Remove a player from their gang | Yes |
/gangs fund | Add or remove treasury money | Yes |
/gangs requests | List pending gang creation requests | Yes |
/gangs approve | Approve a request and give the gang its internal name | Yes |
/gangs deny | Deny a request | Yes |
Player commands
| Command | Description |
|---|---|
/gangs dashboard | Open your gang dashboard |
/gangs wars | Open your gang dashboard on the Wars screen |
/gangs info | Show your gang, your rank, and the member count |
/gangs request | Request a new gang |
/gangs apply | Apply to join a gang |
/gangs accept | Accept a pending invite |
/gangs decline | Decline a pending invite |
/gangs leave | Leave your gang |
If you run oxide-chat, all of these appear in chat autocomplete as you type /gangs. On the stock chat resource (or another chat replacement) only /gangs itself is suggested — the subcommands still work, they just are not autocompleted.
Staff Command Details
/gangs admin
Opens the staff admin panel. See The Admin Panel.
Usage:
/gangs admin- Success: the panel opens on screen.
- No permission: "You do not have permission to do that."
- From console: "[oxide-gangs] This command must be run in-game."
/gangs settings
Opens the live settings editor. See The Settings Editor.
Usage:
/gangs settings- Success: the settings panel opens on screen.
- No permission: "You do not have permission to do that."
- From console: "[GangSettings] This command must be run in-game."
/gangs create
Creates a gang immediately, with no request needed.
Usage:
/gangs create [name] [label]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | The internal name. Lowercase letters, numbers, and underscores, 3–40 characters, starting with a letter. This is what other scripts use |
| label | string | No | The display name players see. May contain spaces. Defaults to the internal name |
Examples:
/gangs create ballas The Ballas -- creates "The Ballas", internally 'ballas'
/gangs create vagos -- creates "vagos", display name also "vagos"- Success: "Gang
<label>created." - Name already used: "Could not create gang: That name is already taken."
- Bad name: "Could not create gang: Names must be 3-40 characters: lowercase letters, numbers and underscores, starting with a letter."
- Name on the blocklist: "Could not create gang: That name is not allowed."
- Server gang limit reached: "Could not create gang: The server has reached its gang limit."
The new gang has no members. Add one with /gangs setgang, or from the admin panel.
/gangs disband
Disbands a gang. Every member is removed, its whole fleet is deleted, and any war it is in is resolved. Its internal name becomes free to use again immediately.
Usage:
/gangs disband [name]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | The gang's internal name (e.g. ballas), not its display name |
Examples:
/gangs disband ballas- Success: "Gang
<label>disbanded." - Failure: "That gang does not exist."
The gang's row is kept in the database for history, so old war records still name it correctly years later. It just stops being an active gang.
If the gang was in a war, that war resolves automatically — a pending declaration is cancelled, and an active war is forfeited to the other side, who take the whole pot.
/gangs setgang
Puts a player in a gang, or changes the rank of someone already in it.
Usage:
/gangs setgang [id] [gang] [rank]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | number | Yes | The target's server ID. Players can see their own with most server-info commands; you can see everyone's in txAdmin |
| gang | string | Yes | The gang's internal name |
| rank | number | No | The rank number to seat them at. Defaults to 0 |
Examples:
/gangs setgang 12 ballas -- puts player 12 in the Ballas at the lowest rank
/gangs setgang 12 ballas 3 -- puts player 12 in the Ballas at rank 3
/gangs setgang 12 vagos 2 -- moves player 12 from their current gang to the Vagos at rank 2- Success: "
<player>is now in<gang>at rank<rank>." - Gang does not exist: "That gang does not exist."
- Player is offline or the ID is wrong: "Invalid arguments."
- Player is connected but has no character loaded yet: "Player not found."
- Rank does not exist in that gang: "Invalid rank."
- The gang is at its member cap: "That gang is full."
If the player is already in a different gang, they are moved. There is no need to remove them first.
/gangs removeplayer
Removes a player from whatever gang they are in.
Usage:
/gangs removeplayer [id]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | number | Yes | The target's server ID |
Examples:
/gangs removeplayer 12- Success: "
<player>was removed from their gang." - Not in a gang: "You are not in a gang."
- Player offline or ID wrong: "Player not found."
The player must be online for this command. To remove someone who is offline, use the admin panel — find the gang, find them in the roster, and remove them there. The removal sticks when they next log in.
/gangs fund
Adds money to a gang treasury, or takes it out. This does not touch any player's own money.
Usage:
/gangs fund [gang] [amount]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| gang | string | Yes | The gang's internal name |
| amount | number | Yes | How much to add. Use a negative number to take money out |
Examples:
/gangs fund ballas 50000 -- adds $50,000 to the Ballas treasury
/gangs fund ballas -10000 -- removes $10,000 from it- Success: "Treasury updated. New balance: $
<balance>" - Amount is zero: "Invalid amount."
- Taking out more than the gang has: "The treasury does not have enough money."
- Gang does not exist: "Invalid arguments."
Every use is written to the gang's transaction history and its activity log.
/gangs requests
Lists every pending gang creation request, with its ID, the requested display name, and who asked.
Usage:
/gangs requests- With requests: one line per request — "Request #
<id>:<label>— by<player>" - With none: "No pending gang requests."
In game the lines appear as notifications. In the server console they are printed one per line.
Use /gangs admin instead if you want to read the players' full form answers before deciding.
/gangs approve
Approves a gang creation request. This is where you assign the gang's internal name.
Usage:
/gangs approve [id] [name]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | number | Yes | The request ID, from /gangs requests or the admin panel |
| name | string | Yes | The internal name to give the gang. Lowercase letters, numbers, and underscores, 3–40 characters, starting with a letter |
Examples:
/gangs approve 4 ballas- Success: "Request handled." The requester is notified: "Your gang
<label>was approved!" - Request already handled or ID wrong: "Request not found."
- Name already taken: "That name is already taken."
- Bad name: "Names must be 3-40 characters: lowercase letters, numbers and underscores, starting with a letter."
- Requester joined another gang while waiting: "The requester has since joined a gang; request rejected." (the request is closed)
- A creation fee is set and the requester is offline: "The requester must be online to pay the creation fee."
- A creation fee is set and they cannot afford it: "The requester cannot afford the creation fee."
On success the gang is created, the requester is seated at the highest boss rank, their motto answer becomes the gang's motto, and any creation fee is taken from their bank account. If the gang creation fails for any reason after a fee was taken, the fee is refunded.
/gangs deny
Denies a gang creation request.
Usage:
/gangs deny [id]Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | number | Yes | The request ID |
Examples:
/gangs deny 4- Success: "Request handled." The requester is notified: "Your gang request for
<label>was rejected." - Request already handled or ID wrong: "Request not found."
The re-submit cooldown runs from when the request was filed, not from the denial — so a request denied quickly still blocks re-submitting for a while, but one that sat pending past the cooldown can be re-filed straight away.
Player Command Details
These are open to everyone. They are listed here so you know what your players can do.
| Command | Notes |
|---|---|
/gangs dashboard | Requires being in a gang. Otherwise: "You are not in a gang." |
/gangs wars | Same, but lands on the Wars screen |
/gangs info | Prints "<gang> — <rank> (<n> members)" |
/gangs request | Opens the request form. Refused if creation mode is admin_only ("Gang creation requests are disabled on this server.") or the player is already in a gang |
/gangs apply <gang> [message] | Applies to join. The message may contain spaces. Refused if already in a gang, if the gang does not exist, or if they already have a pending application there |
/gangs accept | Accepts a pending invite. "You have no pending invite." if there is none or it has expired |
/gangs decline | Declines a pending invite. The inviter is told |
/gangs leave | Leaves their gang. The last boss of a gang with other members is refused: "Promote another boss before leaving, or disband the gang." A sole remaining boss leaving disbands the gang |
The Admin Panel
Open with /gangs admin. This is where most staff work happens. Press ESC to close it.
Requests
Every pending gang creation request, showing the requested display name, who asked, and their full answers to your form questions. Answers to questions you have since deleted or renamed are still shown, labelled by their original key, so nothing is lost.
Approve a request by typing the internal name you want to assign and confirming. Reject with one click.
Gangs
The list of every active gang, with member count, treasury balance, whether it has a base, and its fleet size. Select one to open its detail view:
| Section | What you can do |
|---|---|
| Identity | Change the display name, colour, motto, logo URL, and enable or disable the gang |
| Members | See the roster with ranks, join dates, and who is online. Add a member by server ID, change anyone's rank, remove anyone — including offline characters |
| Ranks | Full rank editor: add, rename, delete ranks and set what each may do. Unlike the gang's own bosses, you can create and remove boss ranks here |
| Treasury | Add or remove money, and read the full transaction history |
| Base | Place, edit, or delete the gang's base — see below |
| Fleet | Add vehicles by model, rename them, set a minimum rank, remove them, and recover any that got stranded |
| Wars | Every war involving this gang, live and historical, with a Force end button |
| Activity log | The gang's full log |
| Disband | Disband the gang, with a confirm step |
Placing a base
With a gang selected, open Base. You place four kinds of point, each with an in-world picker: the panel hides, you aim at the spot with a crosshair, and you confirm.
| Point | What it is |
|---|---|
| Base position | Where the base is. Anchors the map blip |
| Stash point | Where members open the gang stash |
| Garage point | Where members take vehicles out and return them |
| Vehicle spawn bays | Where those vehicles physically appear. Add as many as you like |
Two picker styles are offered:
- Place / Ray — the aim-and-confirm point picker. The base position offers it as Place; stash and garage points offer the same picker as Ray.
- Entity — offered on the stash and garage points only. Snaps to whatever prop you are looking at — useful for putting a stash on an existing crate, locker, or safe.
Spawn bays use a ghost vehicle instead, so you can see and set the exact position and heading a car will spawn at. It uses the gang's first fleet vehicle if it has one, otherwise the model in Config.Garage.bayPreviewModel.
You can also set a minimum rank for the base overall.
If in-world placement is unavailable you will see "In-world placement needs an updated o-link. Update o-link to use this." — update o-link and try again.
Territories
The territory editor. It shows a map of Los Santos with every zone drawn on it, plus a list.
For each territory you can set the display name, colour, whether it is enabled, its map blip (on/off, icon, colour, size), and its four economy modifiers (production yield, growth rate, sale price, buyer density).
You draw a zone two ways:
- On the map — click to add points, drag a point to move it, right-click a point to remove it. Zones drawn this way cover all heights.
- In the world — click Redraw in world and walk the outline on foot.
A zone needs at least three points. If you try to save without one you get "Draw the zone first — a territory needs at least three points."
The panel also shows each zone's current owner, whether it is contested and how long until that contest settles, and the top five gangs by influence there.
Wars
Per gang, from the gang detail view. Shows live declarations, the active war with its score, and history.
Force end ends a war immediately. A pending declaration is cancelled. An active war is settled as a draw, and both stakes are refunded in full — nobody is punished for a war staff had to stop.
The Settings Editor
Open with /gangs settings. Press ESC to close it.
Every setting in Configuration is in here, grouped exactly the same way:
| Category | Groups |
|---|---|
| Core | Creation |
| Economy | Treasury |
| World | Bases & Stash, Garage, Territory, Wars, Radio |
| System | Logs |
Settings are split into a Basic tab (the ones most servers change) and an Advanced tab (the finer tuning). There is a search box, and each setting shows whether it is still at its default or has been changed. Every setting has a Reset to default option.
Click Save Changes to apply. Changes take effect immediately — no restart, and no reconnecting players.
If part of a save is rejected you will see "Some settings were rejected — check the highlighted fields", with the offending fields marked. The rest of the save still applies.
Common Staff Tasks
Set up a new gang from scratch
/gangs admin→ Create gang. Internal name lowercase (e.g.ballas), display name as you like.- Select it → Members → Add member, with the founder's server ID and the boss rank number (3 on the default ladder).
- Select it → Base → place the base position, stash point, garage point, and a spawn bay or two.
- Select it → Fleet → add a vehicle or two by model name.
Give a gang its starting money
/gangs fund <gang> <amount>, or the Treasury section of the admin panel.
Remove a troublemaker from a gang while they are offline
/gangs admin → select the gang → Members → Remove next to their name. It sticks when they next log in.
Stop a war that got out of hand
/gangs admin → select either gang → Wars → Force end. It settles as a draw and both gangs get their stake back.
Reset the territory map to the shipped districts
Empty the gang_territories table in your database and restart the resource. The shipped 34 districts are seeded again. This also clears all influence and ownership.
Turn off a whole system
- Territories:
/gangs settings→ Territory → Territories enabled → off. - Wars:
/gangs settings→ Wars → Wars enabled → off. - Player gang requests:
/gangs settings→ Creation → Creation mode → Admins only. - Gang radio channels:
/gangs settings→ Radio → Gang channels → off. - Police alerts:
/gangs settings→ Territory or Wars → Police alerts → Alerts enabled → off.
Next Steps
- Configuration — every setting in the editor, explained
- Features — how each system works
- Exports — API reference for developers
- Troubleshooting — when something is not working