This guide will explain how to influence meshes by directly in the .app file, overriding whatever is defined for the components in the .ent file which loads them.
For even further customization options for wardrobe items, see EquipmentEx's readme.
PartsOverrides
This section assumes that you're loading appearance parts via associated .ent file rather than including them as components.
In the .app file, each appearance lets you define PartsOverrides, which — as the name implies — let you override the appearance of parts. An entry looks as follows:
Overwrite the component "kimono" and "kimono_filler", which are defined in the file "kimono_meshentity.ent"
This is the reason why Cyberpunk has all the player components stored in .ent files!
Where partsValues lets you define the individual entity files that you'll load, partsOverrides lets you assign properties which take precedence over those defined in the .ent file:
componentsOverride > .ent file
Components need to be unambiguously identified by their name as defined in the .ent file. For that reason, it's good practice to have globally unique identifiers.
Starting with version >= 1.4.0, ArchivXL can understand the following variables for meshAppearance in appearanceOverrides:
So depending on your PC's body gender and colouring, the meshAppearance my_app_{gender}{skin_color}_{hair_color} could translate to my_app_w__01_ca_pale__blue_red_ombre.
Arms
Due to cyberware, V has more arms than Shiva the Destroyer (although not at the same time). For a full list of component names, see here.
The list below is a summary, but might not be up-to-date. Please refer to the linked page if you're missing anything.
You can find the corresponding entity files in base\characters\common\player_base_bodies > .ent, the file names will start with a0_.
Body
The player base body component name is
ArchiveXL
Normally, you can override only components from .ent files that you include via partsValues in the same appearance. ArchiveXL expands this by letting you manipulate any components that are loaded as part of the player.ent:
This is hiding a submesh of the default body, which isn't part of the referenced pants_leggins.ent.
This is only possible because of ArchiveXL!
To delete an already existing reference, set the numeric value to the right of the depot path to 0:
VisualTags
These can be used in addition to PartsOverrides and will let you influence your item even further. You can find an array named visualTags.tags in both the root entity and the .app file's appearances.
This mechanism is how e.g. your sunglasses disappear when you put on a helmet.
Visual tags in the root entity will get applied to every appearance in the app.
However:
Due to technical limitations, any visual tags that hide parts of the mesh must go into the .app file to take effect.
ArchiveXL
The following tags are used by the base game; however, to make use of them, you require ArchiveXL.