Table of Contents

Class UnitColdData

Namespace
Core.Units
Assembly
Core.dll

Cold data for units - rarely accessed, stored separately from hot data.

DESIGN:

  • NOT in NativeArray (uses managed types)
  • Loaded on-demand (Dictionary lookup)
  • Stores optional/rare data (custom names, history, etc.)

EXAMPLES:

  • Custom unit names ("The Old Guard")
  • Combat history (battles participated in)
  • Achievement tracking (most kills, longest march, etc.)
public class UnitColdData
Inheritance
object
UnitColdData

Constructors

UnitColdData()

public UnitColdData()

Properties

BattlesCount

Battles participated in (for veteran status)

public int BattlesCount { get; set; }

Property Value

int

CreationTick

Creation tick (for age tracking, veteran status, etc.)

public ulong CreationTick { get; set; }

Property Value

ulong

CustomName

Custom name (e.g., "The Old Guard", "Royal Dragoons")

public string CustomName { get; set; }

Property Value

string

IsVeteran

Is this unit a veteran (fought multiple battles)?

public bool IsVeteran { get; }

Property Value

bool

ProvincesMarched

Total provinces traveled (for logistics/attrition tracking)

public int ProvincesMarched { get; set; }

Property Value

int

RecentCombatHistory

Recent combat history (limited size to prevent unbounded growth). Stores recent battle IDs or province IDs where combat occurred.

public List<ushort> RecentCombatHistory { get; set; }

Property Value

List<ushort>

TotalKills

Total kills in combat (for statistics, achievements)

public int TotalKills { get; set; }

Property Value

int

Methods

RecordBattle(ushort)

Add a battle to combat history (with bounded size)

public void RecordBattle(ushort battleProvinceID)

Parameters

battleProvinceID ushort