(Variable_Target.GroundbaseLevel > 0.0)
*
(Variable_Target.MaxGroundbaseLevel != Variable_Target.GroundbaseLevel)
*
(
4.0 * (Variable_Target.Hints.Chokepoint)
+
2.0 * Variable_Target.BaseIncomeNBTP
+
1.0 * (Variable_Target.MaxGroundbaseLevel - Variable_Target.GroundbaseLevel)
+
4.0 * Function_Is_Connected_To_Enemy.Evaluate
)
/
7.0
(Variable_Target.StarbaseLevel > 0.0)
*
(Variable_Target.MaxStarbaseLevel != Variable_Target.StarbaseLevel)
*
((Variable_Target.GroundbaseLevel > Variable_Target.StarbaseLevel) + (Variable_Target.MaxStarbaseLevel >= Variable_Target.MaxGroundbaseLevel))
*
(
15.0 * (1 - Function_Can_Build_Offensive_Space.Evaluate)
+
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
+
(1.0 - Function_Hutts_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(
10.0 * (Variable_Target.Hints.Chokepoint + Variable_Target.Hints.PriorityTarget)
+
10.0 * (Variable_Target.MaxStarbaseLevel - Variable_Target.StarbaseLevel)
+
5.0 * Function_Is_Connected_To_Enemy.Evaluate
+
2.0 * Function_Needs_Better_Buying_Capability_Space.Evaluate
)
)
Function_Empire_Should_Upgrade_Tech.Evaluate
*
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility"}
*
(5.0 > Variable_Self.TechLevel)
*
(1.0 - Variable_Self.CanAdvanceTech)
Function_Hutts_Should_Upgrade_Tech.Evaluate
*
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"}
*
(5.0 > Variable_Self.TechLevel)
*
(1.0 - Variable_Self.CanAdvanceTech)
12 * ((0.60 - (Variable_Self.NumStarbaseOfLevel {Parameter_Level = 2} / Variable_Self.PlanetsControlledUnnormalized)) > 0) *
(Variable_Target.StarbaseLevelUnnormalized == 1.0)
+
10 * ((0.50 - (Variable_Self.NumStarbaseOfLevel {Parameter_Level = 3} / Variable_Self.PlanetsControlledUnnormalized)) > 0) *
(Variable_Target.StarbaseLevelUnnormalized == 2.0)
+
8 * ((0.40 - (Variable_Self.NumStarbaseOfLevel {Parameter_Level = 4} / Variable_Self.PlanetsControlledUnnormalized)) > 0) *
(Variable_Target.StarbaseLevelUnnormalized == 3.0)
+
6 * ((0.30 - (Variable_Self.NumStarbaseOfLevel {Parameter_Level = 5} / Variable_Self.PlanetsControlledUnnormalized)) > 0) *
(Variable_Target.StarbaseLevelUnnormalized == 4.0)
(Variable_Self.IsFaction {Parameter_Faction = "Rebel"})
+
(Variable_Self.IsFaction {Parameter_Faction = "Hutts"})
+
(Variable_Self.IsFaction {Parameter_Faction = "Empire"})
*
(
(Variable_Self.HasStarbaseOfLevel {Parameter_Level = 3, Parameter_Count = 1}
+
Variable_Self.HasStarbaseOfLevel {Parameter_Level = 2, Parameter_Count = 1} *
(Variable_Self.TechLevel >= 2))
>= 1
)
20 * clamp(0.5 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Light_Vehicle_Factory",
Parameter_Type = "R_Ground_Light_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0} /
Variable_Self.PlanetsControlledUnnormalized), 0.1, 0.5)
*
(
Function_Needs_Groundbase_Upgrade.Evaluate
+
(3.0 * Variable_Target.StructureCount {Parameter_Type = "E_Ground_Light_Vehicle_Factory",
Parameter_Type = "R_Ground_Light_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0})
)
*
(3 > Variable_Target.StructureCount {Parameter_Type = "E_Ground_Light_Vehicle_Factory",
Parameter_Type = "R_Ground_Light_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0})
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
20 * clamp(0.5 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Barracks",
Parameter_Type = "R_Ground_Barracks",
Parameter_Type = "H_Ground_Barracks",
Parameter_Only_Consider_Complete = 1.0} /
Variable_Self.PlanetsControlledUnnormalized), 0.1, 0.5)
*
(
Function_Needs_Groundbase_Upgrade.Evaluate
+
(3.0 * Variable_Target.StructureCount {Parameter_Type = "E_Ground_Barracks",
Parameter_Type = "R_Ground_Barracks",
Parameter_Type = "H_Ground_Barracks",
Parameter_Only_Consider_Complete = 1.0})
)
*
(2 > Variable_Target.StructureCount {Parameter_Type = "E_Ground_Barracks",
Parameter_Type = "R_Ground_Barracks",
Parameter_Type = "H_Ground_Barracks",
Parameter_Only_Consider_Complete = 1.0})
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
(
25 * clamp(0.4 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "R_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0} /
Variable_Self.PlanetsControlledUnnormalized), 0.1, 0.4)
+
3 * Function_Needs_Groundbase_Upgrade.Evaluate
+
(5.0 * Variable_Target.StructureCount {Parameter_Type = "E_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "R_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0})
)
*
(3 > Variable_Target.StructureCount {Parameter_Type = "E_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "R_Ground_Heavy_Vehicle_Factory",
Parameter_Type = "H_Ground_Factory",
Parameter_Only_Consider_Complete = 1.0})
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
Variable_Self.IsFaction {Parameter_Faction = "Empire"}
*
(
25 * clamp(0.4 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Advanced_Vehicle_Factory",
Parameter_Only_Consider_Complete = 1.0} /
Variable_Self.PlanetsControlledUnnormalized), 0.1, 0.4)
+
5 * Function_Needs_Groundbase_Upgrade.Evaluate
+
(5.0 * Variable_Target.StructureCount {Parameter_Type = "E_Ground_Advanced_Vehicle_Factory", Parameter_Only_Consider_Complete = 1.0})
)
*
(3 > Variable_Target.StructureCount {Parameter_Type = "E_Ground_Advanced_Vehicle_Factory", Parameter_Only_Consider_Complete = 1.0})
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
(Variable_Self.IsFaction {Parameter_Faction = "Empire"}
*
(1 - Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Count = 1})
*
(
1
+
Function_Defense_Level.Evaluate
+
(Function_Is_Connected_To_Enemy.Evaluate == 0)
+
Function_Is_Home_Planet.Evaluate
+
Variable_Target.FriendlyForce.SpaceTotal
+
Variable_Target.FriendlyForce.GroundTotal
)
)
+
(Variable_Self.IsFaction {Parameter_Faction = "Hutts"}
*
(1 - Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Count = 1})
*
(
1
+
Function_Defense_Level.Evaluate
+
(Function_Is_Connected_To_Enemy.Evaluate == 0)
+
Function_Is_Home_Planet.Evaluate
+
Variable_Target.FriendlyForce.SpaceTotal
+
Variable_Target.FriendlyForce.GroundTotal
)
)
(
Variable_Self.IsFaction {Parameter_Faction = "Empire"}
*
(1 - Variable_Target.HasStructure {Parameter_Type = "E_Ground_Research_Facility"})
*
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(Variable_Target.MaxStarbaseLevel == 5)
*
(
20 * (1 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1.0} / 2))
+
10 * Function_Empire_Should_Upgrade_Tech.Evaluate *
(1 - Variable_Self.HasStructure {Parameter_Type = "E_Ground_Research_Facility", Parameter_Count = 1})
+
3 * Function_Defense_Level.Evaluate
+
3 * Function_Needs_Groundbase_Upgrade.Evaluate
)
)
+
(
Variable_Self.IsFaction {Parameter_Faction = "Hutts"}
*
(1 - Variable_Target.HasStructure {Parameter_Type = "H_Ground_Advanced_Technologies_Facility"})
*
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(Variable_Target.MaxStarbaseLevel == 5)
*
(
20 * (1 - (Variable_Self.StructureCount {Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1.0} / 2))
+
10 * Function_Hutts_Should_Upgrade_Tech.Evaluate *
(1 - Variable_Self.HasStructure {Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Count = 1})
+
3 * Function_Defense_Level.Evaluate
+
3 * Function_Needs_Groundbase_Upgrade.Evaluate
)
)
(1 - Variable_Target.HasStructure {Parameter_Type = "H_Ground_Communications_Array"})
*
(
2
+
5 * clamp(Function_Needs_Groundbase_Upgrade.Evaluate, 0.0, 1.0)
)
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
40 * clamp(0.25 - (Variable_Self.StructureCount {Parameter_Type = "E_Ground_Officer_Academy",
Parameter_Type = "R_Ground_Officer_Academy",
Parameter_Only_Consider_Complete = 1.0} /
Variable_Self.PlanetsControlledUnnormalized), 0.05, 0.25)
*
(Variable_Self.PlanetsControlledUnnormalized > 4)
*
(
Function_Needs_Groundbase_Upgrade.Evaluate
+
(3 * Variable_Target.StructureCount {Parameter_Type = "E_Ground_Officer_Academy",
Parameter_Type = "R_Ground_Officer_Academy",
Parameter_Only_Consider_Complete = 1.0})
)
*
(2.0 > Variable_Target.StructureCount {Parameter_Type = "E_Ground_Officer_Academy",
Parameter_Type = "R_Ground_Officer_Academy",
Parameter_Only_Consider_Complete = 1.0})
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
(Variable_Self.HasStarbaseOfLevel {Parameter_Level = 5, Parameter_Count = 1} == 0.0)
50.0 *
(1.0 - clamp(Variable_Self.PlanetsControlled - 0.33, 0.0, 1.0)) *
(Variable_Target.StarbaseLevel == 0.0) *
(Variable_Target.MaxStarbaseLevel > 0.0) *
(Variable_Target.EnemyForce.HasSpaceForce == 0)
50.0
*
(1.0 - clamp(Variable_Self.PlanetsControlled - 0.33, 0.0, 1.0))
*
(Variable_Target.GroundbaseLevel == 0.0)
*
(Variable_Target.MaxGroundbaseLevel > 0)
*
((Variable_Target.StarbaseLevel > 0) + (Variable_Target.MaxStarbaseLevel == 0.0))
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
(Variable_Target.StructureCount {Parameter_Type = "Ground_Cantina_E",
Parameter_Type = "Ground_Cantina_R",
Parameter_Only_Consider_Complete = 1.0} == 1.0)
*
50.0
(
(
30.0
*
(1.0 + Variable_Target.IncomeUnnormalized * Variable_Target.IncomeUnnormalized / 250000.0)
+
10 * (0.5 > (Variable_Self.StructureCount {Parameter_Type = "Empire_Ground_Mining_Facility_GC", Parameter_Type = "Empire_Ground_Mining_Facility_GC_Unlim", Parameter_Type = "Empire_Mineral_Extractor_GC", Parameter_Type = "Rebel_Ground_Mining_Facility_GC", Parameter_Type = "Rebel_Ground_Mining_Facility_GC_Unlim", Parameter_Type = "Rebel_Mineral_Extractor_GC", Parameter_Type = "Hutts_Ground_Mining_Facility_GC", Parameter_Type = "Hutts_Ground_Mining_Facility_GC_Unlim", Parameter_Type = "Hutt_Mineral_Extractor_GC", Parameter_Only_Consider_Complete = 1.0} / Variable_Self.PlanetsControlledUnnormalized))
)
*
clamp(Function_Defense_Level.Evaluate - 1, 0.0, 2.0)
*
((Variable_Target.MaxStructureSlotsUnnormalized / 2.0) > Variable_Target.StructureCount {Parameter_Type = "Empire_Ground_Mining_Facility_GC",
Parameter_Type = "Empire_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Empire_Mineral_Extractor_GC",
Parameter_Type = "Rebel_Ground_Mining_Facility_GC",
Parameter_Type = "Rebel_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Rebel_Mineral_Extractor_GC",
Parameter_Type = "Hutts_Ground_Mining_Facility_GC",
Parameter_Type = "Hutts_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Hutt_Mineral_Extractor_GC",
Parameter_Only_Consider_Complete = 1.0})
+
50.0
*
(Variable_Self.HasStructure {Parameter_Type = "Empire_Ground_Mining_Facility_GC",
Parameter_Type = "Empire_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Empire_Mineral_Extractor_GC",
Parameter_Type = "Rebel_Ground_Mining_Facility_GC",
Parameter_Type = "Rebel_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Rebel_Mineral_Extractor_GC",
Parameter_Type = "Hutts_Ground_Mining_Facility_GC",
Parameter_Type = "Hutts_Ground_Mining_Facility_GC_Unlim",
Parameter_Type = "Hutt_Mineral_Extractor_GC",
Parameter_Only_Consider_Complete = 1.0} == 0.0)
)
*
(0.33 + 0.67 * (Function_Is_Connected_To_Enemy.Evaluate == 0))
Variable_Target.OpenStructureSlots
*
(Function_Defense_Level.Evaluate > 5)
*
(Variable_Target.Hints.Chokepoint != 0)
*
Function_Global_Scout_Need.Evaluate
*
(Variable_Target.MaxStructureSlotsUnnormalized >=2)
*
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(0 >= Function_Needs_Better_Buying_Capability_Space.Evaluate)
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(1.0 - Function_Need_Tech_Upgrade_Unblocked.Evaluate)
*
50.0
(
5.0
*
(Variable_Self.IsFaction {Parameter_Faction = "Rebel"})
*
Function_Defense_Level.Evaluate
*
Function_Has_Enough_Bases_For_Tech.Evaluate
+
5.0 * Variable_Target.HasStructure {Parameter_Type = "Ground_Infiltrator_Facility"}
)
*
(2.0 > Variable_Target.StructureCount {Parameter_Type = "Ground_Infiltrator_Facility", Parameter_Only_Consider_Complete = 1.0})
*
(Function_Should_Save_For_Desirable_Structures.Evaluate == 0)
(Variable_Self.PlanetsControlledUnnormalized > 1)
*
(Variable_Self.NumStarbaseOfLevel {Parameter_Level = 1} >= (0.75 * Variable_Self.PlanetsControlledUnnormalized))
*
(Variable_Self.NumGroundbaseOfLevel {Parameter_Level = 1} >= (0.25 * Variable_Self.PlanetsControlledUnnormalized))
(Variable_Self.IsFaction {Parameter_Faction = "Empire"})
*
(1.0 - Variable_Self.HasUnit{Parameter_Type = "Death_Star_II", Parameter_Count = 1, Parameter_Only_Consider_Complete = 1.0})
*
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(
clamp(Function_Has_Enough_Space_Force_Globally.Evaluate +
(Game.Timeline > Variable_Self.TechLevel) * (Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility"}) ,
0.0, 1.0)
*
(
(1 - Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility"}) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "E_Ground_Research_Facility"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "E_Ground_Research_Facility", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility"} *
(Variable_Self.TechLevel == 1) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Primary_Hyperdrive"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Primary_Hyperdrive", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 2) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Shield_Gen"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Shield_Gen", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 3) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Superlaser_Core"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Superlaser_Core", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 4) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Durasteel"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Durasteel", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
)
+
(Variable_Self.TechLevel == 5) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Death_Star_II"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Death_Star_II", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
)
Function_Empire_Should_Upgrade_Tech.Evaluate
*
(
(
(1 - Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility"})
+
Variable_Self.CanAdvanceTech
+
(Variable_Self.TechLevel == 5) * (1.0 - Variable_Self.HasUnit{Parameter_Type = "Death_Star_II"})
)
>= 1.0
)
(5 > Variable_Self.TechLevel) *
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(1.0 - Variable_Self.CanAdvanceTech)
+
(
(1 - Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1}) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "E_Ground_Research_Facility"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 1) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Primary_Hyperdrive"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 2) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Shield_Gen"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 3) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Superlaser_Core"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 4) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "DS_Durasteel"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "E_Ground_Research_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 5) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "Death_Star_II"} >= 0.80)
)
+
Variable_Self.HasUnit{Parameter_Type = "Death_Star_II", Parameter_Only_Consider_Complete = 1}
(Variable_Self.IsFaction {Parameter_Faction = "Hutts"})
*
Function_Has_Enough_Bases_For_Tech.Evaluate
*
(
clamp(Function_Has_Enough_Space_Force_Globally.Evaluate +
(Game.Timeline > Variable_Self.TechLevel) * (Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"}) ,
0.0, 1.0)
*
(
(1 - Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"}) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"} *
(Variable_Self.TechLevel == 1) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_2"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_2", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 2) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_3"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_3", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 3) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_4"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_4", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
+
(Variable_Self.TechLevel == 4) *
((0.7 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_5"}) +
(0.9 >= Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_5", Parameter_Category = AIGoalCategoryType[MajorItem]}) >= 1.0)
)
)
Function_Hutts_Should_Upgrade_Tech.Evaluate
*
(
(
(1 - Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"})
+
Variable_Self.CanAdvanceTech
)
>= 1.0
)
(5 > Variable_Self.TechLevel) *
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1} *
(1.0 - Variable_Self.CanAdvanceTech)
+
(
(1 - Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1}) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "H_Ground_Advanced_Technologies_Facility"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 1) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_2"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 2) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_3"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 3) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_4"} >= 0.8)
+
Variable_Self.HasStructure{Parameter_Type = "H_Ground_Advanced_Technologies_Facility", Parameter_Only_Consider_Complete = 1} *
(Variable_Self.TechLevel == 4) *
(Variable_Self.BudgetFractionToBuild{Parameter_Type = "Hutt_Tech_5"} >= 0.8)
)
(Variable_Self.ActiveGoals {Parameter_Category = AIGoalCategoryType[MajorItem]} > 0)
(Variable_Self.CreditsUnnormalized > 1000)
*
((Variable_Self.NetIncomeUnnormalized > 500) + (Variable_Self.CreditsUnnormalized > 2500))
(Variable_Target.GroundBaseLevelUnnormalized > 1.0)
*
(
(Variable_Self.HasTechToProduce {Parameter_Type = "E_Ground_Heavy_Vehicle_Factory", Parameter_Type = "R_Ground_Heavy_Vehicle_Factory", Parameter_Type = "H_Ground_Factory"})
*
(Function_Need_Heavy_Vehicle_Factory.Evaluate > 10.0)
+
(Variable_Self.HasTechToProduce {Parameter_Type = "E_Ground_Advanced_Vehicle_Factory"})
*
(Function_Need_Advanced_Vehicle_Factory.Evaluate > 10.0)
+
(Variable_Self.HasTechToProduce {Parameter_Type = "Ground_Empire_Hypervelocity_Gun", Parameter_Type = "Ground_Hutts_Hypervelocity_Gun", Parameter_Type = "Ground_Ion_Cannon"})
*
(Function_Needs_Weapon.Evaluate > 15.0)
+
(Variable_Self.HasTechToProduce {Parameter_Type = "E_Ground_Base_Shield_740", Parameter_Type = "E_Ground_Base_Shield_740", Parameter_Type = "H_Ground_Base_Shield_740"})
*
(Function_Needs_Base_Shield.Evaluate > 15.0)
+
(Variable_Self.HasTechToProduce {Parameter_Type = "E_Galactic_Turbolaser_Tower_Defenses", Parameter_Type = "R_Galactic_Turbolaser_Tower_Defenses", Parameter_Type = "H_Galactic_Turbolaser_Tower_Defenses"})
*
(Function_Needs_Turbolasers.Evaluate > 15.0)
)
Variable_Self.PlanetsControlledUnnormalized
Variable_Human.SpaceDefendedPlanets * Variable_Human.PlanetsControlledUnnormalized
Variable_Human.GroundDefendedPlanets * Variable_Human.PlanetsControlledUnnormalized
Variable_Human.PlanetsControlledUnnormalized