ArchiveXL: Suffixes and Substitutions
How suffixes and substitutions work
Last updated
How suffixes and substitutions work
Last updated
Published: ??? by Last documented update: Feb 18 2024 by
This page will teach you about conditional appearance switching in Cyberpunk and give you an overview of existing suffixes and substitutions.
ArchiveXL did not invent suffixes. In fact, they are CDPR's solution to a problem, and they are annoying to use.
psiberx has found ways to make this less painful. This page documents these ways.
For a hands-on guide to , check the corresponding pages in the Modding Guides section
Dynamic appearances have their own guide (see )
There is an own page for
To conditionally hide items or parts of items, check or (especially the section about )
Sometimes, you want to load different meshes/appearances under different circumstances. Before ArchiveXL 1.5, the only way to do that were suffixes — registering them in the .yaml
, then adding one appearance for each variation in the root entity (so for 2 suffixes, you'd have 4 entries, for 3 suffixes, you'd have 8…).
Suffixes are outdated! Do yourself a favour and use !
Since 1.5, psiberx has made it possible to use conditionals via , which require a lot less of an overhead. (Personally, I've gone from 96 entries in the root entity down to 9!)
But while the solution has changed (and improved), the problems remain and require handling.
There are two body genders with different proportions, and you can't make them wear the same shirt (at least not without clipping). To solve that, you can do what CDPR did and have one variant per rig.
The suffix for the body is Male
/ Female
, the ArchiveXL string substitution is {gender}
and resolves to m
or w
.
You can check the current foot state by running the following command from CET:
Sometimes, you need to hide parts of the item in first person. – for example helmets, since you don't want to have half a helmet floating in front of your face (unless you consider that immersive; most people don't).
The arm states represent the different cyberware. For example, since you can't hire the forearms for mantis blades, you can roll up the sleeves just for this. The definitions are:
You can check the current foot state by running the following command from CET:
You can check the current foot state by running the following command from CET:
Conditions are a feature of dynamic appearances . They can be used in two places:
Inside your .app
file for appearanceAppearanceDefinition.name
:
This lets you to select a different appearance based on body gender, camera state... (see the tables above).
Inside your mesh_entity.ent
for component.name
:
Substitutions are a feature of dynamic appearances . They can only be used inside your mesh_entity.ent
.
Substitutions allow ArchiveXL to load a different mesh based on different circumstances.
For a list of active suffixes, check the tables above.
You can disable suffixes by adding the following line to your .yaml entry:
the base appearance (with no suffix)
the most specific suffix collection it can find
V has a female body gender and you're in photo mode (third person camera). Your base appearance is called appearance_
.
inside mesh entity
components in the fields name
, depotPath
and appearance
in the .app
appearances for the field name
Any placeholders will be interpolated at run-time (replaced with the correct value for your current state)!
Substitution will only become active if the property name starts with an asterisk (*
).
The order works as follows:
ArchiveXL allows body modders to , which can then be used for suffixes and for substitutions in dynamic variants. To learn more about this, check .
Camera mode | Suffix | Substitution | Condition |
---|
Cyberware | Suffix | Substitution | Conditional |
---|
If the arm states aren't working as expected, check if the table above is outdated by comparing the names with the .
To achieve gender equality in regard to foot states, you need to use . The substitution key for dynamic appearances is feet
.
Feet states for male-rigged V are not supported by the base game. You need to install either a body mod, or .
Character | Footwear | Suffix/Tag | Substitution | Condition |
---|
If the foot states aren't working as expected, check if the table above is outdated by comparing the names with the .
By using conditional appearances, you can still make use of partsOverrides
to use .
For a hands-on example, see ->
For a hands-on example, see ->
For a hands-on example, see ->
Do yourself a favour and don't use suffixes! They are outdated - use instead.
Suffix | Explanation |
---|
full appearance name |
---|
Since 1.8.0, ArchiveXL supports substitutions for . You can use them in two places:
For a tutorial about this, check
If you are a mod user and want to dynamically recolour an item, check the guide -> sub-page Emissive ->
If any of the placeholders aren't working the way you expect them, check if the table below is outdated by referring . (Please update the wiki if that happens!)
Placeholder | Substitution |
---|
For , you can conditionally switch out components or entire appearances by name. You can switch use any of the entries from
Appearance/Component | Priority | Description |
---|