This wiki is archived from 2021-09-05

Planetary Annihilation AI Implementation: Difference between revisions

From Planetary Annihilation: TITANS and Classic PA Wiki
Jump to navigation Jump to search
Line 191: Line 191:


* UNITTYPE_Vanilla (NEW)
* UNITTYPE_Vanilla (NEW)
== Build Conditions ==
* PotentialEnergyEfficiency
* PotentialMetalEfficiency
* CurrentEnergyEfficiency
* CurrentMetalEfficiency
* DesireMetal
* DesireEnergy
* CanAffordPotentialDrain
* CanAffordBuildDemand
* MetalStorageFrac
* EnergyStorageFrac
* MetalStorageToProductionRatio
* EnergyStorageToProductionRatio
* HaveEcoForAdvanced
* OnTaskType
* UnitRatio
* UnitRatioOnPlanet
* UnitCount
* UnitCountOnPlanet
* UnitPoolCount
* UnitPoolRatio
* UnitCountInBase
* UnitCountInMainBase
* UnitCountAroundBase
* UnitCountPerPlanetRadius
* UnitCountOnPlanetPerNumberPlanets
* AlliedUnitCountOnPlanet
* AloneOnPlanet
* EnemyPresenceOnPlanet
* EnemySurfacePresenceOnPlanet
* EnemyAirPresenceOnPlanet
* EnemyOrbitalPresenceOnPlanet
* HaveFullPlanetIntel
* PlanetWithoutPresence
* SafePlanetWithoutPresence
* PlanetOrGasGiantWithoutPresence
* SafePlanetOrGasGiantWithoutPresence
* HasGasGiant
* PlanetWithoutFabberWithTeleporter
* PresenceOnOtherPlanet
* WantCommanderOffPlanet
* WantCommanderOffPlanetByTeleporter
* UnitCountInCelestialTransit
* PlanetHasUseablePlanetWeapon
* PlanetCanBeUsedAsKineticWeapon
* HaveThrustToMovePlanet
* PlanetCount
* StartingPlanetCount
* SpawnablePlanetCount
* PlanetIsGasGiant
* PlanetIsMainEcoBase
* PlanetIsRespawnable
* NoWhereToRun
* UnableToExpand
* HasPersonalityTag
* BaseHasEmptyMetalSpotForBasic
* BaseHasEmptyMetalSpotForAdvanced
* CanFindMetalSpotToBuildBasic
* CanFindMetalSpotToBuildAdvanced
* CanFindControlPointToBuild
* AllMetalSpotsFull
* IsMainBase (boolean) (NEW)
* BaseThreatened
* DistFromMainBase
* DistFromNearestEnemyThreat
* FactoryHasOpenSlot
* FactorySlotsEmpty
* NeedBasicVehicleFabber
* NeedAdvancedVehicleFabber
* NeedBasicBotFabber
* NeedAdvancedBotFabber
* NeedBasicAirFabber
* NeedAdvancedAirFabber
* MetMinBasicFabberCount
* MetMinAdvancedFabberCount
* NeedBasicLandFactory
* NeedAdvancedLandFactory
* NeedBasicVehicleFactory
* NeedAdvancedVehicleFactory
* NeedBasicBotFactory
* NeedAdvancedBotFactory
* NeedBasicAirFactory
* NeedAdvancedAirFactory
* NeedBasicNavalFactory
* NeedAdvancedNavalFactory
* NeedOrbitalLauncher
* NeedOrbitalFactory
* CanDeployLandFromBase
* CanDeployNavalFromBase
* OtherPlanetNeedsReconAssistance
* OtherPlanetNeedsLandUnitAssistance
* OtherPlanetNeedsOrbitalUnitAssistance
* OtherPlanetCanReceiveLandUnitAssistance
* OtherPlanetCanProvideLandUnitAssistance
* CanProvideLandUnitAssistance
* ThisPlanetNeedsLandUnitAssistance
* ThisPlanetNeedsReconAssistance
* ThisPlanetNeedsOrbitalUnitAssistance
* GravWellThreat
* SystemThreat
* PlanetThreat
* BaseThreat
* FocusTargetThreat
* PlanetHighestEnemyArmyThreat
* GravWellToPlanetThreatRatio
* SystemToPlanetThreatRatio
* PlanetThreatRatio
* BaseThreatRatio
* FocusTargetThreatRatio
* PlanetHighestEnemyArmyThreatRatio
* HaveSeenEnemyUnits
* HaveHadANukeEvent
* CanAttackWithPoolUnits
* CanAttackWithPoolUnitsLand
* CanAttackWithPoolUnitsBomber
* CanAttackWithPoolUnitsFighter
* CanAttackWithPoolUnitsNaval
* CanAttackWithPoolUnitsOrbital
* CanProvideAirSupportWithPoolUnits
* CanFindPlaceToBuild

Revision as of 23:44, 26 March 2017

File:Titans-icon.png Planetary Annihilation Titans & Classic AI Implementation

  • AI Brain
    • Economy Manager
    • Interplanetary Request Manager
    • Planet Managers
      • Planet Manager
        • Strategic Manager
          • Influence Map
          • Recon Manager
          • Base Threats
          • Enemy Base Locations
          • Attack Locations
        • Base Manager
          • Factory Manager
          • Metal Spot Info
          • Rally Points
          • Build Locations
        • Fabber Manager
        • Platoon Manager

Influence Manager

Threat evaluations

  • threats for position radius (overlapping)
  • threats at position radius (within)

Influence types

  • Commander
  • Economy
  • EconomyProduction (factories)
  • Land
  • Air
  • Naval
  • Sub
  • Orbital
  • Artillery
  • Nuke
  • AntiNuke
  • AntiSurface
  • AntiAir
  • AntiSub
  • AntiOrbital
  • AntiPlanet (catalyst, halley, ragnarok)

Platoon Manager

Platoons contain squads.

Platoon Tasks

  • None
  • Commander
  • Scout
  • Orbital Recon
  • Patrol
  • LandAttack
  • BomberAttack
  • FighterAttack
  • NavalAttack
  • OrbitalFighterAttack
  • OrbtialLaserAttack
  • Nuke
  • Artillery
  • UnitCannon
  • ThreatResponse
  • TransportToPlanet
  • TransportToSafePlanet
  • OrbitalFabberMoveToPlanet
  • OrbitalFabberMoveToSafePlanet
  • OrbitalFabberMoveToGasGiant
  • OrbitalFabberMoveToSafeGasGiant
  • TransferReconToPlanet
  • TransferOrbitalToPlanet
  • TransferOrbitalAttackToPlanet
  • TeleportLandToPlanet
  • TeleportLandOnPlanet (NEW)
  • TeleportFabberToPlanet
  • Build
  • BuilderAssist
  • AreaBuild
  • GiveUp

Squad Types

  • General
  • Fast
  • Artillery
  • Close
  • Defense
  • Escort (area patrol)
  • Transport
  • Suicide

Build Conditions

  • EnemyPresenceOnPlanet (boolean)
  • EnemySurfacePresenceOnPlanet (boolean)
  • UnitCountInBase (unit_type_string0, compare0, value0 count)
  • UnitCountOnPlanet (unit_type_string0, compare0, value0 count)
  • UnitCountAroundBase (unit_type_string0, string0 AllianceType, value0 radius, compare0, value1 count)
  • DistFromNearestEnemyThreat (compare0, value0)

Unit Type Strings

Simple boolean logic:

  • | or
  • & and
  • - exclude
  • bracket precedence

Examples

  • (Bot & Mobile) - Fabber (any bots that are not fabbers including titans)
  • (Bot & Mobile & Basic) - Construction - Fabber - Artillery (dox and booms)
  • (Bot & Mobile & Advanced) - Construction - Fabber - Artillery - Tactical - Titan (slammers)
  • (Bot & Mobile & Construction) - Fabber (combat fabricators)

Unit Types

  • UNITTYPE_Commander
  • UNITTYPE_SupportCommander
  • UNITTYPE_Fabber
  • UNITTYPE_Debug
  • UNITTYPE_Tank
  • UNITTYPE_Bot
  • UNITTYPE_Bomber
  • UNITTYPE_Fighter
  • UNITTYPE_Gunship
  • UNITTYPE_Transport
  • UNITTYPE_Teleporter
  • UNITTYPE_Scout
  • UNITTYPE_Structure
  • UNITTYPE_Mobile
  • UNITTYPE_Hover
  • UNITTYPE_Wall
  • UNITTYPE_Sub
  • UNITTYPE_Nuke
  • UNITTYPE_NukeDefense
  • UNITTYPE_Heavy
  • UNITTYPE_Artillery
  • UNITTYPE_SelfDestruct
  • UNITTYPE_Tactical
  • UNITTYPE_MissileDefense
  • UNITTYPE_LaserPlatform
  • UNITTYPE_AirDefense
  • UNITTYPE_SurfaceDefense
  • UNITTYPE_OrbitalDefense
  • UNITTYPE_ControlModule
  • UNITTYPE_PlanetEngine
  • UNITTYPE_CannonBuildable
  • UNITTYPE_Titan
  • UNITTYPE_MetalProduction
  • UNITTYPE_EnergyProduction
  • UNITTYPE_Construction
  • UNITTYPE_Deconstruction (Locusts)
  • UNITTYPE_Land
  • UNITTYPE_Naval
  • UNITTYPE_Air
  • UNITTYPE_Orbital
  • UNITTYPE_Basic
  • UNITTYPE_Advanced
  • UNITTYPE_CmdBuild
  • UNITTYPE_FabBuild
  • UNITTYPE_FabAdvBuild
  • UNITTYPE_FabOrbBuild
  • UNITTYPE_FactoryBuild
  • UNITTYPE_CombatFabBuild
  • UNITTYPE_CombatFabAdvBuild
  • UNITTYPE_Economy
  • UNITTYPE_Factory
  • UNITTYPE_Defense
  • UNITTYPE_Offense
  • UNITTYPE_Recon
  • UNITTYPE_NoBuild
  • UNITTYPE_Important
  • UNITTYPE_Custom1
  • UNITTYPE_Custom2
  • UNITTYPE_Custom3
  • UNITTYPE_Custom4
  • UNITTYPE_Custom5 (NEW)
  • UNITTYPE_Custom6 (NEW)
  • UNITTYPE_Custom7 (NEW)
  • UNITTYPE_Custom8 (NEW)
  • UNITTYPE_Vanilla (NEW)

Build Conditions

  • PotentialEnergyEfficiency
  • PotentialMetalEfficiency
  • CurrentEnergyEfficiency
  • CurrentMetalEfficiency
  • DesireMetal
  • DesireEnergy
  • CanAffordPotentialDrain
  • CanAffordBuildDemand
  • MetalStorageFrac
  • EnergyStorageFrac
  • MetalStorageToProductionRatio
  • EnergyStorageToProductionRatio
  • HaveEcoForAdvanced
  • OnTaskType
  • UnitRatio
  • UnitRatioOnPlanet
  • UnitCount
  • UnitCountOnPlanet
  • UnitPoolCount
  • UnitPoolRatio
  • UnitCountInBase
  • UnitCountInMainBase
  • UnitCountAroundBase
  • UnitCountPerPlanetRadius
  • UnitCountOnPlanetPerNumberPlanets
  • AlliedUnitCountOnPlanet
  • AloneOnPlanet
  • EnemyPresenceOnPlanet
  • EnemySurfacePresenceOnPlanet
  • EnemyAirPresenceOnPlanet
  • EnemyOrbitalPresenceOnPlanet
  • HaveFullPlanetIntel
  • PlanetWithoutPresence
  • SafePlanetWithoutPresence
  • PlanetOrGasGiantWithoutPresence
  • SafePlanetOrGasGiantWithoutPresence
  • HasGasGiant
  • PlanetWithoutFabberWithTeleporter
  • PresenceOnOtherPlanet
  • WantCommanderOffPlanet
  • WantCommanderOffPlanetByTeleporter
  • UnitCountInCelestialTransit
  • PlanetHasUseablePlanetWeapon
  • PlanetCanBeUsedAsKineticWeapon
  • HaveThrustToMovePlanet
  • PlanetCount
  • StartingPlanetCount
  • SpawnablePlanetCount
  • PlanetIsGasGiant
  • PlanetIsMainEcoBase
  • PlanetIsRespawnable
  • NoWhereToRun
  • UnableToExpand
  • HasPersonalityTag
  • BaseHasEmptyMetalSpotForBasic
  • BaseHasEmptyMetalSpotForAdvanced
  • CanFindMetalSpotToBuildBasic
  • CanFindMetalSpotToBuildAdvanced
  • CanFindControlPointToBuild
  • AllMetalSpotsFull
  • IsMainBase (boolean) (NEW)
  • BaseThreatened
  • DistFromMainBase
  • DistFromNearestEnemyThreat
  • FactoryHasOpenSlot
  • FactorySlotsEmpty
  • NeedBasicVehicleFabber
  • NeedAdvancedVehicleFabber
  • NeedBasicBotFabber
  • NeedAdvancedBotFabber
  • NeedBasicAirFabber
  • NeedAdvancedAirFabber
  • MetMinBasicFabberCount
  • MetMinAdvancedFabberCount
  • NeedBasicLandFactory
  • NeedAdvancedLandFactory
  • NeedBasicVehicleFactory
  • NeedAdvancedVehicleFactory
  • NeedBasicBotFactory
  • NeedAdvancedBotFactory
  • NeedBasicAirFactory
  • NeedAdvancedAirFactory
  • NeedBasicNavalFactory
  • NeedAdvancedNavalFactory
  • NeedOrbitalLauncher
  • NeedOrbitalFactory
  • CanDeployLandFromBase
  • CanDeployNavalFromBase
  • OtherPlanetNeedsReconAssistance
  • OtherPlanetNeedsLandUnitAssistance
  • OtherPlanetNeedsOrbitalUnitAssistance
  • OtherPlanetCanReceiveLandUnitAssistance
  • OtherPlanetCanProvideLandUnitAssistance
  • CanProvideLandUnitAssistance
  • ThisPlanetNeedsLandUnitAssistance
  • ThisPlanetNeedsReconAssistance
  • ThisPlanetNeedsOrbitalUnitAssistance
  • GravWellThreat
  • SystemThreat
  • PlanetThreat
  • BaseThreat
  • FocusTargetThreat
  • PlanetHighestEnemyArmyThreat
  • GravWellToPlanetThreatRatio
  • SystemToPlanetThreatRatio
  • PlanetThreatRatio
  • BaseThreatRatio
  • FocusTargetThreatRatio
  • PlanetHighestEnemyArmyThreatRatio
  • HaveSeenEnemyUnits
  • HaveHadANukeEvent
  • CanAttackWithPoolUnits
  • CanAttackWithPoolUnitsLand
  • CanAttackWithPoolUnitsBomber
  • CanAttackWithPoolUnitsFighter
  • CanAttackWithPoolUnitsNaval
  • CanAttackWithPoolUnitsOrbital
  • CanProvideAirSupportWithPoolUnits
  • CanFindPlaceToBuild