Open source Star Ruler 2 source code!

This commit is contained in:
Lucas de Vries
2018-07-17 14:15:37 +02:00
commit cc307720ff
4342 changed files with 2365070 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
Construction: ArtificialMoon
Name: #CONS_ARTIFICIAL_MOON
Description: #CONS_ARTIFICIAL_MOON_DESC
Category: Infrastructure
Build Cost: 750
Labor Cost: 50
RequirePlanet()
ConsumeCargo(Ore, 1000)
OnStart(AddStatus(ArtificialMoon))
OnCancel(RemoveStatusInstance(ArtificialMoon))
RequireNotStatus(ArtificialMoon)
RequireUnlockTag(ArtificialMoonUnlock)
AddSurfaceArea(Moon, (6, 10))
AddMoonGraphic(4)
+15
View File
@@ -0,0 +1,15 @@
Construction: FlareBomb
Name: #CONS_FLARE_BOMB
Description: #CONS_FLARE_BOMB_DESC
Category: Military
Labor Cost: 500
Build Cost: 1000
SpawnShip(Flare Bomb, Creeps)
ConsumeCargo(Ore, 10000)
ConsumeEnergy(1500)
RequireUnlockTag(FlareBombUnlock)
@@ -0,0 +1,23 @@
Construction: MechanoidPopulation
Name: #MECH_BUILD_POPULATION
Description: #MECH_BUILD_POPULATION_DESC
Category: Infrastructure
Labor Cost: 5
Build Cost: 100
Always Borrowable: True
RequireTrait(Mechanoid)
RequirePlanet()
GivePopulation(1)
SlowDownDebtGrowthFactor() #version>=117
OnStart(ModAttribute(MechPopulationQueued, Add, 1))
OnCancel(ModAttribute(MechPopulationQueued, Add, -1))
ModAttribute(MechPopulationQueued, Add, -1)
AddBuildCostTotalPopulation(Add = -6, Add Attribute = MechPopulationQueued, Power = 0.5, Multiply = 10)
AddLaborCostTotalPopulation(Add = -6, Add Attribute = MechPopulationQueued, Power = 0.5, Multiply = 2)
AddLaborCostTotalPopulation(Add = -6, Add Attribute = MechPopulationQueued, Power = 0.33, Multiply = 2.5)
+17
View File
@@ -0,0 +1,17 @@
Construction: MoonBase
Name: #CONS_MOON_BASE
Description: #CONS_MOON_BASE_DESC
Category: Infrastructure
Time Cost: 120
Build Cost: 500
RequireMoreMoonsThanStatus(MoonBase)
RequireNotTrait(StarChildren)
OnStart(AddStatus(MoonBase))
OnCancel(RemoveStatusInstance(MoonBase))
AddSurfaceArea(Moon, (5, 5))
TriggerGeneric(AddMaxPopulation(2))
+20
View File
@@ -0,0 +1,20 @@
Construction: Troops
Name: #CONS_TROOPS
Description: #CONS_TROOPS_DESC
Category: Military
In Context: True
Target: targ = Object
RequireSubsystemUnlocked(TroopPods)
TargetFilterSameRegion(targ)
TargetFilterType(targ, Ship)
TargetFilterDesignTag(targ, Troops)
TargetFilterFewerStatusesThanVar(targ, Troops, Sys.TroopStorage)
AddBuildCostTargetVar(targ, Sys.TroopCost)
AddLaborCostTargetVar(targ, Sys.TroopLabor)
Trigger(targ, AddStatus(Troops))
+21
View File
@@ -0,0 +1,21 @@
Construction: Warhead
Name: #CONS_WARHEAD
Description: #CONS_WARHEAD_DESC
Category: Military
In Context: True
Target: targ = Object
RequireSubsystemUnlocked(Warhead)
TargetFilterSameRegion(targ)
TargetFilterType(targ, Ship)
TargetFilterDesignTag(targ, Warhead)
TargetFilterFewerStatusesThanVar(targ, Warhead, Sys.WarheadStorage)
AddBuildCostTargetVar(targ, Sys.WarheadCost)
AddLaborCostTargetVar(targ, Sys.WarheadLabor)
Trigger(targ, AddStatus(Warhead))
@@ -0,0 +1,19 @@
Construction: BeaconArmor
Name: #CONS_BEACON_ARMOR
Description: #CONS_BEACON_ARMOR_DESC
Category: Beacons
Build Cost: 300
Time Cost: 80
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconArmorUpgradeCost, Add, 1))
OnCancel(ModAttribute(BeaconArmorUpgradeCost, Add, -1))
ConsumeCargoAttribute(Ore, BeaconArmorUpgradeCost, Multiply = 1000, Base Amount = 1000)
ModAttribute(BeaconArmorUpgrades, Add, 1)
AddBuildCostAttribute(BeaconArmorUpgradeCost, Multiply = 100)
@@ -0,0 +1,28 @@
Construction: BeaconAsteroidMorph
Name: #CONS_BEACON_ASTEROID_MORPH
Description: #CONS_BEACON_ASTEROID_MORPH_DESC
Category: Upgrades
In Context: True
Build Cost: 500
Labor Cost: 10
Target: roid = Object
TargetFilterType(roid, Asteroid)
TargetFilterHasTradePresence(roid, Allow Adjacent = False)
TargetFilterHasCargoStored(roid)
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconAsteroidMorphCost, Add, 1))
OnCancel(ModAttribute(BeaconAsteroidMorphCost, Add, -1))
Trigger(roid, SpawnAsteroids(1, Distance = 0, Resource Only = True))
Trigger(roid, Destroy())
ConsumeCargoAttribute(ResearchCargo, BeaconAsteroidMorphCost, Multiply = 200, Base Amount = 300)
ConsumeCargoAttribute(EnergyCargo, BeaconAsteroidMorphCost, Multiply = 200, Base Amount = 300)
AddBuildCostAttribute(BeaconAsteroidMorphCost, Multiply = 100)
AddLaborCostAttribute(BeaconAsteroidMorphCost, Multiply = 15)
@@ -0,0 +1,26 @@
Construction: BeaconCultivate
Name: #CONS_BEACON_CULTIVATE
Description: #CONS_BEACON_CULTIVATE_DESC
Category: Upgrades
In Context: True
Build Cost: 500
Labor Cost: 10
Target: planet = Object
TargetFilterType(planet, Planet)
TargetFilterOwned(planet)
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconCultivateCost, Add, 1))
OnCancel(ModAttribute(BeaconCultivateCost, Add, -1))
Trigger(planet, AddPlanetResource(Soylent2))
Trigger(planet, AddMaxPopulation(-1))
ConsumeCargoAttribute(ResearchCargo, BeaconCultivateCost, Multiply = 250, Base Amount = 500)
AddBuildCostAttribute(BeaconCultivateCost, Multiply = 100)
AddLaborCostAttribute(BeaconCultivateCost, Multiply = 10)
@@ -0,0 +1,26 @@
Construction: BeaconFleetUpgrade
Name: #CONS_BEACON_FLEET_UPGRADE
Description: #CONS_BEACON_FLEET_UPGRADE_DESC
Category: Upgrades
In Context: True
Build Cost: 300
Labor Cost: 10
Target: ship = Object
TargetFilterFlagship(ship, Allow Stations = False)
TargetFilterOwned(ship)
TargetFilterNotStatus(ship, HeraldsFleetUpgrade)
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconFleetUpgradeCost, Add, 1))
OnCancel(ModAttribute(BeaconFleetUpgradeCost, Add, -1))
Trigger(ship, AddStatus(HeraldsFleetUpgrade))
ConsumeCargoAttribute(EnergyCargo, BeaconFleetUpgradeCost, Multiply = 200, Base Amount = 400)
AddBuildCostAttribute(BeaconFleetUpgradeCost, Multiply = 100)
AddLaborCostAttribute(BeaconFleetUpgradeCost, Multiply = 15)
@@ -0,0 +1,27 @@
Construction: BeaconGuide
Name: #CONS_BEACON_GUIDE
Description: #CONS_BEACON_GUIDE_DESC
Category: Actions
In Context: True
Labor Cost: 50
Target: targ = Object
TargetFilterType(targ, Star)
TargetRequireVision(targ, Region Vision = True)
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconGuideCost, Add, 1))
OnCancel(ModAttribute(BeaconGuideCost, Add, -1))
ConsumeCargoAttribute(Ore, BeaconGuideCost, Multiply = 10000, Base Amount = 5000)
ConsumeCargoAttribute(EnergyCargo, BeaconGuideCost, Multiply = 1000, Base Amount = 500)
ConsumeCargoAttribute(DefenseCargo, BeaconGuideCost, Multiply = 1000, Base Amount = 500)
ConsumeCargoAttribute(ResearchCargo, BeaconGuideCost, Multiply = 1000, Base Amount = 500)
AddLaborCostAttribute(BeaconGuideCost, Multiply = 50)
Trigger(targ, SpawnOrbital(Beacon, In Orbit = True))
GiveAchievement(ACH_BEACON)
@@ -0,0 +1,19 @@
Construction: BeaconHealth
Name: #CONS_BEACON_HEALTH
Description: #CONS_BEACON_HEALTH_DESC
Category: Beacons
Build Cost: 300
Time Cost: 60
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconHealthUpgradeCost, Add, 1))
OnCancel(ModAttribute(BeaconHealthUpgradeCost, Add, -1))
ConsumeCargoAttribute(DefenseCargo, BeaconHealthUpgradeCost, Multiply = 500, Base Amount = 500)
ModAttribute(BeaconHealthUpgrades, Add, 1)
AddBuildCostAttribute(BeaconHealthUpgradeCost, Multiply = 100)
@@ -0,0 +1,19 @@
Construction: BeaconLabor
Name: #CONS_BEACON_LABOR
Description: #CONS_BEACON_LABOR_DESC
Category: Beacons
Build Cost: 300
Time Cost: 80
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconLaborUpgradeCost, Add, 1))
OnCancel(ModAttribute(BeaconLaborUpgradeCost, Add, -1))
ConsumeCargoAttribute(ResearchCargo, BeaconLaborUpgradeCost, Multiply = 500, Base Amount = 250)
ModAttribute(BeaconLaborUpgrades, Add, 1)
AddBuildCostAttribute(BeaconLaborUpgradeCost, Multiply = 100)
@@ -0,0 +1,19 @@
Construction: BeaconTargetColonize
Name: #CONS_BEACON_TARGET_COLONIZE
Description: #CONS_BEACON_TARGET_COLONIZE_DESC
Category: Actions
In Context: True
Build Cost: 500
Time Cost: 20
Target: targ = Object
TargetFilterType(targ, Planet)
TargetFilterNotQuarantined(targ)
TargetFilterNotSelf(targ)
ForClient(Either(TargetFilterSpace(targ), TargetFilterOwned(targ)))
RequireOnOrbital(Beacon)
Trigger(targ, gameplay.extragalactic::TriggerRefugees())
@@ -0,0 +1,19 @@
Construction: BeaconWeapons
Name: #CONS_BEACON_WEAPONS
Description: #CONS_BEACON_WEAPONS_DESC
Category: Beacons
Build Cost: 300
Time Cost: 60
RequireOnOrbital(Beacon)
OnStart(ModAttribute(BeaconWeaponUpgradeCost, Add, 1))
OnCancel(ModAttribute(BeaconWeaponUpgradeCost, Add, -1))
ConsumeCargoAttribute(DefenseCargo, BeaconWeaponUpgradeCost, Multiply = 750, Base Amount = 750)
ModAttribute(BeaconWeaponUpgrades, Add, 1)
AddBuildCostAttribute(BeaconWeaponUpgradeCost, Multiply = 100)
@@ -0,0 +1,17 @@
Construction: CannibalizePlanet
Name: #CONS_CANNIBALIZE_PLANET
Description: #CONS_CANNIBALIZE_PLANET_DESC
Category: Infrastructure
Target: planet = Object
TargetFilterSameRegion(planet)
TargetFilterType(planet, Planet)
TargetFilterSpace(planet)
Time Cost: 30
RequireStatus(StarForge)
Trigger(planet, Destroy(Quiet = True))
AddCargo(Ore, 5000)
AddStoredLabor(250, Obey Capacity = False)
@@ -0,0 +1,17 @@
Construction: PlanetoidUpgrade
Name: #CONS_PLANETOID_UPGRADE
Description: #CONS_PLANETOID_UPGRADE_DESC
Category: Infrastructure
RequireStatus(ArtificialPlanetoid)
OnStart(AddStatus(ArtificialPlanetoid))
OnCancel(RemoveStatusInstance(ArtificialPlanetoid))
ConsumeCargoStatusCount(Ore, ArtificialPlanetoid, 1500, Allow Cancel = True)
AddBuildCostStatusCount(ArtificialPlanetoid, 500)
AddLaborCostStatusCount(ArtificialPlanetoid, 50)
AddSurfaceArea(Artificial, (4, 8))
RequireNotTrait(StarChildren)
@@ -0,0 +1,15 @@
Construction: StarForgeUpgrade
Name: #CONS_STARFORGE_UPGRADE
Description: #CONS_STARFORGE_UPGRADE_DESC
Category: Infrastructure
OnStart(AddStatus(StarForgeUpgrade))
OnCancel(RemoveStatusInstance(StarForgeUpgrade))
ConsumeCargoStatusCount(Ore, StarForgeUpgrade, 1000, Allow Cancel = True)
AddBuildCostStatusCount(StarForgeUpgrade, 400)
AddLaborCostStatusCount(StarForgeUpgrade, 50)
RequireStatus(StarForge)
AddStatus(StarForge)