[Paid][ESX/QB] ATM Heist Pro - Drill, Hack & Rope Heist

Bring the ultimate interactive ATM robbery experience to your FiveM server with ATM Heist Pro! Whether you’re using QB-Core or ESX, this script transforms heists into thrilling, customizable adventures, giving players various methods and strategies to rob ATMs.

Why Choose ATM Heist Pro?

Multiple Heist Styles:
Choose your approach:

  • Drill to break in forcefully
  • Hack for a stealthier, silent option (lower payout, no alarms)
  • Rope to pull out the ATM physically

Dynamic Requirements:
Designed to integrate with QB-Core and ESX, this script ensures that players have the necessary items to pull off each type of heist:

  • Drill for breaking in
  • Hacking device for a smooth electronic entry
  • Rope for the brute-force method

Highly Customizable Features:

  • Configure ATM models and locations

  • Adjust police alert chances and hack mini-game difficulty

  • Tailor payout amounts, heist methods, and much more

  • Cooldowns are fully customizable and can even be disabled entirely

  • Open-source framework integrations: All framework-related functions, including reward distribution, police job checks for alarms, and more, are accessible for full customization

Showcase Video:
Youtube

Screenshots:

Idle usage:
Screenshot 2024-10-30 184042

Config file:

Config = {}

-- Defines the ATM models that can be interacted with for the robbery
Config.models = {
    `prop_atm_02`,
    `prop_atm_03`,
    `prop_fleeca_atm`,
}

-- Defines ATM models that do not support the rope option
Config.models2 = { -- these models don't have the rope option
    `prop_atm_01`,
}

-- Settings for notifications and functionality:
Config.HackFailNotif = true         -- Enables a notification if hacking fails
Config.AtmBlipForCop = true         -- Enables a blip on the map for police if an ATM is robbed
Config.RemoveRopeItemOnUse = true   -- Removes rope item from player’s inventory upon use
Config.Removedrillhackitemfail = true -- Chance to remove drill/hack item upon failure
Config.BlipRefreshTime = 30         -- Blip refresh rate for police, in seconds
Config.MaxBlipTime = 60 * 10        -- Maximum time blip stays visible, here set to 10 minutes

Config.Cooldown = 30                -- Cooldown period between robberies, set to 30 minutes

-- Rewards for different robbery methods:
Config.hackReward = {
    money = {type="cash", amount=math.random(1,2000), chance = 100}, -- Random cash amount for hacking
    items = {{name="phone", amount=math.random(1,3), chance = 0}},  -- Items that can be rewarded upon hacking
}

Config.drillReward = {
    money = {type="cash", amount=math.random(1,2000), chance = 100}, -- Random cash amount for drilling
    items = {{name="phone", amount=math.random(1,3), chance = 0}},   -- Items that can be rewarded upon drilling
}

Config.ropeReward = {
    money = {type="cash", amount=math.random(1,2000), chance = 100}, -- Random cash amount for rope method
    items = {{name="phone", amount=math.random(1,3), chance = 0}},   -- Items that can be rewarded upon using rope
}

-- Compatibility options for targeting and progress tracking systems
Config.Target = "qb"               -- Can be "qb" or "ox" based on framework
Config.Progress = "ox"             -- Progress framework choice, "qb" or "ox"

-- Specifies jobs allowed to respond to the robbery, usually law enforcement
Config.leojobs = {
    "police",
}

Config.Copsneed = 0                 -- Minimum number of cops needed for robbery to occur

-- Enables different methods of robbery:
Config.Enables = {
    ["rope"] = true,                -- Enables rope method
    ["hack"] = true,                -- Enables hacking method
    ["drill"] = true,               -- Enables drilling method
}

-- Defines the required items for each method, can be set to false if no item is needed
Config.items = {
    ["rope"] = false,               -- Set to item name if specific item required for rope
    ["hack"] = false,               -- Set to item name if specific item required for hacking
    ["drill"] = false,              -- Set to item name if specific item required for drilling
}

-- Blacklist certain types of vehicles from using the rope option in robberies
Config.Blacklist = { 
    [8] = true,     -- Motorcycles
    [13] = true,    -- Cycles
    [14] = true,    -- Boats
    [15] = true,    -- Helicopters
    [16] = true,    -- Planes
    [18] = true,    -- Emergency vehicles
    [21] = true,    -- Trains
}

-- Language settings
Config.Lang = {
    ["drill"] = "Drill",
    ["hack"] = "Attach Hacking Device",
    ["money"] = "Steal Money",
    ["rope"] = "Attach Rope",
    ["rope2"] = "Remove Rope",
    ["ropeblip"] = "(10-90) Stolen ATM",
    ["prog"] = "Stealing Cash",
    ["prog2"] = "Initializing",
    ["prog3"] = "Executing",
    ["prog4"] = "Uninstalling",
    ["prog5"] = "Removing Rope",
    ["prog6"] = "Attaching Rope to ATM",
    ["prog7"] = "Attaching Rope to Vehicle",
}

Purchase Here:
Escrow Version - Encrypted and protected for optimized performance
Source Version - Full code access for maximum customization

Code is accessible Yes/No
Subscription-based No
Lines (approximately) +1500
Requirements qb-core or esx and ox-lib
Support Yes
3 Likes

hey very nice script! & Happy Birthday!

Thank you so much! I’m glad you liked the script! And thanks for the birthday wishes too!

Does the player need items to perform actions?

Yes, it is possible to have it both with and without items. This can be adjusted in the configuration. If you need further explanation, feel free to ask through a Discord ticket.

Yes, I also note that this is a configurable option, but at the same time I find that it does not remove the item after use, and that using the drill after pulling out of the ATM does not require an item ::

If you have purchased the script, please open a ticket on Discord so we can assist you. Additionally, if you have any suggestions for improving the script, feel free to write them in the suggestions section on Discord, and we’ll consider adding them!