Docs
Main settings (
View product page
X3D Vault
Free ESX vaults on the x3d_inventory screen: player vaults with levels and sharing, job vaults per society, Thai and English.
Buy / Get freeConfig builderInstallation
- Put the
x3d_vaultfolder inresources/ - Run
install.sql(createsx3d_vault,x3d_vault_storageand thecard_safeitem) - In
server.cfg,ensure x3d_inventoryfirst, thenensure x3d_vault - Set vault locations in
config/VAULT/config.group.lua(player vaults) andconfig/VAULT/config.society.lua(job vaults)
Requirements
| Needs | Notes |
|---|---|
ESX Legacy (es_extended) |
uses @es_extended/imports.lua |
oxmysql |
|
x3d_inventory |
vault storage uses this bag's screen (free in the X3D store) |
Main settings (config/config.general.lua)
| Setting | What it does |
|---|---|
Config.Locale |
'th' or 'en' |
Config.VaultNameTagLength |
length of the vault code (3–6) |
Config.CloseEvents |
client events from other scripts that close the vault at once |
Vault types
Each vault type is one block in Config.GroupVault (player) or Config.SocietyVault (job).
| Field | What it does |
|---|---|
name |
vault type name players see |
max_level / exp_per_lvl |
highest level and EXP per level (player vaults) |
lvl_permission[level] |
slot, weight, total_*_limit (-1 = unlimited), allow_accounts/items/weapons, shareable |
allowed_list |
accounts/items/weapons, each type = 'whitelist' | 'blacklist' + list |
upgrade_items |
items that add EXP, e.g. { type = 'item', name = 'card_safe', exp = 1000 } |
open_vault_option / create_vault_option |
items needed to open/create a vault (empty = none) |
allowed_jobs |
jobs allowed into a job vault |
zone.blip / zone.text |
map blip and the label above the vault |
zone.locations |
vault spots: model, coords, heading, action_radius (E reach) |
max_vault_per_player / can_remove |
vaults per player, and whether players may delete their own |
Connect your own systems
addons/hooks/client.lua→Hooks.OpenGuide(reopen, isOpen)opens your guide from the[?]button (nilhides it)addons/text3d/client.luadraws the labels (natives + Thai font); swap it for your own label system
Exports (server)
GetPlayerVaults(identifier)vaults a player owns or is shared intoGetVaultData(group, nameTag, identifier)/CanAccessVault(vault, identifier)DepositItems(identifier, group, nameTag, items)deposits items into a vault and returns what didn't fit