Characters & assets

Assets

How meshes, images and textures are loaded at runtime from mod folders, and the rules they follow.

Underlives never cooks mod content. Meshes, pictures and textures are read from your mod folder when the game needs them.

Where assets are looked up

Kind Folder Referenced as Loaded by
Pictures for UI Images/ "Nightlife/cocktail.png" UI:CreateImage, .ulitem IconId, .ulcloth IconId
Map icons Map/Icons/<Group>/ "<Group>/<name>" or by convention The map HUD, the player panel, history lines
Garment and hair meshes Meshes/ MeshId: Clothes/Tops/x.fbx .ulcloth, .ulhair
Garment textures Meshes/…/Textures/<mesh>/ by name (Default_BC.png) Clothing
Thumbnails Thumbs/ next to the file they illustrate by id (<id>.png) Wardrobe, creator, room editor
Room kits and sets Rooms/ "GenericKit/kit_bar.glb#Wall", "Sets/60sDiner" Rooms
Look textures Looks/Textures/ by name Looks

Every lookup goes through the load order: the same relative path in a later mod replaces the earlier file. Replacing an icon or a texture is one file.

Formats

Kind Format
Pictures .png (8-bit, sRGB). Normal maps and masks are read as data automatically when named _N / _M
Characters, clothing, hair .fbx exported from Daz Studio on Genesis 8
Room kits and furniture .glb (glTF binary), one node per piece

Rules that save you trouble

  • Keep paths lowercase-safe and without spaces where you can; they are file paths on the player's disk.
  • Normal maps are data, not pictures. Name them _N.png so they are decoded linearly; an sRGB-decoded normal map renders the surface almost black.
  • Mind the size. A 4K texture per garment adds up fast across a street full of people. 1–2K is plenty for clothing.
  • Glass and emissive surfaces in room packs are recognised by their material names (Glass, Bulb, LED, Shade, Filament…).
  • Collision is not required: the game does not rely on it to pick furniture.

Licences

Shipping assets you did not make needs their licence to allow redistribution. Put a LICENSE.txt next to them (the base sets do), and credit authors in your MODULE_DESCRIPTION or a file of its own.