Command Palette
Search for a command to run...
DEFAULT APPEARANCE#
The defaults configuration (config/defaults.lua) defines the initial appearance for new characters using Schema v2 format.
Overview#
When a new character is created, they start with the default appearance defined in InitialPlayerClothes. This uses the Schema v2 collection-based format.
Schema Version#
config/defaults.luaInitialPlayerClothes = { male = { schema_version = 2, -- ... appearance data }, female = { schema_version = 2, -- ... appearance data } }
Schema v2 uses collection-based clothing references instead of raw drawable IDs, enabling proper support for DLC and addon clothing.
Model Selection#
Set the default ped model:
config/defaults.luaInitialPlayerClothes = { male = { schema_version = 2, model = "mp_m_freemode_01" }, female = { schema_version = 2, model = "mp_f_freemode_01" } }
| Gender | Default Model |
|---|---|
| Male | mp_m_freemode_01 |
| Female | mp_f_freemode_01 |
Head Blend (Heritage)#
Configure the default face blend:
config/defaults.luaheadBlend = { shapeFirst = 0, -- First parent face shape(0-45) shapeSecond = 0, -- Second parent face shape(0-45) shapeThird = 0, -- Third blend shape skinFirst = 0, -- First parent skin tone skinSecond = 0, -- Second parent skin tone skinThird = 0, -- Third skin blend shapeMix = 0.5, -- Shape blend(0.0-1.0) skinMix = 0.5, -- Skin blend(0.0-1.0) thirdMix = 0.0 -- Third blend amount }
| Property | Range | Description |
|---|---|---|
shapeFirst | 0-45 | First parent face ID |
shapeSecond | 0-45 | Second parent face ID |
shapeMix | 0.0-1.0 | Blend between parents (0 = first, 1 = second) |
skinFirst | 0-45 | First parent skin tone |
skinSecond | 0-45 | Second parent skin tone |
skinMix | 0.0-1.0 | Skin tone blend |
Components (Clothing)#
Define default clothing using collection-based references:
config/defaults.luacomponents = { ["0"] = { -- Face/Head collection = "base", localIndex = 0, texture = 0 }, ["1"] = { -- Mask collection = "base", localIndex = 0, texture = 0 }, ["2"] = { -- Hair collection = "base", localIndex = 0, texture = 0 }, ["3"] = { -- Arms/Gloves collection = "base", localIndex = 15, texture = 0 }, ["4"] = { -- Pants collection = "base", localIndex = 21, texture = 0 }, ["5"] = { -- Bag collection = "base", localIndex = 0, texture = 0 }, ["6"] = { -- Shoes collection = "base", localIndex = 34, texture = 0 }, ["7"] = { -- Accessory collection = "base", localIndex = 0, texture = 0 }, ["8"] = { -- Undershirt collection = "base", localIndex = 15, texture = 0 }, ["9"] = { -- Vest collection = "base", localIndex = 0, texture = 0 }, ["10"] = { -- Decals collection = "base", localIndex = 0, texture = 0 }, ["11"] = { -- Torso collection = "base", localIndex = 15, texture = 0 } }
| Component ID | Name | Description |
|---|---|---|
| 0 | face_skin | Face/head variations |
| 1 | mask | Masks |
| 2 | hair | Hairstyles |
| 3 | arms | Arms/gloves |
| 4 | pants | Pants/legs |
| 5 | bag | Bags/parachutes |
| 6 | shoes | Footwear |
| 7 | accessory | Accessories |
| 8 | shirt | Undershirts |
| 9 | vest | Vests/armor |
| 10 | decals | Decals/badges |
| 11 | torso | Tops/jackets |
Component Properties:
| Property | Type | Description |
|---|---|---|
collection | string | Collection name (base, dlc name, addon name) |
localIndex | number | Item index within collection |
texture | number | Texture/color variant |
Props (Accessories)#
Define default props:
config/defaults.luaprops = { ["0"] = { -- Hat collection = "base", localIndex = -1, -- -1 = no prop texture = 0 }, ["1"] = { -- Glasses collection = "base", localIndex = -1, texture = 0 }, ["2"] = { -- Ear collection = "base", localIndex = -1, texture = 0 }, ["6"] = { -- Watch collection = "base", localIndex = -1, texture = 0 }, ["7"] = { -- Bracelet collection = "base", localIndex = -1, texture = 0 } }
| Prop ID | Name | Description |
|---|---|---|
| 0 | hat | Hats/helmets |
| 1 | glass | Glasses/eyewear |
| 2 | ear | Earpieces/earrings |
| 6 | watch | Watches |
| 7 | bracelet | Bracelets |
Use localIndex = -1 to indicate no prop equipped by default.
Face Features#
Configure 20 face feature sliders:
config/defaults.luafaceFeatures = { nose_0 = 0.0, -- Nose width nose_1 = 0.0, -- Nose peak height nose_2 = 0.0, -- Nose peak length nose_3 = 0.0, -- Nose bone height nose_4 = 0.0, -- Nose bone twist nose_5 = 0.0, -- Nose bridge eyebrows_0 = 0.0, -- Eyebrow height eyebrows_1 = 0.0, -- Eyebrow depth cheeks_0 = 0.0, -- Cheek bone height cheeks_1 = 0.0, -- Cheek bone width cheeks_2 = 0.0, -- Cheek width eyes_0 = 0.0, -- Eye opening lips_0 = 0.0, -- Lip thickness jaw_0 = 0.0, -- Jaw bone width jaw_1 = 0.0, -- Jaw bone depth chin_0 = 0.0, -- Chin height chin_1 = 0.0, -- Chin length chin_2 = 0.0, -- Chin width chin_3 = 0.0, -- Chin hole size neck_thikness = 0.0 -- Neck thickness }
| Feature | Range | Description |
|---|---|---|
| All features | -1.0 to 1.0 | Slider value (0 = neutral) |
Overlays (Appearance)#
Configure face overlays (makeup, beard, etc.):
config/defaults.luaoverlays = { blemish = { style = 0, opacity = 0.0, color = 0 }, beard = { style = 0, opacity = 0.0, color = 0 }, eyebrows = { style = 0, opacity = 1.0, color = 0 }, aging = { style = 0, opacity = 0.0, color = 0 }, makeup = { style = 0, opacity = 0.0, color = 0 }, blush = { style = 0, opacity = 0.0, color = 0 }, complexion = { style = 0, opacity = 0.0, color = 0 }, sundamage = { style = 0, opacity = 0.0, color = 0 }, lipstick = { style = 0, opacity = 0.0, color = 0 }, freckles = { style = 0, opacity = 0.0, color = 0 }, chesthair = { style = 0, opacity = 0.0, color = 0 }, bodyblemish = { style = 0, opacity = 0.0, color = 0 } }
| Overlay | Styles | Has Color |
|---|---|---|
| blemish | 23 | No |
| beard | 28 | Yes |
| eyebrows | 33 | Yes |
| aging | 14 | No |
| makeup | 74 | Yes |
| blush | 6 | Yes |
| complexion | 11 | No |
| sundamage | 10 | No |
| lipstick | 9 | Yes |
| freckles | 17 | No |
| chesthair | 16 | Yes |
| bodyblemish | 11 | No |
Hair Settings#
Configure hair color:
config/defaults.luahair = { color = 0, -- Primary hair color(0-63) highlight = 0, -- Highlight color(0-63) fade = 0 -- Fade style(if applicable) }
Eye Color#
config/defaults.luaeyeColor = 0 -- Eye color(0-31)
Tattoos#
config/defaults.luatattoos = {} -- Empty array = no tattoos
To add default tattoos:
tattoos = { { collection = "mpbusiness_overlays", name = "MP_Busi_M_Chest_000" }, { collection = "mpbusiness_overlays", name = "MP_Busi_M_LeftArm_000" } }
Complete Example#
config/defaults.luaInitialPlayerClothes = { male = { schema_version = 2, model = "mp_m_freemode_01", headBlend = { shapeFirst = 0, shapeSecond = 0, shapeThird = 0, skinFirst = 0, skinSecond = 0, skinThird = 0, shapeMix = 0.5, skinMix = 0.5, thirdMix = 0.0 }, components = { ["3"] = { collection = "base", localIndex = 15, texture = 0 }, ["4"] = { collection = "base", localIndex = 21, texture = 0 }, ["6"] = { collection = "base", localIndex = 34, texture = 0 }, ["8"] = { collection = "base", localIndex = 15, texture = 0 }, ["11"] = { collection = "base", localIndex = 15, texture = 0 } }, props = { ["0"] = { collection = "base", localIndex = -1, texture = 0 }, ["1"] = { collection = "base", localIndex = -1, texture = 0 } }, faceFeatures = { nose_0 = 0.0, nose_1 = 0.0, nose_2 = 0.0, -- ... all 20 features }, overlays = { eyebrows = { style = 0, opacity = 1.0, color = 0 }, -- ... all overlays }, hair = { color = 0, highlight = 0, fade = 0 }, eyeColor = 0, tattoos = {} } }