Configuration
Configuration lives in the shared/ folder. These files are escrow_ignore'd, so they stay open and editable.
| File | What it controls |
|---|---|
shared/config.lua |
Global settings — access mode, timings, NPC customers, courier job, consumption anims, microwave/espresso/dispenser settings. |
shared/config_items.lua |
The item database (Config.Items) — the single source of truth for every ingredient/food/drink. |
shared/config_recipes.lua |
Meat cook times, microwave recipes, drink recipes, and restaurant menu templates/presets. |
shared/config_stations.lua |
Station type definitions (label, icon, prop model, slot counts). |
shared/locales.lua |
All UI/notification text. Change the values here to translate the whole script. |
Most-used settings
Config.ManagementAccess = "target" -- "laptop" | "target" | "both"
Config.StationPropDistance = 45.0 -- how close props physically spawn (perf)
Config.CookTime = 20000 -- base cook time (ms)
Config.BurnTime = 40000 -- time until cooked food burns if left
Config.SalaryInterval = 1800000 -- on-duty salary payout interval (ms)
Config.EnableNPC = true -- AI customers on/off
Config.DisableBuiltInConsumables = false -- true if another script handles hunger/thirst
A full annotated list is in the Config Reference.
Localization
The entire interface is text-driven from shared/locales.lua. The shipped file is English; translate a language by replacing the values. Both the Lua side (_t('key')) and the NUI side (t('key', fallback)) read from this same table at runtime, so no rebuild is needed to change text — just restart the resource.
The NUI carries English fallback strings, so a missing key still shows readable text — but adding the key to `locales.lua` lets you fully translate it.