Simulator namespace
Namespaces
- namespace AI
- namespace Cell
- Cell stage functionality.
- namespace ScenarioInputStrategy
- namespace SerializationTypes
- namespace SpaceInputStrategy
- namespace SubSystem
- namespace WASDInputStrategy
Classes
- struct Attribute
- class cAbductToolStrategy
- class cAbilityState
- struct cAbilityUIMap
- class cAnimalCargoInfo
- class cAnimalSpeciesManager
- class cArtilleryProjectile
- class cArtilleryWeaponStrategy
- class cBadgeManager
- class cBaseDisplayStrategy
- class cBaseSimulatorInputStrategy
- class cBehaviorAgent
- class cBehaviorBase
- class cBehaviorEntry
- class cBehaviorList
- class cBuilding
- Base class for all buildings in Simulator game modes.
- class cBuildingCityHall
- struct cBuildingData
- class cBuildingEntertainment
- class cBuildingHouse
- class cBuildingIndustry
- class cBuildingScenario
- class cBundleManager
- class cCelestialBody
- Represents celestial bodies in a solar system (except planets), that is, the star and the comets.
- class cCinematicManager
- class cCity
- struct cCityData
- struct cCityPartner
- class cCityTerritory
- class cCityWalls
- struct cCivData
- class cCivilization
- struct cCollectableItemID
- class cCollectableItems
- class cCombatant
- Any object that has hit points and can combat other units.
- class cCombatSimulator
- class cCommandParameterSet
- class cCommEvent
- class cCommManager
- class cCommodityNode
- Represents a spice geyser in civilization stage, maybe it is also used elsewhere.
- struct cCommodityNodeData
- class cCommunity
- The following attributes are saved:
- struct cCommunityLayout
- Also used by Tribe, related with city layout.
- class cConversation
- class cCreatureAbility
- class cCreatureAnimal
- class cCreatureBase
- The base class for all creatures in the Simulator.
- class cCreatureCitizen
- class cCreatureDisplayStrategy
- class cCreatureGameData
- class cCreatureItem
- class cCropCirclesToolStrategy
- class cCulturalProjectile
- class cCulturalTarget
- class cCultureSet
- Contains the IDs of all the creation types of a specific "culture" or civilization/empire.
- class cDeepSpaceProjectile
- class cDeepSpaceProjectileToolStrategy
- class cDefaultAoEArea
- class cDefaultAoETool
- class cDefaultBeamProjectile
- class cDefaultBeamTool
- class cDefaultProjectileWeapon
- class cDefaultToolProjectile
- class cDragInputProjectileToolStrategy
- class cDropCargoToolStrategy
- class cEgg
- Default model is
0x00000000!0xA76CD528
, defaultmMaterialType
is 5. - class cEllipticalOrbit
- Settings of the orbit of a planet or celestial body in a solar system.
- class cEmpire
- An empire in Space Stage.
- struct cEmptyBubble
- class cEnergyRepairToolStrategy
- class cFeedbackEvent
- struct cFishHotSpot
- struct cFishHotSpotUnk
- class cFlakProjectile
- class cGameBehaviorManager
- class cGameBundle
- class cGameBundleContainer
- class cGameData
- Base class for most Simulator objects.
- class cGameDataUFO
- class cGameInputManager
- class cGameModeManager
- class cGameNounManager
- The class that manages game objects, known in Spore code as 'nouns'.
- class cGamePersistenceManager
- class cGamePlant
- class cGamePlantManager
- class cGameplayMarker
- class cGameTerrainCursor
- class cGameTimeManager
- This class controls game time speed and pauses.
- class cGameViewManager
- class cGenesisDeviceToolStrategy
- class cGetOutOfUFOToolStrategy
- class cGlobalMindEraseToolStrategy
- class cGonzagoSimulator
- class cGonzagoTimer
- A class for measuring time inside Simulator modes.
- class cHerd
- class cHitSphere
- class cICBM
- class cIdentityColorable
- A Simulator class inherited by all those classes that can have an identity color, such as empires, tribes, etc.
- class CinematicAction
- class CinematicActionUnkBase
- class CinematicVignetteActionData
- class cInteractableObject
- class cInteractiveOrnament
- Static objects in a planet that the player can interact with, such as pickable objects, skeletons in creature stage,...
- class cInterCityRoad
- struct cLaneInfo
- struct ClassSerializer
- struct cLayoutSlot
- struct cLocomotionRequest
- class cLocomotiveObject
- class cLocomotiveObject_superclass
- class cMessageCommandDispatcher
- class cMindEraseToolStrategy
- class cMission
- Base class for all missions, this class cannot be instantiated.
- class cMissionManager
- This class manages all the missions of a player in space stage.
- class cMovableDestructibleOrnament
- class cNest
- class cNPCStore
- class cNpcTribeController
- struct CnvAction
- struct CnvAnimation
- struct CnvAnimationVariation
- struct CnvDialog
- struct CnvDialogResponse
- struct CnvEventLog
- struct CnvText
- struct CnvUnknown
- class cObjectInstanceInventoryItem
- class cObjectPool
- class cObjectPool_
- Stores a pool of objects whose memory can be reused efficiently, without need for heap allocations.
- struct cObjectPoolClass
- Base class for all objects that are used inside a cObjectPool.
- class cObstacle
- class cObstacleManager
- class CombatantKilledMessage
- Called when a cCombatant is killed.
- class ConversationResource
- class cOrnament
- Used, among other things, for adventure objects (except pickable ones)
- struct cOrnamentData
- class cPlaceableStructure
- A structure that can be placed into a community slot, like buildings, turrets, ornaments and tribe tools.
- class cPlaceColonyToolStrategy
- class cPlaceObjectToolStrategy
- class cPlanet
- Visual representation of a planet (or asteroids).
- class cPlanetaryArtifact
- struct cPlanetClue
- class cPlanetGfx
- class cPlanetModel
- struct cPlanetObjectData
- class cPlanetRecord
- Keeps all the information related to a planet.
- class cPlantCargoInfo
- class cPlantSpeciesManager
- class cPlayer
- class cPlayerInventory
- class cProjectile
- class cRaidEvent
- The kind of mission for raid events.
- class cRaidPlunderEvent
- The kind of mission for pirate raid events.
- class cRallyCallToolStrategy
- class CreatureGamePartUnlocking
- class cRelationshipData
- class cRelationshipManager
- Handles relationships between political entities.
- class cRepairAOEToolStrategy
- class cRepairToolStrategy
- class cResourceProjectile
- Projectile used in civilization stage to capture spice geysers. Might be used for other things too.
- class cSavedGameHeader
- class cScanToolStrategy
- class cScenarioAct
- class cScenarioAsset
- class cScenarioClass
- class cScenarioClassAct
- class cScenarioData
- class cScenarioDataEconomy
- class cScenarioDataHistoryEntry
- Undo/redo history entry for scenario data actions (anything related with objects, creatures, etc), that is, changes to the cScenarioResource.
- class cScenarioDialog
- class cScenarioEditHistory
- Class that manages the undo/redo history of the adventure editor.
- class cScenarioEditModeDisplayStrategy
- class cScenarioGoal
- class cScenarioMarker
- class cScenarioMarkerAct
- class cScenarioPlayMode
- class cScenarioPlayModeGoal
- struct cScenarioPlaySummary
- class cScenarioPosseMember
- class cScenarioPowerup
- class cScenarioResource
- class cScenarioSimulator
- class cScenarioString
- class cScenarioTerraformEconomy
- class cScenarioTerraformHistoryEntry
- Undo/redo history entry for terraform (or planet color, etc) actions.
- class cScenarioTerraformMode
- class cShipBackgroundData
- class cSimPlanetHighLOD
- class cSimTicker
- class cSimulatorPlayerUFO
- class cSimulatorSpaceGame
- class cSimulatorSystem
- class cSimulatorUniverse
- Universe Event Simulator.
- class cSolarHitSphere
- class cSolarSystem
- Holds visual information about a solar system in the solar system view, or when inside a planet.
- class cSpaceDefenseMissile
- class cSpaceGfx
- class cSpaceInventory
- class cSpaceInventoryItem
- Represents an item of the space player inventory. This include space tools and cargo.
- class cSpaceNames
- Class to generate names (for creatures, planets, etc.), for example:
auto name = SpaceNames.GenerateRandomName(Simulator::SpaceNamesType::kPlanet);
- class cSpacePlayerWarData
- class cSpaceToolData
- class cSpaceTradeRouteManager
- class cSpaceTrading
- Singleton class for everything related to space stage trading, such as obtaining tradable items or generating NPC stores.
- class cSpatialObject
- A 3D model in the Simulator.
- class cSpatialObjectView
- class cSpear
- class cSpeciesManager
- class cSpeciesProfile
- class cStar
- struct cStarClue
- class cStarManager
- This class controls most stuff related with the galaxy, stars, planets and empires.
- class cStarRecord
- Keeps all the information related to a star and all the elements in its solar system.
- class cStrategy
- class cStringCommandGenerator
- class cTerraformingManager
- class cTimeOfDay
- Class used to manage day duration and current time of day in planets.
- class cToggleToolStrategy
- class cToolManager
- class cToolObject
- class cToolStrategy
- class cTotemPole
- The totem pole of a tribe. Default model is
TribalTools!0x93256BA
, defaultmMaterialType
is 2. - class cTradeRouteData
- class cTribe
- A tribe from the tribe stage.
- struct cTribeArchetype
- Represents a type of tribe, with its configuration stored in folder
TribeArchetypes
. - struct cTribeData
- class cTribeFoodMat
- The food mat of a tribe. Default model is
TribalTools!trg_sacrifice_altar1
, defaultmMaterialType
is 2. - class cTribeHut
- class cTribeInputStrategy
- struct cTribePlan
- class cTribePlanner
- struct cTribePlanProperties
- Read from a
.prop
file in folderTribePlans
- class cTribeTool
- class cTribeToolData
- class cTurret
- class cTurretDefenseMissileWeapon
- class cTurretFlakWeapon
- class cUIAssetDiscoveryManager
- class cUIEventLog
- This class manages event logs in Simulator game modes.
- class cVehicle
- struct cVehicleData
- class cVisiblePlanet
- struct cWallData
- class DoCinematicActionMessage
- Sent to execute a single action within a cinematic stage.
- class EnterEditorMessage
- class EnterModeMessage
- struct GameLoadParameters
- class GameNounStatusChangedMessage
- class GoalCard
- class ICityMusic
- class IGameDataView
- class IMessageParameters
- class IScenarioEditHistoryEntry
- A generic entry of undo/redo history in the adventure editor.
- class ISerializerReadStream
- class ISerializerStream
- class ISerializerWriteStream
- class ISimulatorSerializable
- class ISimulatorSerializableRefCounted
- class ISimulatorStrategy
- class ISimulatorUIGraphic
- struct MissionManagerTimerEntry
- class MissionUpdateMessage
- Called every update of a mission, only if the mission is ongoing.
- class NounCreateMap
- struct PlanetID
- 32 bits field that uniquely identifies a planet in the galaxy.
- class PlayerEmpireAlliedMessage
- Called when the player empire makes a new alliance.
- class PlayerEmpireLostAllianceMessage
- Called when the player empire loses an alliance.
- class PlayerPlanetData
- class ScenarioCreatureHealedMessage
- Called when a creature is healed (either by natural heal rate, or using a medkit) in Scenario mode.
- class ScenarioEnergyConsumedMessage
- Called when the player captain consumes energy in Scenario mode.
- class ScheduledTaskListener
- A message listener that, listening to Update messages, executes the given task after a certain time has passed and (optionally) repetaing it periodically.
- class SpacePlayerData
- class SpaceRareFoundMessage
- Sent when a rare item is found (even if it had already been found before) in Space Stage.
- class Sporepedia
- struct StarID
- 32 bits field used to uniquely identify a star within the galaxy.
- struct StarRequestFilter
- struct tCultureTargetInfo
- struct tDeferredEvent
- class tGameDataVectorT
- struct tGrobShockData
- class ToolOnHitMessage
- Called when a space tool hits a target. Called by cToolStrategy::
OnHit. - struct tPlayerDeathData
- struct UIStateMachine
- struct UIStateMachineTransition
- struct UnkHashtableItem
- struct UnkMissionManagerStruct
- class UnknownCreatureClass
- class UnknownManagerSuperclass
- class UnkRefCounted
- class XmlSerializer
Enums
-
enum class CollectableItemStatusFlags: uint8_
t { Unlocked = 1 } - enum CreatureFlags { kCreatureFlagIsAlpha = 0x1, kCreatureFlagIsHungry = 0x100, kCreatureFlagIsPlayerAvatar = 0x200 }
- enum class DamageType { Bribe = 4, Healing = 10, BlackCloud = 11, _543F8E29 = 12, Nuclear = 13, EMP = 14, IField = 15, Diplomatic = 16 }
- enum EmpireFlags { kEmpireFlagNeedsEmpireLines = 0x10 }
- enum class CreaturePersonality { None = 0, EpicPredator = 1, Migrator = 2, Decorator = 3, Monkey = 4, Stalker = 5, Guard = 6, Pet = 7, WaterPredator = 8, Carcass = 9, Rogue = 10, Scenario = 11 }
-
enum class IdentityColors: uint32_
t { Player = 0x053dbcf1, Neutral = 0x053dbcf2, Brown = 0x053dbcf3, Pink = 0x053dbcf4, Cyan = 0x053dbcf5, Green = 0x053dbcf6, Lavender = 0x053dbcf7, Orange = 0x053dbcf8, Yellow = 0x053dbcf9, Red = 0x053dbcfa, Blue = 0x053dbcfb, Forest = 0x053dbcfc, Crimson = 0x053dbcfd, Purple = 0x053dbcfe } - enum MissionFlags { kMissionFlagIsEvent = 1, kMissionFlagHideStarName = 2, kMissionFlagHidePlanetName = 4, kMissionFlagIsTutorial = 8, kMissionFlagCannotAbort = 0x10, kMissionFlagTimerStartsOnFirstEntry = 0x20, kMissionFlagIsAdventure = 0x80 }
- enum PlanetFlags { kPlanetFlagHasRings = 0x2, kPlanetFlagIsMoon = 0x4, kPlanetFlagIsDestroyed = 0x100, kPlanetFlagRedOrbit = 0x1000, kPlanetFlagBlueOrbit = 0x2000 }
- enum StarFlags { kStarFlagIsOwned = 0x10, kStarFlagHasRare = 0x1000 }
- enum GameNounIDs { kGameData = 0x17F243B, kCheatObject = 0x2A37E35, kMissionFetch = 0x2AFD284, kMissionHappinessEvent = 0x4F3BDE9, kMissionMakeAlly = 0x4F77499, kRaidPlunderEvent = 0x397BFF3, kRaidEvent = 0x3960C0E, kMissionColonize = 0x2BA2A0E, kMissionEradicate = 0x2F99994, kMissionExplore = 0x32A12F1, kMissionWar = 0x330FC49, kMissionScan = 0x347092D, kMissionTerraform = 0x35988F4, kMissionTrade = 0x2ADEDFF, kMissionTradeRoute = 0x447092D, kMissionMultiDelivery = 0x35ED8F6, kMissionBiosphere = 0x437444B, kGenericPressureEvent = 0x317AFCC, kMissionMultiStep = 0x4222283, kMissionBalance = 0x347092E, kMissionFindAliens = 0x347092F, kMissionFlight101 = 0x4222284, kMissionUseTool = 0x2ADEDEE, kMissionStory201 = 0x4222285, kMissionChangeArchetype = 0x4622285, kMissionTrackBadge = 0x4633285, kMissionAdventure = 0x46332A5, kPlayer = 0x2C21781, kMilitaryAttackCityOrder = 0x2E9AE6C, kCulturalConvertCityOrder = 0x3DF2CC5, kGameTerrainCursor = 0x18C40BC, kBuildingCityHall = 0x18EA1EB, kBuildingIndustry = 0x18EA2CC, kBuildingHouse = 0x18EB106, kBuildingEntertainment = 0x1A56ABA, kBuildingScenario = 0x70703B3, kTurret = 0x436F342, kCelestialBody = 0x38CFB6B, kGameBundle = 0x18C431C, kCulturalTarget = 0x3D5C325, kCity = 0x18C43E8, kGameBundleGroundContainer = 0x1906183, kVehicle = 0x18C6DE8, kVehicleGroupOrder = 0x2E98AB7, kCityWalls = 0x18C7C97, kCityTerritory = 0x244FB08, kPlaceholderColonyEditorCursorAttachment = 0x2C5C93A, kPlanetaryArtifact = 0x2DD8C42, kToolObject = 0x4E3FAB5, kCivilization = 0x18C816A, kCreatureAnimal = 0x18EB45E, kCreatureCitizen = 0x18EB4B7, kObstacle = 0x3ED8573, kGamePlant = 0x18C84A9, kFruit = 0x2C9CC91, kFruitGroup = 0x2E96892, kNest = 0x52AA6122, kHerd = 0x1BE418E, kEgg = 0x2A034CD, kInteractiveOrnament = 0x3A2511E, kGameplayMarker = 0x36BE27E, kOrnament = 0x18C88E4, kAnimalTrap = 0x61494BE, kTotemPole = 0x55CF865, kTribeFoodMat = 0x629BAFE, kRock = 0x2A8FB3F, kCommodityNode = 0x403DF5C, kMovableDestructibleOrnament = 0x283DDB1, kSolarHitSphere = 0x32F9778, kHitSphere = 0x2E72CAE, kInterCityRoad = 0x2B8A4E7, kTribe = 0x18C6D19, kTribeTool = 0x18C8F0C, kSpear = 0x24270C9, kArtilleryProjectile = 0x18C9380, kFlakProjectile = 0x240E3BF, kDefaultToolProjectile = 0x24270C5, kDeepSpaceProjectile = 0x24270C7, kSpaceDefenseMissile = 0x244D3C8, kDefaultBeamProjectile = 0x24630D7, kDefaultAoEArea = 0x4167186, kCulturalProjectile = 0x4F76F0D, kResourceProjectile = 0x5776A2C, kICBM = 0x49CEC61, kSoundLoopObject = 0x18EB641, kRotationRing = 0x2EE8CE8, kRotationBall = 0x7292112, kMorphHandle = 0x7A30A12, kTargetMorphHandle = 0x76F6E64, kArrowMorphHandle = 0x771AD6F, kSimpleRotationRing = 0x7A81829, kSimpleRotationBall = 0x7ABDD91, kPlanet = 0x3275728, kVisiblePlanet = 0x44462A6, kStar = 0x355C93A, kSolarSystem = 0x38CF94C, kSimPlanetLowLOD = 0x3572E72, kEmpire = 0x18EB9D2, kSpaceInventory = 0x21FFA3F, kPlayerInventory = 0x2265FDC, kGameDataUFO = 0x18EBADC, kTribeHut = 0x1E4DAAE, kTribePlanner = 0x3098AF98, kCreatureSpeciesMission = 0x1406A572, kCreatureTutorialMission = 0x34066DBA, kTribeToTribeMission = 0x5436411A, kFindMission = 0x14D9597F, kNanoDrone = 0x6EF0F11, kPlaceableSound = 0x74E0069, kPlaceableEffect = 0x7B38BA7 }
- All the noun IDs used to identify Simulator game data classes in the game files.
- enum class SpaceContext: int { None = -1, Planet = 0, SolarSystem = 1, Galaxy = 2 }
- enum class TechLevel: int { None = 0, Creature = 1, Tribe = 2, City = 3, Civilization = 4, Empire = 5 }
- Technology level of a planet.
- enum class PlanetType: int { None = -1, AsteroidBelt = 0, GasGiant = 1, T0 = 2, T1 = 3, T2 = 4, T3 = 5, Unset = 6 }
- Type of a planet, used in Simulator::
cPlanetRecord. - enum class StarType: int { None = 0, GalacticCore = 1, BlackHole = 2, ProtoPlanetary = 3, StarG = 4, StarO = 5, StarM = 6, BinaryOO = 7, BinaryOM = 8, BinaryOG = 9, BinaryGG = 10, BinaryGM = 11, BinaryMM = 12 }
- The type of a star in a galaxy (which includes black holes, binary stars, proto-planetary disks, and the galactic core), used in Simulator::
cStarRecord. - enum class cCelestialBodyType: int { None = -1, Star = 0, Comet = 2 }
- Used by Simulator::
cCelestialBody. - enum class MoonPerihelionType: int { DifferenceWithParent = 0, Parent = 1, SumWithParent = 2, RelativeToParent = 3 }
- Used by function cPlanetRecord::
GetPerihelion() - enum class cCommEventType: int { None = -1, Space = 0, Civ = 1 }
- Used by Simulator::
cCommEvent. - enum Archetypes { kArchetypeWarrior = 0, kArchetypeTrader = 1, kArchetypeScientist = 2, kArchetypeShaman = 3, kArchetypeBard = 4, kArchetypeZealot = 5, kArchetypeDiplomat = 6, kArchetypeEcologist = 7, kArchetypeGrob = 8, kArchetypePlayerWarrior = 9, kArchetypePlayerTrader = 10, kArchetypePlayerScientist = 11, kArchetypePlayerShaman = 12, kArchetypePlayerBard = 13, kArchetypePlayerZealot = 14, kArchetypePlayerDiplomat = 15, kArchetypePlayerEcologist = 16, kArchetypePlayerWanderer = 17, kArchetypePlayerKnight = 18 }
- Used by Simulator::
cEmpire. - enum EmpireTrait { kEmpireTraitNone = 0, kEmpireTraitStingy = 1, kEmpireTraitGenerous = 2, kEmpireTraitAccidentProne = 3 }
- Used by Simulator::
cEmpire. - enum OrnamentType { kOrnamentFlower = 1, kOrnamentBone = 2, kOrnamentStick = 3 }
- Used by Simulator::
cInteractableObject. - enum class MissionState: int { Unaccepted = 0, Finished = 1, Accepted = 2, Active = 3, Completed = 5, Failed = 6, Aborted = 7, Rejected = 8, StepCompleted = 9 }
- The different states in which a mission can be (accepted, rejected, failed, etc).
- enum class LandmarkStarType: int { Here = 0, Star = 1, Wormhole = 2, BigStar = 3, RedStar = 4, ProtoPlanetaryStar = 5, GalacticCore = 6 }
- Types of star landmarks to be searched in some missions. Used by Simulator::
cStarClue. - enum class LandmarkPlanetType: int { AsteroidBelt = 0, GasGiant = 1, T0 = 2, T1 = 3, T2 = 4, T3 = 5 }
- Types of planet landmarks to be searched in some missions. Used by Simulator::
cPlanetClue. - enum class PlanetRepresentationMode: int { Nothing = 0, VisiblePlanetAndHitSphere = 1, OnlyVisiblePlanet = 2, OnlyHitSphere = 3 }
- Used by Simulator::
cPlanet. - enum class SpaceInventoryItemType { Plant = 0, NonSentientAnimal = 1, Tool = 2, CargoSlot = 3, TradingObject = 4, MultiDeliveryObject = 5, Sentient = 6, Unk7 = 7, ObjectInstance = 8 }
- Used by Simulator::
cSpaceInventoryItem. - enum SpaceToolHit { kHitCombatant = 0, kHitGround = 1, kHitWater = 2, kHitAir = 3 }
- Different kinds of surfaces where a tool can hit, usde by Simulator::
cSpaceToolData. - enum SpaceToolTarget { kTargetAnimal = 1, kTargetA13ABC9F = 2, kTargetUFO = 4, kTargetVehicle = 8, kTargetTurret = 0x10, kTargetCity = 0x20, kTargetBuilding = 0x40, kTargetWorld = 0x80, kTargetAir = 0x100, kTargetA6663355 = 0x200 }
- Different kinds of targets that a tool can shoot at, usde by Simulator::
cSpaceToolData. - enum class TribePlanType: int { Raid = 1, Gift = 2, Hunt = 3, Gather = 4, Fish = 5, Mate = 6, CheatMember = 7, BuyTools = 8, Idle = 9, StealFood = 10 }
- Different types of actions that a tribe can carry, used by Simulator::
cTribePlanner. - enum RelationshipEvents { kRelationshipEventCompliment = 0x0526E4E5, kRelationshipEventTrade = 0x0526E4EE, kRelationshipEventGift = 0x0526E4F2, kRelationshipEventBuyCityOver = 0x0526E4F5, kRelationshipEventJoinedAlliance = 0x0526E4F8, kRelationshipEventBribeNode = 0x0526E4FB, kRelationshipEventInsult = 0x0526E4FE, kRelationshipEventHostility = 0x0526E501, kRelationshipEventReligion = 0x0526E504, kRelationshipEventBuyCityUnder = 0x0526E50A, kRelationshipEventDemandRejected = 0x0526E50E, kRelationshipEventDeclaredWar = 0x0526E512, kRelationshipEventUsedNuclearWeapon = 0x05776D99, kRelationshipEventBrokeDeal = 0x05ADB0AA, kRelationshipEventFoughtEnemy = 0x05DA8036, kRelationshipEventSpaceMissionComplete = 0x0526E519, kRelationshipEventSpaceMissionFailed = 0x0526E51C, kRelationshipEventSpaceMissionRejected = 0x0526E51D, kRelationshipEventSpaceMissionAborted = 0x0526E51E, kRelationshipEventSpaceGiveGift = 0x0526E51F, kRelationshipEventSpaceBreakAlliance = 0x0526E521, kRelationshipEventSpaceCreateAlliance = 0x0526E524, kRelationshipEventSpaceTradeComplete = 0x0526E527, kRelationshipEventSpaceTradeDeclined = 0x0526E52A, kRelationshipEventSpaceCityPanicked = 0x0526E52D, kRelationshipEventSpaceTerraformWorsened = 0x0526E531, kRelationshipEventSpaceTerraformImproved = 0x0526E535, kRelationshipEventSpaceTerraformExtinction = 0x0526E537, kRelationshipEventSpaceDestroyBuilding = 0x0526E53C, kRelationshipEventSpaceDestroyAllyUFO = 0x0526E542, kRelationshipEventSpaceBadToolUse = 0x0526E545, kRelationshipEventSpaceGoodToolUse = 0x0526E56A, kRelationshipEventSpaceFloodCity = 0x0526E5CF, kRelationshipEventSpaceAbductCitizen = 0x0526E5D4, kRelationshipEventSpaceStealCommodity = 0x0526E5D8, kRelationshipEventSpaceCheatGood = 0x0526E5DC, kRelationshipEventSpaceCheatBad = 0x0526E5F3, kRelationshipEventSpaceNewEmpireAndCTMGOwner = 0x0526E5F4, kRelationshipEventSpaceUpliftedCiv = 0x055165F5, kRelationshipEventSpaceBadSystemPurchaseOffer = 0x05590199, kRelationshipEventSpaceGoodSystemPurchaseOffer = 0x055901B3, kRelationshipEventSpaceBeNice = 0x0577909A, kRelationshipEventSpaceBeNasty = 0x0577909B, kRelationshipEventSpacePushedTooFar = 0x057B4514, kRelationshipEventSpaceCapturedASystem = 0x057B9100, kRelationshipEventSpaceWasAtWar = 0x057E4FE3, kRelationshipEventSpaceEmbassyBonus = 0x0580E23B, kRelationshipEventSpaceDestroyUFO = 0x0591F833, kRelationshipEventSpaceWitholdTribute = 0x0594AFFF, kRelationshipEventSpaceAcceptGift = 0x0594B017, kRelationshipEventSpaceMissionStarted = 0x05B6CE81, kRelationshipEventSpaceCommunicatedNice = 0x05B6CF09, kRelationshipEventSpacePersonalityNice = 0x05B6FCC9, kRelationshipEventSpacePersonalityMean = 0x05B6FCD4, kRelationshipEventSpaceAvoidedContact = 0x05B942D0, kRelationshipEventSpaceCommunicatedMean = 0x05F62736, kRelationshipEventSpaceStartedWar = 0x05F8A1AD, kRelationshipEventSpaceArchetypeNice = 0x05FF85B2, kRelationshipEventSpaceArchetypeMean = 0x05FF85B3, kRelationshipEventSpaceArchetypeMods = 0x05FF85B4, kRelationshipEventSpaceSuperPower = 0x0601DF2A, kRelationshipEventSpaceTradeRouteSpice = 0x0667AF08, kRelationshipEventSpaceAlliedWithGrob = 0x068B2938, kRelationshipEventSpaceCommittedAtrocity = 0x068B2971, kRelationshipEventTribeAttack = 0x0530CF00, kRelationshipEventTribeKill = 0x0530CF01, kRelationshipEventTribeRaid = 0x0530CF02, kRelationshipEventTribeStealBaby = 0x0530CF03, kRelationshipEventTribeAttackToolOrHut = 0x0530CF04, kRelationshipEventTribeDestroyTool = 0x0530CF05, kRelationshipEventTribeGift = 0x0530CF06, kRelationshipEventTribeSocial = 0x0530CF07, kRelationshipEventTribeRecruit = 0x0530CF08, kRelationshipEventTribeConvert = 0x0530CF09, kRelationshipEventTribeCheatGood = 0x0530CF0A, kRelationshipEventTribeCheatBad = 0x0530CF0B, kRelationshipEventTribeSocialPower = 0x54EAB4B3 }
- Properties of relationships between communities (tribes, civilizations, empires)
-
enum class ScenarioGenre: uint32_
t { ScenarioUnset = 0x20790816, ScenarioPlanet = 0x24720859, ScenarioGenreTemplate = 0x27818FE6, ScenarioGenreAttack = 0x287ADCDC, ScenarioGenreDefend = 0xC34C5E14, ScenarioGenreSocialize = 0xFB734CD1, ScenarioGenreExplore = 0x37FD4E0D, ScenarioGenreQuest = 0xC422519E, ScenarioGenreStory = 0xB4707F8F, ScenarioGenreCollect = 0x25A6EA6E, ScenarioGenrePuzzle = 0xE27DDAD4 } - Possible genres of an adventure, used by Simulator::cScenarioModeData.
- enum class ScenarioPowerupType: int { MedKit = 1, EnergyKit = 2, SpeedBoost = 3, DamageBoost = 4, ArmorBoost = 5, Mine = 6, JumpPad = 7, Teleporter = 8, Spawner = 9, Bomb = 10, Gate = 11, KeyCard = 12, Grenade = 13, Destructible = 15 }
-
enum class ScenarioObjectType: uint32_
t { ScenarioUndefined = 0x867A9EE9, ScenarioBuilding = 0xB10E526F, ScenarioCreature = 0xE34E8A60, ScenarioVehicle = 0x5B3D1D0D, ScenarioUfo = 0xD37C1045, ScenarioFixedObject = 0x6031C03A, ScenarioFixedObjectEffect = 0x7998CE71, ScenarioFixedObjectGameplay = 0xCF56099A, ScenarioFixedObjectAudio = 0xE137FF08, ScenarioFixedObjectCommodityNode = 0xC7FDCB1E } - enum class ScenarioGfxOverrideType: int { Invisible = 0, Normal = 1, Disguised = 2 }
- enum class ScenarioGoalType: int { None = 0, MoveTo = 1, TalkTo = 2, Kill = 3, Befriend = 4, AllyWith = 5, Bring = 6, Collect = 7, Hold = 8, Give = 9, Block = 10, Defend = 11 }
- enum class ScenarioPlayModeState: int { EditorStart = 0, OpeningCinematic = 1, MissionStart = 2, Active = 3, Completed = 5, Failed = 6 }
- The different states in which an adventure can be while being played (beginning, active, completed, failed etc).
- enum class CreatureMotive: int { None = 0, Default = 1, LowHunger = 2, CriticalHealthAndHunger = 3, LowHealth = 4, CriticalHealth = 5 }
- Possible motive (health & hunger) states for a creature; what is considered "low" and "critical" depends on the
MotiveTuning
settings. - enum class InteractableObjectType: int { None = 0, Flower = 1, Bone = 2, Stick = 3, Fruit = 4, Rock = 5, Unk6 = 6, FixedScenarioObject = 7 }
- Possible types of interactable objects, used by cInteractableObject.
- enum class BadgeManagerEvent: int { ReqPlanetsColonized = 0, ReqAlliancesFormed = 1, ReqStarsExplored = 2, ReqPlanetsTerraformed = 3, ReqEmpiresMet = 4, ReqWarsStarted = 5, Unk6 = 6, ReqFetchMissionsComplete = 7, ReqEradicateMissionsComplete = 8, ReqEcoDisasterMissionsComplete = 9, ReqFoodWebsComplete = 0xA, ReqRaresCollected = 0xB, ReqBadgePointsEarned = 0xC, ReqTradesComplete = 0xD, ReqMissionsComplete = 0xE, ReqGrobDefeated = 0xF, ReqGrobAllied = 0x10, Flight101Complete = 0x11, FriendsDefended = 0x12, CivsPromoted = 0x13, CreaturesPromoted = 0x14, Sightseer = 0x15, FlightsMade = 0x16, AestheticTools = 0x17, StorybooksVisited = 0x18, TradeRoutes = 0x19, SystemsPurchased = 0x1A, PlanetsConquered = 0x1B, ToolsPurchased = 0x1C, Joker = 0x1D, ReqArchetypeSwitches = 0x1E }
- Used by cBadgeManager, ounts how many events of a certain kind have happened, used to know when to give a badge.
-
enum class SpaceNamesType: uint32_
t { kPlanet = 0x07E1310A, kBuilding = 0x03DEE114, kVehicle = 0xBA1FD5AC, kBlackHole = 0xDEB2D943, kTribe = 0x055EA490, kCreature = 0x51AA76BB, kCity = 0x58F4C251, kStar = 0x7CAB064C } - Types of names that can be generated with cSpaceNames.
- enum class SpaceGfxObjectType: int { Planet = 0, Moon = 1, GasGiant = 2, Star = 3 }
- enum class PlanetTemperatureType: int { Normal = 1, VeryCold = 2, Cold = 3, VeryHot = 4, Hot = 5 }
- enum class SolarSystemOrbitTemperature { Hot = 0, Normal = 1, Cold = 2 }
- enum class UfoType { Player = 0, UberTurret = 1, Raider = 2, Unk3 = 3, Bomber = 4, Unk5 = 5, Defender = 6, Unk7 = 7, Unk8 = 8, Unk9 = 9, Unk10 = 10, Unk11 = 10 }
- enum TribeToolType { kTribeToolTypeNone = 0, kTribeToolTypeAttack1 = 1, kTribeToolTypeAttack2 = 2, kTribeToolTypeAttack3 = 3, kTribeToolTypeSocial1 = 4, kTribeToolTypeSocial2 = 5, kTribeToolTypeSocial3 = 6, kTribeToolTypeGather = 7, kTribeToolTypeFish = 8, kTribeToolTypeHeal = 9, kTribeToolTypeFirepit = 10, kTribeToolTypeChieftain = 11 }
- enum TribeToolClass { kTribeToolClassNone = 0, kTribeToolClassAttack = 1, kTribeToolClassSocial = 2, kTribeToolClassOther = 3 }
- enum TribeBundleType { kTribeBundleTypeFruit = 1, kTribeBundleTypeMeat = 2, kTribeBundleTypeFish = 3 }
- enum TribeInputAction { kTribeInputActionToolAttack1 = 19, kTribeInputActionToolAttack2 = 20, kTribeInputActionToolAttack3 = 21, kTribeInputActionToolSocial1 = 22, kTribeInputActionToolSocial2 = 23, kTribeInputActionToolSocial3 = 24, kTribeInputActionToolHeal = 25, kTribeInputActionToolFirepit = 26 }
- enum CitizenAction { kCitizenActionEat = 0, kCitizenActionFish = 1, kCitizenActionGather = 2, kCitizenActionGrabTool = 3, kCitizenActionHeal = 5, kCitizenActionAttack = 7, kCitizenActionRaid1 = 8, kCitizenActionGift1 = 9, kCitizenActionHunt = 10, kCitizenActionMate = 11, kCitizenActionParty = 12, kCitizenActionCollectEgg = 13, kCitizenActionBundle = 14, kCitizenActionRaid2 = 15, kCitizenActionFeedWild = 20, kCitizenActionGift2 = 21, kCitizenActionRepair = 24, kCitizenActionTame = 25, kCitizenActionRecruit = 26, kCitizenActionGatherMeat = 27 }
- enum HandheldItem { kHandheldItemNone = 0, kHandheldItemTrgHuntingTool1 = 1, kHandheldItemTrgHuntingTool2 = 2, kHandheldItemTrgHuntingTool3 = 3, kHandheldItemTrgFishingTool = 4, kHandheldItemTrgFish = 5, kHandheldItemTrgSeaweed = 6, kHandheldItemTrgEatingFruit = 7, kHandheldItemTrgEatingSeaweedOrFish = 8, kHandheldItemTrgEatingMeat = 9, kHandheldItemTrgEatingSeaweed = 10, kHandheldItemCityProtestSignHunger = 11, kHandheldItemTrgRecruitStaff = 12, kHandheldItemTrgSocialMaraca = 13, kHandheldItemTrgSocialHorn = 14, kHandheldItemTrgSocialDidgeridoo = 15, kHandheldItemTrgGatheringTreeSmacker = 16, kHandheldItemTrgChieftainStaff = 17, kHandheldItemTrgHealingStaff = 18, kHandheldItemTrgRepairMallet = 19, kHandheldItemTrgWaterBucket = 20, kHandheldItemUnk21 = 21, kHandheldItemTrgFireBomb = 22, kHandheldItemTrgEatingEgg = 23 }
- enum SimulatorMessages { kMsgEnterEditor = 0x53850BAE, kMsgSwitchEditor = 0x0212D3E7, kMsgSwitchGameMode = 0x0212D3E7, kMsgSaveGame = 0x1CD20F0, kMessageLoadGame = 0xf8b1a2af, kMsgGameNounStatusChanged = 0x1A0219E, kMsgMissionUpdate = 0x38CF2FD, kMsgCombatantKilled = 0x1622184, kMsgKillPersistentEffects = 0x0667af52, kMsgDoCinematicAction = 0x4470A41, kMsgCinematicGGE2CLGEnds = 0x04065b23, kMsgCellStageStart = 0x047c1d19, kMsgCellToCreatureTransition = 0x02A4f8f0, kMsgHatchAvatarEggs = 0x06566531, kMsgUpgradeNest = 0x06555abc, kMsgRestartAtNest = 0x04f60b92, kEnterCreatureEditor = 0x04d9686f, kMsgCreatureToTribeTransition = 0x0477f66c, kMsgTribeUpgradeHut = 0x0575116e, kMsgTribeUpgradeCampfire = 0x0575116f, kMsgTribeUpgradeFoodMat = 0x05751170, kMsgNotifyTotemNeeded = 0x05cd5482, kMsgNotifyUpgradeDone = 0x05cd5482, kMsgTribeRestart = 0x0420e32a, kMsgTribeMoveCameraToTribe = 0x056cf231, kMsgCinematicTRG2CVGShowCityHall = 0x069479a8, kMsgCinematicTRG2CVGHideCityHall = 0x0694797d, kMsgCinematicNewCityAppears = 0x05668f43, kMsgCinematicCityChangeStartBuildingsEffects = 0x05f4d02a, kMsgCinematicCityChangeSwapBuildings = 0x05dfb77f, kMsgCinematicCityChangeChangeWallColor = 0x05dfb782, kMsgCinematicCityChangeChangeCivilization = 0x05dbc31e, kMsgCivTriggerSuperweapon = 0x06524f8f, kMsgShowUFOForTransition = 0x0590cd26, kMsgSpaceGameFromLaunchScreen = 0x02364016, kMsgCinematicSpaceGetTools = 0x06526395, kMsgCinematicSpaceFirstSpicePickup = 0x06834927, kMsgCinematicSpaceUFOEffect = 0x0665e639, kMsgCinematicScreenBadgeEffect = 0x0665e1ab, kMsgCinematicSpaceColonyAtmosphereDomeDown = 0x065e622c, kMsgPlayerEmpireAllied = 0x4445D43, kMsgPlayerEmpireLostAlliance = 0x4445D44, kMsgSculptOrColorToolHit = 0xF46092DB, kMsgToolOnHit = 0x56690BB, kMsgGalaxyGenerateStarG = 0x35B2B15, kMsgGalaxyGenerateStarO = 0x36998AE, kMsgGalaxyGenerateStarM = 0x3757942, kMsgGalaxyGenerateBlackHole = 0x36AD255, kMsgGalaxyGenerateProtoPlanetary = 0x36AD784, kMsgGalaxyGenerateGalacticCore = 0x3D1DEBA, kMsgGalaxyGenerateBinaryOO = 0x3DFF99F, kMsgGalaxyGenerateBinaryOM = 0x3DFF9A9, kMsgGalaxyGenerateBinaryOG = 0x3DFF9B1, kMsgGalaxyGenerateBinaryGG = 0x3DFF9BA, kMsgGalaxyGenerateBinaryGM = 0x3DFF9C1, kMsgGalaxyGenerateBinaryMM = 0x3DFF9C6, kMsgSpaceRareFound = 0xF46092D4, kMsgSpaceRareDiscovered = 0x6779F04, kMsgStarOwnershipChanged = 0x55BD8F7, kMsgScenarioCreatureHealed = 0x7C789F8, kMsgScenarioEnergyConsumed = 0x7C7A52E, kMsgScenarioUndo = 0xC9D86390, kMsgScenarioRedo = 0xC9D86391, kMsgCinematicScenarioBeamDownComplete = 0x078eab55, kMsgCinematicScenarioClearAvatar = 0x07b509fe, kMsgCinematicTalkToSizeSetup = 0x07d0c530, kMsgCinematicTalkToGreetSetup = 0x07da0410, kMsgCinematicTalkToTextSetup = 0x0754ae8a, kMsgCinematicTalkToAnimStyleSetup = 0x07688cad, kMsgCinematicTalkToAnimEmotionSetup = 0x07688cad, kMsgCinematicTalkToPageSetup = 0x0750d732, kMsgCinematicTalkToSkipBlankPage = 0x07aaa58c }
- enum class TimeManagerPause { CinematicAll = 0x600C4AE, Cinematic = 0x4BF38A5, Tutorial = 0x64BEB65, Editor_ = 0x4BF38A6, CommScreen = 0x4D02E35, AdventureDialog = 0x7E9E4B7, UserToggle = 0x4BF38A8, Gameplay = 0x4BF38A7, UIToggle = 0x4BF38A4, ModalDialog = 0x4BF38A9 }
- enum class UIStateMachineEvent { MouseDown = 1, MouseDoubleClick = 2, MouseUp = 3, MouseMove = 6, LongMouseMove = 7, MouseWheel = 8, KeyDown = 4, KeyUp = 5, MenuItem = 9, TriggerDown = 10, TriggerUp = 11 }
- enum class UIStateMachineEventKey { TAB = 9, LEFT = 0x3E8, MIDDLE = 0x3E9, RIGHT = 0x3EA, BACKSPACE = 8, SPACE = 0x20, ESCAPE = 0x1B, ENTER = 0xD, FORWARD = 1, BACK = -1, PGUP = 0x21, PGDOWN = 0x22, ARROWUP = 0x26, ARROWDOWN = 0x28, ARROWLEFT = 0x25, ARROWRIGHT = 0x27, DELETE_ = 0x2E, HOME = 0x24, OPENBRACKET = 0xDB, CLOSEBRACKET = 0xDD, SHIFT = 0x10, CONTROL = 0x11, ALT = 0x12, F1 = 0x70, F2 = 0x71, F3 = 0x72, F4 = 0x73 }
- enum class UIStateMachineKeyMod { LEFT = 8, MIDDLE = 0x10, RIGHT = 0x20, CONTROL = 2, ALT = 4, SHIFT = 1, NONE = 0, ANY = 0x3FF, NOREPEAT = 0x40 }
- enum class UIStateMachineObjectFlags { PlayerOwned = 1, NPCOwned = 2, IsSelected = 0x10, IsNotSelected = 0x20, SomeObjectsAreSelected = 4, NoObjectsAreSelected = 8, ObjectIsShowingMenu = 0x40, ObjectIsNotShowingMenu = 0x80, ObjectIsUnderWater = 0x100, ObjectIsNotUnderWater = 0x200 }
Typedefs
- using cCollectableItemsRowVector = eastl::fixed_vector<cCollectableItemID, 4>
-
using cCollectableItemsRowID = uint64_
t -
using NodeType = eastl::map<cCollectableItemsRowID, cCollectableItemsRowVector>::
node_type -
using UnkHastable = eastl::sp_fixed_hash_map<Simulator::
cCollectableItemID, UnkHashtableItem, 4> - using UnkHashMap = eastl::sp_fixed_hash_map<int, UnkHastable, 8>
-
using CreatureEffectPool = eastl::sp_fixed_hash_map<uint32_
t, IVisualEffectPtr, 4> - using cObjectPoolIndex = int
- Identifies objects within a cObjectPool.
- using TimeStamp = int[9]
- using NounCreateFunction = cGameData*(*)()
- using ReadFunction_t = bool(*)(ISerializerReadStream*, void*)
- The type of function used to read binary attribute data.
- using WriteFunction_t = bool(*)(ISerializerWriteStream*, void*)
- The type of function used to write binary attribute data.
- using ReadTextFunction_t = void(*)(const eastl::string&, void*)
- The type of function used to read attribute data, which is expressed in text.
- using WriteTextFunction_t = void(*)(char*, void*)
- The type of function used to write attribute data, which is expressed in text.
- using UnknownFunction_t = bool(*)()
- using UnknownFunction2_t = bool(*)(void*, const char*, int)
- using OffsetFunction_t = void*(*)(Attribute*)
- using CinematicActionFunction_t = bool(*)(Object*actionData, bool)
- using ContainerCreateCallback_t = tGameDataVectorT<T>*(*)()
- Creates the vector game data container.
- using ContainerClearCallback_t = void(*)(tGameDataVectorT<T>*pVector)
- Clears the content of the vector.
- using ContainerAddCallback_t = void(*)(tGameDataVectorT<T>*pVector, cGameData*pObject)
- This method must add the game data object into the vector.
-
using ContainerFilterCallback_t = bool(*)(cGameData*pObject, uint32_
t gameNounID) - Used to decide which game objects go to the vector and which do not.
-
using EmpiresMap = eastl::map<uint32_
t, cEmpirePtr>
Functions
-
auto ScheduleTask(const App::
VoidFunction_T& function, float scheduleTime) -> SimScheduledTaskListenerPtr - Executes a function after a certain time (measured in seconds) has passed from ths call.
-
auto ScheduleTask(T* object,
App::
VoidMethod_T<T> method, float scheduleTime) -> SimScheduledTaskListenerPtr - Executes a class method after a certain time (measured in seconds) has passed from ths call.
-
auto ScheduleRepeatedTask(const App::
VoidFunction_T& function, float scheduleTime, float repeatRate) -> SimScheduledTaskListenerPtr - Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.
-
auto ScheduleRepeatedTask(T* object,
App::
VoidMethod_T<T> method, float scheduleTime, float repeatRate) -> SimScheduledTaskListenerPtr - Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.
- auto RemoveScheduledTask(SimScheduledTaskListenerPtr& taskListener) -> bool
- auto Addresses(cAbductToolStrategy) -> namespace
- ASSERT_SIZE(cAbilityUIMap, 0xD8)
- auto Addresses(cAbilityUIMap) -> namespace
- ASSERT_SIZE(cAnimalCargoInfo, 0x80)
- ASSERT_SIZE(cArtilleryProjectile, 0x538)
- auto Addresses(cArtilleryProjectile) -> namespace
- auto Addresses(cArtilleryWeaponStrategy) -> namespace
- ASSERT_SIZE(cBadgeManager, 0xC0)
- auto Addresses(cBadgeManager) -> namespace
- ASSERT_SIZE(cBaseDisplayStrategy, 0x38)
- ASSERT_SIZE(cBaseSimulatorInputStrategy, 0x3C)
- ASSERT_SIZE(cBehaviorAgent, 0x68)
- ASSERT_SIZE(cBehaviorBase, 0x74)
- ASSERT_SIZE(cBehaviorEntry, 0x20)
- ASSERT_SIZE(cBehaviorList, 0x18)
- ASSERT_SIZE(cBuilding, 0x340)
- ASSERT_SIZE(cBuildingCityHall, 0x378)
- ASSERT_SIZE(cBuildingEntertainment, 0x340)
- ASSERT_SIZE(cBuildingHouse, 0x340)
- ASSERT_SIZE(cBuildingIndustry, 0x340)
- ASSERT_SIZE(cBuildingScenario, 0x3C8)
- ASSERT_SIZE(cCelestialBody, 0xCC)
- auto Addresses(cCelestialBody) -> namespace
- ASSERT_SIZE(cCityPartner, 0xC)
- ASSERT_SIZE(tCultureTargetInfo, 0x80)
- ASSERT_SIZE(tDeferredEvent, 0x20)
- ASSERT_SIZE(cCity, 0x818)
- auto Addresses(cCity) -> namespace
- ASSERT_SIZE(cCityTerritory, 0x114)
- ASSERT_SIZE(cCityWalls, 0x358)
- ASSERT_SIZE(cCivilization, 0x4D8)
- ASSERT_SIZE(cCollectableItemsRowVector, 56)
-
auto GetCollectableItemsRowID(uint32_
t categoryID, int pageIndex, int row) -> cCollectableItemsRowID - ASSERT_SIZE(UnkHashtableItem, 8)
- ASSERT_SIZE(UnkHastable, 0xDC)
- ASSERT_SIZE(UnkHashMap, 0x888)
- ASSERT_SIZE(cCollectableItems, 0x6DAC)
- auto Addresses(cCollectableItems) -> namespace
- auto Addresses(CreatureGamePartUnlocking) -> namespace
-
auto GetCreatureGameUnlockCategoriesCount() -> eastl::fixed_vector<eastl::pair<uint32_
t, int>, 16>& - ASSERT_SIZE(cCombatant, 0xC8)
- ASSERT_SIZE(cCombatSimulator, 0x40)
- auto Addresses(cCombatSimulator) -> namespace
- ASSERT_SIZE(cCommEvent, 0xA0)
- ASSERT_SIZE(cCommodityNode, 0x290)
- ASSERT_SIZE(cCommunity, 0x120)
- ASSERT_SIZE(cLayoutSlot, 0x18)
- auto Addresses(cLayoutSlot) -> namespace
- ASSERT_SIZE(cCommunityLayout, 0x64)
- auto Addresses(cCommunityLayout) -> namespace
- ASSERT_SIZE(cConversation, 0x80)
- ASSERT_SIZE(cCreatureAbility, 0x13C)
- auto Addresses(cCreatureAbility) -> namespace
- ASSERT_SIZE(cCreatureAnimal, 0x16A0)
- auto Addresses(cCreatureAnimal) -> namespace
- ASSERT_SIZE(CreatureEffectPool, 0xA0)
- ASSERT_SIZE(cAbilityState, 0x10)
- ASSERT_SIZE(UnknownCreatureClass, 0x4A0)
- ASSERT_SIZE(cCreatureBase, 0xFC0)
- auto Addresses(cCreatureBase) -> namespace
- ASSERT_SIZE(cCreatureCitizen, 0x1038)
- auto Addresses(cCreatureCitizen) -> namespace
- ASSERT_SIZE(cCreatureDisplayStrategy, 0x320)
- ASSERT_SIZE(cCreatureGameData, 0x50)
- auto Addresses(cCreatureGameData) -> namespace
- auto Addresses(cCropCirclesToolStrategy) -> namespace
- ASSERT_SIZE(cCulturalProjectile, 0x588)
- auto Addresses(cCulturalProjectile) -> namespace
- ASSERT_SIZE(cCulturalTarget, 0x218)
- ASSERT_SIZE(cCultureSet, 0x1C)
- auto Addresses(cCultureSet) -> namespace
- ASSERT_SIZE(cDeepSpaceProjectile, 0x5F0)
- auto Addresses(cDeepSpaceProjectileToolStrategy) -> namespace
- ASSERT_SIZE(cDefaultAoEArea, 0x170)
- auto Addresses(cDefaultAoETool) -> namespace
- ASSERT_SIZE(cDefaultBeamProjectile, 0x1F8)
- auto Addresses(cDefaultBeamTool) -> namespace
- auto Addresses(cDefaultProjectileWeapon) -> namespace
- ASSERT_SIZE(cDefaultToolProjectile, 0x5F0)
-
auto LaunchDefaultToolProjectile(cSpaceToolData* tool,
cDefaultToolProjectile* projectile,
const Math::
Vector3& origin, const Math:: Vector3& target) -> void - Launches a projectile using the configuration of the specified tool.
- auto Addresses(cDragInputProjectileToolStrategy) -> namespace
- auto Addresses(cDropCargoToolStrategy) -> namespace
- ASSERT_SIZE(cEgg, 0x228)
- auto Addresses(Cell) -> namespace
-
ASSERT_SIZE(cEllipticalOrbit::
OrbitCache, 0x44) - ASSERT_SIZE(cEllipticalOrbit, 0x68)
- auto Addresses(cEllipticalOrbit) -> namespace
- ASSERT_SIZE(cEmpire, 0x158)
-
auto GetArchetypeRelationshipsID(int archetype,
int difficulty) -> uint32_
t - Returns the instance ID of the property file that contains the relationship properties used by a certain archetype in a certain difficulty (such as "spg_bard_easy", "spg_warrior_medium", etc)
- auto Addresses(cEmpire) -> namespace
- auto Addresses(cEnergyRepairToolStrategy) -> namespace
- ASSERT_SIZE(cFlakProjectile, 0x520)
- auto Addresses(cFlakProjectile) -> namespace
- ASSERT_SIZE(cGameBundle, 0x13C)
- ASSERT_SIZE(cGameBundleContainer, 0x24)
- ASSERT_SIZE(cGameData, 0x34)
- auto Addresses(cGameData) -> namespace
-
auto GetSpecializedName(cGameData* object) -> eastl::fixed_string<char16_
t, 32> - Returns the specialized name for a game object, such as "Chieftain Whatever".
- ASSERT_SIZE(cGameDataUFO, 0x818)
- auto Addresses(cGameDataUFO) -> namespace
- auto CreateUFO(UfoType type, cEmpire* empire) -> cGameDataUFO*
- Creates a new UFO instance of the given type and assigned to the specified empire.
- ASSERT_SIZE(cGamePlant, 0x680)
- ASSERT_SIZE(cGameplayMarker, 0x1C8)
- auto Addresses(cGameTerrainCursor) -> namespace
- auto Addresses(cGenesisDeviceToolStrategy) -> namespace
- auto Addresses(cGetOutOfUFOToolStrategy) -> namespace
- auto Addresses(cGlobalMindEraseToolStrategy) -> namespace
- ASSERT_SIZE(cGonzagoSimulator, 0x10)
- ASSERT_SIZE(cGonzagoTimer, 0x20)
- auto Addresses(cGonzagoTimer) -> namespace
- ASSERT_SIZE(cHerd, 0x220)
- auto Addresses(cHerd) -> namespace
- ASSERT_SIZE(cHitSphere, 0x250)
- ASSERT_SIZE(cICBM, 0x524)
- ASSERT_SIZE(cIdentityColorable, 0x30)
- auto Addresses(cIdentityColorable) -> namespace
-
auto GetCachedColorFromId(uint32_
t colorId) -> const Math:: ColorRGB& -
auto GetCachedColorIdMap() -> eastl::map<uint32_
t, Math:: ColorRGB>& - ASSERT_SIZE(cInteractableObject, 0x130)
- ASSERT_SIZE(cInteractiveOrnament, 0x260)
- ASSERT_SIZE(cInterCityRoad, 0x140)
- ASSERT_SIZE(cLocomotiveObject, 0x4D0)
- auto Addresses(cMindEraseToolStrategy) -> namespace
- ASSERT_SIZE(cMission, 0x1F0)
- auto Addresses(cMission) -> namespace
- ASSERT_SIZE(UnkMissionManagerStruct, 0x38)
- ASSERT_SIZE(cMissionManager, 0x144)
- auto Addresses(cMissionManager) -> namespace
- ASSERT_SIZE(cMovableDestructibleOrnament, 0x638)
- ASSERT_SIZE(cNest, 0x130)
- ASSERT_SIZE(cNpcTribeController, 0x100)
- auto Addresses(cNpcTribeController) -> namespace
- ASSERT_SIZE(cObjectInstanceInventoryItem, 0x80)
-
ASSERT_SIZE(cObjectPool_
, 0x1C) -
auto Addresses(cObjectPool_
) -> namespace - ASSERT_SIZE(cObstacle, 0x8C)
- ASSERT_SIZE(ConversationResource, 0x80)
- ASSERT_SIZE(cOrnament, 0x238)
- auto Addresses(cPlaceColonyToolStrategy) -> namespace
- auto Addresses(cPlaceObjectToolStrategy) -> namespace
- ASSERT_SIZE(cPlanet, 0x1C8)
- auto Addresses(cPlanet) -> namespace
- ASSERT_SIZE(cPlanetaryArtifact, 0x668)
- auto Addresses(cPlanetaryArtifact) -> namespace
- ASSERT_SIZE(cWallData, 0x4)
- ASSERT_SIZE(cOrnamentData, 0x34)
- ASSERT_SIZE(cBuildingData, 0x38)
- ASSERT_SIZE(cCityData, 0xC4)
- ASSERT_SIZE(cVehicleData, 0x14)
- ASSERT_SIZE(cCivData, 0x50)
- auto Addresses(cCivData) -> namespace
- ASSERT_SIZE(cTribeData, 0x18)
- ASSERT_SIZE(cCommodityNodeData, 0x8)
- ASSERT_SIZE(cPlanetObjectData, 0x2C)
- ASSERT_SIZE(cPlanetRecord, 0x1B0)
- auto GetMainSpeciesImageKey(cPlanetRecord* planetRecord) -> ResourceKey
- Returns the key to the image file that represents this planet main species, for planets in tribe, civilization, or space tech level.
- auto Addresses(cPlanetRecord) -> namespace
- ASSERT_SIZE(cPlantCargoInfo, 0xA4)
- ASSERT_SIZE(cSpacePlayerWarData, 0x40)
- ASSERT_SIZE(PlayerPlanetData, 0xB0)
- ASSERT_SIZE(cPlayer, 0x12D8)
- ASSERT_SIZE(cPlayerInventory, 0x98)
- auto Addresses(cPlayerInventory) -> namespace
- ASSERT_SIZE(cProjectile, 0x14)
- ASSERT_SIZE(cRaidEvent, 0x250)
- ASSERT_SIZE(cRaidPlunderEvent, 0x228)
- auto Addresses(cRallyCallToolStrategy) -> namespace
- auto Addresses(cRepairAOEToolStrategy) -> namespace
- auto Addresses(cRepairToolStrategy) -> namespace
- ASSERT_SIZE(cResourceProjectile, 0x558)
- auto Addresses(cResourceProjectile) -> namespace
- auto Addresses(cScanToolStrategy) -> namespace
- ASSERT_SIZE(cScenarioAct, 0x534)
- ASSERT_SIZE(cScenarioAsset, 0x20)
- ASSERT_SIZE(cScenarioClass, 0x27E0)
- auto Addresses(cScenarioClass) -> namespace
- ASSERT_SIZE(cScenarioClassAct, 0x4E0)
- ASSERT_SIZE(cScenarioData, 0x1FC)
- auto Addresses(cScenarioData) -> namespace
- ASSERT_SIZE(cScenarioDialog, 0x44)
- ASSERT_SIZE(cScenarioDataEconomy, 0x30)
- ASSERT_SIZE(cScenarioTerraformEconomy, 0xC)
- ASSERT_SIZE(cScenarioTerraformHistoryEntry, 0x40)
- ASSERT_SIZE(cScenarioDataHistoryEntry, 0x18)
- ASSERT_SIZE(cScenarioEditHistory, 0x28)
- auto Addresses(cScenarioEditHistory) -> namespace
- ASSERT_SIZE(cScenarioEditModeDisplayStrategy, 0x98)
- auto Addresses(cScenarioEditModeDisplayStrategy) -> namespace
- ASSERT_SIZE(cScenarioGoal, 0x188)
- ASSERT_SIZE(cScenarioMarker, 0x234)
- ASSERT_SIZE(cScenarioMarkerAct, 0x34)
- ASSERT_SIZE(cScenarioPlayModeGoal, 0x1AC)
- ASSERT_SIZE(cScenarioPlaySummary, 0x48)
- ASSERT_SIZE(cScenarioPlayMode, 0x108)
- auto Addresses(cScenarioPlayMode) -> namespace
- ASSERT_SIZE(cScenarioPosseMember, 0x38)
- ASSERT_SIZE(cScenarioPowerup, 0x3C)
- auto Addresses(cScenarioPowerup) -> namespace
- ASSERT_SIZE(cScenarioResource, 0x2CB0)
- auto Addresses(cScenarioResource) -> namespace
- auto Addresses(cScenarioSimulator) -> namespace
- ASSERT_SIZE(cScenarioString, 0x3C)
- ASSERT_SIZE(cScenarioTerraformMode, 0x1CC)
- auto Addresses(cScenarioTerraformMode) -> namespace
- ASSERT_SIZE(cShipBackgroundData, 0x20)
- ASSERT_SIZE(cSimPlanetHighLOD, 0x1E8)
- auto Addresses(cSimPlanetHighLOD) -> namespace
- ASSERT_SIZE(cSimulatorPlayerUFO, 0xE0)
- auto GetPlayerUFO() -> cGameDataUFO*
- auto Addresses(cSimulatorPlayerUFO) -> namespace
- ASSERT_SIZE(cSimulatorSpaceGame, 0xF0)
- auto Addresses(cSimulatorSpaceGame) -> namespace
- ASSERT_SIZE(tGrobShockData, 0x28)
- ASSERT_SIZE(cSimulatorUniverse, 0x1B8)
- auto Addresses(cSimulatorUniverse) -> namespace
- ASSERT_SIZE(cSolarHitSphere, 0x250)
- ASSERT_SIZE(cSolarSystem, 0x54)
- auto Addresses(cSolarSystem) -> namespace
- ASSERT_SIZE(cSpaceDefenseMissile, 0x610)
- auto Addresses(cSpaceDefenseMissile) -> namespace
- ASSERT_SIZE(cSpaceInventory, 0x4C)
- ASSERT_SIZE(cSpaceInventoryItem, 0x7C)
- auto Addresses(cSpaceInventoryItem) -> namespace
- ASSERT_SIZE(cSpaceNames, 0x40C)
- auto Addresses(cSpaceNames) -> namespace
- ASSERT_SIZE(cSpaceToolData, 0x2A0)
- auto Addresses(cSpaceToolData) -> namespace
- ASSERT_SIZE(cSpatialObject, 0xD4)
- auto Addresses(cSpatialObject) -> namespace
- ASSERT_SIZE(cSpatialObjectView, 0x34)
- ASSERT_SIZE(cSpear, 0x540)
- ASSERT_SIZE(cSpeciesProfile, 0xA18)
- auto Addresses(cSpeciesProfile) -> namespace
- ASSERT_SIZE(cStar, 0x50)
- auto Addresses(cStar) -> namespace
- ASSERT_SIZE(cStarRecord, 0xB0)
- auto Addresses(cStarRecord) -> namespace
- ASSERT_SIZE(cTimeOfDay, 0x28)
- auto Addresses(cTimeOfDay) -> namespace
- ASSERT_SIZE(cToolObject, 0x658)
- ASSERT_SIZE(cToolStrategy, 0xC)
- auto Addresses(cToolStrategy) -> namespace
- ASSERT_SIZE(cTotemPole, 0x14C)
- ASSERT_SIZE(cFishHotSpot, 0x40)
- ASSERT_SIZE(cFishHotSpotUnk, 0x60)
- auto GetTribeFishHotSpots() -> eastl::vector<cFishHotSpotUnk>&
- auto GetTribeFishTimer() -> cGonzagoTimer&
-
auto GetTribeFishEndTime() -> uint64_
t -
auto SetTribeFishEndTime(uint64_
t) -> void - ASSERT_SIZE(cTribe, 0x19E0)
- auto Addresses(cTribe) -> namespace
-
auto SpawnNpcTribe(const Math::
Vector3& position, int tribeArchetype, int numMembers, int foodAmount, bool, cSpeciesProfile* species) -> cTribe* - ASSERT_SIZE(cTribeArchetype, 0xB8)
- auto Addresses(cTribeArchetype) -> namespace
- ASSERT_SIZE(cTribeFoodMat, 0x110)
- ASSERT_SIZE(cTribeHut, 0x260)
- ASSERT_SIZE(cTribeInputStrategy, 0xD0)
- auto Addresses(cTribeInputStrategy) -> namespace
- ASSERT_SIZE(cTribePlanProperties, 0x44)
- ASSERT_SIZE(cTribePlan, 0x58)
- ASSERT_SIZE(cTribePlanner, 0x7C)
- ASSERT_SIZE(cTribeTool, 0x250)
- auto Addresses(cTribeTool) -> namespace
- ASSERT_SIZE(cTribeToolData, 0x7C)
- auto LoadTribeToolsData() -> void
- Reads the .prop files in
tribe_tools~
and creates the cTribeToolData instances for them, adding them to the GetTribeToolDataArray() array. - auto GetTribeToolDataArray() -> eastl::array<cTribeToolData*, 12>
- Returns the array with the base game tribe tools data.
- auto GetTribeToolData(int toolType) -> cTribeToolData*
- Returns the cTribeToolData for the given tool type (TribeToolType)
- auto DisposeTribeToolsData() -> void
- Called on cSimulatorSystem::
Dispose(), deletes the objects in the tribe tool data array. - ASSERT_SIZE(cTurret, 0x6D0)
- auto Addresses(cTurretDefenseMissileWeapon) -> namespace
- auto Addresses(cTurretFlakWeapon) -> namespace
- ASSERT_SIZE(cVehicle, 0xD98)
- auto Addresses(cVehicle) -> namespace
- ASSERT_SIZE(cVisiblePlanet, 0x10C)
- ASSERT_SIZE(cPlanetGfx, 0x68)
- ASSERT_SIZE(GoalCard, 0x98)
- ASSERT_SIZE(IGameDataView, 0xC)
-
auto RegisterNounType(uint32_
t nounID, uint32_ t typeID, const char* name) -> void - ASSERT_SIZE(Attribute, 0x3C)
- ASSERT_SIZE(ClassSerializer, 0xA14)
- auto Addresses(ClassSerializer) -> namespace
- auto Addresses(XmlSerializer) -> namespace
- auto GetBinarySystemStarTypes(StarType binaryType, StarType& star1, StarType& star2) -> void
- Used to obtain the individual star types of each of the two stars in a binary system.
- auto GetBinarySystemBaseRadius(StarType binaryType) -> float
- Returns the radius that is used as a base for calculating planet orbits in a binary-star system.
- auto GetSolarStarTemperature(StarType starType) -> float
- Returns the solar temperature for a given star type.
- auto GetSolarStarMass(StarType starType) -> float
- Returns the stellar mass for a given star type, in solar mass units (1.0 is the mass of the Sun, 2.0 is twice as massive as the Sun, etc).
- auto GetSolarStarRadius(StarType starType) -> float
- Returns the radius for a given star type.
- auto GetSolarStarRotationRate(StarType starType) -> float
- Returns the rotation rate for a given star type, only used for individual stars.
- auto GetSolarStarOrbitRadius(StarType starType, SolarSystemOrbitTemperature orbitTemperature) -> float
- Returns the distance from the center of the solar system for cold, normal and hot orbits.
- auto GetPlanetTemperatureType(float temperatureScore) -> PlanetTemperatureType
- Returns the type of temperature (very cold, cold, normal, hot, very hot) of a planet.
- auto IsBinaryStar(StarType starType) -> bool
- Returns true if the given star type is a binary star, false otherwise.
- auto IsNotStarOrBinaryStar(StarType starType) -> bool
- Returns true if the given star is not a single star or binary star system, false otherwise.
- auto GetPrecalculatedSolarStarRadius() -> float*
- ASSERT_SIZE(StarID, 4)
- ASSERT_SIZE(PlanetID, 4)
- auto Addresses(cAnimalSpeciesManager) -> namespace
- ASSERT_SIZE(cBundleManager, 0x20)
- auto Addresses(cBundleManager) -> namespace
- ASSERT_SIZE(CinematicAction, 0x14)
- auto Addresses(CinematicAction) -> namespace
- ASSERT_SIZE(cCinematicManager, 0x3C8)
- auto Addresses(cCinematicManager) -> namespace
- ASSERT_SIZE(CinematicVignetteActionData, 0x54)
- auto Addresses(cCommManager) -> namespace
- ASSERT_SIZE(cRelationshipManager, 0x100)
- auto Addresses(cRelationshipManager) -> namespace
- ASSERT_SIZE(cSavedGameHeader, 0x68)
- ASSERT_SIZE(cStrategy, 0x1C)
- ASSERT_SIZE(cGameBehaviorManager, 0xA4)
- auto Addresses(cGameBehaviorManager) -> namespace
- ASSERT_SIZE(cGameInputManager, 0x114)
- auto Addresses(cGameInputManager) -> namespace
- ASSERT_SIZE(cGameModeManager, 0x9C)
-
auto GetGameModeID() -> uint32_
t - Returns the ID of the current game mode. You can compare it to the values in the GameModeIDs enum.
- auto IsCellGame() -> bool
- Returns true if the game is currently in the cell stage.
- auto IsCreatureGame() -> bool
- Returns true if the game is currently in the creature stage.
- auto IsTribeGame() -> bool
- Returns true if the game is currently in the tribe stage.
- auto IsCivGame() -> bool
- Returns true if the game is currently in the civilization stage.
- auto IsSpaceGame() -> bool
- Returns true if the game is currently in the tribe stage.
- auto IsGameEditMode() -> bool
- Returns true if the game is currently in the "game edit" mode, which is the level editor.
- auto IsScenarioMode() -> bool
- Returns true if the game is currently in adventure mode.
- auto IsLoadingGameMode() -> bool
- Returns true if the game is currently loading a stage.
- auto Addresses(cGameModeManager) -> namespace
- ASSERT_SIZE(cGameNounManager, 0x11C)
- auto Addresses(cGameNounManager) -> namespace
-
auto GetData(uint32_
t nounID) -> tGameDataVectorT<T>& - Gets all the game data objects that use the given game noun ID.
- auto GetData() -> tGameDataVectorT<T>&
- Gets all the game data objects that are of the specified type.
- auto GetDataByCast() -> tGameDataVectorT<T>&
- Gets all the game data objects that can be casted to the specified type.
- auto GetPlayer() -> cPlayer*
- ASSERT_SIZE(GameLoadParameters, 0xB4)
- ASSERT_SIZE(cGamePersistenceManager, 0x4C)
- auto Addresses(cGamePersistenceManager) -> namespace
- ASSERT_SIZE(cGamePlantManager, 0x1E8)
- auto Addresses(cGamePlantManager) -> namespace
- ASSERT_SIZE(cGameTimeManager, 0x80)
- auto Addresses(cGameTimeManager) -> namespace
- ASSERT_SIZE(cGameViewManager, 0x1A8)
-
auto GetLightingWorld() -> Graphics::
ILightingWorld* - auto Addresses(cGameViewManager) -> namespace
- ASSERT_SIZE(cObstacleManager, 0x56E0)
- auto Addresses(cObstacleManager) -> namespace
- auto Addresses(cPlanetModel) -> namespace
- ASSERT_SIZE(cPlantSpeciesManager, 0x3C)
- auto Addresses(cPlantSpeciesManager) -> namespace
- ASSERT_SIZE(cSimTicker, 0x44)
- ASSERT_SIZE(cSimulatorSystem, 0x70)
- auto InitializeWithoutPlanet() -> void
- Initializes certain Simulator systems so that most things can be used without being in a star or planet.
- auto Addresses(cSimulatorSystem) -> namespace
- ASSERT_SIZE(cSpaceGfx, 0x140)
- auto Addresses(cSpaceGfx) -> namespace
- auto GetActiveStar() -> cStar*
- auto GetActiveStarRecord() -> cStarRecord*
- auto GetActivePlanet() -> cPlanet*
- auto GetActivePlanetRecord() -> cPlanetRecord*
- auto GetPlayerEmpire() -> cEmpire*
-
auto GetPlayerEmpireID() -> uint32_
t - auto GetCurrentContext() -> SpaceContext
- auto GetPlayerHomePlanet() -> cPlanetRecord*
- auto Addresses(SpacePlayerData) -> namespace
- ASSERT_SIZE(cNPCStore, 0xC0)
- ASSERT_SIZE(cSpaceTrading, 0xF8)
- auto Addresses(cSpaceTrading) -> namespace
- ASSERT_SIZE(cTradeRouteData, 0x28)
- ASSERT_SIZE(cSpaceTradeRouteManager, 0x24)
- ASSERT_SIZE(cStarManager, 0x22C)
- auto Addresses(cStarManager) -> namespace
- auto Addresses(cSpaceTradeRouteManager) -> namespace
- auto GetRecordGridIndex(unsigned int gridX, unsigned int gridY) -> unsigned int
- auto SpaceTeleportTo(cStarRecord* star) -> void
- Teleports the player spaceship into the given star record.
- auto GalaxyCoordinatesTo3D(float parsecDistance, float angle, Vector3& dst) -> Vector3&
- Converts the parsec distance and angle into the 3D coordinates used in the galaxy map and in functions like cStarManager::
FindClosestStar(). - ASSERT_SIZE(cTerraformingManager, 0x94)
- auto Addresses(cTerraformingManager) -> namespace
- ASSERT_SIZE(cToolManager, 0x29C)
- auto Addresses(cToolManager) -> namespace
- ASSERT_SIZE(cUIAssetDiscoveryManager, 0xA8)
- auto Addresses(cUIAssetDiscoveryManager) -> namespace
- ASSERT_SIZE(cFeedbackEvent, 0x94)
- ASSERT_SIZE(cUIEventLog, 0x70)
- auto Addresses(cUIEventLog) -> namespace
- ASSERT_SIZE(UIStateMachineTransition, 0x38)
- ASSERT_SIZE(UIStateMachine, 0x38)
- ASSERT_SIZE(cCommandParameterSet, 0x3C)
- ASSERT_SIZE(cStringCommandGenerator, 0x24)
- ASSERT_SIZE(cMessageCommandDispatcher, 0x48)
Variables
Enum documentation
enum class Simulator:: CollectableItemStatusFlags: uint8_ t
enum Simulator:: CreatureFlags
enum class Simulator:: DamageType
enum Simulator:: EmpireFlags
enum class Simulator:: CreaturePersonality
enum class Simulator:: IdentityColors: uint32_ t
enum Simulator:: MissionFlags
enum Simulator:: PlanetFlags
enum Simulator:: StarFlags
enum Simulator:: GameNounIDs
All the noun IDs used to identify Simulator game data classes in the game files.
These IDs can be passed to the cGameNounManager to create instances of these classes, even if the class itself isn't in the SDK yet.
enum class Simulator:: SpaceContext: int
enum class Simulator:: PlanetType: int
Type of a planet, used in Simulator::
enum class Simulator:: StarType: int
The type of a star in a galaxy (which includes black holes, binary stars, proto-planetary disks, and the galactic core), used in Simulator::
Enumerators | |
---|---|
None |
|
GalacticCore |
The galactic core. |
BlackHole |
Black holes. |
ProtoPlanetary |
Proto-planetary disks. |
StarG |
Yellow stars. |
StarO |
Blue stars. |
StarM |
Red stars. |
BinaryOO |
Binary O-O (blue-blue) star system. |
BinaryOM |
Binary O-M (blue-red) star system. |
BinaryOG |
Binary O-G (blue-yellow) star system. |
BinaryGG |
Binary G-G (yellow-yellow) star system. |
BinaryGM |
Binary G-M (yellow-red) star system. |
BinaryMM |
Binary M-M (red-red) star system. |
enum class Simulator:: cCelestialBodyType: int
Used by Simulator::
Enumerators | |
---|---|
None |
|
Star |
|
Comet |
Uses effect |
enum class Simulator:: MoonPerihelionType: int
Used by function cPlanetRecord::
Enumerators | |
---|---|
DifferenceWithParent |
The returned value is the parent perihelion minus the moon perihelion. |
Parent |
The returned value is the parent perihelion. |
SumWithParent |
The returned value is the parent perihelion plus the moon perihelion. |
RelativeToParent |
The returned value is the moon perihelion within its orbit, so relative to the parent planet. |
enum class Simulator:: cCommEventType: int
Used by Simulator::
enum Simulator:: Archetypes
Used by Simulator::
enum Simulator:: EmpireTrait
Used by Simulator::
enum Simulator:: OrnamentType
Used by Simulator::
enum class Simulator:: MissionState: int
The different states in which a mission can be (accepted, rejected, failed, etc).
Used by Simulator::
Enumerators | |
---|---|
Unaccepted |
When the mission hasn't been accepted yet, and player is in the initial conversation. |
Finished |
The mission has been finished (not necessarily completed). After this, the mission is destroyed. |
Accepted |
The player just accepted the mission, but it hasn't started yet. It calls cMission:: |
Active |
The mission is currently active. While the mission is in this state, it receives calls to Update() |
Completed |
The player has successfully completed the mission. It calls cMission:: |
Failed |
The player has failed the mission. It calls cMission:: |
Aborted |
The mission has been aborted. It calls cMission:: |
Rejected |
The mission has been rejected. It calls cMission:: |
StepCompleted |
When this mission is only a step of a bigger mission, and the step gets completed. |
enum class Simulator:: LandmarkStarType: int
Types of star landmarks to be searched in some missions. Used by Simulator::
enum class Simulator:: LandmarkPlanetType: int
Types of planet landmarks to be searched in some missions. Used by Simulator::
enum class Simulator:: PlanetRepresentationMode: int
Used by Simulator::
Enumerators | |
---|---|
Nothing |
|
VisiblePlanetAndHitSphere |
|
OnlyVisiblePlanet |
|
OnlyHitSphere |
|
enum class Simulator:: SpaceInventoryItemType
Used by Simulator::
Enumerators | |
---|---|
Plant |
Plants. |
NonSentientAnimal |
Non-sentient animals. |
Tool |
Space tools in |
CargoSlot |
|
TradingObject |
Objects in |
MultiDeliveryObject |
Objects in |
Sentient |
Sentient animals (citizens) |
Unk7 |
|
ObjectInstance |
enum Simulator:: SpaceToolHit
Different kinds of surfaces where a tool can hit, usde by Simulator::
enum Simulator:: SpaceToolTarget
Different kinds of targets that a tool can shoot at, usde by Simulator::
enum class Simulator:: TribePlanType: int
Different types of actions that a tribe can carry, used by Simulator::
Enumerators | |
---|---|
Raid |
In tribe archetype, property |
Gift |
In tribe archetype, property |
Hunt |
In tribe archetype, property |
Gather |
In tribe archetype, property |
Fish |
In tribe archetype, property |
Mate |
In tribe archetype, property |
CheatMember |
In tribe archetype, property |
BuyTools |
In tribe archetype, property |
Idle |
In tribe archetype, property |
StealFood |
In tribe archetype, property |
enum Simulator:: RelationshipEvents
Properties of relationships between communities (tribes, civilizations, empires)
enum class Simulator:: ScenarioGenre: uint32_ t
Possible genres of an adventure, used by Simulator::cScenarioModeData.
enum class Simulator:: ScenarioPowerupType: int
enum class Simulator:: ScenarioObjectType: uint32_ t
enum class Simulator:: ScenarioGfxOverrideType: int
Enumerators | |
---|---|
Invisible |
No override. |
Normal |
Use the default model, no override. |
Disguised |
Use a custom asset specified by the player. |
enum class Simulator:: ScenarioGoalType: int
enum class Simulator:: ScenarioPlayModeState: int
The different states in which an adventure can be while being played (beginning, active, completed, failed etc).
Used by Simulator::
Enumerators | |
---|---|
EditorStart |
When beginning adventure from the editor, it will skip the opening cinematic to immediately begin the adventure. |
OpeningCinematic |
When the opening cinematic is running. |
MissionStart |
When loading the adventure from quick play or (presumably) space stage. Opening cinematic will run. |
Active |
The adventure is currently active. |
Completed |
When the adventure is completed successfully, the victory cinematic will play and Spore points will be rewarded (if eligible). If applicable, the player captain will act joyful and perhaps dance in the results screen as Spore points are rewarded to them. |
Failed |
If the adventure wasn't successfully cleared, the failure or death cinematic will play, depending on the type of failure. Spore points will not be rewarded, and if applicable, the player captain will appear sad in the results screen. |
enum class Simulator:: CreatureMotive: int
Possible motive (health & hunger) states for a creature; what is considered "low" and "critical" depends on the MotiveTuning
settings.
enum class Simulator:: InteractableObjectType: int
Possible types of interactable objects, used by cInteractableObject.
enum class Simulator:: BadgeManagerEvent: int
Used by cBadgeManager, ounts how many events of a certain kind have happened, used to know when to give a badge.
enum class Simulator:: SpaceNamesType: uint32_ t
Types of names that can be generated with cSpaceNames.
enum class Simulator:: SpaceGfxObjectType: int
enum class Simulator:: SolarSystemOrbitTemperature
Enumerators | |
---|---|
Hot |
Hot orbit, close to the sun. |
Normal |
Normal orbit, neither too close nor too far to the sun. |
Cold |
Cold orbit, far from the sun. |
enum Simulator:: TribeToolType
enum Simulator:: TribeToolClass
enum Simulator:: TribeBundleType
enum Simulator:: TribeInputAction
enum Simulator:: CitizenAction
enum Simulator:: HandheldItem
enum Simulator:: SimulatorMessages
Enumerators | |
---|---|
kMsgEnterEditor |
Simulator:: |
kMsgSwitchEditor |
Switches the editor. Use the desired editor ID as the message data . |
kMsgSwitchGameMode |
|
kMsgSaveGame |
Saves the game, pausing the game and showing a dialog on success. Use with message data |
kMessageLoadGame |
Sent when loading a saved game. |
kMsgGameNounStatusChanged | |
kMsgMissionUpdate |
Simulator:: |
kMsgCombatantKilled |
Simulator:: |
kMsgKillPersistentEffects |
kills persistant swarm effects. Used at the end of certain stages |
kMsgDoCinematicAction |
Simulator:: |
kMsgCinematicGGE2CLGEnds |
|
kMsgCellStageStart |
Sent when cell stage has begun. |
kMsgCellToCreatureTransition |
Sent when cell stage is transitioning to creature stage. |
kMsgHatchAvatarEggs |
Hatches the avatar creature's egg in creature stage. |
kMsgUpgradeNest |
Upgrades the player's nest to the current brain level(?) in creature stage. May be cutscene only. |
kMsgRestartAtNest |
Respawns the avatar creature at their nest in creature stage. |
kEnterCreatureEditor |
Loads the avatar into the creature editor. |
kMsgCreatureToTribeTransition |
TODO, uses data. Transitions from creature stage to tribal stage |
kMsgTribeUpgradeHut |
Upgrades the player tribe's main hut (Cutscene only) |
kMsgTribeUpgradeCampfire |
Upgrades the player tribe's campfire and layout decal (Cutscene only) |
kMsgTribeUpgradeFoodMat |
Upgrades the player tribe's totem base and food mat (Cutscene only) |
kMsgNotifyTotemNeeded |
Sent to notify the game that a new tribal totem needs to be added (Cutscene only) |
kMsgNotifyUpgradeDone |
Sent to notify the game that the tribal upgrade or totem placement has finished so that game can save (Cutscene only) |
kMsgTribeRestart |
Restarts the tribal stage (as though tribal hut has been destroyed) |
kMsgTribeMoveCameraToTribe |
Moves the tribal camera to point towards the center of your tribe. |
kMsgCinematicTRG2CVGShowCityHall |
TRG2CVG - Shows the city hall (Cutscene only) |
kMsgCinematicTRG2CVGHideCityHall |
TRG2CVG - Hides the city hall (Cutscene only) |
kMsgCinematicNewCityAppears |
Sent when the cutscene for a new city appearing plays in civ stage. |
kMsgCinematicCityChangeStartBuildingsEffects |
Sent when the captured city's buildings restart their runtime effects in civ stage. |
kMsgCinematicCityChangeSwapBuildings |
Sent when the captured city's buildings swap their models in civ stage. |
kMsgCinematicCityChangeChangeWallColor |
Sent when the captured city's wall color changes in civ stage. |
kMsgCinematicCityChangeChangeCivilization |
Sent when the captured city's civilization ownership changes in civ stage. |
kMsgCivTriggerSuperweapon |
Sent when a tier 3 superweapon cutscene begins in civ stage (?) |
kMsgShowUFOForTransition |
Sent when the UFO appears at the very end of civ stage. |
kMsgSpaceGameFromLaunchScreen |
Sent when launching a space stage game form the main menu. |
kMsgCinematicSpaceGetTools |
Sent when the player gets new tools in a space stage cutscene (TODO: Does this also get called outside of cutscenes?) |
kMsgCinematicSpaceFirstSpicePickup |
Sent from the cutscene where the player first picks up spice in space stage. |
kMsgCinematicSpaceUFOEffect |
Plays the "UFO Effect" of swirly lights appearing around the player's ship in a space stage cutscene. |
kMsgCinematicScreenBadgeEffect |
Sent when a new badge appears on the screen in space stage. |
kMsgCinematicSpaceColonyAtmosphereDomeDown |
Sent when the atmosphere dome goes down on a space stage colony (TODO: Does this also get called outside of cutscenes?) |
kMsgPlayerEmpireAllied |
Simulator:: |
kMsgPlayerEmpireLostAlliance |
Simulator:: |
kMsgSculptOrColorToolHit |
Called when a spaceship uses an sculpting or coloring tool and it hits the planet. No parameters. |
kMsgToolOnHit |
Simulator:: |
kMsgGalaxyGenerateStarG |
Message emitted by the galaxy generation effect to create stars of StarType:: |
kMsgGalaxyGenerateStarO |
Message emitted by the galaxy generation effect to create stars of StarType:: |
kMsgGalaxyGenerateStarM |
Message emitted by the galaxy generation effect to create stars of StarType:: |
kMsgGalaxyGenerateBlackHole |
Message emitted by the galaxy generation effect to create black holes (StarType:: |
kMsgGalaxyGenerateProtoPlanetary |
Message emitted by the galaxy generation effect to create proto-planteray disks (StarType:: |
kMsgGalaxyGenerateGalacticCore |
Message emitted by the galaxy generation effect to create galactic cores (StarType:: |
kMsgGalaxyGenerateBinaryOO |
Message emitted by the galaxy generation effect to create binary O-O (blue-blue) star systems (StarType:: |
kMsgGalaxyGenerateBinaryOM |
Message emitted by the galaxy generation effect to create binary O-M (blue-red) star systems (StarType:: |
kMsgGalaxyGenerateBinaryOG |
Message emitted by the galaxy generation effect to create binary O-G (blue-yellow) star systems (StarType:: |
kMsgGalaxyGenerateBinaryGG |
Message emitted by the galaxy generation effect to create binary G-G (yellow-yellow) star systems (StarType:: |
kMsgGalaxyGenerateBinaryGM |
Message emitted by the galaxy generation effect to create binary G-M (yellow-red) star systems (StarType:: |
kMsgGalaxyGenerateBinaryMM |
Message emitted by the galaxy generation effect to create binary M-M (red-red) star systems (StarType:: |
kMsgSpaceRareFound |
Simulator:: |
kMsgSpaceRareDiscovered |
Sent when a rare item is discovered (i.e. it had not been found before) in Space Stage. The parameter is a uint32_t* to the rare instance ID. |
kMsgStarOwnershipChanged |
Sent when the ownership of some star changes. No parameters. |
kMsgScenarioCreatureHealed |
Simulator:: |
kMsgScenarioEnergyConsumed |
Simulator:: |
kMsgScenarioUndo |
No data, called when pressing the undo button in the scenario editor. |
kMsgScenarioRedo |
No data, called when pressing the redo button in the scenario editor. |
kMsgCinematicScenarioBeamDownComplete |
Called when the captain is finished beaming down in scenario mode. |
kMsgCinematicScenarioClearAvatar |
Removes the avatar from a scenario cutscene. |
kMsgCinematicTalkToSizeSetup |
Called when the size of the talked-to creature or object is being calculated. (TODO: Seems to generate one of 3 values, how to access these?) |
kMsgCinematicTalkToGreetSetup |
Called when the greeting style of the talked-to creature is being determined. (TODO: Seems to generate one of 5 values, how to access these?) |
kMsgCinematicTalkToTextSetup |
Called when the textbox style of the talked-to creature or object is being determined. (TODO: Seems to generate one of 5 values, how to access these?) |
kMsgCinematicTalkToAnimStyleSetup |
Called when the animation style (sentient, animal, epic) of the talked-to creature is being determined. (TODO: Seems to generate one of 3 values, how to access these?) |
kMsgCinematicTalkToAnimEmotionSetup |
Called when the animation emotion of the talked-to creature is being determined. (TODO: Seems to generate one of 5 values, how to access these?) |
kMsgCinematicTalkToPageSetup |
Called when the page waiting style (wait for next or wait for last) of the talk-to dialogue is being determined (TODO: Seems to generate one of 2 values, how to access these?) |
kMsgCinematicTalkToSkipBlankPage |
Called when the talk-to dialogue skips a blank page. |
enum class Simulator:: TimeManagerPause
Enumerators | |
---|---|
CinematicAll |
Pauses game and effects, not audio. |
Cinematic |
Pauses game, not effects nor audio. |
Tutorial |
Pauses game, not effects nor audio. |
Editor_ |
Pauses game, not effects nor audio. |
CommScreen |
Pauses game and effects, not audio. |
AdventureDialog |
Pauses game, not effects nor audio. |
UserToggle |
Pauses game, effects and audio. |
Gameplay |
Pauses game and effects, not audio. |
UIToggle |
Pauses game and effects, not audio. |
ModalDialog |
Pauses game and effects, not audio. |
enum class Simulator:: UIStateMachineEvent
enum class Simulator:: UIStateMachineEventKey
enum class Simulator:: UIStateMachineKeyMod
enum class Simulator:: UIStateMachineObjectFlags
Typedef documentation
typedef eastl::fixed_vector<cCollectableItemID, 4> Simulator:: cCollectableItemsRowVector
typedef uint64_ t Simulator:: cCollectableItemsRowID
typedef eastl::map<cCollectableItemsRowID, cCollectableItemsRowVector>:: node_type Simulator:: NodeType
typedef eastl::sp_fixed_hash_map<Simulator:: cCollectableItemID, UnkHashtableItem, 4> Simulator:: UnkHastable
typedef eastl::sp_fixed_hash_map<int, UnkHastable, 8> Simulator:: UnkHashMap
typedef eastl::sp_fixed_hash_map<uint32_ t, IVisualEffectPtr, 4> Simulator:: CreatureEffectPool
typedef int Simulator:: cObjectPoolIndex
Identifies objects within a cObjectPool.
typedef cGameData*(*Simulator:: NounCreateFunction)()
typedef bool(*Simulator:: ReadFunction_t)(ISerializerReadStream*, void*)
The type of function used to read binary attribute data.
The parameters are the data serializer and the address of memory where the data must be read.
typedef bool(*Simulator:: WriteFunction_t)(ISerializerWriteStream*, void*)
The type of function used to write binary attribute data.
The parameters are the data serializer and the address of memory where the data is.
typedef void(*Simulator:: ReadTextFunction_t)(const eastl::string&, void*)
The type of function used to read attribute data, which is expressed in text.
The parameters are the text eastl::string and the address of memory where the data must be read.
typedef void(*Simulator:: WriteTextFunction_t)(char*, void*)
The type of function used to write attribute data, which is expressed in text.
The parameters are the destination text buffer and the address of memory where the data is.
typedef bool(*Simulator:: UnknownFunction_t)()
typedef bool(*Simulator:: UnknownFunction2_t)(void*, const char*, int)
typedef void*(*Simulator:: OffsetFunction_t)(Attribute*)
typedef bool(*Simulator:: CinematicActionFunction_t)(Object*actionData, bool)
using Simulator:: ContainerCreateCallback_t = tGameDataVectorT<T>*(*)()
Creates the vector game data container.
using Simulator:: ContainerClearCallback_t = void(*)(tGameDataVectorT<T>*pVector)
Clears the content of the vector.
using Simulator:: ContainerAddCallback_t = void(*)(tGameDataVectorT<T>*pVector, cGameData*pObject)
This method must add the game data object into the vector.
Only the objects that have passed the filter function are used in this callback.
using Simulator:: ContainerFilterCallback_t = bool(*)(cGameData*pObject, uint32_ t gameNounID)
Used to decide which game objects go to the vector and which do not.
It receives the object to evaluate and the game noun ID passed to the GetData function.
typedef eastl::map<uint32_ t, cEmpirePtr> Simulator:: EmpiresMap
Function documentation
SimScheduledTaskListenerPtr Simulator:: ScheduleTask(const App:: VoidFunction_T& function,
float scheduleTime)
Executes a function after a certain time (measured in seconds) has passed from ths call.
Parameters | |
---|---|
function | A void function with no parameters, that will be executed every frame. |
scheduleTime | The time that has to pass, in seconds, since the task is scheduled for it to be executed. |
The function is executed only once, and the time starts counting since this ScheduleTask method has been called.
The method returns the object that holds the scheduled task. If you want to remove the task before it is called, you can do it by calling Simulator::RemoveScheduledTask(...) with the returned object as parameter.
Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a cGonzagoTimer object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.
SimScheduledTaskListenerPtr Simulator:: ScheduleTask(T* object,
App:: VoidMethod_T<T> method,
float scheduleTime)
Executes a class method after a certain time (measured in seconds) has passed from ths call.
Parameters | |
---|---|
object | The object to which the method will be called. |
method | A void method with no parameters, that will be executed every frame. |
scheduleTime | The time that has to pass, in seconds, since the task is scheduled for it to be executed. |
The method is executed only once, and the time starts counting since this ScheduleTask method has been called.
The method returns the object that holds the scheduled task. If you want to remove the task before it is called, you can do it by calling Simulator::RemoveScheduledTask(...) with the returned object as parameter.
Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a cGonzagoTimer object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.
SimScheduledTaskListenerPtr Simulator:: ScheduleRepeatedTask(const App:: VoidFunction_T& function,
float scheduleTime,
float repeatRate)
Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.
Parameters | |
---|---|
function | A void function with no parameters, that will be executed every frame. |
scheduleTime | The time that has to pass, in seconds, since the task is scheduled for it to be executed. |
repeatRate | How many seconds have to pass between every execution of the task. |
The function is executed only once, and the time starts counting since this ScheduleTask method has been called.
The method returns the object that holds the scheduled task. If you want to remove the task so it does not execute anymore, you can do it by calling Simulator::RemoveScheduledTask(...) with the returned object as parameter.
Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a cGonzagoTimer object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.
SimScheduledTaskListenerPtr Simulator:: ScheduleRepeatedTask(T* object,
App:: VoidMethod_T<T> method,
float scheduleTime,
float repeatRate)
Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.
Parameters | |
---|---|
object | The object to which the method will be called. |
method | A void method with no parameters, that will be executed every frame. |
scheduleTime | The time that has to pass, in seconds, since the task is scheduled for it to be executed. |
repeatRate | How many seconds have to pass between every execution of the task. |
The function is executed only once, and the time starts counting since this ScheduleTask method has been called.
The method returns the object that holds the scheduled task. If you want to remove the task so it does not execute anymore, you can do it by calling Simulator::RemoveScheduledTask(...) with the returned object as parameter.
Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a cGonzagoTimer object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.
bool Simulator:: RemoveScheduledTask(SimScheduledTaskListenerPtr& taskListener)
namespace Simulator:: Addresses(cAbductToolStrategy)
Simulator:: ASSERT_SIZE(cAbilityUIMap,
0xD8)
namespace Simulator:: Addresses(cAbilityUIMap)
Simulator:: ASSERT_SIZE(cAnimalCargoInfo,
0x80)
Simulator:: ASSERT_SIZE(cArtilleryProjectile,
0x538)
namespace Simulator:: Addresses(cArtilleryProjectile)
Simulator:: ASSERT_SIZE(cBadgeManager,
0xC0)
namespace Simulator:: Addresses(cBadgeManager)
Simulator:: ASSERT_SIZE(cBaseDisplayStrategy,
0x38)
Simulator:: ASSERT_SIZE(cBaseSimulatorInputStrategy,
0x3C)
Simulator:: ASSERT_SIZE(cBehaviorAgent,
0x68)
Simulator:: ASSERT_SIZE(cBehaviorBase,
0x74)
Simulator:: ASSERT_SIZE(cBehaviorEntry,
0x20)
Simulator:: ASSERT_SIZE(cBehaviorList,
0x18)
Simulator:: ASSERT_SIZE(cBuilding,
0x340)
Simulator:: ASSERT_SIZE(cBuildingCityHall,
0x378)
Simulator:: ASSERT_SIZE(cBuildingEntertainment,
0x340)
Simulator:: ASSERT_SIZE(cBuildingHouse,
0x340)
Simulator:: ASSERT_SIZE(cBuildingIndustry,
0x340)
Simulator:: ASSERT_SIZE(cBuildingScenario,
0x3C8)
Simulator:: ASSERT_SIZE(cCelestialBody,
0xCC)
namespace Simulator:: Addresses(cCelestialBody)
Simulator:: ASSERT_SIZE(cCityPartner,
0xC)
Simulator:: ASSERT_SIZE(tCultureTargetInfo,
0x80)
Simulator:: ASSERT_SIZE(tDeferredEvent,
0x20)
Simulator:: ASSERT_SIZE(cCity,
0x818)
Simulator:: ASSERT_SIZE(cCityTerritory,
0x114)
Simulator:: ASSERT_SIZE(cCityWalls,
0x358)
Simulator:: ASSERT_SIZE(cCivilization,
0x4D8)
Simulator:: ASSERT_SIZE(cCollectableItemsRowVector,
56)
cCollectableItemsRowID Simulator:: GetCollectableItemsRowID(uint32_ t categoryID,
int pageIndex,
int row)
Simulator:: ASSERT_SIZE(UnkHashtableItem,
8)
Simulator:: ASSERT_SIZE(UnkHastable,
0xDC)
Simulator:: ASSERT_SIZE(UnkHashMap,
0x888)
Simulator:: ASSERT_SIZE(cCollectableItems,
0x6DAC)
namespace Simulator:: Addresses(cCollectableItems)
namespace Simulator:: Addresses(CreatureGamePartUnlocking)
eastl::fixed_vector<eastl::pair<uint32_ t, int>, 16>& Simulator:: GetCreatureGameUnlockCategoriesCount()
Simulator:: ASSERT_SIZE(cCombatant,
0xC8)
Simulator:: ASSERT_SIZE(cCombatSimulator,
0x40)
namespace Simulator:: Addresses(cCombatSimulator)
Simulator:: ASSERT_SIZE(cCommEvent,
0xA0)
Simulator:: ASSERT_SIZE(cCommodityNode,
0x290)
Simulator:: ASSERT_SIZE(cCommunity,
0x120)
Simulator:: ASSERT_SIZE(cLayoutSlot,
0x18)
namespace Simulator:: Addresses(cLayoutSlot)
Simulator:: ASSERT_SIZE(cCommunityLayout,
0x64)
namespace Simulator:: Addresses(cCommunityLayout)
Simulator:: ASSERT_SIZE(cConversation,
0x80)
Simulator:: ASSERT_SIZE(cCreatureAbility,
0x13C)
namespace Simulator:: Addresses(cCreatureAbility)
Simulator:: ASSERT_SIZE(cCreatureAnimal,
0x16A0)
namespace Simulator:: Addresses(cCreatureAnimal)
Simulator:: ASSERT_SIZE(CreatureEffectPool,
0xA0)
Simulator:: ASSERT_SIZE(cAbilityState,
0x10)
Simulator:: ASSERT_SIZE(UnknownCreatureClass,
0x4A0)
Simulator:: ASSERT_SIZE(cCreatureBase,
0xFC0)
namespace Simulator:: Addresses(cCreatureBase)
Simulator:: ASSERT_SIZE(cCreatureCitizen,
0x1038)
namespace Simulator:: Addresses(cCreatureCitizen)
Simulator:: ASSERT_SIZE(cCreatureDisplayStrategy,
0x320)
Simulator:: ASSERT_SIZE(cCreatureGameData,
0x50)
namespace Simulator:: Addresses(cCreatureGameData)
Simulator:: ASSERT_SIZE(cCulturalProjectile,
0x588)
namespace Simulator:: Addresses(cCulturalProjectile)
Simulator:: ASSERT_SIZE(cCulturalTarget,
0x218)
Simulator:: ASSERT_SIZE(cCultureSet,
0x1C)
namespace Simulator:: Addresses(cCultureSet)
Simulator:: ASSERT_SIZE(cDeepSpaceProjectile,
0x5F0)
Simulator:: ASSERT_SIZE(cDefaultAoEArea,
0x170)
namespace Simulator:: Addresses(cDefaultAoETool)
Simulator:: ASSERT_SIZE(cDefaultBeamProjectile,
0x1F8)
namespace Simulator:: Addresses(cDefaultBeamTool)
Simulator:: ASSERT_SIZE(cDefaultToolProjectile,
0x5F0)
void Simulator:: LaunchDefaultToolProjectile(cSpaceToolData* tool,
cDefaultToolProjectile* projectile,
const Math:: Vector3& origin,
const Math:: Vector3& target)
Launches a projectile using the configuration of the specified tool.
Parameters | |
---|---|
tool | Tool used to configure the projectile trajectory, damage, effect, etc |
projectile | Projectile object |
origin | Starting point of the projectile |
target | Target point of the projectile |
Example code to shoot 50 meters in front of your UFO:
auto playerPosition = SimulatorPlayerUFO.GetUFO()->GetPosition(); auto target = playerPosition + 50 * SimulatorPlayerUFO.GetUFO()->GetDirection(); cSpaceToolDataPtr tool; if (ToolManager.LoadTool({ id("AllyMissile1"), TypeIDs::prop, GroupIDs::SpaceTools }, tool)) { auto projectile = simulator_new<Simulator::cDefaultToolProjectile>(); Simulator::LaunchDefaultToolProjectile(tool.get, projectile, playerPosition, target); }
namespace Simulator:: Addresses(cDropCargoToolStrategy)
Simulator:: ASSERT_SIZE(cEgg,
0x228)
Simulator:: ASSERT_SIZE(cEllipticalOrbit:: OrbitCache,
0x44)
Simulator:: ASSERT_SIZE(cEllipticalOrbit,
0x68)
namespace Simulator:: Addresses(cEllipticalOrbit)
Simulator:: ASSERT_SIZE(cEmpire,
0x158)
uint32_ t Simulator:: GetArchetypeRelationshipsID(int archetype,
int difficulty)
Returns the instance ID of the property file that contains the relationship properties used by a certain archetype in a certain difficulty (such as "spg_bard_easy", "spg_warrior_medium", etc)
Parameters | |
---|---|
archetype | The archetype, in the "kArchetype..." enum. |
difficulty | The current difficulty, in the "kDifficulty..." enum. |
Simulator:: ASSERT_SIZE(cFlakProjectile,
0x520)
namespace Simulator:: Addresses(cFlakProjectile)
Simulator:: ASSERT_SIZE(cGameBundle,
0x13C)
Simulator:: ASSERT_SIZE(cGameBundleContainer,
0x24)
Simulator:: ASSERT_SIZE(cGameData,
0x34)
eastl::fixed_string<char16_ t, 32> Simulator:: GetSpecializedName(cGameData* object)
Returns the specialized name for a game object, such as "Chieftain Whatever".
Parameters | |
---|---|
object |
Simulator:: ASSERT_SIZE(cGameDataUFO,
0x818)
namespace Simulator:: Addresses(cGameDataUFO)
cGameDataUFO* Simulator:: CreateUFO(UfoType type,
cEmpire* empire)
Creates a new UFO instance of the given type and assigned to the specified empire.
Parameters | |
---|---|
type | |
empire |
It will call cGameDataUFO::
Simulator:: ASSERT_SIZE(cGamePlant,
0x680)
Simulator:: ASSERT_SIZE(cGameplayMarker,
0x1C8)
namespace Simulator:: Addresses(cGameTerrainCursor)
Simulator:: ASSERT_SIZE(cGonzagoSimulator,
0x10)
Simulator:: ASSERT_SIZE(cGonzagoTimer,
0x20)
namespace Simulator:: Addresses(cGonzagoTimer)
Simulator:: ASSERT_SIZE(cHerd,
0x220)
Simulator:: ASSERT_SIZE(cHitSphere,
0x250)
Simulator:: ASSERT_SIZE(cICBM,
0x524)
Simulator:: ASSERT_SIZE(cIdentityColorable,
0x30)
namespace Simulator:: Addresses(cIdentityColorable)
const Math:: ColorRGB& Simulator:: GetCachedColorFromId(uint32_ t colorId)
eastl::map<uint32_ t, Math:: ColorRGB>& Simulator:: GetCachedColorIdMap()
Simulator:: ASSERT_SIZE(cInteractableObject,
0x130)
Simulator:: ASSERT_SIZE(cInteractiveOrnament,
0x260)
Simulator:: ASSERT_SIZE(cInterCityRoad,
0x140)
Simulator:: ASSERT_SIZE(cLocomotiveObject,
0x4D0)
namespace Simulator:: Addresses(cMindEraseToolStrategy)
Simulator:: ASSERT_SIZE(cMission,
0x1F0)
Simulator:: ASSERT_SIZE(UnkMissionManagerStruct,
0x38)
Simulator:: ASSERT_SIZE(cMissionManager,
0x144)
namespace Simulator:: Addresses(cMissionManager)
Simulator:: ASSERT_SIZE(cMovableDestructibleOrnament,
0x638)
Simulator:: ASSERT_SIZE(cNest,
0x130)
Simulator:: ASSERT_SIZE(cNpcTribeController,
0x100)
namespace Simulator:: Addresses(cNpcTribeController)
Simulator:: ASSERT_SIZE(cObjectInstanceInventoryItem,
0x80)
Simulator:: ASSERT_SIZE(cObjectPool_ ,
0x1C)
namespace Simulator:: Addresses(cObjectPool_ )
Simulator:: ASSERT_SIZE(cObstacle,
0x8C)
Simulator:: ASSERT_SIZE(ConversationResource,
0x80)
Simulator:: ASSERT_SIZE(cOrnament,
0x238)
Simulator:: ASSERT_SIZE(cPlanet,
0x1C8)
Simulator:: ASSERT_SIZE(cPlanetaryArtifact,
0x668)
namespace Simulator:: Addresses(cPlanetaryArtifact)
Simulator:: ASSERT_SIZE(cWallData,
0x4)
Simulator:: ASSERT_SIZE(cOrnamentData,
0x34)
Simulator:: ASSERT_SIZE(cBuildingData,
0x38)
Simulator:: ASSERT_SIZE(cCityData,
0xC4)
Simulator:: ASSERT_SIZE(cVehicleData,
0x14)
Simulator:: ASSERT_SIZE(cCivData,
0x50)
Simulator:: ASSERT_SIZE(cTribeData,
0x18)
Simulator:: ASSERT_SIZE(cCommodityNodeData,
0x8)
Simulator:: ASSERT_SIZE(cPlanetObjectData,
0x2C)
Simulator:: ASSERT_SIZE(cPlanetRecord,
0x1B0)
ResourceKey Simulator:: GetMainSpeciesImageKey(cPlanetRecord* planetRecord)
Returns the key to the image file that represents this planet main species, for planets in tribe, civilization, or space tech level.
Parameters | |
---|---|
planetRecord |
namespace Simulator:: Addresses(cPlanetRecord)
Simulator:: ASSERT_SIZE(cPlantCargoInfo,
0xA4)
Simulator:: ASSERT_SIZE(cSpacePlayerWarData,
0x40)
Simulator:: ASSERT_SIZE(PlayerPlanetData,
0xB0)
Simulator:: ASSERT_SIZE(cPlayer,
0x12D8)
Simulator:: ASSERT_SIZE(cPlayerInventory,
0x98)
namespace Simulator:: Addresses(cPlayerInventory)
Simulator:: ASSERT_SIZE(cProjectile,
0x14)
Simulator:: ASSERT_SIZE(cRaidEvent,
0x250)
Simulator:: ASSERT_SIZE(cRaidPlunderEvent,
0x228)
namespace Simulator:: Addresses(cRallyCallToolStrategy)
namespace Simulator:: Addresses(cRepairAOEToolStrategy)
namespace Simulator:: Addresses(cRepairToolStrategy)
Simulator:: ASSERT_SIZE(cResourceProjectile,
0x558)
namespace Simulator:: Addresses(cResourceProjectile)
namespace Simulator:: Addresses(cScanToolStrategy)
Simulator:: ASSERT_SIZE(cScenarioAct,
0x534)
Simulator:: ASSERT_SIZE(cScenarioAsset,
0x20)
Simulator:: ASSERT_SIZE(cScenarioClass,
0x27E0)
namespace Simulator:: Addresses(cScenarioClass)
Simulator:: ASSERT_SIZE(cScenarioClassAct,
0x4E0)
Simulator:: ASSERT_SIZE(cScenarioData,
0x1FC)
namespace Simulator:: Addresses(cScenarioData)
Simulator:: ASSERT_SIZE(cScenarioDialog,
0x44)
Simulator:: ASSERT_SIZE(cScenarioDataEconomy,
0x30)
Simulator:: ASSERT_SIZE(cScenarioTerraformEconomy,
0xC)
Simulator:: ASSERT_SIZE(cScenarioTerraformHistoryEntry,
0x40)
Simulator:: ASSERT_SIZE(cScenarioDataHistoryEntry,
0x18)
Simulator:: ASSERT_SIZE(cScenarioEditHistory,
0x28)
namespace Simulator:: Addresses(cScenarioEditHistory)
Simulator:: ASSERT_SIZE(cScenarioEditModeDisplayStrategy,
0x98)
Simulator:: ASSERT_SIZE(cScenarioGoal,
0x188)
Simulator:: ASSERT_SIZE(cScenarioMarker,
0x234)
Simulator:: ASSERT_SIZE(cScenarioMarkerAct,
0x34)
Simulator:: ASSERT_SIZE(cScenarioPlayModeGoal,
0x1AC)
Simulator:: ASSERT_SIZE(cScenarioPlaySummary,
0x48)
Simulator:: ASSERT_SIZE(cScenarioPlayMode,
0x108)
namespace Simulator:: Addresses(cScenarioPlayMode)
Simulator:: ASSERT_SIZE(cScenarioPosseMember,
0x38)
Simulator:: ASSERT_SIZE(cScenarioPowerup,
0x3C)
namespace Simulator:: Addresses(cScenarioPowerup)
Simulator:: ASSERT_SIZE(cScenarioResource,
0x2CB0)
namespace Simulator:: Addresses(cScenarioResource)
namespace Simulator:: Addresses(cScenarioSimulator)
Simulator:: ASSERT_SIZE(cScenarioString,
0x3C)
Simulator:: ASSERT_SIZE(cScenarioTerraformMode,
0x1CC)
namespace Simulator:: Addresses(cScenarioTerraformMode)
Simulator:: ASSERT_SIZE(cShipBackgroundData,
0x20)
Simulator:: ASSERT_SIZE(cSimPlanetHighLOD,
0x1E8)
namespace Simulator:: Addresses(cSimPlanetHighLOD)
Simulator:: ASSERT_SIZE(cSimulatorPlayerUFO,
0xE0)
cGameDataUFO* Simulator:: GetPlayerUFO()
namespace Simulator:: Addresses(cSimulatorPlayerUFO)
Simulator:: ASSERT_SIZE(cSimulatorSpaceGame,
0xF0)
namespace Simulator:: Addresses(cSimulatorSpaceGame)
Simulator:: ASSERT_SIZE(tGrobShockData,
0x28)
Simulator:: ASSERT_SIZE(cSimulatorUniverse,
0x1B8)
namespace Simulator:: Addresses(cSimulatorUniverse)
Simulator:: ASSERT_SIZE(cSolarHitSphere,
0x250)
Simulator:: ASSERT_SIZE(cSolarSystem,
0x54)
namespace Simulator:: Addresses(cSolarSystem)
Simulator:: ASSERT_SIZE(cSpaceDefenseMissile,
0x610)
namespace Simulator:: Addresses(cSpaceDefenseMissile)
Simulator:: ASSERT_SIZE(cSpaceInventory,
0x4C)
Simulator:: ASSERT_SIZE(cSpaceInventoryItem,
0x7C)
namespace Simulator:: Addresses(cSpaceInventoryItem)
Simulator:: ASSERT_SIZE(cSpaceNames,
0x40C)
namespace Simulator:: Addresses(cSpaceNames)
Simulator:: ASSERT_SIZE(cSpaceToolData,
0x2A0)
namespace Simulator:: Addresses(cSpaceToolData)
Simulator:: ASSERT_SIZE(cSpatialObject,
0xD4)
namespace Simulator:: Addresses(cSpatialObject)
Simulator:: ASSERT_SIZE(cSpatialObjectView,
0x34)
Simulator:: ASSERT_SIZE(cSpear,
0x540)
Simulator:: ASSERT_SIZE(cSpeciesProfile,
0xA18)
namespace Simulator:: Addresses(cSpeciesProfile)
Simulator:: ASSERT_SIZE(cStar,
0x50)
Simulator:: ASSERT_SIZE(cStarRecord,
0xB0)
namespace Simulator:: Addresses(cStarRecord)
Simulator:: ASSERT_SIZE(cTimeOfDay,
0x28)
namespace Simulator:: Addresses(cTimeOfDay)
Simulator:: ASSERT_SIZE(cToolObject,
0x658)
Simulator:: ASSERT_SIZE(cToolStrategy,
0xC)
namespace Simulator:: Addresses(cToolStrategy)
Simulator:: ASSERT_SIZE(cTotemPole,
0x14C)
Simulator:: ASSERT_SIZE(cFishHotSpot,
0x40)
Simulator:: ASSERT_SIZE(cFishHotSpotUnk,
0x60)
eastl::vector<cFishHotSpotUnk>& Simulator:: GetTribeFishHotSpots()
cGonzagoTimer& Simulator:: GetTribeFishTimer()
uint64_ t Simulator:: GetTribeFishEndTime()
void Simulator:: SetTribeFishEndTime(uint64_ t)
Simulator:: ASSERT_SIZE(cTribe,
0x19E0)
cTribe* Simulator:: SpawnNpcTribe(const Math:: Vector3& position,
int tribeArchetype,
int numMembers,
int foodAmount,
bool,
cSpeciesProfile* species)
Simulator:: ASSERT_SIZE(cTribeArchetype,
0xB8)
namespace Simulator:: Addresses(cTribeArchetype)
Simulator:: ASSERT_SIZE(cTribeFoodMat,
0x110)
Simulator:: ASSERT_SIZE(cTribeHut,
0x260)
Simulator:: ASSERT_SIZE(cTribeInputStrategy,
0xD0)
namespace Simulator:: Addresses(cTribeInputStrategy)
Simulator:: ASSERT_SIZE(cTribePlanProperties,
0x44)
Simulator:: ASSERT_SIZE(cTribePlan,
0x58)
Simulator:: ASSERT_SIZE(cTribePlanner,
0x7C)
Simulator:: ASSERT_SIZE(cTribeTool,
0x250)
namespace Simulator:: Addresses(cTribeTool)
Simulator:: ASSERT_SIZE(cTribeToolData,
0x7C)
void Simulator:: LoadTribeToolsData()
Reads the .prop files in tribe_tools~
and creates the cTribeToolData instances for them, adding them to the GetTribeToolDataArray() array.
eastl::array<cTribeToolData*, 12> Simulator:: GetTribeToolDataArray()
Returns the array with the base game tribe tools data.
The index for each tool is its tool type, e.g. index 0 is kTribeToolTypeNone, index 1 is kTribeToolTypeAttack1, etc
cTribeToolData* Simulator:: GetTribeToolData(int toolType)
Returns the cTribeToolData for the given tool type (TribeToolType)
Parameters | |
---|---|
toolType |
void Simulator:: DisposeTribeToolsData()
Called on cSimulatorSystem::
Simulator:: ASSERT_SIZE(cTurret,
0x6D0)
namespace Simulator:: Addresses(cTurretFlakWeapon)
Simulator:: ASSERT_SIZE(cVehicle,
0xD98)
Simulator:: ASSERT_SIZE(cVisiblePlanet,
0x10C)
Simulator:: ASSERT_SIZE(cPlanetGfx,
0x68)
Simulator:: ASSERT_SIZE(GoalCard,
0x98)
Simulator:: ASSERT_SIZE(IGameDataView,
0xC)
Simulator:: ASSERT_SIZE(Attribute,
0x3C)
Simulator:: ASSERT_SIZE(ClassSerializer,
0xA14)
namespace Simulator:: Addresses(ClassSerializer)
namespace Simulator:: Addresses(XmlSerializer)
void Simulator:: GetBinarySystemStarTypes(StarType binaryType,
StarType& star1,
StarType& star2)
Used to obtain the individual star types of each of the two stars in a binary system.
Parameters | |
---|---|
binaryType | Type of the system, which should be a binary system. |
star1 out | Type of the first star. |
star2 out | Type of the second star. |
float Simulator:: GetBinarySystemBaseRadius(StarType binaryType)
Returns the radius that is used as a base for calculating planet orbits in a binary-star system.
It calculates it by predicting how the two stars should orbit around one another, depending on their mass and radius calculated using GetSolarStarRadius() and GetSolarStarMass()
float Simulator:: GetSolarStarTemperature(StarType starType)
Returns the solar temperature for a given star type.
Parameters | |
---|---|
starType |
- For star types that are not stars (e.g. black holes, planetary disks, etc) it returns 1.
- For binary systems, it is the sum of the temperature of each of the stars.
- For red, yellow and blue stars, it returns the
solarStarTemperature
property of their property list.
float Simulator:: GetSolarStarMass(StarType starType)
Returns the stellar mass for a given star type, in solar mass units (1.0 is the mass of the Sun, 2.0 is twice as massive as the Sun, etc).
Parameters | |
---|---|
starType |
- For the galactic core, it returns 300.
- For black holes and proto-planteray disks, it returns 100.
- For binary systems, it is the sum of the stellar mass of each of the stars.
- For red, yellow and blue stars, it returns the
solarStarMass
property of their property list.
float Simulator:: GetSolarStarRadius(StarType starType)
Returns the radius for a given star type.
Parameters | |
---|---|
starType |
- For black holes and the galactic core, it returns 100.
- For proto-planteray disks, it returns 1.
- For binary systems, it is the sum of the radius of each of the stars.
- For red, yellow and blue stars, it returns the
solarStarRadius
property of their property list.
float Simulator:: GetSolarStarRotationRate(StarType starType)
Returns the rotation rate for a given star type, only used for individual stars.
The returned value is an angle in radius, probably the angular change per second. For red, yellow and blue stars it returns the solarStarRotationRate
property of their property list (converted to radians, the property is in degrees), for all the rest it returns 0.1
float Simulator:: GetSolarStarOrbitRadius(StarType starType,
SolarSystemOrbitTemperature orbitTemperature)
Returns the distance from the center of the solar system for cold, normal and hot orbits.
Parameters | |
---|---|
starType | |
orbitTemperature |
First, a base radius is calculated, using GetBinarySystemBaseRadius() and GetSolarStarRadius().
- Hot orbits are
baseRadius + 15
- Normal orbits are
baseRadius * 85
- Cold orbits are
baseRadius * 195
PlanetTemperatureType Simulator:: GetPlanetTemperatureType(float temperatureScore)
Returns the type of temperature (very cold, cold, normal, hot, very hot) of a planet.
Parameters | |
---|---|
temperatureScore | The temperature score of the planet, from 0.0 (cold) to 1.0 (hot). |
bool Simulator:: IsBinaryStar(StarType starType)
Returns true if the given star type is a binary star, false otherwise.
Parameters | |
---|---|
starType |
bool Simulator:: IsNotStarOrBinaryStar(StarType starType)
Returns true if the given star is not a single star or binary star system, false otherwise.
Parameters | |
---|---|
starType |
float* Simulator:: GetPrecalculatedSolarStarRadius()
Simulator:: ASSERT_SIZE(StarID,
4)
Simulator:: ASSERT_SIZE(PlanetID,
4)
Simulator:: ASSERT_SIZE(cBundleManager,
0x20)
namespace Simulator:: Addresses(cBundleManager)
Simulator:: ASSERT_SIZE(CinematicAction,
0x14)
namespace Simulator:: Addresses(CinematicAction)
Simulator:: ASSERT_SIZE(cCinematicManager,
0x3C8)
namespace Simulator:: Addresses(cCinematicManager)
Simulator:: ASSERT_SIZE(CinematicVignetteActionData,
0x54)
namespace Simulator:: Addresses(cCommManager)
Simulator:: ASSERT_SIZE(cRelationshipManager,
0x100)
Simulator:: ASSERT_SIZE(cSavedGameHeader,
0x68)
Simulator:: ASSERT_SIZE(cStrategy,
0x1C)
Simulator:: ASSERT_SIZE(cGameBehaviorManager,
0xA4)
Simulator:: ASSERT_SIZE(cGameInputManager,
0x114)
namespace Simulator:: Addresses(cGameInputManager)
Simulator:: ASSERT_SIZE(cGameModeManager,
0x9C)
uint32_ t Simulator:: GetGameModeID()
Returns the ID of the current game mode. You can compare it to the values in the GameModeIDs enum.
bool Simulator:: IsCellGame()
Returns true if the game is currently in the cell stage.
bool Simulator:: IsCreatureGame()
Returns true if the game is currently in the creature stage.
bool Simulator:: IsTribeGame()
Returns true if the game is currently in the tribe stage.
bool Simulator:: IsSpaceGame()
Returns true if the game is currently in the tribe stage.
bool Simulator:: IsGameEditMode()
Returns true if the game is currently in the "game edit" mode, which is the level editor.
bool Simulator:: IsScenarioMode()
Returns true if the game is currently in adventure mode.
bool Simulator:: IsLoadingGameMode()
Returns true if the game is currently loading a stage.
namespace Simulator:: Addresses(cGameModeManager)
Simulator:: ASSERT_SIZE(cGameNounManager,
0x11C)
namespace Simulator:: Addresses(cGameNounManager)
tGameDataVectorT<T>& Simulator:: GetData(uint32_ t nounID)
Gets all the game data objects that use the given game noun ID.
All the found objects will be casted to the specified type.
tGameDataVectorT<T>& Simulator:: GetData()
Gets all the game data objects that are of the specified type.
Only classes that define a NOUN_ID
can be used here. All the found objects will be casted to the specified type.
tGameDataVectorT<T>& Simulator:: GetDataByCast()
Gets all the game data objects that can be casted to the specified type.
You can use this with base classes that aren't nouns to use all the objects of subclasses; for example you can use it with cCombatant or cCreatureBase. Only classes that define a TYPE
can be used here. All the found objects will be casted to the specified type.
Simulator:: ASSERT_SIZE(GameLoadParameters,
0xB4)
Simulator:: ASSERT_SIZE(cGamePersistenceManager,
0x4C)
Simulator:: ASSERT_SIZE(cGamePlantManager,
0x1E8)
namespace Simulator:: Addresses(cGamePlantManager)
Simulator:: ASSERT_SIZE(cGameTimeManager,
0x80)
namespace Simulator:: Addresses(cGameTimeManager)
Simulator:: ASSERT_SIZE(cGameViewManager,
0x1A8)
Graphics:: ILightingWorld* Simulator:: GetLightingWorld()
namespace Simulator:: Addresses(cGameViewManager)
Simulator:: ASSERT_SIZE(cObstacleManager,
0x56E0)
namespace Simulator:: Addresses(cObstacleManager)
namespace Simulator:: Addresses(cPlanetModel)
Simulator:: ASSERT_SIZE(cPlantSpeciesManager,
0x3C)
Simulator:: ASSERT_SIZE(cSimTicker,
0x44)
Simulator:: ASSERT_SIZE(cSimulatorSystem,
0x70)
void Simulator:: InitializeWithoutPlanet()
Initializes certain Simulator systems so that most things can be used without being in a star or planet.
This method does:
- Uses the StarManager temporary star with a temporary planet on it, and sets those as the current star/planet in SpacePlayerData.
- Calls the PrepareSimulator() method in GameViewManager so that the simulator objects are displayed on the screen.
namespace Simulator:: Addresses(cSimulatorSystem)
Simulator:: ASSERT_SIZE(cSpaceGfx,
0x140)
cStar* Simulator:: GetActiveStar()
cStarRecord* Simulator:: GetActiveStarRecord()
cPlanet* Simulator:: GetActivePlanet()
cPlanetRecord* Simulator:: GetActivePlanetRecord()
cEmpire* Simulator:: GetPlayerEmpire()
uint32_ t Simulator:: GetPlayerEmpireID()
SpaceContext Simulator:: GetCurrentContext()
cPlanetRecord* Simulator:: GetPlayerHomePlanet()
namespace Simulator:: Addresses(SpacePlayerData)
Simulator:: ASSERT_SIZE(cNPCStore,
0xC0)
Simulator:: ASSERT_SIZE(cSpaceTrading,
0xF8)
namespace Simulator:: Addresses(cSpaceTrading)
Simulator:: ASSERT_SIZE(cTradeRouteData,
0x28)
Simulator:: ASSERT_SIZE(cSpaceTradeRouteManager,
0x24)
Simulator:: ASSERT_SIZE(cStarManager,
0x22C)
namespace Simulator:: Addresses(cStarManager)
namespace Simulator:: Addresses(cSpaceTradeRouteManager)
void Simulator:: SpaceTeleportTo(cStarRecord* star)
Teleports the player spaceship into the given star record.
Parameters | |
---|---|
star | The star record the player will be teleported to. |
Only works if the player is in the galaxy view.
Vector3& Simulator:: GalaxyCoordinatesTo3D(float parsecDistance,
float angle,
Vector3& dst)
Converts the parsec distance and angle into the 3D coordinates used in the galaxy map and in functions like cStarManager::
Parameters | |
---|---|
parsecDistance | The distance from the galaxy center, in parsecs. |
angle | The angle, in degrees. |
dst | A 3D vector where the coordinates will be written. |
The Z coordinate will be 0.
Simulator:: ASSERT_SIZE(cTerraformingManager,
0x94)
Simulator:: ASSERT_SIZE(cToolManager,
0x29C)
namespace Simulator:: Addresses(cToolManager)
Simulator:: ASSERT_SIZE(cUIAssetDiscoveryManager,
0xA8)
Simulator:: ASSERT_SIZE(cFeedbackEvent,
0x94)
Simulator:: ASSERT_SIZE(cUIEventLog,
0x70)
namespace Simulator:: Addresses(cUIEventLog)
Simulator:: ASSERT_SIZE(UIStateMachineTransition,
0x38)
Simulator:: ASSERT_SIZE(UIStateMachine,
0x38)
Simulator:: ASSERT_SIZE(cCommandParameterSet,
0x3C)
Simulator:: ASSERT_SIZE(cStringCommandGenerator,
0x24)
Simulator:: ASSERT_SIZE(cMessageCommandDispatcher,
0x48)
Variable documentation
constexpr int Simulator:: MAX_LAYOUT_SLOTS