Configuration Overview
XDEV Appearance was designed around a modular configuration structure.
Instead of placing every setting inside a single file, the system separates functionality into multiple categories.
This makes the resource easier to maintain, extend, and integrate into existing server environments.
Configuration Structure
Main configuration files:
shared/config.lua
shared/data/*
shared/language/*
Main Config File
The primary system settings are located inside:
shared/config.lua
This file contains:
- system settings
- UI settings
- event settings
- command settings
- override settings
- pricing settings
- compatibility settings
Data Configuration Files
Additional data-driven systems are separated into dedicated files:
shared/data/clothing_rooms.lua
shared/data/opposites.lua
shared/data/outfits.lua
shared/data/peds.lua
shared/data/stores.lua
shared/data/tattoos.lua
These files are intended for easier large-scale editing.
Language Files
Languages are separated into dedicated locale files:
shared/language/tr.lua
shared/language/en.lua
shared/language/es.lua
shared/language/de.lua
shared/language/fr.lua
shared/language/ru.lua
The system supports dynamic locale loading internally.
Configuration Categories
The configuration system is separated into several logical groups.
System
Controls:
- save systems
- framework compatibility
- command systems
- database behavior
- conversion systems
- outfit systems
- cache systems
Documentation:
configuration/system.md
UI
Controls:
- hotkeys
- interaction behavior
- flashlight
- hands up
- clothes-off system
- information panels
Documentation:
configuration/ui.md
Pricing
Controls:
- clothing prices
- barber prices
- tattoo prices
- outfit prices
Documentation:
configuration/pricing.md
Commands
Controls:
- command names
- permissions
- command activation states
Documentation:
configuration/commands.md
Stores
Controls:
- clothing shop locations
- barber locations
- surgeon locations
- tattoo shop locations
Documentation:
configuration/stores.md
Clothing Rooms
Controls:
- job outfit rooms
- gang outfit rooms
- restricted clothing areas
- polygon/radius zones
Documentation:
configuration/clothing-rooms.md
Outfits
Controls:
- default uniforms
- job outfits
- gang outfits
- grade-based outfits
Documentation:
configuration/outfits.md
Tattoos
Controls:
- tattoo definitions
- tattoo collections
- tattoo labels
- tattoo categories
Documentation:
configuration/tattoos.md
Opposites
Controls opposite clothing mappings between genders.
Used for:
- gender switching
- UI previews
- compatibility handling
Documentation:
configuration/opposites.md
Override System
The resource supports extensive override functionality.
Developers can replace:
- notifications
- framework checks
- money handling
- walkstyle systems
- validation systems
without editing protected core files.
Event System
The resource includes a configurable internal event system.
Both client-side and server-side hooks are supported.
Example:
Config.Events.ClientSide.system = {
OnMenuOpen = true,
OnMenuClose = true
}
Configuration Philosophy
The system was intentionally designed to avoid hardcoded framework logic.
Most internal behavior can be:
- overridden
- replaced
- disabled
- redirected
through configuration or overrides.