Home › Class layouts › Player › Player::Diplomacy

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

Player::Diplomacy

GameCore::Player::Diplomacy — class, size 11320 bytes (0x2c38).

Linux offset Member Type Windows Lua methods (inferred)
0x0 m_syncArchive FAutoArchiveClassContainer<GameCore::Player::Diplomacy>
0x98 m_pPlayer ParentPtr<GameCore::Player::Instance>
0xa0 m_diplomaticVisibility FAutoVariable<Types::Vector<GameCore::DiplomaticVisibilityTypes, Types::LinearAlloc::DefaultInline<GameCore::DiplomaticVisibilityTypes, 64, 1, 0> >, GameCore::Player::Diplomacy>
0x1d8 m_visibilitySource FAutoVariable<Types::Vector<GameCore::DiplomaticVisibilitySources, Types::LinearAlloc::DefaultInline<GameCore::DiplomaticVisibilitySources, 64, 1, 0> >, GameCore::Player::Diplomacy>
0x310 m_GossipReportMap FAutoVariable<eastl::map<GameCore::PlayerTypes, eastl::vector_map<GameCore::GossipTypes, unsigned int, eastl::less<GameCore::GossipTypes>, eastl::allocator>, eastl::less<GameCore::PlayerTypes>, eastl::allocator>, GameCore::Player::Diplomacy>
0x350 m_aDynamicBonuses FAutoVariable<eastl::vector<GameCore::Player::DiploVisibilityAddition, eastl::allocator>, GameCore::Player::Instance> reads: TeamDiplomacy:RecheckVisibilityOn, TeamDiplomacy:RecheckVisibilityOnAll, TeamDiplomacy:SetHasAllied, TeamDiplomacy:SetHasMet
0x380 m_bHadFriendlyMeeting FAutoVariable<Types::StaticArray<bool, 64>, GameCore::Player::Diplomacy>
0x3d0 m_bHasDelegation FAutoVariable<Types::StaticArray<bool, 64>, GameCore::Player::Diplomacy>
0x420 m_bHasEmbassy FAutoVariable<Types::StaticArray<bool, 64>, GameCore::Player::Diplomacy>
0x470 m_bCanEnforceBorders FAutoVariable<bool, GameCore::Player::Diplomacy>
0x488 m_iOpenBordersFromCount FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy> 0x480 (Windows = Linux − 8; verified)
0x598 m_iOpenBordersEndedTurn FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy> 0x590 (Windows = Linux − 8; verified)
0x6a8 m_iDenounced FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0x7b8 m_iCitiesRazed FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0x8c8 m_iCitiesLiberated FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0x9d8 m_iTilesCultureBombed FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0xae8 m_iNukesUsedAgainstYou FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0xbf8 m_bConvertedCity FAutoVariable<Types::StaticArray<bool, 64>, GameCore::Player::Diplomacy>
0xc48 m_bOccupiesOriginalCity FAutoVariable<Types::StaticArray<bool, 64>, GameCore::Player::Diplomacy>
0xc98 m_iOfferedDeal FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0xda8 m_iWarWeariness FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0xeb8 m_iWarmongerModifier FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0xfc8 m_iEraPlayerMet FAutoVariable<Types::StaticArray<int, 64>, GameCore::Player::Diplomacy>
0x10d8 m_aYieldPerDelegation FAutoVariable<GameCore::IndexList<int, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::Yield>, &GameCore::Definitions::GetYieldDefinitions, void>, GameCore::Player::Diplomacy> reads: PlayerCulture:GetTurnsLeftOnCurrentCivic, PlayerTechs:GetTurnsLeft
0x1108 m_aYieldPerEmbassy FAutoVariable<GameCore::IndexList<int, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::Yield>, &GameCore::Definitions::GetYieldDefinitions, void>, GameCore::Player::Diplomacy> reads: PlayerCulture:GetTurnsLeftOnCurrentCivic, PlayerTechs:GetTurnsLeft
0x1138 m_iEnemyWarWearinessMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1150 m_iDomesticWarWearinessMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1168 m_iOverallWarWearinessMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1180 m_iJointWarExperienceRange FAutoVariable<int, GameCore::Player::Diplomacy>
0x1198 m_iJointWarPlunderMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x11b0 m_iAlliedWarWarmongerDiscount FAutoVariable<int, GameCore::Player::Diplomacy>
0x11c8 m_iMaxWarmongerPercent FAutoVariable<int, GameCore::Player::Diplomacy>
0x11e0 m_iAlliancePointsForModifier FAutoVariable<int, GameCore::Player::Diplomacy>
0x11f8 m_iAlliancePointsForTradeModifier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1210 m_iAlliancePointsForCommonEnemyModifier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1228 m_xWarmongerScalingMultiplier FAutoVariable<FixedPointT<8>, GameCore::Player::Diplomacy>
0x1240 m_bNoOccupationPenalties FAutoVariable<bool, GameCore::Player::Diplomacy>
0x1258 m_bAllAlliancesProvideSharedVis FAutoVariable<bool, GameCore::Player::Diplomacy>
0x1270 m_iGrievanceGenerationModifier FAutoVariable<int, GameCore::Player::Diplomacy>
0x1288 m_iGrievanceDecayModifier FAutoVariable<int, GameCore::Player::Diplomacy>
0x12a0 m_bGrievanceDecayDisabled FAutoVariable<bool, GameCore::Player::Diplomacy>
0x12b8 m_blackboard FAutoVariable<GameCore::Player::DiplomacyBlackboard, GameCore::Player::Diplomacy>
0x1c88 m_aWarWearinessAllocations FAutoVariable<Types::Vector<GameCore::Player::CityWarWeariness, Types::LinearAlloc::Default<1, 0> >, GameCore::Player::Diplomacy>
0x1cb0 m_aCasusBelliAvailable FAutoVariable<Types::StaticArray<GameCore::Player::CasusBelliData, 64>, GameCore::Player::Diplomacy>
0x1f00 m_aDiplomaticYieldModifiers FAutoVariable<eastl::vector<GameCore::Player::DiplomaticYieldModifier, eastl::allocator>, GameCore::Player::Diplomacy>
0x1f30 m_aDiplomaticMovementModifiers FAutoVariable<eastl::vector<GameCore::Player::DiplomaticMovementModifier, eastl::allocator>, GameCore::Player::Diplomacy>
0x1f60 m_aDiplomaticCombatModifiers FAutoVariable<eastl::vector<GameCore::Player::DiplomaticCombatModifier, eastl::allocator>, GameCore::Player::Diplomacy>
0x1f90 m_aDiploActionOverrides FAutoVariable<eastl::vector<GameCore::Player::DiploActionPrereqOverride, eastl::allocator>, GameCore::Player::Diplomacy>
0x1fc0 m_aBannedDiploActionsSpecificCivilizations FAutoVariable<eastl::vector<GameCore::Player::BannedDiploActionsSpecificCivilizations, eastl::allocator>, GameCore::Player::Diplomacy>
0x1ff0 m_iTurnLastWarInitiated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2008 m_iTurnLastWarReceived FAutoVariable<int, GameCore::Player::Diplomacy>
0x2020 m_iTurnLastCityLiberated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2038 m_iTurnLastSurpriseWarInitiated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2050 m_iTurnLastLiberationWarInitiated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2068 m_iTurnLastProtectorateWarInitiated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2080 m_iTurnLastTerritorialWarInitiated FAutoVariable<int, GameCore::Player::Diplomacy>
0x2098 m_iTurnLastCityCaptured FAutoVariable<int, GameCore::Player::Diplomacy>
0x20b0 m_iNumWarsDeclared FAutoVariable<int, GameCore::Player::Diplomacy>
0x20c8 m_iNumSurpriseWarsDeclared FAutoVariable<int, GameCore::Player::Diplomacy>
0x20e0 m_iAlliancePointsPerPlayer FAutoVariable<eastl::vector<int, eastl::allocator>, GameCore::Player::Diplomacy>
0x2110 m_aiBannedDiploActions FAutoVariable<eastl::vector<int, eastl::allocator>, GameCore::Player::Diplomacy>
0x2140 m_bAvailableCongressDiscussions FAutoVariable<Types::StaticArray<GameCore::IndexList<bool, GameCore::Definition::DefinitionCollectionWithTypeIndex<GameCore::Definition::Discussion>, &GameCore::Definitions::GetDiscussionDefinitions, void>, 64>, GameCore::Player::Diplomacy>
0x2950 m_AllianceScienceMultiplier FAutoVariable<int, GameCore::Player::Diplomacy> reads: PlayerTechs:GetTurnsLeft
0x2968 m_AllianceTourismMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x2980 m_AllianceCultureMultiplier FAutoVariable<int, GameCore::Player::Diplomacy> reads: PlayerCulture:GetTurnsLeftOnCurrentCivic
0x2998 m_AllianceFaithPerCitizen FAutoVariable<int, GameCore::Player::Diplomacy>
0x29b0 m_AllianceReligiousPressureMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x29c8 m_AllianceEnvoysMultiplier FAutoVariable<int, GameCore::Player::Diplomacy>
0x29e0 m_AllianceResearchTurns FAutoVariable<int, GameCore::Player::Diplomacy>
0x29f8 m_iFavorPerDelegation FAutoVariable<int, GameCore::Player::Diplomacy>
0x2a10 m_iFavorPerEmbassy FAutoVariable<int, GameCore::Player::Diplomacy>
0x2a28 m_playerMetHandle Message::Handle
0x2a38 m_playerDestroyedHandle Message::Handle
0x2a48 m_startTradeRouteHandle Message::Handle
0x2a58 m_endTradeRoutedHandle Message::Handle
0x2a68 m_techResearchedHandle Message::Handle
0x2a78 m_civicCulturevatedHandle Message::Handle
0x2a88 m_playerTurnStartedHandle Message::Handle
0x2a98 m_cityBuiltHandle Message::Handle
0x2aa8 m_nukeUsedHandle Message::Handle
0x2ab8 m_cityOccupiedHandle Message::Handle
0x2ac8 m_lastCityOccupiedHandle Message::Handle
0x2ad8 m_cityLiberatedHandle Message::Handle
0x2ae8 m_cityRazedHandle Message::Handle
0x2af8 m_cityCededHandle Message::Handle
0x2b08 m_cityReturnedHandle Message::Handle
0x2b18 m_playerConnectedHandle Message::Handle
0x2b28 m_heldMessages FAutoVariable<Types::Vector<GameCore::Player::MessageData, Types::LinearAlloc::Default<1, 0> >, GameCore::Player::Diplomacy>
0x2b50 m_PromisesMadeMap FAutoVariable<eastl::map<GameCore::PlayerTypes, eastl::vector_map<GameCore::PromiseTypes, GameCore::Player::PromiseData, eastl::less<GameCore::PromiseTypes>, eastl::allocator>, eastl::less<GameCore::PlayerTypes>, eastl::allocator>, GameCore::Player::Diplomacy>
0x2b90 m_LastPromisesMadeMap FAutoVariable<eastl::map<GameCore::PlayerTypes, eastl::vector_map<GameCore::PromiseTypes, GameCore::Player::PromiseData, eastl::less<GameCore::PromiseTypes>, eastl::allocator>, eastl::less<GameCore::PlayerTypes>, eastl::allocator>, GameCore::Player::Diplomacy>
0x2bd0 m_IncursionsMadeMap FAutoVariable<eastl::map<GameCore::PlayerTypes, eastl::vector_map<GameCore::PromiseTypes, Types::Vector<GameCore::Player::IncursionData, Types::LinearAlloc::Default<1, 0> >, eastl::less<GameCore::PromiseTypes>, eastl::allocator>, eastl::less<GameCore::PlayerTypes>, eastl::allocator>, GameCore::Player::Diplomacy>
0x2c10 m_abUnitsBlockedEntry FAutoVariable<Types::Vector<bool, Types::LinearAlloc::Default<1, 0> >, GameCore::Player::Diplomacy>

The Windows column is filled in only for members that were checked against Windows code. For the rest, use the Linux offset with the rule above.