Oxide Gangs

Database-driven gang system for FiveM — player-run crews with dashboards, shared treasuries, bases and vehicle fleets, a slow-burn territory map, and staked gang wars.

Oxide Gangs is a complete gang system for FiveM. It replaces the static gang list your framework ships with a database-driven registry that server owners and players manage from in-game panels instead of config files: gangs are created on request and approved by staff, bosses run their own crew from a dashboard (/gangs dashboard), and staff keep an admin panel (/gangs admin) over the whole thing.

On top of the roster it adds the three systems a gang server actually needs — a shared treasury, a base with a stash and a vehicle fleet, and a territory map where turf changes hands slowly, through weeks of activity rather than a single gunfight. Gang wars are declared with a matched treasury stake, scored on kills and king-of-the-hill capture points, and settled on a real-hours clock.

It supports QBCore, QBX (Qbox), and ESX Legacy through o-link. On QBCore and Qbox it mirrors every gang and every member back into the framework, so third-party scripts that read PlayerData.gang keep working untouched. On ESX — which has no gang concept at all — this registry becomes the gang system, and o-link serves gang lookups straight from it.

Key Features

  • Gang registry as the single source of truth — Gangs, ranks, permissions, and members live in the database and are mirrored into QBCore / Qbox on every boot, so the registry always wins after a restart
  • Player-driven creation — Players submit a request through a form you build question by question; staff approve or deny from the admin panel or chat, and approval creates the gang, seats the requester as boss, and optionally charges a fee
  • Per-gang rank ladder — Twelve permission flags (invite, kick, promote, demote, manage ranks, withdraw, deposit, stash, garage, war, announce, edit gang), editable by the gang's own bosses
  • Gang dashboard — Overview, roster, rank editor, applications, treasury, garage, territory standings, wars, leaderboard, and a boss-only activity log
  • Two ways to recruit — Nearby in-person invites with /gangs accept, or written applications reviewed from the dashboard
  • Shared treasury — Full transaction ledger, rank-gated deposits and withdrawals, staff funding, and optional delegation to a real banking account
  • Gang bases — Placed in-world by staff: a member-only map blip, an inventory stash with configurable size, and a garage point with multiple vehicle spawn bays
  • Server-spawned fleet — Gang vehicles survive players leaving the area, keep mods, fuel, and damage between sessions, and can be returned by any member with garage rights
  • Territory influence engine — Influence comes from drug sales, base use, and physical presence inside a zone; it is capped hourly per gang and per character, and bleeds away faster the more turf a gang holds
  • No instant flips — Overtaking the owner opens a contest window measured in real hours, and standings settle when it closes
  • 34 pre-drawn Los Santos districts — Seeded on first boot, each with its own polygon, colour, and economy modifiers; reshape, retune, or delete them from the admin panel
  • Member-only turf map — Every territory painted as a translucent fill on the minimap and pause map in the owning gang's colour
  • Gang wars — Declare with a matched treasury stake, score on validated kills and king-of-the-hill capture points, settle on the clock; winner takes the pot, a draw or ceasefire refunds both sides
  • Anti-abuse throughout — Kill influence can never exceed a share of activity-earned influence, repeat kills on the same victim score nothing, kill reports are distance-checked server-side, and one character can only supply part of each hourly cap
  • Leaderboard — Server-wide gang ranking on wins, turf held, and total influence
  • Optional police alerts — When turf goes contested, changes hands, a war starts, or a capture point spawns
  • Optional gang radio — A private channel per gang, registered into oxide-radio and gated on membership
  • Live settings editor/gangs settings changes nearly every setting in game with no restart and no file editing
  • Locale-driven stringslocales/*.json across notifications, commands, the dashboard, the admin panel, and the settings editor

Requirements

Required

ResourcePurpose
o-linkFramework abstraction for character, job, money, inventory, notify, target, menu, banking, dispatch, placement
ox_libLocale strings, shared runtime
oxmysqlDatabase persistence
FrameworkOne of qb-core, qbx_core, or es_extended
ResourcePurpose
An inventoryAny inventory o-link supports, for the gang base stash
A target resourceAny target resource o-link supports, for the base stash and garage interaction points

Optional

ResourcePurpose
oxide-dispatchTerritory and war alerts land as proper dispatch calls instead of a client relay
oxide-radioGives every gang its own private radio channel
oxide-bankingHolds gang treasury balances as real bank accounts
oxide-policeAdds a Gang Intel tab to the MDT (gangs, turf, wars)
oxide-blackmarketGang standing — selling on your own turf pays extra reputation
Oxide drug resourcesTerritory modifiers tune yield, growth, price, and buyer density per zone

Supported Frameworks

FrameworkSupport
QBCore (qb-core)Full
QBX (qbx_core)Full
ESX Legacy (es_extended)Full

Quick Start

Place oxide-gangs in your server's resources directory — ideally inside your [oxide] folder next to o-link.

Start ox_lib, oxmysql, your framework, and o-link before oxide-gangs:

server.cfg
ensure ox_lib
ensure oxmysql
ensure o-link
ensure oxide-gangs

Start the server. The database tables are created automatically on first boot; sql/install.sql ships for manual installs.

Join and run /gangs settings to pick a creation mode, member cap, and creation fee, then /gangs admin to create a test gang and place its base.

See the Installation Guide for the full setup flow.

Configuration lives in the database

shared/config.lua supplies the factory defaults. On first boot they are copied into the shared oxide_settings table, and from then on the database is what the resource reads — edit settings in game with /gangs settings, not in the files. Two files stay file-only: the default rank ladder (shared/config/grades.lua) and the shipped territory map (shared/config/territories.lua, read once when the territory table is empty).

Documentation