legacy-crafting
Configuration
All Config keys in config.lua, with defaults and behavior.
Configuration
All settings live in config.lua.
General
| Key | Type | Default | Description |
|---|---|---|---|
Config.Version |
string | '1.0.0' |
Resource version string; also sent to legacy-lib's CheckVersion export 5s after startup. |
Config.Locale |
string | 'en' |
Locale file loaded from locales/. |
Config.Debug |
boolean | true |
Enables debug console output (job checks, bench opens, crafts, admin saves). Set false in production. |
Admin access
| Key | Type | Default | Description |
|---|---|---|---|
Config.AdminCommand |
string | 'craftingmanage' |
Command that opens the crafting admin panel. Registered server-side; rejects console and non-admins. |
Config.AdminGroups |
table | { 'god', 'admin', 'superadmin' } |
ACE group names (checked as group.<name>), in addition to the framework's own admin check, allowed to use the admin command and every admin export. |
Interaction & storage
| Key | Type | Default | Description |
|---|---|---|---|
Config.InteractionDistance |
number | 2.5 |
Max distance for ox_target interaction to open a bench. |
Config.DefaultStorageSlots |
number | 50 |
Default stash slot count when a bench enables storage without an explicit value. |
Config.DefaultStorageWeight |
number | 100000 |
Default stash weight limit (grams) when a bench enables storage without an explicit value. |
Changing the two storage defaults does not retroactively update already-created bench stashes.
Tiers & XP
| Key | Type | Default | Description |
|---|---|---|---|
Config.Tiers |
table | { {level=1,label='Novice',xp=0,color='#6B7280'}, ... } |
Built-in tier ladder (level/label/xp/color). Used as a fallback by LoadTiers() if legacy_crafting_tiers has no rows, and ignored entirely for recipe gating when Config.UseSkillsResource is true. |
Config.UseSkillsResource |
boolean | false |
When true, XP reads/writes are delegated to legacy-skills (GetSkill/AddXP exports) instead of the built-in tier system. total_crafts is still tracked locally. |
Config.SkillName |
string | 'crafting' |
Skill key looked up in legacy-skills; only used when Config.UseSkillsResource is true. |
Toggling
Config.UseSkillsResourcechanges whatrequired_levelon a recipe means (1–5 tier levels vs. 1–75 legacy-skills levels). Re-check existing recipes after switching.
Crafting animation
| Key | Type | Default | Description |
|---|---|---|---|
Config.CraftingAnim |
table | { dict = 'mini@repair', clip = 'fixing_a_player', flag = 49 } |
Animation played on the player while crafting; passed directly to lib.progressBar's anim field. |
Bench appearance defaults
| Key | Type | Default | Description |
|---|---|---|---|
Config.DefaultBlipSprite |
number | 566 |
Fallback blip sprite for new benches. |
Config.DefaultBlipColor |
number | 2 |
Fallback blip color for new benches. |
Config.DefaultBlipScale |
number | 0.6 |
Fallback blip scale for new benches. |
Config.BenchPresets |
table | { {label='Weapon Bench', model='prop_tool_bench02', sound='weapon', icon='fas fa-gun'}, ... } |
Preset bench prop options in the admin bench creator. |
Cinematic camera
| Key | Type | Default | Description |
|---|---|---|---|
Config.CameraOffset |
table | { forward = 1.5, up = 0.8, propHeight = 0.85 } |
Default camera forward distance/height and preview prop spawn height, used when a bench doesn't specify its own camera_height/camera_distance. |
Config.PropRotationSpeed |
number | 1.0 |
Degrees added to the preview prop's heading each frame while it rotates in the crafting UI. |
Webhooks
| Key | Type | Default | Description |
|---|---|---|---|
Config.Webhooks |
table | { ItemCrafted = '', AdminAction = '' } |
Discord webhook URLs. ItemCrafted fires on successful craft; AdminAction fires on category/recipe/bench create-or-update. Leave a value as an empty string (not nil) to disable it — the code checks for empty string, not key existence. |
Notes
Config.AdminGroupsis enforced via ACE permissions (group.<name>), not job/gang — players need the actual ace group granted, not just an in-game admin job.Config.Debug = trueby default will produce console log spam; set tofalsefor production.