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 command ACE, or
  • the admin ACE.

You are probably already set up

Stock QBCore, QBX, and ESX server configs ship with this line, which grants your admins the command ACE:

server.cfg
add_ace group.admin command allow

If 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:

server.cfg
add_principal identifier.license:YOUR_LICENSE_HERE group.admin
add_ace       group.admin                          admin allow

Being 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

CommandDescriptionWorks in console
/gangs adminOpen the staff admin panelNo
/gangs settingsOpen the live settings editorNo
/gangs createCreate a gangYes
/gangs disbandDisband a gangYes
/gangs setgangPut a player in a gang, or change their rankYes
/gangs removeplayerRemove a player from their gangYes
/gangs fundAdd or remove treasury moneyYes
/gangs requestsList pending gang creation requestsYes
/gangs approveApprove a request and give the gang its internal nameYes
/gangs denyDeny a requestYes

Player commands

CommandDescription
/gangs dashboardOpen your gang dashboard
/gangs warsOpen your gang dashboard on the Wars screen
/gangs infoShow your gang, your rank, and the member count
/gangs requestRequest a new gang
/gangs applyApply to join a gang
/gangs acceptAccept a pending invite
/gangs declineDecline a pending invite
/gangs leaveLeave 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:

ParameterTypeRequiredDescription
namestringYesThe internal name. Lowercase letters, numbers, and underscores, 3–40 characters, starting with a letter. This is what other scripts use
labelstringNoThe 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:

ParameterTypeRequiredDescription
namestringYesThe 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:

ParameterTypeRequiredDescription
idnumberYesThe target's server ID. Players can see their own with most server-info commands; you can see everyone's in txAdmin
gangstringYesThe gang's internal name
ranknumberNoThe 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:

ParameterTypeRequiredDescription
idnumberYesThe 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:

ParameterTypeRequiredDescription
gangstringYesThe gang's internal name
amountnumberYesHow 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:

ParameterTypeRequiredDescription
idnumberYesThe request ID, from /gangs requests or the admin panel
namestringYesThe 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:

ParameterTypeRequiredDescription
idnumberYesThe 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.

CommandNotes
/gangs dashboardRequires being in a gang. Otherwise: "You are not in a gang."
/gangs warsSame, but lands on the Wars screen
/gangs infoPrints "<gang><rank> (<n> members)"
/gangs requestOpens 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 acceptAccepts a pending invite. "You have no pending invite." if there is none or it has expired
/gangs declineDeclines a pending invite. The inviter is told
/gangs leaveLeaves 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:

SectionWhat you can do
IdentityChange the display name, colour, motto, logo URL, and enable or disable the gang
MembersSee 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
RanksFull 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
TreasuryAdd or remove money, and read the full transaction history
BasePlace, edit, or delete the gang's base — see below
FleetAdd vehicles by model, rename them, set a minimum rank, remove them, and recover any that got stranded
WarsEvery war involving this gang, live and historical, with a Force end button
Activity logThe gang's full log
DisbandDisband 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.

PointWhat it is
Base positionWhere the base is. Anchors the map blip
Stash pointWhere members open the gang stash
Garage pointWhere members take vehicles out and return them
Vehicle spawn baysWhere 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:

CategoryGroups
CoreCreation
EconomyTreasury
WorldBases & Stash, Garage, Territory, Wars, Radio
SystemLogs

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

  1. /gangs adminCreate gang. Internal name lowercase (e.g. ballas), display name as you like.
  2. Select it → MembersAdd member, with the founder's server ID and the boss rank number (3 on the default ladder).
  3. Select it → Base → place the base position, stash point, garage point, and a spawn bay or two.
  4. 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 → MembersRemove next to their name. It sticks when they next log in.

Stop a war that got out of hand

/gangs admin → select either gang → WarsForce 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 settingsTerritoryTerritories enabled → off.
  • Wars: /gangs settingsWarsWars enabled → off.
  • Player gang requests: /gangs settingsCreationCreation modeAdmins only.
  • Gang radio channels: /gangs settingsRadioGang channels → off.
  • Police alerts: /gangs settingsTerritory or WarsPolice alertsAlerts enabled → off.

Next Steps