Configuration — foltone_props_storage
All configuration is done in config.lua at the root of the script.
Language
Config.Locale = "fr" -- "fr" or "en"
Translations are in the locales/ folder. You can add your own languages by creating a new file (e.g., locales/de.lua).
Inventory
Config.useOxInventory = GetResourceState("ox_inventory") ~= "missing"
The script automatically detects if ox_inventory is installed:
- With ox_inventory: uses the native stash system + ox_target for interaction
- Without ox_inventory: uses the built-in RageUI menu + E key to interact
Database Saving
Config.saveToDBWithInterval = true
Config.saveToDBInterval = 60 * 1000 -- 1 minute
| Option | Description |
|---|---|
saveToDBWithInterval = true | Periodic saving (recommended for high player count servers) |
saveToDBWithInterval = false | Save on every action (deposit/withdraw) |
Note: When
useOxInventoryis enabled,saveToDBWithIntervalis forced totrue.
Interaction Distance
Config.distance = 2.5
Maximum distance (in meters) at which a player can interact with a storage.
Forbidden PIN Codes
Config.forbidenPIN = {
0000, 1111, 2222, 3333, 4444,
5555, 6666, 7777, 8888, 9999,
1234,
}
Players won’t be able to use these PIN codes. The PIN must be at least 4 digits.
Storage Types
Config.propsList = {
["p_v_43_safe_s"] = {
capacity = 50000, -- Weight capacity
itemName = "big_safe", -- Required ESX item name
itemLabel = "Large Safe",
},
["prop_ld_int_safe_01"] = {
capacity = 30000,
itemName = "safe",
itemLabel = "Safe",
},
}
You can add as many storage types as you want. Each entry uses the GTA model name as the key.
Adding a New Storage Type
- Find the GTA V prop model name you want
- Add an entry in
propsList:
["model_name"] = {
capacity = 40000,
itemName = "my_safe",
itemLabel = "My Custom Safe",
},
- Don’t forget to add the corresponding item in your ESX database
Boss Grades
Config.bossGrades = {
["boss"] = true,
["underboss"] = true,
["capodecina"] = true,
["consigliere"] = true,
["don"] = true,
}
Job grades that have special (boss) permissions.
Weapon Weights
Config.defaultWeaponWeight = 3
Config.weaponWeight = {
["WEAPON_KNIFE"] = 2,
["WEAPON_PISTOL"] = 4,
["WEAPON_ASSAULTRIFLE"] = 8,
["WEAPON_RPG"] = 10,
-- ... see config.lua for the full list
}
Unlisted weapons use defaultWeaponWeight. Over 40 weapons are preconfigured.
Notifications
Config.Notification = function(text)
SetNotificationTextEntry("STRING")
AddTextComponentString(text)
DrawNotification(false, true)
end
Replace this function with your preferred notification system (e.g., okokNotify, ox_lib notify, etc.).
Help Text
Config.DisplayHelpText = function(text)
SetTextComponentFormat("STRING")
AddTextComponentString(text)
DisplayHelpTextFromStringLabel(0, 0, 1, -1)
end
Customize the help text display (shown when a player is near a storage).
Discord Webhook
In server/sv_editable.lua, configure your Discord webhook for logging:
PerformHttpRequest("https://discord.com/api/webhooks/YOUR_ID/YOUR_TOKEN", ...)
All actions (placement, opening, deposit, withdraw, deletion) are logged to Discord.