Home › Class layouts › AI › AI::Control::UnitRequestContract

Needs the Community Extension. Not available in the unmodified game; works while the Community Extension mod is active (its own functions, or raw memory access with Mem/ObjMem).

AI::Control::UnitRequestContract

GameCore::AI::Control::UnitRequestContract — class, size 560 bytes (0x230).

Bases: AI::Control::Contract at 0x0

Linux offset Member Type
0x170 m_desiredUnit FAutoVariable<GameCore::UnitTypes, GameCore::AI::Control::UnitRequestContract>
0x188 m_desiredBuilding FAutoVariable<GameCore::BuildingTypes, GameCore::AI::Control::UnitRequestContract>
0x1a0 m_desiredDistrict FAutoVariable<GameCore::DistrictTypes, GameCore::AI::Control::UnitRequestContract>
0x1b8 m_desiredLocation FAutoVariable<GameCore::PlotCoord, GameCore::AI::Control::UnitRequestContract>
0x1d0 m_requiredCity FAutoVariable<unsigned int, GameCore::AI::Control::UnitRequestContract>
0x1e8 m_keepControl FAutoVariable<bool, GameCore::AI::Control::UnitRequestContract>
0x200 m_unitCreatedHandle Message::Handle
0x210 m_buildingCreatedHandle Message::Handle
0x220 m_districtCreatedHandle Message::Handle

Virtual functions

Slot order of the class's own vtable (inferred, see Virtual function tables). A virtual call call [vptr+offset] uses the byte offset. Owner is shown when the entry is inherited or overridden elsewhere.

Slot Offset Method Address in current build
0 0x0 \~UnitRequestContract 0x3f8190
1 0x8 InitializePostLoad 0x3f9450
2 0x10 Execute 0x3fa120
3 0x18 Execute (AI::Control::Contract) 0x3f8af0
4 0x20 Execute (AI::Control::Contract) 0x3f8850
5 0x28 Execute 0x3fa120
6 0x30 Execute 0x3fa120
7 0x38 Execute (AI::Control::Contract) 0x3f8310
8 0x40 Update 0x3fa120
9 0x48 Update (AI::Control::Contract) 0x9b1040
10 0x50 Update (AI::Control::Contract) 0x9b1040
11 0x58 Update 0x3fa120
12 0x60 Update 0x3fa120
13 0x68 Update (AI::Control::Contract) 0x3fa5e0
14 0x70 Validate 0x3fa120
15 0x78 Validate (AI::Control::Contract) 0x3fb1b0
16 0x80 Validate (AI::Control::Contract) 0x3fb0c0
17 0x88 Validate 0x3fa120
18 0x90 Validate 0x3fa120
19 0x98 Validate (AI::Control::Contract) 0x3fa8e0
20 0xa0 LogContract 0x8972d0
21 0xa8 LogContract (AI::Control::Contract) 0x3f97e0
22 0xb0 Read 0x3f9e80
23 0xb8 Write 0x3fb670