cc_pacificheist is a heist module that plugs into cc_heistcontracts. It registers a single contract — Pacific Bank Heist — at the Pacific Standard Bank in downtown Los Santos. The run includes jammers, lasers, thermite, a manager ped, and multiple loot rooms.
Everything in this page is a default. All of it lives in plain Lua files in shared/ and is meant to be edited.
Required items
Players need these in their inventory before the dashboard will let them press Start. The list lives inshared/contract.lua under itemsRequired — add, remove, or change quantities freely.
| Item id | Inventory label | Default role in the run |
|---|---|---|
laptop_elite | BlackBook Mk-III | Vault panel + loot room cracks |
signal_jammer | Signal Jammer | Three placements (qty 3) |
thermite | Thermite Charge | Vault door cuts |
electric_drill | Cordless Drill | Lockers |
weapon_digiscanner (weapon) | Digiscanner | Note search / signal sweep |
weapon_assaultrifle (weapon) | Assault Rifle | Required loadout |
Contract defaults
Defined inshared/contract.lua. Every field is editable.
| Field | Default | What it does |
|---|---|---|
id | pacific_heist | Internal contract id |
difficulty | hard | Display tag in the dashboard |
weight | 0.2 | Rarity weight for marketplace drips (rare) |
levelRequired | 5 | Minimum heist level to purchase |
price | 2500 | VICE cost to buy the slot |
crewSize | { min = 2, max = 4 } | Crew size bounds |
duration | 1200 | Soft cap in seconds before the slot auto-fails |
cooldown | 1800 | Server-wide cooldown after each completion |
reward | { vice = 1500, xp = 250 } | Credited automatically on success |
locations | 1 | pacific — Pacific Standard Bank |
shared/location.lua and shared/configuration/. All editable.
Loot table
shared/rewards.lua defines the global loot. When cfg.use_global_loot_table = true (default), each category’s rolled total is split across every unit across every loot room.
cfg.use_global_loot_table = false to define loot per-unit inside shared/location.lua.
Other tunables
shared/config.lua:
| Field | Default | What it does |
|---|---|---|
cfg.use_global_loot_table | true | If false, expects per-unit rewards |
cfg.enable_task_list | true | Show the TaskUI panel during the run |
cfg.debug | false | Bypasses gates and logs verbosely |
cfg.jammer.drainSeconds | 90 | 100% → 0% drain time without a maintain |
cfg.jammer.bumpAmount | 40 | +% signal restored per successful maintain |
cfg.jammer.beepWarn / beepCritical | 40 / 20 | Beep thresholds |
cfg.maintain_timer | 300 | Per-jammer maintain cooldown (seconds) |
cfg.enable_manager | true | Spawn the armed bank manager (IG_Avery with a pistol) |
cfg.dispatch_on_laser_hit | true | Trip a police alert when a laser is broken |
cfg.dispatch | function(location) ... end | Police alert payload — replace to integrate with your dispatch resource |
Streamed assets
The custom signal-jammer props ship understream/ and are pulled in by data_file 'DLC_ITYP_REQUEST' 'stream/cc_jammer.ytyp' in fxmanifest.lua. Don’t remove stream/ — without it the jammers won’t render.
Dependencies
cc_heistcontractscc_lib— TaskUI, Groups, Inventory, Target, Notification, Dispatch wrappersox_lib,oxmysql- A police job framework that responds to
cc.Dispatch.Alert