Full Configuration Reference
Main configuration file:
config/config.lua
Locale
Config.Locale = 'en'
Included locales:
en
pt
Storage
Config.Storage = 'json'
Values:
json
mysql
auto
json uses KVP as the authoritative store and JSON files as mirrors.
mysql requires oxmysql.
auto uses MySQL when oxmysql is running, otherwise KVP/JSON.
Base Distances & Defaults
Config.InteractionDistance = 2.0
Config.DrawDistance = 12.0
Config.DefaultDoorDistance = 2.0
Config.DefaultLocked = true
Config.DefaultAutoLock = 0
Door Closing
Config.DoorCloseRate = 10.0
Config.DoorCloseTimeoutMs = 2500
Config.DoorCloseSnapFallback = true
Config.DoorPhysicalFallback = true
Controls
Config.ToggleKey = 38
Config.LockpickKey = 74
Defaults:
E = toggle
H = lockpick
Feature Toggles
Config.EnableTarget = true
Config.EnableTextUI = true
Config.EnableLockpick = true
Config.CustomDoorNUI = true
Config.ShowDoorStateIcon = true
Native State Icon
Config.DoorStateIconDistance = 6.0
Config.DoorStateIconOffsetZ = 0.0
Config.DoorStateIconMergeDistance = 0.35
Sprite configuration:
Config.DoorStateSprites = {
[0] = {
'mpsafecracking',
'lock_open',
0.0, 0.0,
0.018, 0.018,
0.0,
255, 255, 255, 180
},
[1] = {
'mpsafecracking',
'lock_closed',
0.0, 0.0,
0.018, 0.018,
0.0,
255, 255, 255, 180
}
}
State keys:
0 = unlocked
1 = locked
Custom Door UI
Config.DoorUIShowDistance = 6.0
Config.DoorUIInteractDistance = 2.0
Config.DoorUIOffsetZ = 0.15
Administrator Settings
Config.AdminCommand = 'doors'
Config.AdminAce = 'nord.doorlock.admin'
Config.AdminGroups = {
admin = true,
superadmin = true,
god = true
}
Integration Providers
Config.Framework = 'auto'
Config.Notify = 'auto'
Config.TextUI = 'auto'
Config.Target = 'auto'
Config.Inventory = 'auto'
Framework
auto
esx
qb
qbx
nord
standalone
Notify
auto
ox
qb
esx
nord
standalone
Text UI
auto
ox
nord
standalone
Target
auto
ox
qb
nord
standalone
Inventory
auto
ox
qb
esx
nord
standalone
Lockpick
Config.Lockpick = {
item = 'lockpick',
consumeOnSuccess = false,
consumeOnFail = true,
fallbackSuccessChance = 45,
oxDifficulty = { 'easy', 'easy', 'medium' },
oxInputs = { 'w', 'a', 's', 'd' }
}
Server Security
Config.RateLimitMs = 350
Config.ServerDistanceCheck = true
Config.ServerDistanceTolerance = 2.0
RateLimitMs reduces event spam.
ServerDistanceCheck enables authoritative proximity validation for player interactions.
ServerDistanceTolerance is added to the door's configured distance when validating the player server-side.
Capture
Config.AdminCaptureDistance = 15.0
Config.AdminCaptureRadius = 0.42
Config.AdminCaptureFallbackRadius = 1.35
Config.AdminCaptureScreenRadius = 0.075
The capture system can use a normal object ray, a capsule test and a camera-aligned object fallback.
Duplicate Door Detection
Config.DuplicateDoorTolerance = 0.15
The same physical door object cannot belong to two different door definitions.
Debug
Config.Debug = false
Enable temporarily when diagnosing persistence or synchronization problems.