Home › Class layouts › Definition › Definition::District

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).

Definition::District

GameCore::Definition::District — class, size 640 bytes (0x280).

Bases: Definition::IProperties at 0x0

Linux offset Member Type
0x10 m_DatabaseRowId int32
0x14 m_CollectionIndex uint32
0x18 m_CostProgressionModelHash uint32
0x1c m_DistrictTypeHash uint32
0x20 m_MilitaryDomainHash uint32
0x24 m_PlunderTypeHash uint32
0x28 m_AirSlots int32
0x2c m_Appeal int32
0x30 m_CityStrengthModifier int32
0x34 m_Cost int32
0x38 m_CostProgressionParam1 int32
0x3c m_Entertainment int32
0x40 m_Housing int32
0x44 m_Maintenance int32
0x48 m_PlunderAmount int32
0x4c m_TravelTime int32
0x50 m_CitizenSlots Optional<int>
0x58 m_HitPoints Optional<int>
0x60 m_MaxPerPlayer float
0x68 m_CostProgressionModel Basic
0x70 m_DistrictType Basic
0x78 m_MilitaryDomain Basic
0x80 m_Name Basic
0x88 m_PlunderType Basic
0x90 m_AdvisorType Optional<String::BasicT<String::BasicStringAlloc, ASCII> >
0xa0 m_Description Optional<String::BasicT<String::BasicStringAlloc, ASCII> >
0xb0 m_PrereqCivic Optional<String::BasicT<String::BasicStringAlloc, ASCII> >
0xc0 m_PrereqTech Optional<String::BasicT<String::BasicStringAlloc, ASCII> >
0xd0 m_TraitType Optional<String::BasicT<String::BasicStringAlloc, ASCII> >
0xe0 m_AdjacentToLand (bit-field, 1 bits) bool
0xe0 m_AllowsHolyCity (bit-field, 1 bits) bool
0xe0 m_Aqueduct (bit-field, 1 bits) bool
0xe0 m_CanAttack (bit-field, 1 bits) bool
0xe0 m_CaptureRemovesBuildings (bit-field, 1 bits) bool
0xe0 m_CaptureRemovesCityDefenses (bit-field, 1 bits) bool
0xe0 m_CaptureRemovesDistrict (bit-field, 1 bits) bool
0xe0 m_CityCenter (bit-field, 1 bits) bool
0xe1 m_Coast (bit-field, 1 bits) bool
0xe1 m_FreeEmbark (bit-field, 1 bits) bool
0xe1 m_InternalOnly (bit-field, 1 bits) bool
0xe1 m_NoAdjacentCity (bit-field, 1 bits) bool
0xe1 m_OnePerCity (bit-field, 1 bits) bool
0xe1 m_RequiresPlacement (bit-field, 1 bits) bool
0xe1 m_RequiresPopulation (bit-field, 1 bits) bool
0xe1 m_TradeEmbark (bit-field, 1 bits) bool
0xe2 m_ZOC Optional<bool>
0xe8 m_AdjacencyAppealYieldChanges Adjacent_AppealYieldChangeReferenceCollection
0x100 m_AdjacencyYieldChanges District_AdjacencyReferenceCollection
0x118 m_AppealHousingChangeReference AppealHousingChangeReferenceCollection
0x130 m_BuildingCollectionReference BuildingReferenceCollection
0x148 m_CitizenGreatPersonPointsReference District_CitizenGreatPersonPointReferenceCollection
0x160 m_CitizenYieldChangesReference District_CitizenYieldChangeReferenceCollection
0x178 m_ExclusionReference ExcludedDistrictReferenceCollection
0x190 m_GreatPersonPointsReference District_GreatPersonPointReferenceCollection
0x1a8 m_MutuallyExclusiveDistrictReference MutuallyExclusiveDistrictReferenceCollection
0x1c0 m_PrereqCivicReference const GameCore::Definition::Civic*
0x1c8 m_PrereqTechReference const GameCore::Definition::Technology*
0x1d0 m_ProjectCollection ProjectReferenceCollection
0x1e8 m_ReplacedByCollection DistrictReplaceReferenceCollection
0x200 m_ReplacesCollection DistrictReplaceReferenceCollection
0x218 m_RequiredFeatures FeatureReferenceCollection
0x230 m_StartingBuildingCollection StartingBuildingReferenceCollection
0x248 m_TradeRouteYieldChanges District_TradeRouteYieldReferenceCollection
0x260 m_TraitReference const GameCore::Definition::Trait*
0x268 m_ValidTerrains TerrainReferenceCollection

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 \~District 0x7b0810