Installation
Install STG Robbery Pack on your FiveM server, add the items to your inventory, turn off the default robbery scripts and start it.

STG Robbery Pack
Download the script
Sign in to the Cfx.re portal with the account you used at checkout and download stg-robberypack from Granted Assets.
Move the resource
Extract the zip and place the stg-robberypack folder inside the [STG] category folder in your resources directory.
resources/
└── [STG]/
├── stg_lib/
└── stg-robberypack/Install the dependencies
The Robbery Pack needs ox_lib, oxmysql, ox_target and stg_lib. Skip this step if your server already runs them. Optional resources are listed on the Dependencies page.
Turn off the default robbery scripts
QBOX and QBCore ship their own bank and store robberies. Remove or comment them out in server.cfg so two scripts do not fight over the same vaults, tills and doors:
# ensure qbx_bankrobbery
# ensure qbx_storerobbery
# ensure qb-bankrobbery
# ensure qb-storerobbery
# ensure qb-jewelleryAdd the items
The pack uses 27 items: the tools that open things (lockpick, drill, thermite, hack devices, rope, C4) and the loot that comes out (gold, jewelry, electronics, drugs). Most QBOX and QBCore servers already have many of them, add only the ones you are missing. The crowbar is the vanilla weapon_crowbar weapon and needs no entry.
Pick the tab for your inventory. QBOX servers, and any ESX or QBCore server running ox_inventory, use the ox_inventory tab.
Add these entries to ox_inventory/data/items.lua:
['advancedlockpick'] = { label = 'Advanced Lockpick', weight = 500, stack = true, close = true, description = 'Opens locked doors quietly' },
['blowtorch'] = { label = 'Blowtorch', weight = 2000, stack = true, close = true, description = 'Cuts through container doors' },
['boltcutter'] = { label = 'Bolt Cutter', weight = 1500, stack = true, close = true, description = 'Cuts padlocks' },
['c4'] = { label = 'C4 Explosive', weight = 1000, stack = true, close = true, description = 'Plastic explosive charge' },
['coke_brick'] = { label = 'Coke Brick', weight = 1000, stack = true, close = true, description = 'A pressed brick of cocaine' },
['cokebaggy'] = { label = 'Bag of Coke', weight = 100, stack = true, close = true, description = 'A small bag of cocaine' },
['diamond_ring'] = { label = 'Diamond Ring', weight = 100, stack = true, close = true, description = 'A ring with a real diamond' },
['drill'] = { label = 'Drill', weight = 2000, stack = true, close = true, description = 'Heavy drill for vault locks' },
['electronickit'] = { label = 'Electronic Kit', weight = 500, stack = true, close = true, description = 'Hack device for ATMs' },
['gatecrack'] = { label = 'Gatecrack', weight = 500, stack = true, close = true, description = 'EMP device for door locks' },
['goldbar'] = { label = 'Gold Bar', weight = 1000, stack = true, close = true, description = 'A solid gold bar' },
['goldchain'] = { label = 'Gold Chain', weight = 200, stack = true, close = true, description = 'A heavy gold chain' },
['laptop'] = { label = 'Laptop', weight = 2000, stack = true, close = true, description = 'A stolen laptop' },
['license_plate'] = { label = 'License Plate', weight = 500, stack = true, close = true, description = 'A stolen license plate' },
['lockpick'] = { label = 'Lockpick', weight = 150, stack = true, close = true, description = 'Opens car and house locks' },
['meth'] = { label = 'Meth', weight = 100, stack = true, close = true, description = 'A bag of meth' },
['phone'] = { label = 'Phone', weight = 200, stack = true, close = true, description = 'A stolen phone' },
['rolex'] = { label = 'Rolex Watch', weight = 200, stack = true, close = true, description = 'An expensive watch' },
['rope'] = { label = 'Rope', weight = 1000, stack = true, close = true, description = 'Strong enough to pull an ATM off the wall' },
['screwdriverset'] = { label = 'Screwdriver Set', weight = 500, stack = true, close = true, description = 'Removes plates and forces trunks' },
['security_card_01'] = { label = 'Security Card', weight = 50, stack = true, close = true, description = 'Opens keycard doors' },
['sledgehammer'] = { label = 'Sledgehammer', weight = 3000, stack = true, close = true, description = 'Smashes ATMs open' },
['tablet'] = { label = 'Tablet', weight = 1000, stack = true, close = true, description = 'A stolen tablet' },
['thermite'] = { label = 'Thermite', weight = 1000, stack = true, close = true, description = 'Burns through gate locks' },
['trojan_usb'] = { label = 'Trojan USB', weight = 100, stack = true, close = true, description = 'Hacks vault keypads and panels' },
['weed_brick'] = { label = 'Weed Brick', weight = 1000, stack = true, close = true, description = 'A pressed brick of weed' },
['weed_skunk'] = { label = 'Skunk Weed', weight = 100, stack = true, close = true, description = 'A bag of skunk weed' },Add these lines to QBShared.Items in qb-core/shared/items.lua:
advancedlockpick = { name = 'advancedlockpick', label = 'Advanced Lockpick', weight = 500, type = 'item', image = 'advancedlockpick.png', unique = false, useable = false, shouldClose = true, description = 'Opens locked doors quietly' },
blowtorch = { name = 'blowtorch', label = 'Blowtorch', weight = 2000, type = 'item', image = 'blowtorch.png', unique = false, useable = false, shouldClose = true, description = 'Cuts through container doors' },
boltcutter = { name = 'boltcutter', label = 'Bolt Cutter', weight = 1500, type = 'item', image = 'boltcutter.png', unique = false, useable = false, shouldClose = true, description = 'Cuts padlocks' },
c4 = { name = 'c4', label = 'C4 Explosive', weight = 1000, type = 'item', image = 'c4.png', unique = false, useable = false, shouldClose = true, description = 'Plastic explosive charge' },
coke_brick = { name = 'coke_brick', label = 'Coke Brick', weight = 1000, type = 'item', image = 'coke_brick.png', unique = false, useable = false, shouldClose = true, description = 'A pressed brick of cocaine' },
cokebaggy = { name = 'cokebaggy', label = 'Bag of Coke', weight = 100, type = 'item', image = 'cokebaggy.png', unique = false, useable = false, shouldClose = true, description = 'A small bag of cocaine' },
diamond_ring = { name = 'diamond_ring', label = 'Diamond Ring', weight = 100, type = 'item', image = 'diamond_ring.png', unique = false, useable = false, shouldClose = true, description = 'A ring with a real diamond' },
drill = { name = 'drill', label = 'Drill', weight = 2000, type = 'item', image = 'drill.png', unique = false, useable = false, shouldClose = true, description = 'Heavy drill for vault locks' },
electronickit = { name = 'electronickit', label = 'Electronic Kit', weight = 500, type = 'item', image = 'electronickit.png', unique = false, useable = false, shouldClose = true, description = 'Hack device for ATMs' },
gatecrack = { name = 'gatecrack', label = 'Gatecrack', weight = 500, type = 'item', image = 'gatecrack.png', unique = false, useable = false, shouldClose = true, description = 'EMP device for door locks' },
goldbar = { name = 'goldbar', label = 'Gold Bar', weight = 1000, type = 'item', image = 'goldbar.png', unique = false, useable = false, shouldClose = true, description = 'A solid gold bar' },
goldchain = { name = 'goldchain', label = 'Gold Chain', weight = 200, type = 'item', image = 'goldchain.png', unique = false, useable = false, shouldClose = true, description = 'A heavy gold chain' },
laptop = { name = 'laptop', label = 'Laptop', weight = 2000, type = 'item', image = 'laptop.png', unique = false, useable = false, shouldClose = true, description = 'A stolen laptop' },
license_plate = { name = 'license_plate', label = 'License Plate', weight = 500, type = 'item', image = 'license_plate.png', unique = false, useable = false, shouldClose = true, description = 'A stolen license plate' },
lockpick = { name = 'lockpick', label = 'Lockpick', weight = 150, type = 'item', image = 'lockpick.png', unique = false, useable = false, shouldClose = true, description = 'Opens car and house locks' },
meth = { name = 'meth', label = 'Meth', weight = 100, type = 'item', image = 'meth.png', unique = false, useable = false, shouldClose = true, description = 'A bag of meth' },
phone = { name = 'phone', label = 'Phone', weight = 200, type = 'item', image = 'phone.png', unique = false, useable = false, shouldClose = true, description = 'A stolen phone' },
rolex = { name = 'rolex', label = 'Rolex Watch', weight = 200, type = 'item', image = 'rolex.png', unique = false, useable = false, shouldClose = true, description = 'An expensive watch' },
rope = { name = 'rope', label = 'Rope', weight = 1000, type = 'item', image = 'rope.png', unique = false, useable = false, shouldClose = true, description = 'Strong enough to pull an ATM off the wall' },
screwdriverset = { name = 'screwdriverset', label = 'Screwdriver Set', weight = 500, type = 'item', image = 'screwdriverset.png', unique = false, useable = false, shouldClose = true, description = 'Removes plates and forces trunks' },
security_card_01 = { name = 'security_card_01', label = 'Security Card', weight = 50, type = 'item', image = 'security_card_01.png', unique = false, useable = false, shouldClose = true, description = 'Opens keycard doors' },
sledgehammer = { name = 'sledgehammer', label = 'Sledgehammer', weight = 3000, type = 'item', image = 'sledgehammer.png', unique = false, useable = false, shouldClose = true, description = 'Smashes ATMs open' },
tablet = { name = 'tablet', label = 'Tablet', weight = 1000, type = 'item', image = 'tablet.png', unique = false, useable = false, shouldClose = true, description = 'A stolen tablet' },
thermite = { name = 'thermite', label = 'Thermite', weight = 1000, type = 'item', image = 'thermite.png', unique = false, useable = false, shouldClose = true, description = 'Burns through gate locks' },
trojan_usb = { name = 'trojan_usb', label = 'Trojan USB', weight = 100, type = 'item', image = 'trojan_usb.png', unique = false, useable = false, shouldClose = true, description = 'Hacks vault keypads and panels' },
weed_brick = { name = 'weed_brick', label = 'Weed Brick', weight = 1000, type = 'item', image = 'weed_brick.png', unique = false, useable = false, shouldClose = true, description = 'A pressed brick of weed' },
weed_skunk = { name = 'weed_skunk', label = 'Skunk Weed', weight = 100, type = 'item', image = 'weed_skunk.png', unique = false, useable = false, shouldClose = true, description = 'A bag of skunk weed' },Run this query on your database:
INSERT INTO items (name, label)
VALUES
('advancedlockpick', 'Advanced Lockpick'),
('blowtorch', 'Blowtorch'),
('boltcutter', 'Bolt Cutter'),
('c4', 'C4 Explosive'),
('coke_brick', 'Coke Brick'),
('cokebaggy', 'Bag of Coke'),
('diamond_ring', 'Diamond Ring'),
('drill', 'Drill'),
('electronickit', 'Electronic Kit'),
('gatecrack', 'Gatecrack'),
('goldbar', 'Gold Bar'),
('goldchain', 'Gold Chain'),
('laptop', 'Laptop'),
('license_plate', 'License Plate'),
('lockpick', 'Lockpick'),
('meth', 'Meth'),
('phone', 'Phone'),
('rolex', 'Rolex Watch'),
('rope', 'Rope'),
('screwdriverset', 'Screwdriver Set'),
('security_card_01', 'Security Card'),
('sledgehammer', 'Sledgehammer'),
('tablet', 'Tablet'),
('thermite', 'Thermite'),
('trojan_usb', 'Trojan USB'),
('weed_brick', 'Weed Brick'),
('weed_skunk', 'Skunk Weed');A stolen plate keeps its plate text in the item metadata, so fitting it on another car needs an inventory with metadata such as ox_inventory.
Add the item images
Copy every image from stg-robberypack/[SETUP]/item-images into your inventory's image folder, for example ox_inventory/web/images or qb-inventory/html/images. Keep the images you already have if you prefer them.
Start the script
Make sure [STG] starts after your framework, ox_lib, oxmysql, ox_target and your inventory in server.cfg:
ensure oxmysql
ensure ox_lib
# your framework: es_extended, qb-core or qbx_core
# your inventory: ox_inventory or qb-inventory
ensure ox_target
ensure stg_lib
ensure [STG]Restart the whole server. The database tables are created on the first start, there is no SQL file to import. Walk up to a payphone and answer it to open the heist hub.
Police are counted with Config.Heists.PoliceJobs. The defaults are police, sheriff, lspd, bcso and sasp. With Config.Heists.CheckCops = true every job needs its Cops on duty before it can be taken.
Nothing happens or the console shows an error? See Common Errors.
Next steps
Configuration
Every robbery, the heist hub, rewards and cooldowns
Integrations
Dispatch, vehicle keys, time sync and exports
Dependencies
What needs to start before the Robbery Pack
Still having trouble?
Open a ticket on our Discord. Our team answers around 15 hours a day.
Robbery Pack
25+ multiplayer robberies in one FiveM script, from Fleeca and Pacific Standard to ATMs, armored trucks, house burglaries, stash raids and car theft, all run from a payphone heist hub with crews, rep levels and clans.
Configuration
How STG Robbery Pack is configured, from the language and lockpick difficulty to ATMs, banks, street robberies, stash houses, vehicle crime and the payphone heist hub.