(Game.IsCampaignGame == 0)
+
(Game.IsCampaignGame == 1)
*
(
(1 - Variable_Self.IsDefender)
+
(Variable_Self.IsDefender) * (Variable_Self.BaseLevel == 0)
+
(Variable_Self.IsDefender) * (Variable_Self.BaseLevel > 0)
*
(
(
(Variable_Self.FriendlyForceUnnormalized {Parameter_Category = GameObjectCategoryType[Infantry | Vehicle | Air]}
>= (3.0 * (Variable_Enemy.FriendlyForceUnnormalized + Variable_Enemy.ReinforcementsUnnormalized)))
)
> 0
)
)
Function_Allowed_As_Defender_Land.Evaluate
*
(
4.0 * ((Variable_Target.Location.FriendlyForce - Variable_Target.Location.EnemyForce) > 0.0)
+
3.0 * (1.0 - Variable_Target.Location.EnemyForce)
+
2.0 * (1.0 - (Variable_Target.Shield > 0.66))
+
2.0 * (1.0 - Variable_Target.Health)
+
5.0 * (1.0 - (Variable_Target.Health > 0.8))
+
(1.0 - Variable_Target.ForceNBTD)
+
1.0
)
Function_Allowed_As_Defender_Land.Evaluate
*
100.0
*
Variable_Target.EnemyUnitConcentrationNBTD {Parameter_Category = GameObjectCategoryType[Infantry]} -
Function_Should_Clear_Vehicles.Evaluate
Function_Allowed_As_Defender_Land.Evaluate
*
5.0
*
Variable_Target.EnemyUnitConcentrationNBTD {Parameter_Category = GameObjectCategoryType[Vehicle]}
Function_ReallySmall.Evaluate
*
Variable_Target.Hints.High_Ground
Function_Allowed_As_Defender_Land.Evaluate
*
(
(0.1 * (1 - Variable_Target.Owner.IsFaction {Parameter_Faction = "Empire", Parameter_Faction = "Rebel", Parameter_Faction = "Underworld", Parameter_Faction = "Hutts"}))
+
(1.0 * (Variable_Target.Owner.IsFaction {Parameter_Faction = "Empire", Parameter_Faction = "Rebel", Parameter_Faction = "Underworld", Parameter_Faction = "Hutts"}))
)
*
(
0.001
+
(2 * Variable_Target.Type.IsType { Parameter_Type = "Ground_Ion_Cannon",
Parameter_Type = "Ground_Empire_Hypervelocity_Gun",
Parameter_Type = "Ground_Hutts_Hypervelocity_Gun",
Parameter_Type = "U_Ground_Gravity_Generator",
Parameter_Type = "E_Ground_Magnepulse_Cannon"})
+
(5.0 * Variable_Target.Type.IsType {Parameter_Type = "Empire_Anti_Aircraft_Turret",
Parameter_Type = "Rebel_Anti_Aircraft_Turret",
Parameter_Type = "Hutt_Anti_Aircraft_Turret",
Parameter_Type = "Empire_Anti_Infantry_Turret",
Parameter_Type = "Rebel_Anti_Infantry_Turret",
Parameter_Type = "Hutt_Rapid_Fire_Laser_Turret",
Parameter_Type = "Empire_Anti_Vehicle_Turret",
Parameter_Type = "Rebel_Anti_Vehicle_Turret",
Parameter_Type = "Hutt_Rocket_Turret",
Parameter_Type = "Underworld_Mass_Driver_Turret",
Parameter_Type = "Underworld_Torpedo_Turret",
Parameter_Type = "Underworld_Flak_Turret",
Parameter_Type = "Empire_Repair_Facility",
Parameter_Type = "Rebel_Repair_Facility",
Parameter_Type = "Underworld_Repair_Facility",
Parameter_Type = "Hutt_Repair_Facility",
Parameter_Type = "Rebel_Bacta_Tank",
Parameter_Type = "Empire_Bacta_Tank",
Parameter_Type = "Underworld_Bacta_Tank",
Parameter_Type = "Hutt_Bacta_Tank",
Parameter_Type = "Hutt_Guard_Tower",
Parameter_Type = "Hutt_Obelisk_Tower"
})
+
(10 * Variable_Target.Type.IsType { Parameter_Type = "E_Ground_Base_Shield_740",
Parameter_Type = "E_Ground_Base_Shield_370",
Parameter_Type = "R_Ground_Base_Shield_740",
Parameter_Type = "R_Ground_Base_Shield_370",
Parameter_Type = "U_Ground_Base_Shield_740",
Parameter_Type = "U_Ground_Base_Shield_370",
Parameter_Type = "H_Ground_Base_Shield_740",
Parameter_Type = "H_Ground_Base_Shield_370",
Parameter_Type = "H_Ground_Shutter_Shield",
Parameter_Type = "U_Ground_Shutter_Shield",
Parameter_Type = "U_Ground_Shutter_Shield_Small",
Parameter_Type = "U_Ground_Shutter_Shield_GC",
Parameter_Type = "E_Ground_Power_Generator",
Parameter_Type = "R_Ground_Power_Generator",
Parameter_Type = "U_Ground_Power_Generator",
Parameter_Type = "H_Ground_Power_Generator"
})
+
(20 * Variable_Target.Type.IsType { Parameter_Type = "Empire_Ground_Mining_Facility",
Parameter_Type = "Rebel_Ground_Mining_Facility",
Parameter_Type = "Underworld_Ground_Mining_Facility",
Parameter_Type = "Hutts_Ground_Mining_Facility",
Parameter_Type = "Empire_Mineral_Processor",
Parameter_Type = "Rebel_Mineral_Processor",
Parameter_Type = "Underworld_Mineral_Processor",
Parameter_Type = "Hutts_Mineral_Processor"})
+
(15.0 * (1 - Variable_Target.Location.EnemyForce))
)
*
(1 - (Variable_Target.Type.IsType { Parameter_Type = "E_Ground_Turbolaser_Tower",
Parameter_Type = "R_Ground_Turbolaser_Tower",
Parameter_Type = "U_Ground_Turbolaser_Tower",
Parameter_Type = "H_Ground_Turbolaser_Tower",
Parameter_Type = "H_Ground_Heavy_Beam_Tower"
}))
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Function_Allowed_As_Defender_Land.Evaluate
*
(
(0.1 * (1 - Variable_Target.Owner.IsFaction {Parameter_Faction = "Empire", Parameter_Faction = "Rebel", Parameter_Faction = "Underworld", Parameter_Faction = "Hutts"}))
+
(1.0 * (Variable_Target.Owner.IsFaction {Parameter_Faction = "Empire", Parameter_Faction = "Rebel", Parameter_Faction = "Underworld", Parameter_Faction = "Hutts"}))
)
*
(1 - Variable_Target.Location.EnemyForce)
*
(Variable_Target.Type.IsType { Parameter_Type = "E_Ground_Turbolaser_Tower",
Parameter_Type = "R_Ground_Turbolaser_Tower",
Parameter_Type = "U_Ground_Turbolaser_Tower",
Parameter_Type = "H_Ground_Turbolaser_Tower",
Parameter_Type = "H_Ground_Heavy_Beam_Tower"
})
*
50
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Variable_Target.Force
Variable_Target.Force{Parameter_Category = GameObjectCategoryType[Vehicle]}
Variable_Target.EnemyForce{Parameter_Category = GameObjectCategoryType[Vehicle]}
*
Variable_Target.FriendlyForce
(1 - Variable_Target.Type.IsType {Parameter_Type = "Obi_Wan_Kenobi"})
*
(((0.9 > Variable_Target.Health) + (0.9 > Variable_Target.Shield)) > 0)
*
(1000 > Variable_Target.DistanceToNearestEnemy)
*
Variable_Target.Force
(1 - Variable_Target.Type.IsType {Parameter_Type = "Darth_Vader", Parameter_Type = "Darth_Vader_Expansion"})
*
(((0.9 > Variable_Target.Health) + (0.9 > Variable_Target.Shield)) > 0)
*
(1000 > Variable_Target.DistanceToNearestEnemy)
*
Variable_Target.Force
(1 - Function_Should_Burn_Units_Land.Evaluate)
*
(0.5 + 0.5 * Game.IsCampaignGame)
*
(
15 * (500 > Variable_Target.DistanceToNearestFriendly{Parameter_Category = GameObjectCategoryType[Structure]})
* (((Variable_Target.TimeLastSeenUnnormalized > 120) + (20 > Game.Age)) > 0)
+
10 * (Variable_Target.DistanceToNearestFriendly{Parameter_Category = GameObjectCategoryType[Structure]} > 500)
* (Variable_Target.DistanceToNearestEnemy{Parameter_Category = GameObjectCategoryType[Structure]} > 500)
* (((Variable_Target.TimeLastSeenUnnormalized > 400) + (200 > Game.Age)) > 0)
* Variable_Target.TimeLastSeen
+
5 * (Variable_Target.IsEnemyStartLocation + (500 > Variable_Target.DistanceToNearestEnemy{Parameter_Category = GameObjectCategoryType[Structure]} ))
* (((Variable_Target.TimeLastSeenUnnormalized > 600) + (Game.Age > 400) + (Game.IsCampaignGame)) > 0)
* Variable_Target.TimeLastSeen
)
(1 - Game.IsSetupPhase)
*
(Game.Age > 30)
*
(
(
(1.0 - Variable_Self.IsDefender)
*
(
Variable_Enemy.LandedForceUnnormalized{Parameter_Attenuator = 1.0} >= (2.0 * Variable_Self.FriendlyForceUnnormalized{Parameter_Attenuator = 1.0} + Variable_Self.ReinforcementsUnnormalized)
)
)
+
(
Variable_Self.IsDefender
*
(Variable_Enemy.LandedForceUnnormalized{Parameter_Attenuator = 1.0} >= (2.5 * Variable_Self.FriendlyForceUnnormalized{Parameter_Attenuator = 1.0}))
*
(
((Variable_Self.BaseLevel == 0)
+
(1 > Variable_Self.BaseLevel) *
(Variable_Enemy.LandedForceUnnormalized >= (5.0 * Variable_Self.FriendlyForceUnnormalized {Parameter_Category = GameObjectCategoryType[Structure]})))
>
0
)
)
)
Game.IsCampaignGame
*
Variable_Self.CanRetreat
*
(1.0 - Variable_Self.IsFaction {Parameter_Faction = "Pirates"})
Function_Want_To_Retreat_From_Land.Evaluate
*
Function_Allowed_To_Retreat_From_Land.Evaluate
Game.Age
Variable_Self.FriendlyForceUnnormalized
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "MPTL"}
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "T2B_Tank"}
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "Han_Solo"}
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "Chewbacca"}
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "Droid_R2D2"}
+
Variable_Self.FriendlyForceUnnormalized{Parameter_Type = "Droid_C3P0"}
Variable_Self.CanRetreat *
((1.0 - Variable_Self.IsDefender) *
(Variable_Self.EnemyForce >= (2.0 * Variable_Self.FriendlyForce)) +
Variable_Self.IsDefender *
(Variable_Self.EnemyForce >= (3.0 * Variable_Self.FriendlyForce)))
(1 - Variable_Self.IsDifficulty{Parameter_Difficulty_Level_Type = DifficultyLevelType[Easy]}) *
50.0 *
Variable_Self.IsBombingRunAvailable *
(Variable_Target.ForceUnnormalized {Parameter_Category = GameObjectCategoryType[AntiAir]} == 0.0) *
(1.0 - (Variable_Target.Location.EnemyForceUnnormalized {Parameter_Category = GameObjectCategoryType[AntiAir]} > 500.0)) *
(1.0 - (Variable_Self.EnemyForceUnnormalized {Parameter_Category = GameObjectCategoryType[AntiAir]} > 3000.0)) *
Variable_Target.Location.EnemyUnitConcentration *
Variable_Target.IsValidBombingTarget
Variable_Target.IsFriendlyStartLocation
Variable_Target.Type.IsType {Parameter_Type = "Skirmish_Build_Pad"
,Parameter_Type = "Rebel_Build_Pad"
,Parameter_Type = "Empire_Build_Pad"
,Parameter_Type = "Underworld_Build_Pad"
,Parameter_Type = "Hutt_Build_Pad"
}
*
(1 - Variable_Target.HasBuiltObject)
*
Function_Is_Allowed_To_Build.Evaluate
*
20
*
(Game.Age > 60)
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(
(1 - Function_Skirmish_Upgrade_Tech.Evaluate)
+
(Variable_Target.Location.EnemyForce {Parameter_Category = GameObjectCategoryType[Vehicle]} > 0)
)
*
(0.5 + (Variable_Enemy.LandedForceUnnormalized {Parameter_Category = GameObjectCategoryType[Vehicle]} /
(Variable_Enemy.LandedForceUnnormalized + 0.00001)))
*
(
50 * (0 == Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Vehicle_Turret",
Parameter_Type = "Rebel_Anti_Vehicle_Turret",
Parameter_Type = "Pirate_Anti_Vehicle_Turret",
Parameter_Type = "Underworld_Torpedo_Turret",
Parameter_Type = "Hutt_Rocket_Turret"
})
+
5 * (0.7 - Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Vehicle_Turret",
Parameter_Type = "Rebel_Anti_Vehicle_Turret",
Parameter_Type = "Pirate_Anti_Vehicle_Turret",
Parameter_Type = "Underworld_Torpedo_Turret",
Parameter_Type = "Hutt_Rocket_Turret"
} / Function_Build_Pad_Count.Evaluate)
+
2 * (200 > Variable_Target.DistanceToNearestFriendly {Parameter_Category = GameObjectCategoryType[Structure]})
)
Variable_Target.Type.IsType {Parameter_Type = "Skirmish_Build_Pad"
,Parameter_Type = "Rebel_Build_Pad"
,Parameter_Type = "Empire_Build_Pad"
,Parameter_Type = "Underworld_Build_Pad"
,Parameter_Type = "Hutt_Build_Pad"
}
*
(1 - Variable_Target.HasBuiltObject)
*
Function_Is_Allowed_To_Build.Evaluate
*
20
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(1 - Function_Skirmish_Upgrade_Tech.Evaluate)
*
(0.25 + (Variable_Enemy.LandedForceUnnormalized {Parameter_Category = GameObjectCategoryType[Air]} /
(Variable_Enemy.LandedForceUnnormalized + 0.00001)))
*
(
10 * (0 == Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Aircraft_Turret",
Parameter_Type = "Rebel_Anti_Aircraft_Turret",
Parameter_Type = "Pirate_Anti_Aircraft_Turret",
Parameter_Type = "Underworld_Flak_Turret",
Parameter_Type = "Hutt_Anti_Aircraft_Turret"
})
+
5 * (0.3 - Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Aircraft_Turret",
Parameter_Type = "Rebel_Anti_Aircraft_Turret",
Parameter_Type = "Pirate_Anti_Aircraft_Turret",
Parameter_Type = "Underworld_Flak_Turret",
Parameter_Type = "Hutt_Anti_Aircraft_Turret"
} / Function_Build_Pad_Count.Evaluate)
+
2 * (200 > Variable_Target.DistanceToNearestFriendly {Parameter_Category = GameObjectCategoryType[Structure]})
)
Variable_Target.Type.IsType {Parameter_Type = "Skirmish_Build_Pad"
,Parameter_Type = "Rebel_Build_Pad"
,Parameter_Type = "Empire_Build_Pad"
,Parameter_Type = "Underworld_Build_Pad"
,Parameter_Type = "Hutt_Build_Pad"
}
*
(1 - Variable_Target.HasBuiltObject)
*
Function_Is_Allowed_To_Build.Evaluate
*
10
*
(Game.Age > 60)
*
(
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
+
(Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(300 > Variable_Target.DistanceToNearestEnemy {Parameter_Type = "Skirmish_Mineral_Processor_Pad"
,Parameter_Type = "Skirmish_Outpost_Pad"
,Parameter_Type = "Hutts_Ground_Mining_Facility_Build_Pad"
,Parameter_Type = "Empire_Ground_Mining_Facility_Build_Pad"
,Parameter_Type = "Rebel_Ground_Mining_Facility_Build_Pad"})
)
*
(
(1 - Function_Skirmish_Upgrade_Tech.Evaluate)
+
(Variable_Target.Location.EnemyForce {Parameter_Category = GameObjectCategoryType[Infantry]} > 0)
)
*
(0.5 + (Variable_Enemy.LandedForceUnnormalized {Parameter_Category = GameObjectCategoryType[Infantry]} /
(Variable_Enemy.LandedForceUnnormalized + 0.00001)))
*
(
10 * (0 == Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Infantry_Turret",
Parameter_Type = "Rebel_Anti_Infantry_Turret",
Parameter_Type = "Pirate_Anti_Infantry_Turret",
Parameter_Type = "Underworld_Mass_Driver_Turret",
Parameter_Type = "Hutt_Rapid_Fire_Laser_Turret"
})
+
5 * (0.7 - Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Anti_Infantry_Turret",
Parameter_Type = "Rebel_Anti_Infantry_Turret",
Parameter_Type = "Pirate_Anti_Infantry_Turret",
Parameter_Type = "Underworld_Mass_Driver_Turret",
Parameter_Type = "Hutt_Rapid_Fire_Laser_Turret"
}
/ Function_Build_Pad_Count.Evaluate)
+
2 * (200 > Variable_Target.DistanceToNearestFriendly {Parameter_Category = GameObjectCategoryType[Structure]})
)
Variable_Target.Type.IsType {Parameter_Type = "Skirmish_Build_Pad"
,Parameter_Type = "Rebel_Build_Pad"
,Parameter_Type = "Empire_Build_Pad"
,Parameter_Type = "Underworld_Build_Pad"
,Parameter_Type = "Hutt_Build_Pad"
}
*
(1 - Variable_Target.HasBuiltObject)
*
Function_Is_Allowed_To_Build.Evaluate
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(1 - Function_Skirmish_Upgrade_Tech.Evaluate)
*
(Game.Age > 60)
*
(
Function_Has_Infantry_Hero.Evaluate
+
Variable_Self.FriendlyForce {Parameter_Category = GameObjectCategoryType[Infantry]}
)
*
(
10 * (0 == Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Bacta_Tank",
Parameter_Type = "Rebel_Bacta_Tank",
Parameter_Type = "Pirate_Bacta_Tank",
Parameter_Type = "Underworld_Bacta_Tank",
Parameter_Type = "Hutt_Bacta_Tank"
})
+
5 * (0.1 - Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Bacta_Tank",
Parameter_Type = "Rebel_Bacta_Tank",
Parameter_Type = "Pirate_Bacta_Tank",
Parameter_Type = "Underworld_Bacta_Tank",
Parameter_Type = "Hutt_Bacta_Tank"
} / Function_Build_Pad_Count.Evaluate)
-
2 * (800 > Variable_Target.DistanceToNearestFriendly {Parameter_Type = "Empire_Bacta_Tank",
Parameter_Type = "Rebel_Bacta_Tank",
Parameter_Type = "Pirate_Bacta_Tank",
Parameter_Type = "Underworld_Bacta_Tank",
Parameter_Type = "Hutt_Bacta_Tank"
})
)
Variable_Self.HasUnit{ Parameter_Type = "Emperor_Palpatine"
,Parameter_Type = "Boba_Fett"
,Parameter_Type = "Han_Solo"
,Parameter_Type = "Chewbacca"
,Parameter_Type = "Mara_Jade"
,Parameter_Type = "Obi_Wan_Kenobi"
,Parameter_Type = "Darth_Vader"
,Parameter_Type = "Darth_Vader_Expansion"
,Parameter_Type = "Kyle_Katarn"
,Parameter_Type = "Tyber_Zann"
,Parameter_Type = "Silri"
,Parameter_Type = "Urai_Fen"
,Parameter_Type = "Bossk"
,Parameter_Type = "Cuarson"
,Parameter_Type = "Sykariius"
,Parameter_Type = "Xizor"
,Parameter_Type = "Luke_Skywalker_Jedi"
,Parameter_Type = "Yoda"}
Variable_Self.HasUnit { Parameter_Type = "General_Veers"
,Parameter_Type = "Gargantuan_Battle_Platform"
,Parameter_Type = "Pestelous_the_Hutt"
,Parameter_Type = "Tactical_R2_3PO_Team"}
Variable_Target.Type.IsType {Parameter_Type = "Skirmish_Build_Pad"
,Parameter_Type = "Rebel_Build_Pad"
,Parameter_Type = "Empire_Build_Pad"
,Parameter_Type = "Underworld_Build_Pad"
,Parameter_Type = "Hutt_Build_Pad"
}
*
(1 - Variable_Target.HasBuiltObject)
*
Function_Is_Allowed_To_Build.Evaluate
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(1 - Function_Skirmish_Upgrade_Tech.Evaluate)
*
(Game.Age > 60)
*
(
Function_Has_Vehicle_Hero.Evaluate
+
Variable_Self.FriendlyForce {Parameter_Category = GameObjectCategoryType[Vehicle]}
)
*
(
10 * (0 == Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Repair_Facility",
Parameter_Type = "Rebel_Repair_Facility",
Parameter_Type = "Pirate_Repair_Facility",
Parameter_Type = "Underworld_Repair_Facility",
Parameter_Type = "Hutt_Repair_Facility"
})
+
5 * (0.1 - Variable_Self.TacticalBuiltStructureCount {Parameter_Type = "Empire_Repair_Facility",
Parameter_Type = "Rebel_Repair_Facility",
Parameter_Type = "Pirate_Repair_Facility",
Parameter_Type = "Underworld_Repair_Facility",
Parameter_Type = "Hutt_Repair_Facility"
} / Function_Build_Pad_Count.Evaluate)
-
2 * (800 > Variable_Target.DistanceToNearestFriendly {Parameter_Type = "Empire_Repair_Facility",
Parameter_Type = "Rebel_Repair_Facility",
Parameter_Type = "Pirate_Repair_Facility",
Parameter_Type = "Underworld_Repair_Facility",
Parameter_Type = "Hutt_Repair_Facility"
})
)
Game.IsCampaignGame
*
(Variable_Self.IsDefender
+
(1 - Variable_Self.IsDefender)
*
(Variable_Target.Location.EnemyForce > 0))
+
Function_Is_Initial_Skirmish_State_Established.Evaluate
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Game.IsCampaignGame
*
(
Variable_Self.IsFaction {Parameter_Faction = "Pirates"}
+
Variable_Self.IsFaction {Parameter_Faction = "Hutts"}
+
(
(Variable_Self.OpenBuildPadCount > Variable_Self.TacticalBuiltStructureCount)
*
(
(Variable_Enemy.LandedForceUnnormalized > (Variable_Self.FriendlyForceUnnormalized / 2))
+
(Variable_Enemy.FriendlyForceUnnormalized {Parameter_Category = GameObjectCategoryType[Air]} > 0)
)
)
)
Variable_Self.TacticalBuiltStructureCount + Variable_Self.OpenBuildPadCount
(1 - Variable_Self.IsDifficulty{Parameter_Difficulty_Level_Type = DifficultyLevelType[Easy]})
+
(Variable_Self.IsDifficulty{Parameter_Difficulty_Level_Type = DifficultyLevelType[Easy]})
*
(2 > Function_Number_Resource_Structures_Land.Evaluate)
(1 - Function_Should_Firesale_Land.Evaluate)
*
(
(Game.IsCampaignGame == 0)
*
(
(Function_Want_More_Resource_Structures_Land.Evaluate)
*
(1.0 + 3.0 * (Function_Num_Refineries.Evaluate == 0.0))
*
(
1.5 * Function_Is_Refinery_Pad.Evaluate
+
2.0 * Function_Is_Outpost_Pad.Evaluate
-
1.5 * Variable_Target.HasBuiltObject
)
+
Function_Is_Initial_Skirmish_State_Established.Evaluate
*
(
1.0
+
(1.0 + (3 > Variable_Self.UnitSpaceAvailable))
*
Variable_Target.AdditionalPopulationCapacity / 2.0
)
*
(0.5 - Variable_Target.Location.EnemyForce)
)
+
(Game.IsCampaignGame == 1)
*
(
Function_Is_Allowed_To_Build.Evaluate
*
Function_Need_For_Tactical_Funding.Evaluate
+
2 * Script_TargetHasProperty.Evaluate{Parameter_Script_String = "IsRushTarget"}
* (Variable_Self.ReinforcementsUnnormalized > 0)
)
)
*
Variable_Target.IsContestable
*
(
5 * (Variable_Target.Location.EnemyForce == 0)
+
5 * clamp( (500 / (Variable_Target.DistanceToNearestFriendly + 1)), 0, 1)
+
5
)
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Function_Need_To_Secure_Contestable_Land.Evaluate * 1.5
Variable_Self.TacticalBuiltStructureCount{Parameter_Type = "Empire_Ground_Mining_Facility"
,Parameter_Type = "Rebel_Ground_Mining_Facility"
,Parameter_Type = "Underworld_Ground_Mining_Facility"
,Parameter_Type = "Hutts_Ground_Mining_Facility"
,Parameter_Type = "Empire_Mineral_Processor"
,Parameter_Type = "Rebel_Mineral_Processor"
,Parameter_Type = "Underworld_Mineral_Processor"
,Parameter_Type = "Hutts_Mineral_Processor"}
(
(
(Variable_Self.OpenBuildPadCount == 0)
+
(2000 > Variable_Self.CreditsUnnormalized)
)
> 0
)
*
(
(
(Function_Need_Repair_Bay.Evaluate > 20)
+
(Function_Need_Bacta_Tank.Evaluate > 20)
+
(Function_Need_AntiInfantry_Turret.Evaluate > 10)
+
(Function_Need_AntiVehicle_Turret.Evaluate > 20)
+
(Function_Need_AntiAir_Turret.Evaluate > 20)
)
> 0
)
Function_Need_To_Sell.Evaluate
*
(
Variable_Target.HasBuiltObject {Parameter_Type = "Empire_Anti_Vehicle_Turret",
Parameter_Type = "Rebel_Anti_Vehicle_Turret",
Parameter_Type = "Pirate_Anti_Vehicle_Turret",
Parameter_Type = "Hutt_Anti_Vehicle_Turret",
Parameter_Type = "Underworld_Torpedo_Turret"
}
*
(5 > Function_Need_AntiVehicle_Turret.Evaluate)
+
Variable_Target.HasBuiltObject {Parameter_Type = "Empire_Anti_Infantry_Turret",
Parameter_Type = "Rebel_Anti_Infantry_Turret",
Parameter_Type = "Underworld_Mass_Driver_Turret",
Parameter_Type = "Hutt_Rapid_Fire_Laser_Turret",
Parameter_Type = "Pirate_Anti_Infantry_Turret"
}
*
(5 > Function_Need_AntiInfantry_Turret.Evaluate)
+
Variable_Target.HasBuiltObject {Parameter_Type = "Empire_Anti_Aircraft_Turret",
Parameter_Type = "Rebel_Anti_Aircraft_Turret",
Parameter_Type = "Hutt_Anti_Aircraft_Turret",
Parameter_Type = "Underworld_Flak_Turret",
Parameter_Type = "Pirate_Anti_Aircraft_Turret"
}
*
(5 > Function_Need_AntiAir_Turret.Evaluate)
+
Variable_Target.HasBuiltObject {Parameter_Type = "Empire_Bacta_Tank",
Parameter_Type = "Rebel_Bacta_Tank",
Parameter_Type = "Pirate_Bacta_Tank",
Parameter_Type = "Hutt_Bacta_Tank",
Parameter_Type = "Underworld_Bacta_Tank"
}
*
(5 > Function_Need_Bacta_Tank.Evaluate)
+
Variable_Target.HasBuiltObject {Parameter_Type = "Empire_Repair_Facility",
Parameter_Type = "Rebel_Repair_Facility",
Parameter_Type = "Pirate_Repair_Facility",
Parameter_Type = "Hutt_Repair_Facility",
Parameter_Type = "Underworld_Repair_Facility"
}
*
(5 > Function_Need_Repair_Bay.Evaluate)
)
(1 - Function_Should_Burn_Units_Land.Evaluate)
*
clamp( Variable_Self.IsDefender
*
(1 - Variable_Target.Location.FriendlyForce)
*
(Variable_Target.DistanceToNearestFriendly / 10)
,0
,3
)
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
(20 * Variable_Target.HasTakenDamage {Parameter_Time = 5}
+
10 * (Variable_Target.Location.EnemyForce))
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Variable_Self.IsDefender
*
clamp( 3000 / Script_GetDistanceToNearestWithProperty.Evaluate{Parameter_Script_String = "INBASE", Parameter_Script_String = "FRIENDLY"}
+
Variable_Target.Location.EnemyForce
,0
,20)
0.01
*
(
(1 - Variable_Self.IsDefender)
+
(Variable_Self.IsDefender) *
(Variable_Self.LandedForceUnnormalized > (Variable_Self.EnemyForceUnnormalized * 3))
)
+
(50 * Variable_Enemy.IsRetreating)
Variable_Target.EnemyForce {Parameter_Faction = "Empire"}
*
50
Variable_Target.Force {Parameter_Category = GameObjectCategoryType[Vehicle]}
+
Variable_Target.Location.EnemyForce {Parameter_Category = GameObjectCategoryType[Vehicle]}
(Game.Age > 120)
*
(Variable_Self.FriendlyForce > (0.33 * Variable_Self.EnemyForce))
*
(
(Game.IsCampaignGame == 0)
*
(12 > Variable_Self.UnitSpaceAvailable)
*
(
2.0
+
10.0 * (Variable_Self.FriendlyForceUnnormalized{Parameter_Attenuator = 1.0} >= (0.8 * Variable_Enemy.ForceUnnormalized{Parameter_Attenuator = 1.0}))
+
(5.0 * (0#1>0.5))
)
+
(Game.IsCampaignGame)
)
*
(1.0 - Function_May_Lose_Land_Control_Game.Evaluate)
Variable_Target.EnemyUnitConcentration
Variable_Target.FriendlyUnitConcentration
(
Function_Want_To_Retreat_From_Land.Evaluate
*
(1 - Function_Allowed_To_Retreat_From_Land.Evaluate)
*
(
(Game.IsCampaignGame == 1)
+
(Game.IsCampaignGame == 0)
*
(Game.Age > 400)
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
)
)
+
(Game.IsCampaignGame == 0)
*
(1 > Variable_Self.UnitSpaceAvailable)
*
(
(
(Variable_Self.ReinforcementsUnnormalized > (Variable_Self.FriendlyForceUnnormalized{Parameter_Category = GameObjectCategoryType[Infantry|Vehicle|Air]} * 0.25))
+
(Variable_Self.ReinforcementsUnnormalized > Variable_Self.EnemyForceUnnormalized{Parameter_Category = GameObjectCategoryType[Infantry|Vehicle|Air]})
)
> 0
)
Function_Want_To_Retreat_From_Land.Evaluate
*
(1 - Function_Allowed_To_Retreat_From_Land.Evaluate)
*
(
(Game.IsCampaignGame == 1)
+
(Game.IsCampaignGame == 0)
*
(Game.Age > 300)
*
(1 - Function_Is_Saving_For_Refineries_Land.Evaluate)
*
(Variable_Self.HasUnit {Parameter_Type = "E_Ground_Command_Center",
Parameter_Type = "R_Ground_Command_Center",
Parameter_Type = "H_Ground_Command_Center",
Parameter_Type = "U_Ground_Palace"} == 0.0)
*
(Function_Num_Refineries.Evaluate == 0)
*
(2000 > Variable_Self.CreditsUnnormalized)
)
40 * Variable_Target.EnemyForce {Parameter_Category = GameObjectCategoryType[Infantry]}
+
Variable_Target.EnemyForce
500
*
(
Variable_Target.Force{Parameter_Attenuator = 1.0, Parameter_Category = GameObjectCategoryType[Vehicle]}
-
Variable_Target.Force{Parameter_Category = GameObjectCategoryType[LandHero]}
)
(0.8 > Variable_Target.Health)
*
(
30 * Variable_Target.Force
+
10 * (1 - Variable_Target.Health)
+
5 * (0.3 > Variable_Target.Shield)
)
Variable_Target.IsBuildPad
40
*
(Game.IsCampaignGame == 1)
*
Variable_Self.IsDefender
*
(Variable_Self.FriendlyForceUnnormalized {Parameter_Category = GameObjectCategoryType[Infantry | Vehicle | Air]} > 3000)
Variable_Self.FriendlyForceUnnormalized - Variable_Self.FriendlyForceUnnormalized {Parameter_Category = GameObjectCategoryType[Structure]}
20.0
*
Game.IsLandControlGame
+
5.0
*
Game.IsCampaignGame
*
Variable_Self.IsDefender
*
Variable_Target.AdditionalPopulationCapacity
+
10.0
*
(Game.IsCampaignGame == 0.0)
*
(Variable_Target.AdditionalPopulationCapacity > Variable_Self.UnitSpaceAvailable)
*
Function_Is_Initial_Skirmish_State_Established.Evaluate
*
(Function_Num_Refineries.Evaluate > 1)