> ## Documentation Index
> Fetch the complete documentation index at: https://docs.projectx.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Step by step instructions to install the Molo Casino Heist resource

## Installation Steps

**1. Install required dependencies**

> [!WARNING]
>
> Start **mka-lasers** before this script — the manifest loads `@mka-lasers/client/client.lua`.

> [card] [ox\_lib](https://github.com/CommunityOx/ox_lib/releases/latest)
>
> Download ox\_lib

> [card] [Molo Casino Map](https://www.molo-modding.com/package/6415904)
>
> Required Molo casino map

> [card] [projectx-bridge](https://docs.projectx.gg/resources/bridge/installation.md)
>
> Required Project X Bridge

> [card] [Project X Masks (optional)](https://www.projectx.gg/product/7126449)
>
> Optional mask integration

**2. Install minigames**

> [card] [Minigames](https://drive.google.com/file/d/1UTjjcJmZxWenLpnIof1Zg921D1nvp9ay/view?usp=sharing)
>
> Same pack as K4MB1 casino heist

> [!WARNING]
>
> Keep minigames outside the robbery script folder.

**3. Extract and place the resource**

Place `projectx-casinoheist-molo` in your scripts folder.

**4. Add items**

See [items](#items-required). Images: [Artwork Inventory](https://discord.gg/Z2awpnXKdw) — code **ProjectX**.

**5. Configure**

Edit `config/config.lua`. Bridge `'auto'` for framework, inventory, dispatch, target.

**6. server.cfg**

```cfg theme={null}
ensure ox_lib
ensure projectx-bridge

ensure mka-lasers
ensure bl_ui
ensure SN-Hacking
ensure utk_fingerprint
ensure lightsout
ensure boii_minigames
ensure pure-minigames

ensure projectx-casinoheist-molo
```

## Items Required

### Outside progression

* `casinomaintenancecard`
* `x_moneysuitcase`

### Shop / black market

* `x_phone`, `x_device`, `x_laptop`, `x_stethoscope`, `x_cratejammer`, `x_circuittester`, `x_fingerprinttape`, `bag`, `glass_cutter`, `weapon_smokegrenade`, `weapon_stickybomb`

### Item Configuration

> [tab] ox\_inventory
>
> ```lua theme={null}
> ["x_phone"] = { label = "X Phone", weight = 300, stack = false, close = false, description = "?????????" },
> ["x_device"] = { label = "X Device", weight = 125, stack = false, close = false, description = "?????????" },
> ["x_laptop"] = { label = "X Laptop", weight = 125, stack = false, close = false, description = "?????????" },
> ["x_stethoscope"] = { label = "X Stethoscope", weight = 200, stack = false, close = false, description = "click click" },
> ["x_cratejammer"] = { label = "X Crate Jammer", weight = 300, stack = false, close = false, description = "?????????" },
> ["x_circuittester"] = { label = "X Circuit Tester", weight = 200, stack = false, close = false, description = "????" },
> ["x_fingerprinttape"] = { label = "Fingerprint Tape", weight = 200, stack = false, close = false, description = "????" },
> ["bag"] = { label = "Duffel Bag", weight = 250, stack = false, close = false, description = "Duffel bag" },
> ["glass_cutter"] = { label = "Glass Cutter", weight = 1000, stack = false, close = false, description = "" },
> ["casinomaintenancecard"] = { label = "Casino Maintenance Keycard", weight = 100, stack = false, close = false, description = "I wonder what I can use this for.." },
> ["x_moneysuitcase"] = { label = "Money Suitcase", weight = 2500, stack = false, close = false, description = "This is holding a lot of cash.." },
> ["x_wrench"] = { label = "Wrench", weight = 250, stack = false, close = false, description = "Good for maintenance" },
> ["casinosecuritycard"] = { label = "Casino Security Keycard", weight = 100, stack = false, close = false, description = "I wonder what I can use this for.." },
> ["casinovaultcard"] = { label = "Casino Vault Keycard", weight = 100, stack = false, close = false, description = "I wonder what I can use this for.." },
> ["casinomanagercard"] = { label = "Casino Manager Keycard", weight = 100, stack = false, close = false, description = "I wonder what I can use this for.." },
> ["casinopenthousecard"] = { label = "Casino Penthouse Keycard", weight = 100, stack = false, close = false, description = "Fancy keycard.." },
> ["managerlaptop"] = { label = "Manager Laptop", weight = 100, stack = false, close = false, description = "I Wonder what I can do with this.." },
> ["x_fingerprintbag"] = { label = "Fingerprint Bag", weight = 200, stack = false, close = false, description = "????" },
> ["laserdrill"] = { label = "Laser Drill", weight = 1000, stack = false, close = true, description = "Laser Drill" },
> ["x_painting"] = { label = "Painting", weight = 25000, stack = false, close = true, description = "Just a work of art," },
> ["giant_gem"] = { label = "Giant Gem", weight = 2500, stack = false, close = false, description = "" },
> ```

> [tab] qb-inventory
>
> ```lua theme={null}
> ['x_phone'] = {['name'] = 'x_phone', ['label'] = 'X Phone', ['weight'] = 50, ['type'] = 'item', ['image'] = 'x_phone.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '?????????'},
> ['x_device'] = {['name'] = 'x_device', ['label'] = 'X Device', ['weight'] = 50, ['type'] = 'item', ['image'] = 'x_device.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '?????????'},
> ['x_laptop'] = {['name'] = 'x_laptop', ['label'] = 'X Laptop', ['weight'] = 50, ['type'] = 'item', ['image'] = 'x_laptop.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '?????????'},
> ['x_stethoscope'] = {['name'] = 'x_stethoscope', ['label'] = 'X Stethoscope', ['weight'] = 200, ['type'] = 'item', ['image'] = 'x_stethoscope.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'click click'},
> ['x_cratejammer'] = {['name'] = 'x_cratejammer', ['label'] = 'X Crate Jammer', ['weight'] = 200, ['type'] = 'item', ['image'] = 'x_cratejammer.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'boop beep'},
> ['x_circuittester'] = {['name'] = 'x_circuittester', ['label'] = 'X Circuit Tester', ['weight'] = 200, ['type'] = 'item', ['image'] = 'x_circuittester.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '????'},
> ['x_fingerprinttape'] = {['name'] = 'x_fingerprinttape', ['label'] = 'Fingerprint Tape', ['weight'] = 200, ['type'] = 'item', ['image'] = 'x_fingerprinttape.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '????'},
> ['bag'] = {['name'] = 'bag', ['label'] = 'Bag', ['weight'] = 400, ['type'] = 'item', ['image'] = 'bag.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Duffel bag'},
> ['glass_cutter'] = {['name'] = 'glass_cutter', ['label'] = 'Glass Cutter', ['weight'] = 1000, ['type'] = 'item', ['image'] = 'glass_cutter.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = ''},
> ['casinomaintenancecard'] = {['name'] = 'casinomaintenancecard', ['label'] = 'Casino Maintenance Keycard', ['weight'] = 100, ['type'] = 'item', ['image'] = 'casinomaintenancecard.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'I wonder what I can use this for..'},
> ['x_moneysuitcase'] = {['name'] = 'x_moneysuitcase', ['label'] = 'Money Suitcase', ['weight'] = 2500, ['type'] = 'item', ['image'] = 'x_moneysuitcase.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'This is holding a lot of cash..'},
> ['x_wrench'] = {['name'] = 'x_wrench', ['label'] = 'Wrench', ['weight'] = 250, ['type'] = 'item', ['image'] = 'x_wrench.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Good for maintenance'},
> ['casinosecuritycard'] = {['name'] = 'casinosecuritycard', ['label'] = 'Casino Security Keycard', ['weight'] = 100, ['type'] = 'item', ['image'] = 'casinosecuritycard.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'I wonder what I can use this for..'},
> ['casinovaultcard'] = {['name'] = 'casinovaultcard', ['label'] = 'Casino Vault Keycard', ['weight'] = 100, ['type'] = 'item', ['image'] = 'casinovaultcard.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'I wonder what I can use this for..'},
> ['casinomanagercard'] = {['name'] = 'casinomanagercard', ['label'] = 'Casino Manager Keycard', ['weight'] = 100, ['type'] = 'item', ['image'] = 'casinomanagercard.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'I wonder what I can use this for..'},
> ['casinopenthousecard'] = {['name'] = 'casinopenthousecard', ['label'] = 'Casino Penthouse Keycard', ['weight'] = 100, ['type'] = 'item', ['image'] = 'casinopenthousecard.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Fancy keycard..'},
> ['managerlaptop'] = {['name'] = 'managerlaptop', ['label'] = 'Manager Laptop', ['weight'] = 100, ['type'] = 'item', ['image'] = 'managerlaptop.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'I Wonder what I can do with this..'},
> ['x_fingerprintbag'] = {['name'] = 'x_fingerprintbag', ['label'] = 'Fingerprint Bag', ['weight'] = 200, ['type'] = 'item', ['image'] = 'x_fingerprintbag.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = '????'},
> ['laserdrill'] = {['name'] = 'laserdrill', ['label'] = 'Laser Drill', ['weight'] = 7500, ['type'] = 'item', ['image'] = 'laserdrill.png', ['unique'] = true, ['useable'] = true, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Laser Drill'},
> ['x_painting'] = {['name'] = 'x_painting', ['label'] = 'Painting', ['weight'] = 25000, ['type'] = 'item', ['image'] = 'x_painting.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = true, ['combinable'] = nil, ['description'] = 'Just a work of art,'},
> ['giant_ruby'] = {['name'] = 'giant_ruby', ['label'] = 'Giant Ruby', ['weight'] = 50, ['type'] = 'item', ['image'] = 'giant_ruby.png', ['unique'] = true, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Shiny..'},
> ```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.