Skip to main content

General Questions

The script supports QBCore, Qbox, and ESX through the Project X Bridge. Set Framework to 'auto' in the bridge config and it will detect your framework automatically.
Yes. The bridge is required for this script to function. It handles framework detection, inventory, dispatch, notifications, progressbars, XP, evidence, logs, and global cooldowns. See the Bridge Installation page for setup instructions.When you purchase Gabz Store Robbery, the projectx-bridge asset is automatically delivered to your CFX portal.
The bridge supports 25+ dispatch systems including PS Dispatch, CodeSign, LB Tablet, FD Dispatch, Wasabi MDT, Sonoran CAD, and many more. Set Dispatch to 'auto' in the bridge config for automatic detection. See the Bridge Overview for the full list.
The script supports three store types with tier-based loot:
  • 24/7 Supermarkets — 9 locations (Gabz store map)
  • Gas Stations — 5 locations
  • Liquor Stores — 5 locations
Enable or disable individual locations in Config.Stores247, Config.GasStations, and Config.LiquorStores.
The loud approach involves threatening the clerk with an allowed weapon. Dispatch can trigger immediately when the loud approach begins.The silent approach bypasses the clerk and focuses on hacking, lockpicking, and stealth interactions. Dispatch timing is controlled by DispatchLocation in config/config.lua.
Open opensource/client/client.lua and find the projectx-storerobbery-gabz:client:Minigames callback. Each robbery step has its own elseif block where you can swap the minigame export for any resource you prefer. You can also return true inside any block to skip that minigame entirely.See the Open Source page for the full callback code and a table of the default minigame assignments.
Use the /projectxstore in-game command (requires admin permissions) to reset the nearest store, or call the Reset(location) server export from another resource:
exports['projectx-storerobbery-gabz']:Reset('Strawberry')
See the Commands and Exports pages for more details.

Configuration Questions

Set MinimumPolice to the number you want in config/config.lua, and make sure the correct jobs are listed in PoliceJobs.
MinimumPolice = 2,
PoliceJobs = {"police", "fbi"},
Set SkillSystem to true and configure MinimumLevel in config/config.lua. You also need a compatible XP system integrated in the bridge config (XPSystem).Supported systems include pickle_xp, sd-levels, cw-rep, and OT_skills.
Enable Bonus.Status and configure the Bonus.Items table in config/config.lua. Each item has a Chance percentage and an Amount range.
Bonus = {
    Status = true,
    BonusChance = 15,
    ItemCount = 1,
    Items = {
        {Name = "x_device", Chance = 30, Amount = {min = 1, max = 1}},
    }
}
Set Cooldown.Global to true to lock all stores when one is robbed. Set it to false for individual per-store cooldowns. Adjust the duration with Cooldown.Timer (in minutes).
Copy an existing entry in Config.Stores, rename the key, and update the coordinates and interaction zones. Enable it in the matching store type table (Config.Stores247, Config.GasStations, or Config.LiquorStores).

Troubleshooting

Make sure you have all required dependencies started before the script in your server.cfg (projectx-bridge, ox_lib, the Gabz store map, and minigames).
Verify all minigame resources (bl_ui, pure-minigames, SN-Hacking, pd-safe) are started and placed outside the robbery script folder. The bridge’s MinigameCheck will return false if a minigame resource is missing.
Confirm the Gabz store map is installed and started before the robbery script. Interaction zones are configured for the Gabz map layout in Config.Stores.