Configuration

2 min readUpdated 3 weeks ago

Overview

Configuration is split into two files:

  • shared/config.lua: General settings, admin, blips, NPC spawn distance
  • server/config_server.lua: Logger backend, Discord webhook URLs

Shops, traders, items, categories, stock, and NPC positions are all managed through the admin panel and stored in the database.

General

shared/config.lua
1Config.Settings = {
2    Locale = 'en',
3    Debug = false,
4    Theme = 'classic',
5    MainColor = '#D9794D',
6    InventoryImagePath = 'nui://ox_inventory/web/images/',
7    ImageExtension = '.png',
8}
  • Theme: UI theme
  • MainColor: Primary accent color for the shop UI
  • InventoryImagePath: Path to item images (defaults to ox_inventory)

Admin

shared/config.lua
1Config.Settings.AdminCommand = 'shopadmin'
2Config.Settings.AdminPermission = 'admin'
3Config.Settings.AdminJob = 'admin'
4Config.Settings.EnableAdminCheck = true
5Config.Settings.AdminCheckDistance = 5.0
  • AdminCommand: Chat command to open the admin panel
  • AdminPermission: Required permission group
  • AdminJob: Alternative job-based access
  • AdminCheckDistance: Max distance for admin interactions with traders

NPC & Interaction

shared/config.lua
1Config.Settings.PedSpawnDistance = 100.0
2Config.Settings.EnableTarget = true
  • PedSpawnDistance: Distance at which trader NPCs spawn/despawn
  • EnableTarget: Enable target interactions on NPCs

Blips

shared/config.lua
1Config.Settings.EnableBlips = true

Blip sprite, color, and label are configured per-shop through the admin panel. Available blip colors are listed in Config.BlipColors.

Logger Backend

server/config_server.lua
1Config.Logger = 'discord'
  • 'discord': Uses Discord webhook URLs
  • 'ox_lib': Routes logs to DataDog, FiveManage, or Loki based on your ox_lib config

Discord Webhooks

server/config_server.lua
1Config.DiscordWebhook = {
2    StaffActions     = 'INSERT_WEBHOOK_LINK_HERE',
3    PlayerActions    = 'INSERT_WEBHOOK_LINK_HERE',
4    Purchases        = 'INSERT_WEBHOOK_LINK_HERE',
5    TraderManagement = 'INSERT_WEBHOOK_LINK_HERE',
6    ItemManagement   = 'INSERT_WEBHOOK_LINK_HERE',
7    StockChanges     = 'INSERT_WEBHOOK_LINK_HERE',
8    CategoryChanges  = 'INSERT_WEBHOOK_LINK_HERE',
9    ExploitDetected  = 'INSERT_WEBHOOK_LINK_HERE',
10}

Replace each placeholder with a Discord webhook URL. Set to false to disable that log entirely.