From 8afe8b32554ea5a0e15fd25de8f2766df7c62924 Mon Sep 17 00:00:00 2001 From: Sveinung Kvilhaugsvik Date: Sat, 23 Oct 2021 20:10:28 +0200 Subject: [PATCH] sandbox: demonstrate variable city radius. Introduce the Space Elevator small wonder and the Space Elevator Tether. A city with a Space Elevator or a Space Elevator Tether gets expanded city radius, expanded vision radius, more trade and additional trade route slots. The down side is that it works only until you end up at war with someone. A city on the same continent as a player's Space Elevator can build a Space Elevator Tether. See osdn #43128 --- data/sandbox/README.sandbox | 7 ++++ data/sandbox/buildings.ruleset | 73 +++++++++++++++++++++++++++++++++ data/sandbox/effects.ruleset | 74 ++++++++++++++++++++++++++++++++++ data/sandbox/techs.ruleset | 8 ++++ 4 files changed, 162 insertions(+) diff --git a/data/sandbox/README.sandbox b/data/sandbox/README.sandbox index 2bfbd9dc04..fab6753d54 100644 --- a/data/sandbox/README.sandbox +++ b/data/sandbox/README.sandbox @@ -224,3 +224,10 @@ casus belli against you. Chichen Itza wonder City with Chichen Itza wonder can build citybuilder units without paying any population cost for them. + +Space Elevator +A city with a Space Elevator or a Space Elevator Tether gets expanded city +radius, expanded vision radius, more trade and additional trade route slots. +The down side is that it works only until you end up at war with someone. +A city on the same continent as a player's Space Elevator can build a Space +Elevator Tether. diff --git a/data/sandbox/buildings.ruleset b/data/sandbox/buildings.ruleset index f309f5402e..d1dfcb8eed 100644 --- a/data/sandbox/buildings.ruleset +++ b/data/sandbox/buildings.ruleset @@ -1133,6 +1133,41 @@ Before you can build any spaceship parts, the Apollo Program wonder\ must have been built by any player.\ ") +[building_space_elevator_tether] +name = _("Space Elevator Tether") +genus = "Improvement" +reqs = + { "type", "name", "range", "present" + "Tech", "Nanomaterials", "Player", TRUE + "Building", "Space Elevator", "Continent", TRUE + "Building", "Space Elevator", "City", FALSE + } +graphic = "b.space_elevator_tether" +graphic_alt = "b.space_modules" +obsolete_by = + { "type", "name", "range" + } +build_cost = 400 +upkeep = 4 +sabotage = 100 +sound = "b_space_elevator_tether" +sound_alt = "b_generic" +helptext = _("\ +Each tile around the city that is already generating some trade, produces \ +one extra trade resource.\ +"), _("\ +Adds 3 trade route slots to the city. \ +"), _("\ +Increases the city radius of the city. \ +"), _("\ +Increases the city vision radius of the city. \ +"), _("\ +A Space Elevator is too easy for an enemy to destroy to leave operational \ +and fully assembled during war. \ +It is therefore shut down and without any effect if its owner is at war \ +with anyone at all. \ +") + [building_space_module] name = _("Space Module") genus = "Special" @@ -2069,6 +2104,44 @@ Upon completion of this wonder, entertainer specialists' luxury \ output increases to 3 permanently for every nation.\ ") +[building_space_elevator] +name = _("Space Elevator") +genus = "SmallWonder" +reqs = + { "type", "name", "range", "present" + "Tech", "Nanomaterials", "Player", TRUE + "Building", "Apollo Program", "World", TRUE + "Building", "Space Elevator", "Player", FALSE + "TerrainClass", "Oceanic", "City", TRUE + ; Uncomment if someone implements gna patch #4390 + ;"MaxLatitude", "5", "Local", TRUE + } +graphic = "b.space_elevator" +graphic_alt = "b.space_structural" +obsolete_by = + { "type", "name", "range" + } +build_cost = 800 +upkeep = 0 +sabotage = 0 +sound = "w_space_elevator" +sound_alt = "w_generic" +helptext = _("\ +Each tile around the city that is already generating some trade, produces \ +one extra trade resource.\ +"), _("\ +Adds 3 trade route slots to the city. \ +"), _("\ +Increases the city radius of the city. \ +"), _("\ +Increases the city vision radius of the city. \ +"), _("\ +A Space Elevator is too easy for an enemy to destroy to leave operational \ +and fully assembled during war. \ +It is therefore shut down and without any effect if its owner is at war \ +with anyone at all. \ +") + [building_statue_of_liberty] name = _("Statue of Liberty") genus = "GreatWonder" diff --git a/data/sandbox/effects.ruleset b/data/sandbox/effects.ruleset index 0cab2c674d..af469de04f 100644 --- a/data/sandbox/effects.ruleset +++ b/data/sandbox/effects.ruleset @@ -386,6 +386,80 @@ reqs = "Tech", "University", "Player", FALSE } +[effect_elevator_trade] +type = "Output_Inc_Tile" +value = 1 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator", "City", TRUE + "DiplRel", "War", "Player", FALSE + "OutputType", "Trade", "Local", TRUE + } + +[effect_elevator_trade_routes] +type = "Max_Trade_Routes" +value = 3 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + +[effect_elevator_city_radius] +type = "City_Radius_Sq" +value = 5 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + +[effect_elevator_city_vision] +type = "City_Vision_Radius_Sq" +value = 5 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + +[effect_elevator_tether_trade] +type = "Output_Inc_Tile" +value = 1 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator Tether", "City", TRUE + "DiplRel", "War", "Player", FALSE + "OutputType", "Trade", "Local", TRUE + } + +[effect_elevator_tether_trade_routes] +type = "Max_Trade_Routes" +value = 3 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator Tether", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + +[effect_elevator_tether_city_radius] +type = "City_Radius_Sq" +value = 5 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator Tether", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + +[effect_elevator_tether_city_vision] +type = "City_Vision_Radius_Sq" +value = 5 +reqs = + { "type", "name", "range", "present" + "Building", "Space Elevator Tether", "City", TRUE + "DiplRel", "War", "Player", FALSE + } + ; Base vision range - radius of vision is sqrt(5) = 2.24 [effect_city_vision] type = "City_Vision_Radius_Sq" diff --git a/data/sandbox/techs.ruleset b/data/sandbox/techs.ruleset index f11c51b019..a5f1905f15 100644 --- a/data/sandbox/techs.ruleset +++ b/data/sandbox/techs.ruleset @@ -581,6 +581,14 @@ graphic = "a.mysticism" graphic_alt = "-" helptext = _("Improves the effect of Temples.") +[advance_nanomaterials] +name = _("Nanomaterials") +req1 = "Plastics" +req2 = "Computers" +flags = "" +graphic = "a.nanomaterials" +graphic_alt = "a.plastics" + [advance_navigation] name = _("Navigation") req1 = "Invention" -- 2.30.2