> ## 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.

# FAQs

> Frequently asked questions about the Project X ATM Robbery resource

## General Questions

<AccordionGroup>
  <Accordion title="Do I need the Project X Bridge?">
    Yes. `projectx-bridge` is a hard dependency in the fxmanifest. It handles framework detection, inventory, dispatch, notifications, XP, evidence, and logs. See the [Bridge Installation](/resources/bridge/installation) page for setup instructions.

    When you purchase ATM Robbery, the `projectx-bridge` asset is automatically delivered to your CFX portal.
  </Accordion>

  <Accordion title="Do I need projectx-atmprops?">
    Yes. Custom ATM consoles, frames, and exploded models come from `projectx-atmprops`, which is included in the package zip and listed as a fxmanifest dependency. Do not remove or split it from the package unless you know what you are doing.
  </Accordion>

  <Accordion title="What approaches are available?">
    Eight approaches can be toggled independently via `Config.Approaches[*].Status`:

    | Approach      | Required items                              |
    | ------------- | ------------------------------------------- |
    | Rope          | `laserdrill`, `nylonrope`, `screwdriverset` |
    | Drill         | `laserdrill`                                |
    | C4            | `weapon_stickybomb`                         |
    | Thermite      | `thermite`                                  |
    | Hacking       | `x_device`                                  |
    | GasTank       | `x_gastank`, `lighter`                      |
    | Beating       | melee weapons from `Config.Weapons`         |
    | Impersonation | `x_fakecredit`                              |

    See the [Configuration](/resources/atm-robbery/configuration) page for full option details.
  </Accordion>

  <Accordion title="How does the rope approach work?">
    1. Park a vehicle close to an ATM.
    2. Use `nylonrope` and attach it to an allowed vehicle class.
    3. Drill the ATM (`laserdrill`) to prepare it.
    4. Drive to pull the console off the wall.
    5. Pick up the console (`atmred` / `atmblue` / `atmgreen`) and place it somewhere safe.
    6. Break it down: `blowtorch` + `screwdriverset` → panel → cables → motherboard → take cash.

    Use `/removerope` (default key `X`) to cancel the rope in hand.
  </Accordion>

  <Accordion title="How do I change which minigames are used?">
    Open `opensource/client/client.lua` and find the `projectx-atmrobbery:client:Minigames` callback. Each step has its own `elseif` block where you can swap the minigame export. You can also return `true` inside any block to skip that minigame entirely.

    See the [Open Source](/resources/atm-robbery/opensource) page for the full callback and step-to-minigame table.
  </Accordion>

  <Accordion title="What is the difference between global and individual cooldown?">
    * **Global cooldown** (`Cooldowns.GlobalCooldown`): one shared cooldown for the whole server. When enabled, per-approach cooldowns are disabled.
    * **Individual cooldown** (`Cooldowns.IndividualCooldown`): per-player cooldown after robbing.
    * Each approach also has its own `Cooldown` field used when global cooldown is off.

    `CooldownPlace` controls whether cooldown starts at initiation or when attaching the rope.
  </Accordion>

  <Accordion title="How do I gate approaches behind XP / levels?">
    Set `SkillSystem` to `true` in `config/config.lua` and configure each approach's `RequiredLevel` and `Exp`. You also need a compatible XP system in the bridge (`XPSystem`), such as `projectx-xp`, `pickle_xp`, `sd-levels`, `cw-rep`, or `OT_skills`. See the [FAQs](/faqs) for bridge XP config values.
  </Accordion>

  <Accordion title="How do I set up bonus items?">
    Enable `Bonus.Status` and configure `Bonus.Items` in `config/config.lua`. Each item has a `Chance` percentage and an `Amount` range.

    ```lua theme={null}
    Bonus = {
        Status = true,
        BonusChance = 15,
        ItemCount = 1,
        Items = {
            {Name = "x_device", Chance = 30, Amount = {min = 1, max = 1}},
        }
    }
    ```
  </Accordion>

  <Accordion title="Which vehicles can pull ATMs with the rope?">
    `Config.Vehicles` is a blacklist of vehicle classes. Commented-out classes are whitelisted. By default SUVs, Off-road, Industrials, Utility, Vans, Military, and Commercial can pull.
  </Accordion>

  <Accordion title="What dispatch systems are supported?">
    The bridge supports 30+ dispatch systems including PS Dispatch, CodeSign, CodeSign 3D, LB Tablet, FD Dispatch, Wasabi MDT, Oxide Dispatch, VX MDT, Sonoran CAD, and many more. Set `Dispatch` to `'auto'` in the bridge config for automatic detection. See the [FAQs](/faqs) for the full list with config values and links.
  </Accordion>

  <Accordion title="Where can I get free support?">
    Free support is not available for this paid script. Open a ticket in the [Project X Discord](https://discord.gg/bJNxYDAm5u) for paid-script support.
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="The script won't start" icon="triangle-exclamation">
    Ensure start order in `server.cfg` is: `ox_lib` → `projectx-bridge` → `bl_ui` → `projectx-atmprops` → `projectx-atmrobbery`. Missing `projectx-atmprops` will prevent the resource from starting.
  </Accordion>
</AccordionGroup>
