Home › Class layouts › AI › AI::CityBuild

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::CityBuild

GameCore::AI::CityBuild — class, size 1688 bytes (0x698).

Linux offset Member Type
0x0 m_syncArchive FAutoArchiveClassContainer<GameCore::AI::CityBuild>
0x98 m_pCity City::Instance*
0xa0 m_cityId FAutoVariable<unsigned int, GameCore::AI::CityBuild>
0xb8 m_playerOwner FAutoVariable<GameCore::PlayerTypes, GameCore::AI::CityBuild>
0xd0 m_cityThreat FAutoVariable<GameCore::AI::Control::ControlPriority, GameCore::AI::CityBuild>
0xe8 m_underAttack FAutoVariable<bool, GameCore::AI::CityBuild>
0x100 m_desiredDefenders FAutoVariable<int, GameCore::AI::CityBuild>
0x118 m_defendersNeeded FAutoVariable<int, GameCore::AI::CityBuild>
0x130 m_cityAiID FAutoVariable<unsigned int, GameCore::AI::CityBuild>
0x148 m_managedWorkingContract FAutoVariable<GameCore::AI::Control::Handle, GameCore::AI::CityBuild>
0x168 m_managedContracts FAutoVariable<Types::Vector<GameCore::AI::Control::Handle, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x190 m_priority FAutoVariable<GameCore::AI::Control::ControlPriority, GameCore::AI::CityBuild>
0x1a8 m_doneOffTurn FAutoVariable<bool, GameCore::AI::CityBuild>
0x1c0 m_receivedContractSignal Message::Handle
0x1d0 m_buildingStartedSignal Message::Handle
0x1e0 m_districtStartedSignal Message::Handle
0x1f0 m_tradeRouteStartedCallback Message::Handle
0x200 m_tradeRouteEndedCallback Message::Handle
0x210 m_cityPlanner const GameCore::AI::CityPlanner*
0x218 m_bestPlotToClear FAutoVariable<GameCore::PlotCoord, GameCore::AI::CityBuild>
0x230 m_bestPlotToBuy FAutoVariable<GameCore::PlotCoord, GameCore::AI::CityBuild>
0x248 m_bestImprovementToMake FAutoVariable<GameCore::ImprovementTypes, GameCore::AI::CityBuild>
0x260 m_cityUnitEfficiencies EfficiencyInfoList
0x278 m_foodProjectionHorizon FAutoVariable<int, GameCore::AI::CityBuild>
0x290 m_foodLossTurns FAutoVariable<Types::Vector<int, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x2b8 m_foodLossAmounts FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x2e0 m_foodLossPopulations FAutoVariable<Types::Vector<int, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x308 m_cityTrade FAutoVariable<GameCore::AI::Trade::City, GameCore::AI::CityBuild>
0x358 m_yieldPreferences FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x380 m_unimprovedResources FAutoVariable<Types::Vector<int, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x3a8 m_powerSurplus FAutoVariable<FixedPointT<8>, GameCore::AI::CityBuild>
0x3c0 m_defaultBuildPresentValue FAutoVariable<FixedPointT<8>, GameCore::AI::CityBuild>
0x3d8 m_reservations FAutoVariable<Types::Vector<GameCore::AI::CityPlotReservationInfo, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x400 m_eventHandles FAutoVariable<Types::Vector<String::BasicT<String::BasicStringAlloc, ASCII>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x428 m_eventTrees FAutoVariable<Types::Vector<unsigned int, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x450 m_numBuildings FAutoVariable<unsigned int, GameCore::AI::CityBuild>
0x468 m_numDistricts FAutoVariable<unsigned int, GameCore::AI::CityBuild>
0x480 m_numImprovements FAutoVariable<unsigned int, GameCore::AI::CityBuild>
0x498 m_threadedEvaluator AI::CityEvaluationJob
0x4d0 m_plotEvaluations Types::Vector<GameCore::AI::CityPlotEvaluation, Types::LinearAlloc::Default<1, 0> >
0x4e8 m_buildingEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x510 m_districtEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x538 m_improvementEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x560 m_unitEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x588 m_projectEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x5b0 m_cachedUnitEvaluations FAutoVariable<Types::Vector<FixedPointT<8>, Types::LinearAlloc::Default<1, 0> >, GameCore::AI::CityBuild>
0x5d8 m_currentYields FAutoVariable<GameCore::IndexList<FixedPointT<8>, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::Yield>, &GameCore::Definitions::GetYieldDefinitions, void>, GameCore::AI::CityBuild>
0x608 m_currentBaseYields FAutoVariable<GameCore::IndexList<FixedPointT<8>, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::Yield>, &GameCore::Definitions::GetYieldDefinitions, void>, GameCore::AI::CityBuild>
0x638 m_currentGpps FAutoVariable<GameCore::IndexList<FixedPointT<8>, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::PseudoYield>, &GameCore::Definitions::GetPseudoYieldDefinitions, void>, GameCore::AI::CityBuild>
0x668 m_yields Types::Vector<int, Types::LinearAlloc::Default<1, 0> >[]