Features:
Minigame System โ Engage players with a fully custom, timing-based minigame featuring smooth animations, sound effects, and four difficulty options: Easy, Medium, Hard, or Custom.
Police Integration โ Add realistic tension with configurable police alerts at four distinct stages. Supports cd_dispatch and ps-dispatch, includes adjustable alert chances (0โ100%), and lets you set minimum officer requirements.
Cooldown System โ Keep gameplay balanced with individual ATM cooldowns, optional global cooldowns, and fully customizable timersโor disable cooldowns entirely for unrestricted play.
Reward System โ Reward players with randomized cash, bank deposits, or item drops. Configure min/max values, and add risk with optional item destruction on success or failure.
Configurable โ Easy to set up and fully customizable to fit your server.
Preview 
Preview Video
Purchase 
Get Escrowed Here
Get Open Source Here
Preview config.lua
Config = {}
Config.Debug = false
Config.Framework = 'qb' -- 'qb', 'esx', 'qbx'
Config.Target = 'qb' -- 'qb','ox'
Config.ProgressBar = 'qb' -- 'qb', 'ox'
Config.MiniGameDifficulty = 'medium' -- 'easy', 'medium', 'hard', or 'custom'
Config.MiniGameCustomDifficulty = {
blocks = 5,
speed = 1000,
hitZone = 10
}
Config.EnableGlobalCooldown = false
Config.GlobalCooldown = 600 -- how long every atm cant be robbed for -- set to 0 or nil if you dont want this in use
Config.ATMCooldown = 180 -- Seconds -- how long each atm cant be robbed for -- set to 0 or nil if you dont want this in use
Config.DispatchSettings = {
EnableDispatchAlerts = true,
DispatchScript = 'cd_dispatch', -- Dispatch System ('ps-dispatch', 'cd_dispatch', or 'custom')
DispatchCallChance = 100
}
Config.PoliceRequired = 0 -- Minimum police required to hack
Config.PoliceJobs = {'police'} -- Police job names
Config.AlertPoliceStage = 2 -- select the number for when police should be called
-- 1 = when the first progressbar starts, 2 = when minigame opens, 3 = minigame completes, 4 = money received
Config.RequireItem = true
Config.HackItem = 'trojan_usb'
Config.HackItemLabel = 'Trojan USB'
Config.RemoveItemOnSuccess = true -- Remove item on successful hack
Config.RemoveItemOnSuccessChance = 100
Config.RemoveItemOnFail = false -- Remove item on failed hack
Config.RemoveItemOnFailChance = 100
Config.Reward = {
RewardType = 'Money', -- 'Money' or 'Item'
Money = {
MoneyType = 'cash', -- cash or bank
Min = 2500,
MaxRewardAmount = 7500
},
Item = {
ItemName = 'dirtymoney' ,
ItemLabel = 'Dirty Money',
MinReward = 10000,
MaxRewardAmount = 30000
}
}
Config.ATMModels = {
`prop_atm_01`,
`prop_atm_02`,
`prop_atm_03`,
`prop_fleeca_atm`,
}
Config.TargetSettings = {
label = 'Hack ATM',
icon = 'fas fa-user-secret',
distance = 2.5
}
Config.HackTime = 5000 -- Time to hack in ms
Config.SuccessTime = 5000 -- Time to receive money after success
Other Releases
Support & Community
Need help, updates, or want to suggest features?
Join the AP5 Studios Community on Discord
Click here to join: AP5 Studios
Additional Info
| Code Access | No |
| Subscription-based | No |
| Lines of Code | ~1500 |
| Requirements | None |
| Support | Yes |












