This wiki is archived from 2021-09-05
Planetary Annihilation AI Build Conditions: Difference between revisions
Jump to navigation
Jump to search
Line 172: | Line 172: | ||
== Terrain == | == Terrain == | ||
Planet | |||
* PlanetLandEstimate (NEW) | * PlanetLandEstimate (NEW) | ||
* PlanetDeepWaterEstimate (NEW) | * PlanetDeepWaterEstimate (NEW) | ||
Line 179: | Line 180: | ||
* PlanetHoverReachableEstimate (NEW) | * PlanetHoverReachableEstimate (NEW) | ||
* PlanetDeepWaterReachableEstimate (NEW) | * PlanetDeepWaterReachableEstimate (NEW) | ||
Base (Nearest Intel Spot) | |||
* BasePossiblyOnIsland (NEW) | |||
* BasePossiblyInPond (NEW) | |||
* BasePossiblyInLake (NEW) | |||
* BasePossiblyLandContained (NEW) | |||
* BaseLandReachableEstimate (NEW) | |||
* BaseHoverReachableEstimate (NEW) | |||
* BaseDeepWaterReachableEstimate (NEW) | |||
These are quick and dirty estimates based on evaluating the centre of intel locations and pathability between each intel locations. | These are quick and dirty estimates based on evaluating the centre of intel locations and pathability between each intel locations. |
Revision as of 04:43, 12 June 2017
File:Titans-icon.png Planetary Annihilation AI Build Conditions
Build conditions are evaluated based on the following flags:
- real time: evaluated every tick otherwise every 2 seconds
- planet wide: once per planet otherwise for every base
- system fixed: once at start (NEW)
The default is every 2 seconds for every base.
Personality
- HasPersonalityTag
- string8
- boolean
Economy
- PotentialEnergyEfficiency
- PotentialMetalEfficiency
- CurrentEnergyEfficiency
- CurrentMetalEfficiency
- DesireMetal
- DesireEnergy
- MetalStorageFrac
- EnergyStorageFrac
- MetalStorageToProductionRatio
- EnergyStorageToProductionRatio
- HaveEcoForAdvanced
Building
- CanAffordPotentialDrain
- string0 unitSpec
- CanAffordBuildDemand
- based on build arm with tool type TOOL_BuildArm
Unit Ratios / Counts
Planet Wide
- UnitRatio[ForArmy]
- unit_type_string0
- unit_type_string1
- compare0
- value0
- currently includes partially built
- UnitRatioOnPlanet[ForArmy]
- unit_type_string0
- unit_type_string1
- compare0
- value0
- currently includes partially built
- UnitPoolRatio[OnPlanetForArmy]
- unit_type_string0
- unit_type_string1
- compare0
- value0
- UnitCount[ForArmy]
- unit_type_string0
- boolean fully built
- compare0
- value0
- UnitCountOnPlanet[ForArmy]
- unit_type_string0
- boolean fully built
- compare0
- value0
- UnitPoolCount[OnPlanetForArmy]
- unit_type_string0
- boolean fully built
- compare0
- value0
- UnitCountPerPlanetRadius[ForArmy]
- unit_type_string0
- compare0
- value0
- UnitCountOnPlanetPerNumberPlanets[ForArmy] (NEW)
- unit_type_string0
- compare0
- value0
- AlliedUnitCountOnPlanet
- boolean fully built
- compare0
- value0 count
- UnitCountInCelestialTransit
- unit_type_string0
- compare0
- value0 count
- UnitCountInMainBase[ForArmy] (NEW)
- unit_type_string0
- compare0
- value0 count
- value1 alliance defaults to allies
Sorted Bases
- UnitCountInBase
- unit_type_string0
- compare0
- value0 count
- value1 optional alliance defaults to allies (NEW)
- UnitCountAroundBase
- unit_type_string0
- string0 alliance defaults to allies
- value0 radius defaults to outer base radius (NEW)
- compare0
- value1 count
Alliance Types
- Ally or Allied (NEW)
- Enemy or Hostile (NEW)
- Self (NEW)
Presence
- AloneOnPlanet
- boolean
- this is currently a check for armies on planet which is based on land, naval and air which excludes subs, orbital, economy, nuke, anti-nuke, anti-planet, etc
- EnemyPresenceOnPlanet
- boolean
- EnemySurfacePresenceOnPlanet
- boolean
- EnemyAirPresenceOnPlanet
- boolean
- EnemyOrbitalPresenceOnPlanet
- boolean
- HaveFullPlanetIntel
- boolean
- PlanetWithoutPresence
- boolean
- SafePlanetWithoutPresence
- boolean
- PlanetOrGasGiantWithoutPresence
- boolean
- SafePlanetOrGasGiantWithoutPresence
- boolean
- GasGiantWithoutPresence (NEW)
- boolean
- SafeGasGiantWithoutPresence (NEW)
- boolean
- HasGasGiant (NEW)
- boolean
- PlanetWithoutFabberWithTeleporter
- boolean
- PresenceOnOtherPlanet
- boolean
Commander
- WantCommanderOffPlanet
- WantCommanderOffPlanetByTeleporter
- NoWhereToRun
Planets
- PlanetHasUseablePlanetWeapon
- PlanetCanBeUsedAsKineticWeapon
- HaveThrustToMovePlanet
- PlanetCount
- StartingPlanetCount (NEW)
- SpawnablePlanetCount
- PlanetIsGasGiant
- PlanetIsMainEcoBase
- PlanetIsRespawnable
- PlanetCircumference (NEW)
Terrain
Planet
- PlanetLandEstimate (NEW)
- PlanetDeepWaterEstimate (NEW)
- PlanetHoverEstimate (NEW)
- PlanetLavaEstimate (NEW)
- PlanetLandReachableEstimate (NEW)
- PlanetHoverReachableEstimate (NEW)
- PlanetDeepWaterReachableEstimate (NEW)
Base (Nearest Intel Spot)
- BasePossiblyOnIsland (NEW)
- BasePossiblyInPond (NEW)
- BasePossiblyInLake (NEW)
- BasePossiblyLandContained (NEW)
- BaseLandReachableEstimate (NEW)
- BaseHoverReachableEstimate (NEW)
- BaseDeepWaterReachableEstimate (NEW)
These are quick and dirty estimates based on evaluating the centre of intel locations and pathability between each intel locations.
They are not detailed path node estimates between all sectors.
Metal
- UnableToExpand
- BaseHasEmptyMetalSpotFor (NEW)
- string0
- BaseHasEmptyMetalSpotForBasic
- BaseHasEmptyMetalSpotForAdvanced
- CanFindMetalSpotToBuild (NEW)
- string0
- CanFindMetalSpotToBuildBasic
- CanFindMetalSpotToBuildAdvanced
- AllMetalSpotsFull
- boolean
- this is a weird check of main base + safe bases for basic metal extractors ie not planet wide
Catalysts
- CanFindControlPointToBuild
Bases
- IsMainBase (NEW)
- boelan
- BaseThreatened
- DistFromMainBase
- DistFromNearestEnemyThreat
- compare0
- value0
- currently based on economy influence so my not be great indicator of threat
- DistFromNearestEnemyBase (NEW)
- compare0
- value0
- DistFromLandRallyPoint
- value0
- DistFromNavalRallyPoint
- value0
- DistFromOrbitalRallyPoint
- value0
Building
- CanFindPlaceToBuild
- CanDeployLandFromBase
- CanDeployNavalFromBase
Factories
- FactoryHasOpenSlot
- FactorySlotsEmpty
- NeedBasicLandFactory
- NeedAdvancedLandFactory
- NeedBasicVehicleFactory
- NeedAdvancedVehicleFactory
- NeedBasicBotFactory
- NeedAdvancedBotFactory
- NeedBasicAirFactory
- NeedAdvancedAirFactory
- NeedBasicNavalFactory
- NeedAdvancedNavalFactory
- NeedOrbitalLauncher
- NeedOrbitalFactory
Fabbers
- NeedBasicVehicleFabber
- NeedAdvancedVehicleFabber
- NeedBasicBotFabber
- NeedAdvancedBotFabber
- NeedBasicAirFabber
- NeedAdvancedAirFabber
- MetMinBasicFabberCount
- currently only applies to tank, bot and air using min_basic_fabbers * fabber_alone_on_planet_mod
- MetMinAdvancedFabberCount
- currently only applies to tank, bot and air using min_advanced_fabbers * fabber_alone_on_planet_mod
Strategic Assistance
- OtherPlanetNeedsReconAssistance
- OtherPlanetNeedsLandUnitAssistance
- OtherPlanetNeedsOrbitalUnitAssistance
- OtherPlanetCanReceiveLandUnitAssistance
- OtherPlanetCanProvideLandUnitAssistance
- CanProvideLandUnitAssistance
- ThisPlanetNeedsLandUnitAssistance
- ThisPlanetNeedsReconAssistance
- ThisPlanetNeedsOrbitalUnitAssistance
Threats
- GravWellThreat
- string0: influence type
- compare0: comparison string
- value0: number
- SystemThreat
- string0: influence type
- compare0: comparison string
- value0: number
- PlanetThreat
- string0: influence type
- compare0: comparison string
- value0: number
- BaseThreat
- string0: influence type
- compare0: comparison string
- value0: number
- FocusTargetThreat
- string0: influence type
- compare0: comparison string
- value0: number
- PlanetHighestEnemyArmyThreat
- string0: influence type
- compare0: comparison string
- value0: number
Threat Ratios
- GravWellToPlanetThreatRatio
- SystemToPlanetThreatRatio
- PlanetThreatRatio
- BaseThreatRatio
- FocusTargetThreatRatio
- PlanetHighestEnemyArmyThreatRatio
Threat Vision
- HaveSeenEnemyUnits
- unit_type_string0
- HaveHadANukeEvent
- boolean0
Attacks
Neutral Network Based Attacks
- CanAttackWithPoolUnitsLand (neural network)
- unit_type_string0
- string0 friendly world layer
- string1 enemy world layer
- string2 optional target world layer (defaults go friend world layer)
- boolean use naval rally point
- max weapon range is based on target layer
- search range is based on 50% of platoon radius + max weapon range
- CanAttackWithPoolUnitsBomber (neural network)
- unit_type_string0
- string0 friendly world layer
- string1 enemy world layer
- string2 optional target world layer (defaults go friend world layer)
- boolean use naval rally point
- max weapon range is based on target layer
- search range is based on 50% of platoon radius + max weapon range
- CanAttackWithPoolUnitsFighter (neural network)
- unit_type_string0
- string0 friendly world layer
- string1 enemy world layer
- string2 optional target world layer (defaults go friend world layer)
- boolean use naval rally point
- max weapon range is based on target layer
- search range is based on 50% of platoon radius + max weapon range
Non Neural Network Based Attacks
- CanAttackWithPoolUnits
- string0 attack world layer
- boolean use naval rally point
- can use this to bypass neural network
- CanAttackWithPoolUnitsNaval (NEW)
- string0 attack world layer
- CanAttackWithPoolUnitsOrbital (NEW)
- string0 attack world layer
Assistance
- CanProvideAirSupportWithPoolUnits
- OnTaskType
Teleporter
- BaseHasStructureTeleporter (NEW)
- HaveTeleporterForThreat (NEW)
- value0 minimum threat