Skip to Content
GuidesCharacters

Characters

A character definition controls which 3D model is used for a prisoner and which node sequences the game can start them on. The two default characters are MaleRebel and FemaleRebel.

$type: Scripts.DataComponents.CharacterDataObject, Assembly-CSharp


Fields

id

String. The unique identifier for this character. Used to reference the character elsewhere. Case-sensitive.


isMale

Boolean. Determines which name pool is used when generating this character’s name (maleNames or femaleNames from GameSettings).

"isMale": true

addressableId

String. The name of the Unity Addressable asset to load for this character’s 3D model and rig. The built-in values are "MaleRebel" and "FemaleRebel". Custom characters are not supported in the current version — set this to one of the two built-in values.

"addressableId": "MaleRebel"

defaultNodeIds

Array of strings. A pool of node id values the game can pick from as the starting node for this character’s sequence. The game picks one at random each time this character is captured.

"defaultNodeIds": ["male_rebel_interrogation"]

You can list multiple node ids here to randomise which interrogation sequence plays:

"defaultNodeIds": [ "male_rebel_interrogation", "my_custom_interrogation_a", "my_custom_interrogation_b" ]

canBeCaptured

Boolean. When false, this character type will never be sent to the block — effectively disabling them. Defaults to true when omitted.

"canBeCaptured": false

hairColors

Array of hex colour strings. One colour is picked at random each time this character spawns and applied as a tint to their hair material. Leave the array empty (or omit the field) to keep the material’s default colour.

"hairColors": [ "#0D0600", "#3B1A07", "#8B6A35", "#6E6560" ]

Replacing this array in a mod file replaces the entire list — the mod system does a shallow merge, not an append.


Examples

Patch an existing character

Point the male rebel at a custom interrogation node instead of the default:

{ "$type": "Scripts.DataComponents.CharacterDataObject, Assembly-CSharp", "id": "MaleRebel", "defaultNodeIds": ["my_custom_interrogation"] }

Disable a character type

Prevent female rebels from appearing entirely:

{ "$type": "Scripts.DataComponents.CharacterDataObject, Assembly-CSharp", "id": "FemaleRebel", "canBeCaptured": false }

Add multiple starting nodes for variety

{ "$type": "Scripts.DataComponents.CharacterDataObject, Assembly-CSharp", "id": "MaleRebel", "defaultNodeIds": [ "male_rebel_interrogation", "my_hostile_rebel_start", "my_silent_rebel_start" ] }

Change hair colours

Give the male rebel lighter, sandy hair:

{ "$type": "Scripts.DataComponents.CharacterDataObject, Assembly-CSharp", "id": "MaleRebel", "hairColors": [ "#C8A045", "#D4B85A", "#B89030" ] }

Built-in characters

idaddressableIdisMale
MaleRebelMaleRebeltrue
FemaleRebelFemaleRebelfalse

Custom character models are not supported in the current release. You must use "MaleRebel" or "FemaleRebel" as the addressableId.

Last updated on