Skip to main content

config/config.lua

Main Settings

debug
boolean
default:"false"
Shows polyzones created inside the game. Useful for testing zone placement.
TestingMode
boolean
default:"false"
Disables all minigames. Useful for testing the full robbery flow without completing minigame challenges.
DrawtextButton
number
default:"38"
The key code used to trigger drawtext interactions. 38 is [E] by default.
DrawTextZoneSize
vector3
default:"vec3(0.8, 0.8, 2)"
The size of the drawtext interaction zone.
DrawTextRotation
number
default:"70.0"
The default rotation of the drawtext interaction zone. Individual stores can override this in Config.Stores.
SpawnNetworkedPropsServerSide
boolean
default:"true"
Spawns networked props server side. Set to false to spawn them client side instead.
SpawnNetworkedPedsServerSide
boolean
default:"true"
Spawns networked peds server side. Set to false to spawn them client side instead.
RequireBag
boolean
default:"true"
Requires players to have a bag item in order to loot crates.
MinimumPolice
number
default:"0"
Minimum number of police required online before a robbery can be started. Set to 0 to disable.
PoliceJobs
table
default:"{\"police\"}"
The jobs that count as police for the MinimumPolice check and dispatch alerts.
PoliceJobs = {"police", "fbi"}
RequiredPlayersNearby
table
Requires a minimum number of players nearby to start a robbery.
RequiredPlayersNearby = {amount = 0, radius = 20.0}
Set amount to 0 or false to disable.
TotalActiveRobberies
number
default:"0"
Maximum number of Ammunation robberies that can be active at the same time. Set to 0 to disable.
DisableLoudApproach
boolean
default:"false"
Disables the loud approach path entirely.
DisableSilentApproach
boolean
default:"false"
Disables the silent approach path entirely.
DisableParticles
boolean
default:"false"
Disables all particle effects during robberies.
DisableRemovingWeapons
boolean
default:"false"
Disables weapon removal during robberies. Only enable this if you use a weapon wheel resource.

Cooldowns & Limits

Cooldown.Global
boolean
default:"true"
When true, robbing one location puts all Ammunation locations on cooldown. When false, each location has its own cooldown.
Cooldown.Timer
number
default:"180"
Cooldown duration in minutes.
Cooldown.PlayerCooldown
number
default:"0"
Per-player cooldown in minutes after completing a robbery. Set to 0 to disable.
Limits.TotalRobberiesPerRestart
table
Maximum robberies per server restart, split by location type. Set each value to 0 to disable.
TotalRobberiesPerRestart = {
    ['ShootingRanges'] = 0,
    ['GunStores'] = 0,
}
Limits.RobberiesPerPlayer
table
Maximum robberies a single player can complete per restart, split by location type. Set each value to 0 to disable.
RobberiesPerPlayer = {
    ['ShootingRanges'] = 0,
    ['GunStores'] = 0,
}

Skill System

SkillSystem
boolean
default:"false"
Requires players to meet a minimum level from an integrated XP/skill system before starting a robbery. Must have an XP system configured in the bridge.
MinimumLevel
number
default:"10"
Minimum level required to initiate a robbery. Only applies when SkillSystem is true.

Dispatch

Dispatch.Title
string
default:"\"Ammunation Robbery\""
Title shown in the dispatch alert.
Dispatch.Message
string
default:"\"Ammunation is being robbed\""
Message body shown in the dispatch alert.
Dispatch.Code
string
default:"\"10-70\""
Radio code shown in the dispatch alert.
Dispatch.Time
number
default:"5"
Time in seconds the dispatch alert remains visible. Not all dispatch systems support this.
Dispatch.Blip
table
Blip settings for the dispatch map marker.
Blip = {
    Text = 'Ammunation Robbery',
    Color = 1,
    Sprite = 41,
    Scale = 0.8
}
DispatchLocation
table
Controls which steps trigger dispatch alerts. Loud and Silent can be enabled independently. Only one of the step-based options should be enabled at a time.
DispatchLocation = {
    ["Loud"] = true,
    ["Silent"] = false,
    ["Register"] = true,
    ["Keypad"] = false,
    ["ElectricBox"] = false,
}

Bonus Items

Bonus.Status
boolean
default:"false"
Enables or disables bonus item drops at the end of a robbery.
Bonus.BonusChance
number
default:"15"
Percentage chance that any bonus item is given at all.
Bonus.ItemCount
number
default:"1"
Number of items that can be given from the bonus items table.
Bonus.Items
table
Table of possible bonus items. Each entry has a Name, Chance (%), and Amount range. The total chance across all items needs to add up to 100%.
Items = {
    {Name = "x_device", Chance = 30, Amount = {min = 1, max = 1}},
    {Name = "x_phone", Chance = 50, Amount = {min = 1, max = 1}},
    {Name = "x_stethoscope", Chance = 20, Amount = {min = 1, max = 1}},
}

Evidence & Stress

Evidence.Status
boolean
default:"true"
Enables fingerprint evidence drops at the crime scene.
Evidence.Chance
number
default:"50"
Percentage chance that fingerprint evidence is left behind.
Stress.Status
boolean
default:"true"
Enables the stress system. Stress is only applied when a minigame is failed.
Stress.Chance
number
default:"90"
Percentage chance that stress is applied on a minigame fail.
Stress.Amount
table
default:"{min = 1, max = 3}"
The minimum and maximum amount of stress applied per failure.

Required Items

Items
table
Maps logical item names to your inventory item names.
Items = {
    ["Circuit"] = "x_circuittester",
    ["TrojanUSB"] = "x_trojanusb",
    ["TrojanUSB2"] = "x_trojanusb2",
    ["Lockpick"] = "advancedlockpick",
    ["Bag"] = "bag",
    ["Key"] = "ammunation_key",
    ["Phone"] = "x_phone",
}
ItemsBreak
table
Break chance (%) for each item when used during a robbery.
ItemsBreak = {
    ["Circuit"] = 0,
    ["Device"] = 0,
    ["Lockpick"] = 0,
    ["Phone"] = 0,
}

Rewards

Register and crate loot are configured per location type.
TableDescription
Config.RegisterGunStoresRegister cash loot from gun stores
Config.RegisterShootingRangesRegister cash loot from shooting ranges
Config.LootCrate, ammo, armor, and weapon loot tables split by GunStores and ShootingRanges
Cash
boolean
default:"true"
Set to true to give money directly. Set to false to give a cash item instead.
CashItem
string
default:"'markedbills'"
The item name used when Cash is false.
StackAmount
table
The minimum and maximum cash or item amount per register reward.
StackAmount = {min = 450, max = 1250}
ItemInfo
boolean | table
default:"false"
Optional item metadata. Used if markedbills or similar items carry random value data in their info table.
Gun crate prop models and their matching weapon rewards are configured in Config.Props.

Store Locations

Enable or disable location types and individual stores using these tables:
  • Config.ShootingRanges — Large shooting range locations (e.g. "PillboxHill", "CypressFlats")
  • Config.GunStores — Small gun store locations (e.g. "PaletoBay", "Hawick", "LaMesa")
Each enabled location has a full entry in Config.Stores with coordinates, NPCs, interactions, per-location reset timers, and optional overrides such as FuseboxProp and DrawTextRotation. Use the store key when calling exports.
You can add custom locations by copying an existing entry in Config.Stores and adjusting the coordinates and interaction zones.

Other Settings

CratePassword
table
Controls the crate code UI text for split-code crate interactions.
Config.Sounds.AlarmDuration
number
How long the alarm lasts in minutes.
Config.Weapons
table
Weapons allowed for threatening the employee during the loud approach.
Config.DoorList
table
Door lock definitions for each location. Adjust if your map uses different door names.
Step durations (FuseboxDuration, RegisterDuration, Computer1Duration, etc.) control how long progress bars run for each interaction step.

Logs

Configured in config/logs.lua.
Enable
boolean
default:"false"
Enables or disables the logging system.
APIKey
string
default:"\"\""
Your Discord webhook URL, or your Fivemerr/Fivemanage API key.
FivemanageDataset
string
default:"\"default\""
The Fivemanage dataset to log activity to. Leave as "default" unless you have a specific dataset configured.