Placement
Moving the Job
Every location is a plain vec3 / vec4 in cfg.lua. Some are free to move anywhere on the map, some are pinned to the map that provides the crane and the vault.
Free to move
cfg.heist.start.npc.coords
The fixer NPC who hands out the job
cfg.heist.pickup.truck
Where the flatbed waits
cfg.heist.pickup.crane
Where the crane sits on the ground
cfg.heist.pickup.forklift
Where the forklift waits
cfg.heist.tow.dropoff
Drop-off bay for the car and the chest
cfg.heist.buyer.coords
The buyer NPC at the drop-off
Move these anywhere. Keep the buyer inside cfg.heist.tow.dropoffRadius of the drop-off so the crew can reach both.
Pinned to the map
cfg.scene.coords.crane
Crane base on the parking deck
cfg.scene.coords.vault
The vault inside the office
cfg.scene.coords.wall
The breakable wall, the C4 target
cfg.scene.coords.vaultDropped
Where the crane sets the chest down
cfg.scene.delivery.park
Flatbed bay on the deck
cfg.heist.parking.tow
Tow car bay on the deck
These match the rope-heist map's IPLs and animations. The crane clips move the arm along a fixed path baked into the map, so relocating the yard means the arm will swing somewhere the vault is not. Change them only if you are also swapping the map.
The loading bay
The flatbed does not park on a fixed coordinate at the pickup. Instead it has to be backed up to the crane:
The spot is derived from the crane's own position and heading, so moving cfg.heist.pickup.crane moves the bay with it. loadFacing = 180 means the truck's rear faces the crane; loadHeadingTolerance is how many degrees off square is still accepted.
Loosen loadRadius and loadHeadingTolerance if your players struggle to line the truck up.
Bay markers
The two parking bays are drawn on the ground as vehicle-sized boxes:
Sizes are visual only. What actually counts as parked is cfg.heist.parking.radius for the car and cfg.heist.parking.truckRadius for the flatbed.
Last updated