Components

All the dirty detes on components as we discover them. WIP.

In general, your components should have a globally unique name so you can target them via partsOverrides. Feel free to ignore this, almost everyone else does as well, but it is the reason behind the convoluted names of CDPR's components.

Equipment/Hair

entGarmentSkinnedMeshComponent

Can be used interchangeably with entSkinnedMeshComponent.

  • Loads a mesh from a depotPath.

  • Supports chunkMask.

  • meshAppearance will select an appearance by name from the mesh's defined appearances.

This is the good kind of mesh component, the one that will work without trouble, as opposed to entSkinnedClothComponent.

entSkinnedMeshComponent

=> entGarmentSkinnedMeshComponent

entSkinnedClothComponent

Like ent(Garment)SkinnedMeshComponent, but with a physicalMesh and physics. Usually comes together with an entAnimatedComponent (they're usually named collar for clothes and dangle for hair and accessories).

entAnimatedComponent

Adds physics to garments and hair meshes.

NPCs

gameDismembermentComponent

Defines dismemberment rules for NPCs. (TBD: ???)

Generic

gameInteractionComponent

Adds interaction prompt to entity. (Shouldn't work without gameTargetingComponent, but this hasn't been double-checked.)

entColliderComponent

gameTargetingComponent

Allows targeting via CET.

gameScanningComponent

Properties

A list of component properties with explanations.

chunkMask

Only used for meshes: Determines which parts of a mesh will be displayed or hidden. Numeric indices correspond with the submeshes by index.

depotPath

Relative path to a resource within the game files. Used to load dependencies — meshes, rigs, animations, effects.

Last updated

#386: Expand visual modding

Change request updated