~/docs/supermarket-simulator/configuration/config
supermarket simulator docs›
Supermarket Simulator
Config
-- 1 code block · 2 min read
Core settings : shared/shared.lua
Shared.Language = "en" -- "en", "fr" or "es"
Shared.Framework = {
ESX = true, -- exactly ONE of these must be true
QBCore = false,
Standalone = false,
}
Shared.Admins = {} -- identifiers allowed to use /smadmin (see below)
Shared.Editors = {} -- identifiers allowed to use the prop editor everywhere
Shared.Framework: set exactly one toggle totrue. If zero or more than one is set, the resource prints a config error on start. The framework is also auto-detected at runtime, so this toggle mainly controls fallbacks; keep it consistent with the framework you actually run.Shared.Admins: a list of player identifiers (e.g."license:xxxx…","steam:xxxx","discord:xxxx"). Members can open/smadmin, manage every store, and open the Catalog Manager. Empty by default — add yourself first.Shared.Editors: optional. Identifiers here can use the prop editor in any store (store owners can always edit their own).
Content & behaviour : config/*.lua
| File | What it holds |
|---|---|
config/props.lua |
Shared.PropConfig — the single source of truth for every behaviour knob: freecam controls, gizmo/editor, NPC customers, cleaning, register, garage tiers, security, payroll, sounds, markers. Search here before adding anything. |
config/categories.lua |
Prop categories shown in the editor (shelves, fridges, registers, décor). |
config/catalog.lua |
Prop labels + prices (mirrors categories). |
config/items.lua |
Shared.GoodsConfig — the sellable goods, their prices, and how they render inside containers. |
These files are the seed for the catalog. On first start they are baked into
server/catalog.json, which then becomes the live source of truth (so the in-game Catalog Manager can edit it). After editing the config files, run/smcatalogreseed(or deleteserver/catalog.jsonand restart) to pull your changes into the live catalog — otherwise the JSON keeps winning. See Catalog manager.
Localisation : shared/locales/
Strings live in shared/locales/en.lua, fr.lua and es.lua under Shared.Locale.KEY. Select the active language with Shared.Language. To add a language, copy en.lua, translate the values, and register it in shared/locale_init.lua.
Optional prop packs (addons) : shared/addons.lua
Some props/goods come from optional stream resources. If the stream resource isn't running, those models are automatically hidden from the editor and buy UI (so you never place an invisible prop). Base-game props are always available.
Recognised packs:
| Pack resource | Provides |
|---|---|
npo_247_supermarket_skafir |
NPO 247 shelves, fridge, furniture, security pack, soda/gumball/slush props |
var_supermarket_stream |
cbr_etage, cbr_frig (and the core cash-register screen props) |
bzzz_skafir |
the bzzz_* goods display pack |
If you don't own these packs, nothing breaks, the resource simply offers the base-game props. If you rename a pack resource, update Shared.AddonModels / the prefix map in shared/addons.lua to match.