Skip to content

Installation

Dependencies

Ensure the following resources are installed and running before sd-bobcat:

DependencyOptions
Librarysd_lib
Interactionox_target / qb-target / qtarget (or use TextUI)
Doorlockox_doorlock / qb-nui_doorlock / cd_doorlock

Step 1: Add the Resource

  1. Download sd-bobcat from Keymaster
  2. Extract it into your server's resources directory
  3. Add ensure sd-bobcat to your server.cfg after all dependencies
ini
ensure sd_lib
ensure ox_lib
ensure ox_target
ensure ox_doorlock
ensure sd-bobcat

Step 2: Select Your MLO

Open config.lua and set Config.MLOType to match your installed MLO:

lua
Config.MLOType = 'gabz'     -- Options: 'gabz', 'nopixel', 'k4mb1'

All coordinates, doorlocks, and guard spawns will automatically adjust to your selected map.

Step 3: Import Doorlock Data

Choose the doorlock system you use and import the corresponding config:

sql
-- Import sd-bobcat/doorlock/ox_doorlock/*.sql into your database
-- This creates 4 door entries: bobcatfirst, bobcatsecond, bobcatthird, bobcatfourth
lua
-- Copy the contents of sd-bobcat/doorlock/qb-nui_doorlock/*.lua
-- into your qb-nui_doorlock config file
json
-- Import sd-bobcat/doorlock/cd_doorlock/*.json
-- into your cd_doorlock configuration

Step 4: Add Items

Register the required items in your inventory system:

lua
-- Add to ox_inventory/data/items.lua

['bobcatkeycard'] = {
    label = 'Bobcat Security Card',
    weight = 1000,
    stack = false,
    close = true,
    description = 'A keycard used at the Bobcat Security Deposit.',
},
['c4_bomb'] = {
    label = 'C4 Brick',
    weight = 1000,
    stack = false,
    close = true,
    description = 'Very Dangerous! High Yield Explosive.',
},
['thermite_h'] = {
    label = 'Thermite',
    weight = 1000,
    stack = false,
    close = true,
    description = 'A low-yield thermite charge.',
    server = {
        export = 'sd-bobcat.useThermite_h',
    },
},
lua
-- Add to qb-core/shared/items.lua

['bobcatkeycard']  = { name = 'bobcatkeycard',  label = 'Bobcat Security Card', weight = 1000, type = 'item', image = 'bobcatkeycard.png', unique = false, useable = true,  shouldClose = true, description = 'A keycard used at the Bobcat Security Deposit.' },
['c4_bomb']        = { name = 'c4_bomb',        label = 'C4 Brick',            weight = 1000, type = 'item', image = 'c4_bomb.png',       unique = true,  useable = false, shouldClose = true, description = 'Very Dangerous! High Yield Explosive.' },
['thermite_h']     = { name = 'thermite_h',     label = 'Thermite',            weight = 1000, type = 'item', image = 'thermite_h.png',    unique = true,  useable = true,  shouldClose = true, description = 'A low-yield thermite charge.' },
sql
-- Import sd-bobcat/[SQL]/ESX/items.sql or run manually:

INSERT INTO `items` (`name`, `label`, `weight`) VALUES
  ('bobcatkeycard', 'Bobcat Security Card', 1),
  ('c4_bomb', 'C4 Brick', 10),
  ('thermite_h', 'Thermite', 10);

Step 5: Copy Item Images

Copy the item images from sd-bobcat/images/ to your inventory's image folder:

InventoryImage Path
ox_inventoryox_inventory/web/images/
qb-inventory / ps-inventory<inventory>/html/images/
qs-inventoryqs-inventory/html/images/
codem-inventorycodem-inventory/html/itemimages/
origen_inventoryorigen_inventory/ui/images/
Bobcat Item Images3 images
Bobcat Keycard
bobcatkeycard.png
C4 Bomb
c4_bomb.png
Thermite
thermite_h.png

TIP

If you are using a custom inventory, place the images wherever your inventory loads item icons from.

Step 6: Start and Verify

  1. Start your server
  2. Check the server console for any errors
  3. Look for the Bobcat Security blip on the map (if enabled)
  4. Ensure the minimum police requirement is met before attempting the heist

WARNING

Make sure sd_lib is started before sd-bobcat in your server.cfg, or the resource will fail to load.