
; Modifying this file:
; You should not modify this file except to make bugfixes or
; for other "maintenance".  If you want to make custom changes,
; you should create a new datadir subdirectory and copy this file
; into that directory, and then modify that copy.  Then use the
; command "rulesetdir <mysubdir>" in the server to have freeciv
; use your new customized file.

; Note that the freeciv AI may not cope well with anything more
; than minor changes.

[datafile]
description="Multiplayer terrain data for Freeciv"
options="+Freeciv-2.6-ruleset"

[control]
; Names for custom terrain flags. There can be up to 8 of these.
; name          = rule name; In some circumstances user may see this
;                 as part of some sentences, so try to make it descriptive
;                 and sensible.
; helptxt       = displayed in the help for terrains with this flag (optional)
flags =
  { "name", "helptxt"
    _("Oil"), _("Has Oil Well instead of Mine.")
    _("NoPollution"), _("No Pollution nor Fallout appear here.")
  }

[parameters]

; Percentage of "land" tiles required to be adjacent to a water tile before
; it may be "reclaimed" into a land tile (0-101; 0=anywhere, default 101=nowhere)
ocean_reclaim_requirement = 30

; Percentage of "water" tiles required to be adjacent to a land tile before
; it may be "channeled" into a water tile (0-101; 0=anywhere, default 101=nowhere)
land_channel_requirement = 10

; Percentage of unfrozen tiles (no "Frozen" flag) required to be adjacent
; to a frozen tile before it can thaw (0-101; 0=anywhere, default 101=nowhere)
thaw_requirement = 0

; Percentage of frozen tiles ("Frozen" flag) required to be adjacent to an
; unfrozen tile before it can freeze (0-101; 0=anywhere, default 101=nowhere)
freeze_requirement = 0

; Bodies of water up to this size are considered freshwater lakes, if there is
; also terrain type(s) with flag "FreshWater" in the ruleset.
lake_max_size = 14

; How many native tiles first startunit must be able to reach.
; 0 to disable check.
min_start_native_area = 0

; How many fragments each movement point has.
; For example road movement costs are relative to this.
move_fragments = 3

; How many move_fragments IgTer unit movement costs
igter_cost = 1

; Whether diagonal movement has increased cost (no effect with hex topology)
; The cost increase is more accurate with larger values for move_fragments
pythagorean_diagonal = FALSE

; There is no resources in the middle of the oceans, only near coast
ocean_resources = FALSE

; /* <-- avoid gettext warnings
;
; The individual terrain types, one per section.
; Roughly sorted by identifier.
; The actual tag used (the * in [terrain_*]) must be unique for each terrain,
; and may be used in debug output when reading this file.
;
; Notes:
;
; name                 = translatable name as seen by user
; rule_name            = (optional) internal name for savegames, rulesets etc;
;                        if not present, "name" is used for this purpose too.
;                        Since the name used in savegames must not change, if
;                        you want to rename an item after a ruleset has been
;                        released, you should set "rule_name" to the original
;                        value of "name".
; graphic              = preferred graphic; Tilespec [tile_*] section
;                        with 'tag' matching this will be used.
; graphic_alt          = alternate graphic. When no tilespec 'tag' matching
;                        preferred graphic is not found, this will be used.
;                        Otherwise may be "-"
; identifier           = single-character identifier used in savegames. This
;                        must be unique for each terrain.
; class                = Terrain class terrain belongs to: "Land" or "Oceanic"
; movement_cost        = in whole movement points, not move_fragments;
;                        typically 1 to 3
; defense_bonus        = percent added to defense; typically 0% to 200%
; food                 = normal food production
; shield               = normal shield production
; trade                = normal trade production
; resources            = list of possible resources on this terrain
; road_food_incr_pct   = percent of road food_incr applied to this terrain
; road_shield_incr_pct = percent of road shield_incr applied to this terrain
; road_trade_incr_pct  = percent of road trade_incr applied to this terrain
; base_time            = time to build bases; if 0, cannot build any bases.
;                        Nonzero values only affect extras with build_time 0.
; road_time            = time to build roads; if 0, cannot build any roads.
;                        Nonzero values only affect extras with build_time 0.
; irrigation_result    = result of 'irrigate' activity; one of:
;                        "no"  -- cannot irrigate
;                        "yes" -- can build extra
;                        terrain rule_name -- irrigation changes to that
;                          terrain
; irrigation_food_incr = increment to food if tile is 100% irrigated
;                        (actual bonus controlled by Irrigation_Pct effect)
; irrigation_time      = time for 'irrigate' activity; if 0, cannot irrigate
;                        Nonzero values only affect extras with build_time 0.
;                        Such extras can modify time with build_time_factor.
; mining_result        = result of 'mine' activity; one of:
;                        "no"  -- cannot mine
;                        "yes" -- can build extra
;                        terrain rule_name -- mining changes to that terrain
; mining_shield_incr   = increment to shields if tile is 100% mined
;                        (actual bonus controlled by Mining_Pct effect)
; mining_time          = time for 'mine' activity; if 0, cannot mine
;                        Nonzero values only affect extras with build_time 0.
;                        Such extras can modify time with build_time_factor.
; transform_result     = result of transformation; one of:
;                        "no"  -- cannot transform
;                        terrain rule_name -- transformation changes to that
;                          terrain
; transform_time       = time to transform; if 0, cannot transform
; pillage_time         = time to pillage extra from the tile (0 = impossible)
;                        Nonzero values only affect extras with removal_time 0.
; clean_pollution_time = time for 'clean pollution' activity (0 = impossible)
;                        Nonzero values only affect extras with removal_time 0.
; clean_fallout_time   = time for 'clean fallout' activity (0 = impossible)
;                        Nonzero values only affect extras with removal_time 0.
; animal               = unit type that can appear as animal on the terrain
; warmer_wetter_result = result of global warming for wet terrains; one of:
;                        "no"  -- no change; does not count for warming
;                        "yes" -- no change; counts for warming
;                        terrain rule_name -- warming changes to that terrain
; warmer_drier_result  = result of global warming for dry terrains;
;                        see warmer_wetter_result
; cooler_wetter_result = result of nuclear winter for wet terrains;
;                        see warmer_wetter_result
; cooler_drier_result  = result of nuclear winter for dry terrains;
;                        see warmer_wetter_result
; native_to            = List of unit classes that can move here
; flags                = General flags for this terrain. List taken from the
;                        following, and/or any user flags defined above:
;   - NoBarbs          = Barbarians will not be spawned here.
;   - NoCities         = Cities may not be built or found on this terrain.
;   - Starter          = Players will only be started on "Starter" terrain.
;                        (Currently this cannot be Oceanic terrain.)
;   - CanHaveRiver     = Set to 1 if this terrain can have river on it (the
;                        actual chance of river generation is controlled
;                        separately).
;   - UnsafeCoast      = This terrain does not provide a safe voyage for
;                        units with flag "Trireme"
;   - FreshWater       = This terrain is used for small bodies of water.
;                        If this becomes adjacent to non-FreshWater terrain,
;                        the whole contiguous FreshWater area will be flooded
;                        with the non-FreshWater terrain.
;   - NotGenerated     = Map generator never places this terrain type. It can
;                        be added from editor only, or by ingame events
;                        (lua scripting)
;   - NoZoc            = Units on this terrain are not generating or subject
;                        to zoc
;   - NoFortify        = Units cannot fortify on this terrain
;   - Frozen           = Frozen/polar terrain. For water tiles, Frozen terrain
;                        is generated near poles. Conversion between frozen
;                        and unfrozen terrain can be controlled with
;                        thaw_requirement/freeze_requirement, and Frozen
;                        terrain is shown differently on the overview map.
; property_*           = specific property % values used by mapgen. Most
;                        terrains will have 0 for most values. Properties
;                        other than ocean_depth are only used for land tiles.
;  - mountainous       = degree to which this terrain is mountainous
;  - green             = how much life this terrain has
;  - foliage           = how much thick undergrowth the terrain has
;  - tropical          = how "tropical" the terrain is (high temperature)
;  - temperate         = how "temperate" the terrain is (med temperature)
;  - cold              = how "cold" the terrain is (low temperature)
;  - frozen            = how "frozen" the terrain is (very low temperature)
;                        (does not necessarily have to have the "Frozen" flag)
;  - wet               = how "wet" the terrain is (moisture)
;  - dry               = how "dry" the terrain is (moisture)
;  - ocean_depth       = the depth of an ocean, as an average level
; color.r              = color of the terrain (red value)
; color.g              = color of the terrain (green value)
; color.b              = color of the terrain (blue value)
; helptext             = optional help text string; should escape all raw
;                        newlines so that xgettext parsing works
;
; */ <-- avoid gettext warnings

[terrain_inaccesible]
name                 = _("Inaccessible")
graphic              = "inaccessible"
graphic_alt          = "arctic"
identifier           = "i"
class                = "Land"
movement_cost        = 0
defense_bonus        = 0
food                 = 0
shield               = 0
trade                = 0
road_food_incr_pct   = 0
road_shield_incr_pct = 0
road_trade_incr_pct  = 0
base_time            = 0
road_time            = 0
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "no"
mining_shield_incr   = 0
mining_time          = 0
transform_result     = "no"
transform_time       = 0
pillage_time         = 0
clean_pollution_time = 0
clean_fallout_time   = 0
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "no"
cooler_wetter_result = "no"
cooler_drier_result  = "no"
flags                = "NotGenerated", "NoPollution", "NoCities", "UnsafeCoast", "Frozen"
color.r              = 25
color.g              = 25
color.b              = 25
helptext             = _("\
No unit can enter this terrain, nor can any city work its tiles.\
")

[terrain_lake]
name                 = _("Lake")
graphic              = "lake"
graphic_alt          = "coast"
identifier           = "+"
class                = "Oceanic"
movement_cost        = 1
defense_bonus        = 0
food                 = 1
shield               = 0
trade                = 2
resources            = "Fish"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 0
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "no"
mining_shield_incr   = 0
mining_time          = 0
transform_result     = "Swamp"
transform_time       = 36
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "Swamp"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "Tundra"
native_to            = "Sea", "Air", "Missile", "Helicopter", "Trireme"
flags                = "NoCities", "NoBarbs", "NoPollution", "FreshWater", "NoZoc", "NoFortify"
property_ocean_depth = 0
color.r              = 46
color.g              = 120
color.b              = 182
helptext             = _("\
Lakes are substantial bodies of fresh water.\
")

[terrain_ocean]
name                 = _("Ocean")
graphic              = "coast"
graphic_alt          = "-"
identifier           = " "
class                = "Oceanic"
movement_cost        = 1
defense_bonus        = 0
food                 = 1
shield               = 0
trade                = 2
resources            = "Fish", "Whales"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 0
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "no"
mining_shield_incr   = 0
mining_time          = 0
transform_result     = "Swamp"
transform_time       = 36
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "Swamp"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "Glacier"
native_to            = "Sea", "Air", "Missile", "Helicopter", "Trireme"
flags                = "NoCities", "NoPollution", "UnsafeCoast", "NoZoc", "NoFortify"
property_ocean_depth = 32
color.r              = 0
color.g              = 46
color.b              = 137
helptext             = _("\
Shallow oceans are mostly found near coastlines, and are often rich\
 sources of food and other resources.\
")

[terrain_deep_ocean]
name                 = _("Deep Ocean")
graphic              = "floor"
graphic_alt          = "coast"
identifier           = ":"
class                = "Oceanic"
movement_cost        = 1
defense_bonus        = 0
food                 = 1
shield               = 0
trade                = 2
;resources            = "none"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 0
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "no"
mining_shield_incr   = 0
mining_time          = 0
transform_result     = "no"
transform_time       = 0
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "no"
cooler_wetter_result = "no"
cooler_drier_result  = "no"
native_to            = "Sea", "Air", "Missile", "Helicopter"
flags                = "NoCities", "NoPollution", "UnsafeCoast", "NoZoc", "NoFortify"
property_ocean_depth = 87
color.r              = 0
color.g              = 33
color.b              = 129
helptext             = _("\
Deep oceans cover much of the world away from coastlines, and only\
 seaworthy units (not including Triremes) can travel on them.\
")

[terrain_glacier]
name                 = _("Glacier")
graphic              = "arctic"
graphic_alt          = "-"
identifier           = "a"
class                = "Land"
movement_cost        = 2
defense_bonus        = 0
food                 = 0
shield               = 0
trade                = 0
resources            = "Ivory", "Oil"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 4
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "yes"
mining_shield_incr   = 1
mining_time          = 10
transform_result     = "Tundra"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Tundra"
warmer_drier_result  = "Tundra"
cooler_wetter_result = "no"
cooler_drier_result  = "no"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "NoBarbs", "NoCities", "CanHaveRiver", "Oil", "Frozen"
property_frozen      = 100
color.r              = 232
color.g              = 232
color.b              = 232
helptext             = _("\
Glaciers are found only in the most northerly or southerly\
 reaches of the world.  They are very cold, and hence difficult to\
 work with.\
"), _("\
Oil wells can be built when Refining is known.\
")

[terrain_desert]
name                 = _("Desert")
graphic              = "desert"
graphic_alt          = "-"
identifier           = "d"
class                = "Land"
movement_cost        = 1
defense_bonus        = 0
food                 = 0
shield               = 1
trade                = 0
resources            = "Oasis", "Oil"
road_trade_incr_pct  = 100
base_time            = 1
road_time            = 2
irrigation_result    = "yes"
irrigation_food_incr = 1
irrigation_time      = 5
mining_result        = "yes"
mining_shield_incr   = 1
mining_time          = 5
transform_result     = "Plains"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Grassland"
warmer_drier_result  = "no"
cooler_wetter_result = "Plains"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "CanHaveRiver", "Oil"
property_dry         = 100
property_tropical    = 50
property_temperate   = 20
color.r              = 214
color.g              = 185
color.b              = 106
helptext             = _("\
Deserts are regions of extreme dryness, making agriculture and\
 trade very difficult.\
"), _("\
Oil wells can be built when Construction is known.\
")

[terrain_forest]
name                 = _("Forest")
graphic              = "forest"
graphic_alt          = "-"
identifier           = "f"
class                = "Land"
movement_cost        = 2
defense_bonus        = 50
food                 = 1
shield               = 2
trade                = 0
resources            = "Pheasant", "Silk"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 4
irrigation_result    = "Plains"
irrigation_food_incr = 0
irrigation_time      = 5
mining_result        = "Swamp"
mining_shield_incr   = 0
mining_time          = 15
transform_result     = "Grassland"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Jungle"
warmer_drier_result  = "Plains"
cooler_wetter_result = "Swamp"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "Starter", "CanHaveRiver"
property_cold        = 20
property_wet         = 20
property_foliage     = 50
property_temperate   = 50
color.r              = 43
color.g              = 107
color.b              = 19
helptext             = _("\
Forests are densely wooded, making agriculture somewhat\
 problematic.\
")

[terrain_grassland]
name                 = _("Grassland")
graphic              = "grassland"
graphic_alt          = "-"
identifier           = "g"
class                = "Land"
movement_cost        = 1
defense_bonus        = 0
food                 = 2
shield               = 0
trade                = 0
resources            = "Resources"
road_trade_incr_pct  = 100
base_time            = 1
road_time            = 2
irrigation_result    = "yes"
irrigation_food_incr = 1
irrigation_time      = 5
mining_result        = "Forest"
mining_shield_incr   = 0
mining_time          = 10
transform_result     = "Hills"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Lake"
warmer_drier_result  = "Desert"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "Starter", "CanHaveRiver"
property_green       = 50
property_temperate   = 50
color.r              = 11
color.g              = 138
color.b              = 4
helptext             = _("\
Grasslands afford exceptional agricultural opportunities.\
")

[terrain_hills]
name                 = _("Hills")
graphic              = "hills"
graphic_alt          = "-"
identifier           = "h"
class                = "Land"
movement_cost        = 2
defense_bonus        = 100
food                 = 1
shield               = 0
trade                = 0
resources            = "Coal", "Wine"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 4
irrigation_result    = "yes"
irrigation_food_incr = 1
irrigation_time      = 10
mining_result        = "yes"
mining_shield_incr   = 3
mining_time          = 10
transform_result     = "Plains"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "no"
cooler_wetter_result = "no"
cooler_drier_result  = "no"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "Starter", "CanHaveRiver"
property_green       = 50
property_mountainous = 30
color.r              = 24
color.g              = 97
color.b              = 5
helptext             = _("\
In addition to being amenable to agriculture, Hills are frequently\
 rich in resources.\
")

[terrain_jungle]
name                 = _("Jungle")
graphic              = "jungle"
graphic_alt          = "-"
identifier           = "j"
class                = "Land"
movement_cost        = 2
defense_bonus        = 50
food                 = 1
shield               = 0
trade                = 0
resources            = "Gems", "Fruit"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 4
irrigation_result    = "Grassland"
irrigation_food_incr = 0
irrigation_time      = 15
mining_result        = "Forest"
mining_shield_incr   = 0
mining_time          = 15
transform_result     = "Plains"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Lake"
warmer_drier_result  = "Desert"
cooler_wetter_result = "Swamp"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "CanHaveRiver"
property_foliage     = 50
property_tropical    = 50
property_wet         = 50
color.r              = 55
color.g              = 156
color.b              = 38
helptext             = _("\
Jungles are densely overgrown, making agriculture somewhat\
 problematic.\
")

[terrain_mountains]
name                 = _("Mountains")
graphic              = "mountains"
graphic_alt          = "-"
identifier           = "m"
class                = "Land"
movement_cost        = 3
defense_bonus        = 200
food                 = 0
shield               = 1
trade                = 0
resources            = "Gold", "Iron"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 6
irrigation_result    = "no"
irrigation_food_incr = 0
irrigation_time      = 0
mining_result        = "yes"
mining_shield_incr   = 1
mining_time          = 10
transform_result     = "Hills"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "no"
warmer_drier_result  = "no"
cooler_wetter_result = "no"
cooler_drier_result  = "no"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "CanHaveRiver"
property_mountainous = 70
color.r              = 129
color.g              = 127
color.b              = 118
helptext             = _("\
Mountains are regions of extreme altitude, making agriculture and\
 trade very difficult.\
")

[terrain_plains]
name                 = _("Plains")
graphic              = "plains"
graphic_alt          = "-"
identifier           = "p"
class                = "Land"
movement_cost        = 1
defense_bonus        = 0
food                 = 1
shield               = 1
trade                = 0
resources            = "Buffalo", "Wheat"
road_trade_incr_pct  = 100
base_time            = 1
road_time            = 2
irrigation_result    = "yes"
irrigation_food_incr = 1
irrigation_time      = 5
mining_result        = "Forest"
mining_shield_incr   = 0
mining_time          = 15
transform_result     = "Grassland"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Lake"
warmer_drier_result  = "Desert"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "Starter", "CanHaveRiver"
property_green       = 50
property_temperate   = 50
color.r              = 122
color.g              = 156
color.b              = 46
helptext             = _("\
Plains are very broad, sparse regions, which makes trade slightly\
 inconvenient.\
")

[terrain_swamp]
name                 = _("Swamp")
graphic              = "swamp"
graphic_alt          = "-"
identifier           = "s"
class                = "Land"
movement_cost        = 2
defense_bonus        = 50
food                 = 1
shield               = 0
trade                = 0
resources            = "Peat", "Spice"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 4
irrigation_result    = "Grassland"
irrigation_food_incr = 0
irrigation_time      = 15
mining_result        = "Forest"
mining_shield_incr   = 0
mining_time          = 15
transform_result     = "Lake"
transform_time       = 36
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Lake"
warmer_drier_result  = "Desert"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "Tundra"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "CanHaveRiver"
property_wet         = 100
property_tropical    = 10
property_temperate   = 10
property_cold        = 10
color.r              = 48
color.g              = 85
color.b              = 97
helptext             = _("\
Swamps suffer from an over-abundance of water, making agriculture\
 somewhat problematic.\
")

[terrain_tundra]
name                 = _("Tundra")
graphic              = "tundra"
graphic_alt          = "-"
identifier           = "t"
class                = "Land"
movement_cost        = 1
defense_bonus        = 0
food                 = 1
shield               = 0
trade                = 0
resources            = "Game", "Furs"
road_trade_incr_pct  = 0
base_time            = 1
road_time            = 2
irrigation_result    = "yes"
irrigation_food_incr = 1
irrigation_time      = 5
mining_result        = "no"
mining_shield_incr   = 0
mining_time          = 0
transform_result     = "Desert"
transform_time       = 24
pillage_time         = 1
clean_pollution_time = 3
clean_fallout_time   = 3
animal               = "None"
warmer_wetter_result = "Lake"
warmer_drier_result  = "Desert"
cooler_wetter_result = "Glacier"
cooler_drier_result  = "no"
native_to            = "Land", "Air", "Missile", "Helicopter"
flags                = "Starter", "NoBarbs", "CanHaveRiver"
property_cold        = 50
color.r              = 188
color.g              = 188
color.b              = 188
helptext             = _("\
Tundra are broad, cold regions, fit for some agriculture and little\
 else.\
")

; The individual resource types, one per section.
; Roughly sorted by identifier.
; The actual tag used (the * in [resource_*]) must be unique for each resource,
; and may be used in debug output when reading this file.
;
; Notes:
;
; name                 = name as seen by user
; graphic              = tag specifying preferred graphic
; graphic_alt          = tag for alternate graphic if preferred graphic is not
;                        present; especially if preferred graphic is non-standard,
;                        this should be a standard tag.  Otherwise can use eg "-"
;                        for no alternate graphic.
; identifier           = single-character identifier used in savegames.  This
;                        must be unique for each resource, and changing it will
;                        break savegame compatibility.
; food                 = increased food production
; shield               = increased shield production
; trade                = increased trade production

[resource_gold]
name        = _("Gold")
graphic     = "ts.gold"
graphic_alt = "-"
identifier  = "$"
trade       = 6
# glacier, hills, mountains.

[resource_iron]
name        = _("Iron")
graphic     = "ts.iron"
graphic_alt = "-"
identifier  = "/"
shield      = 3
# mountains.

[resource_game]
name        = _("?animals:Game")
graphic     = "ts.tundra_game"
graphic_alt = "-"
identifier  = "e"
food        = 2
shield      = 1
# tundra.

[resource_furs]
name        = _("Furs")
graphic     = "ts.furs"
graphic_alt = "-"
identifier  = "u"
food        = 1
trade       = 3
# tundra-only (beaver pelts).

[resource_coal]
name        = _("Coal")
graphic     = "ts.coal"
graphic_alt = "-"
identifier  = "c"
shield      = 2
# hills.

[resource_fish]
name        = _("Fish")
graphic     = "ts.fish"
graphic_alt = "-"
identifier  = "y"
food        = 2
# ocean.

[resource_fruit]
name        = _("Fruit")
graphic     = "ts.fruit"
graphic_alt = "-"
identifier  = "f"
food        = 3
trade       = 1
# jungle.

[resource_gems]
name        = _("Gems")
graphic     = "ts.gems"
graphic_alt = "-"
identifier  = "g"
trade       = 4
# jungle.

; "h" reserved for strategic horses

[resource_buffalo]
name        = _("Buffalo")
graphic     = "ts.buffalo"
graphic_alt = "-"
identifier  = "b"
shield      = 2
# plains (horses => buffalo => cattle).

[resource_wheat]
name        = _("Wheat")
graphic     = "ts.wheat"
graphic_alt = "-"
identifier  = "j"
food        = 2
# plains.

; "k" reserved for (cane) sugar

; "l" reserved for tobacco

; "m" reserved for marble

[resource_oasis]
name        = _("Oasis")
graphic     = "ts.oasis"
graphic_alt = "-"
identifier  = "o"
food        = 3
# desert.

[resource_peat]
name        = _("Peat")
graphic     = "ts.peat"
graphic_alt = "-"
identifier  = "a"
shield      = 4
# swamp (petroleum => peat => petroleum).

[resource_pheasant]
name        = _("Pheasant")
graphic     = "ts.pheasant"
graphic_alt = "-"
identifier  = "p"
food        = 2
# forest, forested.

; "r" reserved for rubber

[resource_bonus]
name        = _("Resources")
graphic     = "ts.grassland_resources"
graphic_alt = "-"
identifier  = "r"
shield      = 1
# grassland.

[resource_icy_ivory]
name        = _("Ivory")
graphic     = "ts.arctic_ivory"
graphic_alt = "-"
identifier  = "i"
food        = 1
shield      = 1
trade       = 4
# glacier (seals => walrus).

[resource_silk]
name        = _("Silk")
graphic     = "ts.silk"
graphic_alt = "-"
identifier  = "s"
trade       = 3
# forest, wooded.

[resource_spice]
name        = _("Spice")
graphic     = "ts.spice"
graphic_alt = "-"
identifier  = "t"
food        = 2
trade       = 4
# swamp-only.

; "u" reserved for uranium

[resource_whales]
name        = _("Whales")
graphic     = "ts.whales"
graphic_alt = "-"
identifier  = "v"
food        = 1
shield      = 1
# ocean (sea).

[resource_wine]
name        = _("Wine")
graphic     = "ts.wine"
graphic_alt = "-"
identifier  = "w"
trade       = 4
# hills-only.

[resource_oil]
name        = _("Oil")
graphic     = "ts.oil"
graphic_alt = "-"
identifier  = "x"
shield      = 3 ; glacier used to have 4
# glacier, desert


[extraui]

; Player visible names of the base gui types.

; ui_name_base_fortress refers to all bases that have gui_type "Fortress"
ui_name_base_fortress = _("?gui_type:Build Fortress/Buoy")

; ui_name_base_airbase refers to all bases that have gui_type "Airbase"
ui_name_base_airbase = _("?gui_type:Build Airbase")

; /* <-- avoid gettext warnings
;
; Each extra, including bases and roads, must have a section here.
; Bases and roads have additional sections for their specific features below.
;
;
; Extra types:
;
; name                    = translatable name as seen by user
; rule_name               = (optional) internal name for savegames, rulesets
;                           etc; if not present, "name" is used for this
;                           purpose too. Since the name used in savegames must
;                           not change, if you want to rename an item after a
;                           ruleset has been released, you should set
;                           "rule_name" to the original value of "name".
; category                = How UI should categorize this extra. One of
;                           "Infra", "Natural", "Nuisance", or "Bonus"
; causes                  = events that can create extra type.
;                           "Irrigation", "Mine", "Hut", "Pollution", "Fallout",
;                           "Base", or "Road" (last two require a corresponding
;                           [base_*] or [road_*] section)
; rmcauses                = events that can remove extra type.
;                           "CleanPollution", "CleanFallout", or "Pillage"
; graphic                 = tag specifying preferred graphic
; graphic_alt             = tag for alternate graphic if preferred graphic is
;                           not present. Can use eg "-" for no alternate
;                           graphic
; activity_gfx            = tag specifying graphic for unit building extra
;                           This can be "None" to indicate that graphic sprite
;                           is not needed.
; act_gfx_alt             = tag for alternative graphic for unit building extra
; act_gfx_alt2            = tag for second alternative graphic for unit building extra
; rmact_gfx               = tag specifying graphic for unit removing extra
;                           This can be "None" to indicate that graphic sprite
;                           is not needed.
; rmact_gfx_alt           = tag for alternative graphic for unit removing extra
; reqs                    = requirements to build the extra (see effects.ruleset
;                           and README.effects for help on requirements)
; rmreqs                  = requirements to remove the extra
; buildable               = Can extra be built? Defaults to TRUE
;                           If extra is not buildable, it can appear in game
;                           only if placed in the editor, it's placed by
;                           map generator, or on city tile if the extra
;                           also has "AlwaysOnCityCenter" flag set.
; build_time              = how long it takes a unit to build this extra.
;                           Value of 0 (default) means that terrain- and
;                           build activity specific time is used instead.
; build_time_factor       = This setting take effect only if build_time is 0.
;                           Terrain and activity specific build time will be
;                           multiplied by this value (default 1)
; removal_time            = how long it takes a unit to remove this extra.
;                           Value of 0 (default) means that terrain- and
;                           removal activity specific time is used instead.
; removal_time_factor     = This setting take effect only if removal_time is 0.
;                           Terrain and activity specific removal time will be
;                           multiplied by this value (default 1)
; defense_bonus           = Percent added to defense when tile has the extra
;                           (default none)
; native_to               = List of unit classes that are considered to
;                           be inside the extra when they are on same tile
; conflicts               = List of extras that cannot be on the same tile.
;                           Bases with non-zero border_sq automatically conflict
;                           with each other.
; hidden_by               = List of extra types that will make this extra
;                           type not to show on UI if both present.
; flags
;   - "NativeTile"        = Native units consider tile native regardless of
;                           terrain
;   - "Refuel"            = Native units can use tile as refuel point
;   - "TerrChangeRemoves" = Extra gets removed when ever terrain changes even
;                           if target terrain could support it
;   - "AlwaysOnCityCenter" = City center tiles always have this extra type
;                           regardless of its other requirements
;   - "AutoOnCityCenter"  = City center tiles will automatically have this
;                           extra type if the player can build it
;   - "ConnectLand"       = Road style gfx on Oceanic tiles are drawn to
;                           connect to adjacent Land tiles even if they have
;                           no extra. This affects appearance only
;   - "GlobalWarming"     = Instances of this extra on map count towards
;                           Global Warming
;   - "NuclearWinter"     = Instances of this extra on map count towards
;                           Nuclear Winter
;   - "ShowFlag"          = Draw owner's flag
;   - "NaturalDefense"    = Extra's defense bonus will be counted to "Natural"
;                           defense layer. The defense bonus of all the extras
;                           located at the tile, native to defending unit,
;                           is calculated as a 1 + sum of bonuses from the extras
;                           on the default "Fortification" defense layer multiplied
;                           by the 1 + sum of bonuses from the extras on the
;                           "Natural" layer.
; helptext                = optional help text string; should escape all raw
;                           newlines so that xgettext parsing works
;
; */ <-- avoid gettext warnings

[extra_irrigation]
name           = _("Irrigation")
category       = "Infra"
causes         = "Irrigation"
rmcauses       = "Pillage"
graphic        = "tx.irrigation"
graphic_alt    = "-"
activity_gfx   = "unit.irrigation"
act_gfx_alt    = "unit.irrigate"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
build_time     = 0
removal_time   = 0
conflicts      = "Mine", "Oil Well"
hidden_by      = "Farmland"
helptext       = _("\
Building an irrigation system on a suitable tile causes it to \
produce one extra food each turn. This requires a nearby source of \
water: an ocean, lake, or river tile, or another tile with an \
irrigation system, must share an edge (not just a corner) with the \
target tile. However, once irrigated, land remains so even if the \
water source is removed.\
"), _("\
Building irrigation on a tile with a mine or oil well will destroy it.\
"), _("\
City center tiles get their terrain's irrigation bonus automatically, \
if there is no conflicting mine or oil well on the tile; however, \
this does not make cities count as a water source for further \
irrigation. Irrigation can be built on the city tile simply to allow \
building further irrigation elsewhere, but will not give the tile any \
further bonus.\
")

[extra_mine]
name           = _("Mine")
category       = "Infra"
causes         = "Mine"
rmcauses       = "Pillage"
graphic        = "tx.mine"
graphic_alt    = "-"
activity_gfx   = "unit.mine"
act_gfx_alt    = "unit.plant"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "TerrainFlag", "Oil", "Local", FALSE, TRUE
    }
build_time     = 0
removal_time   = 0
conflicts      = "Irrigation", "Farmland"
helptext       = _("\
Mines can be built on some types of terrain, which increases the \
number of production points produced by that tile. Hills get an extra \
3 production points per tile; other terrains get 1 extra production \
point.\
"), _("\
Building a mine on an irrigated tile will destroy the irrigation.\
")

[extra_oil_well]
name           = _("Oil Well")
category       = "Infra"
causes         = "Mine"
rmcauses       = "Pillage"
graphic        = "tx.oil_mine"
graphic_alt    = "tx.mine"
activity_gfx   = "unit.oil_mine"
act_gfx_alt    = "unit.mine"
act_gfx_alt2   = "unit.plant"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "quiet"
      "TerrainFlag", "Oil", "Local", TRUE
    }
build_time     = 0
removal_time   = 0
conflicts      = "Irrigation", "Farmland"
helptext       = _("\
Oil wells behave like mines (giving an extra production point), but \
require more technology. Oil wells can be built on Desert with knowledge \
of Construction, and on Glacier with knowledge of Refining.\
"), _("\
Building an oil well on an irrigated tile will destroy the irrigation.\
")

[extra_pollution]
name           = _("Pollution")
category       = "Nuisance"
causes         = "Pollution"
rmcauses       = "CleanPollution"
graphic        = "tx.pollution"
graphic_alt    = "-"
activity_gfx   = "None"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "unit.pollution"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "TerrainFlag", "NoPollution", "Local", FALSE, TRUE
    }
removal_time   = 0
flags          = "GlobalWarming"
helptext       = _("\
Pollution appears on land tiles around cities with high production or \
population. \
It halves all output from its tile, and contributes to the risk of \
global warming.\
"), _("\
The pollution can only be cleared by dispatching Workers, \
Settlers, or Engineers with the \"clean pollution\" order.\
"), _("\
Pollution from production is likely to start becoming important as \
your civilization becomes more industrialized, giving you buildings \
such as Factory and Power Plant which boost production. Replacing a \
Power Plant with cleaner forms of energy -- a Hydro Plant / Hoover \
Dam, Nuclear Plant, or Solar Plant -- will reduce pollution from \
production, as will a Recycling Center or knowledge of \
Environmentalism.\
"), _("\
The city's population starts adding to pollution with the discovery of \
Industrialization, and Automobile, Mass Production, and Plastics make \
this worse. Building a Mass Transit in a city eliminates the \
population's contribution to pollution.\
"), _("\
The contribution of these factors can be seen in the city dialog; once \
it exceeds a threshold, the excess is the percent chance of pollution \
appearing each turn.\
"), _("\
When an unused tile becomes polluted, there is the temptation to avoid \
the effort of cleaning it; but the spread of pollution has far more \
terrible results than the immediate economic impact -- every polluted \
tile increases the chance of global warming. Each time global warming \
advances, the entire world loses coastal land to the sea and to jungles \
and swamps, and inland tiles are lost to desert. This tends to \
devastate cities and leads to global impoverishment.\
"), _("\
The risk of global warming is cumulative; the longer polluted tiles \
are left uncleaned, the higher the risk becomes, and the risk can \
linger for some time even after all pollution has been cleaned. If a \
long time passes with an elevated risk of warming, its effects will be \
all the more severe when it does occur.\
")

[extra_hut]
name           = _("Minor Tribe Village")
rule_name      = "Hut"
category       = "Bonus"
causes         = "Hut"
;rmcauses       = ""
graphic        = "tx.village"
graphic_alt    = "-"
activity_gfx   = "None"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range"
      "TerrainClass", "Land", "Local"
    }
helptext = _("\
Villages (also called \"huts\") are primitive communities spread \
across the world at the beginning of the game. Any land unit can enter \
a village, making the village disappear and deliver a random response. \
If the village proves hostile, it could produce barbarians or the unit \
entering may simply be destroyed. If they are friendly, the player \
could receive gold, a new technology, a military unit (occasionally a \
settler; and sometimes a unit that the player cannot yet create), or \
even a new city.\
"), _("\
Later in the game, helicopters may also enter villages, but overflight \
by other aircraft will cause the villagers to take fright and disband.\
")

[extra_farmland]
name           = _("Farmland")
category       = "Infra"
causes         = "Irrigation"
rmcauses       = "Pillage"
graphic        = "tx.farmland"
graphic_alt    = "-"
activity_gfx   = "unit.farmland"
act_gfx_alt    = "unit.irrigation"
act_gfx_alt2   = "unit.irrigate"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range"
      "Tech", "Refrigeration", "Player"
      "Extra", "Irrigation", "Local"
    }
build_time     = 0
removal_time   = 0
conflicts      = "Mine", "Oil Well"
; /* xgettext:no-c-format */
helptext       = _("\
Once Refrigeration is known, irrigation systems can be upgraded to \
farmland by irrigating them a second time; if the city working the tile \
has a Supermarket, a farmland tile provides twice as much food.\
"), _("\
Like irrigation, farmland is incompatible with mines and oil wells.\
")

[extra_fallout]
name           = _("Fallout")
category       = "Nuisance"
causes         = "Fallout"
rmcauses       = "CleanFallout"
graphic        = "tx.fallout"
graphic_alt    = "-"
activity_gfx   = "None"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "unit.fallout"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "TerrainFlag", "NoPollution", "Local", FALSE, TRUE
    }
removal_time   = 0
flags          = "NuclearWinter"
helptext       = _("\
Nuclear fallout can appear on land tiles when a Nuclear unit is \
detonated. It halves all output from its tile.\
"), _("\
Every tile with nuclear fallout also increases the risk of global \
nuclear winter. If nuclear winter occurs, land across the globe \
changes into desert, tundra, and ice, and lakes and oceans freeze.\
"), _("\
Settlers, Workers, and Engineers can clean up nuclear fallout.\
")

[extra_fortress]
name           = _("Fortress")
category       = "Infra"
causes         = "Base"
rmcauses       = "Pillage"
graphic        = "base.fortress"
graphic_alt    = "-"
activity_gfx   = "unit.fortress"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "Tech", "Construction", "Player", TRUE, FALSE
      "TerrainClass", "Land", "Local", TRUE, FALSE
      "UnitFlag", "Settlers", "Local", TRUE, FALSE
      "CityTile", "Center", "Local", FALSE, TRUE
    }
build_time     = 3
removal_time   = 0
defense_bonus  = 100
native_to      = "Land"
helptext       = _("\
Fortresses improve defense for land units outside cities. Among other \
effects, a land unit remaining in a fortress for a whole turn without \
moving recovers a quarter of its hit points. With Invention, fortresses \
gain watchtowers from which land units can see further afield.\
")

[extra_airbase]
name           = _("Airbase")
category       = "Infra"
causes         = "Base"
rmcauses       = "Pillage"
graphic        = "base.airbase"
graphic_alt    = "-"
activity_gfx   = "unit.airbase"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "Tech", "Radio", "Player", TRUE, FALSE
      "TerrainClass", "Land", "Local", TRUE, FALSE
      "UnitFlag", "Airbase", "Local", TRUE, FALSE
      "CityTile", "Center", "Local", FALSE, TRUE
    }
build_time     = 3
removal_time   = 0
native_to      = "Air", "Helicopter", "Missile"
flags          = "Refuel"
helptext       = _("\
Airbases allow your air units to land and refuel outside cities. \
Air units in an airbase may be attacked by land units.\
")

[extra_buoy]
name           = _("Buoy")
category       = "Infra"
causes         = "Base"
rmcauses       = "Pillage"
graphic        = "base.buoy"
graphic_alt    = "base.fortress"
activity_gfx   = "unit.buoy"
act_gfx_alt    = "unit.fortress"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "Tech", "Radio", "Player", TRUE, FALSE
      "TerrainClass", "Oceanic", "Local", TRUE, FALSE
      "UnitFlag", "Airbase", "Local", TRUE, FALSE
      "CityTile", "Center", "Local", FALSE, TRUE
    }
build_time     = 3
removal_time   = 0
flags          = "ShowFlag"
helptext       = _("\
Buoys may be built in the ocean (by units on a sea-going vessel) to \
allow their owner to see the surrounding tiles.\
")

[extra_ruins]
name           = _("Ruins")
category       = "Bonus"
causes         = "Base"
rmcauses       = "Pillage"
graphic        = "base.ruins"
graphic_alt    = "-"
activity_gfx   = "None"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range", "present", "quiet"
      "TerrainClass", "Land", "Local", TRUE, FALSE
      "CityTile", "Center", "Local", FALSE, TRUE
    }
buildable      = FALSE
removal_time   = 0
flags          = "TerrChangeRemoves"
helptext       = _("\
Ruins mark the former site of a city that was destroyed or abandoned. \
They have no effect on gameplay.\
")

[extra_road]
name           = _("Road")
category       = "Infra"
causes         = "Road"
rmcauses       = "Pillage"
graphic        = "road.road"
graphic_alt    = "-"
activity_gfx   = "unit.road"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range"
      "UnitFlag", "Settlers", "Local"
      "TerrainClass", "Land", "Local"
    }
build_time     = 0
removal_time   = 0
native_to      = "Land"
hidden_by      = "Railroad"
flags          = "AutoOnCityCenter"
helptext       = _("\
Roads allow your land units to move more quickly, and on some terrain,\
 also provide a trade bonus.\
"), _("\
Building roads on river tiles requires knowledge of Bridge Building.\
 City center tiles automatically get roads (unless they are on a river\
 tile and you do not yet know Bridge Building).\
")

[extra_railroad]
name           = _("Railroad")
category       = "Infra"
causes         = "Road"
rmcauses       = "Pillage"
graphic        = "road.rail"
graphic_alt    = "-"
activity_gfx   = "unit.rail"
act_gfx_alt    = "unit.road"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
reqs           =
    { "type", "name", "range"
      "Tech", "Railroad", "Player"
      "Extra", "Road", "Local"
      "UnitFlag", "Settlers", "Local"
      "TerrainClass", "Land", "Local"
    }
build_time     = 3
removal_time   = 0
native_to      = "Land"
flags          = "AutoOnCityCenter"
helptext       = _("\
Once you learn the Railroad technology, you may upgrade your roads\
 to railroads. Units expend no movement points when moving along a\
 railroad; you may ride a railroad indefinitely. (As may your enemies!)\
"), _("\
A railroad also increases any shield resources produced by a tile by half.\
 A tile whose road is upgraded to a railroad retains any trade bonus\
 from the road as well.\
"), _("\
City center tiles with roads are automatically upgraded to railroads\
 when you learn the Railroad technology.\
")

[extra_river]
name           = _("River")
category       = "Natural"
causes         = "Road"
;rmcauses       = ""
graphic        = "road.river"
graphic_alt    = "-"
activity_gfx   = "None"
act_gfx_alt    = "-"
act_gfx_alt2   = "-"
rmact_gfx      = "None"
rmact_gfx_alt  = "-"
buildable      = FALSE
defense_bonus  = 50
native_to      = "Land"
; /* xgettext:no-c-format */
helptext       = _("\
Any land terrain type may have a River on it.  A River adds 1\
 trade to the resources produced by that tile.  It also increases a tile's\
 defense factor by 50%.  Finally, land units may move along a River (but\
 not diagonally) for fast travel.\
"), _("\
Roads and railroads can only be built on River tiles if your\
 civilization has learned Bridge Building technology.\
")

; /* <-- avoid gettext warnings
;
; Base types:
;
; extra                   = name of the extra this base section is part of
;                           (must have "Base" in its causes)
; gui_type                = How gui should handle this base.
;                           Value can be "Fortress", "Airbase", or "Other"
;                           See also [extraui] section
; border_sq               = Base will claim land ownership up to this radius,
;                           -1 to disable. If enabled, base cannot exist in
;                           city tile.
;                           Base (and border) ownership will change hands if
;                           an enemy unit occupies the tile.
; vision_main_sq          = Base will have main layer vision to this radius.
;                           Vision initially provided to owner of unit that
;                           built base; base will not then change hands unless
;                           it also claims territory, or tile has another such
;                           base or city, or another base is built (tile only
;                           tracks one owner for all bases).
; vision_invis_sq         = Base will have invisible layer vision to this radius
; flags
;   - "NoAggressive"      = Units inside are not considered aggressive if
;                           there`s friendly city within 3 tiles
;   - "NoStackDeath"      = Units inside do not die all at once when attacked
;   - "DiplomatDefense"   = Diplomats inside get bonus to diplomatic defense
;   - "ParadropFrom"      = Paradrop can be initiated from base
;
; */ <-- avoid gettext warnings

[base_fortress]
extra          = "Fortress"
gui_type       = "Fortress"
border_sq      = 5
flags          = "NoAggressive", "NoStackDeath", "DiplomatDefense"

[base_airbase]
extra          = "Airbase"
gui_type       = "Airbase"
flags          = "NoStackDeath", "ParadropFrom"

[base_buoy]
extra          = "Buoy"
gui_type       = "Fortress"
vision_main_sq = 5

[base_ruins]
extra          = "Ruins"
gui_type       = "Other"

; /* <-- avoid gettext warnings
;
; Road types:
;
; extra                   = name of the extra this road section is part of
;                           (must have "Road" in its causes)
; first_reqs              = additional requirements to build the first part of
;                           the road, when none of the adjacent tiles have any
;                           integrating roads (see effects.ruleset and
;                           README.effects for help on requirements)
; move_cost               = how much movement it takes to travel
;                           via this road (in fractional move points, as
;                           defined by move_fragments)
;                           -1 means that road provides no speed bonus.
; move_mode               = how movement costs are applied
;   - "Cardinal"   = Road cost applies only on cardinal moves
;   - "Relaxed"    = Road cost is normal for cardinal, double for diagonal moves
;   - "FastAlways" = Road cost applies always between two tiles with the roads
;                    (default)
; food_incr_const         = food production added to tile regardless of terrain
; shield_incr_const       = shield production added to tile regardless of
;                           terrain
; trade_incr_const        = trade production added to tile regardless of
;                           terrain
; food_incr               = food production added to tile; multiplied by
;                           terrain-specific road_food_incr_pct
; shield_incr             = shield production added to tile; multiplied by
;                           terrain-specific road_shield_incr_pct
; trade_incr              = trade production added to tile; multiplied by
;                           terrain-specific road_trade_incr_pct
; food_bonus              = percent added to food production
; shield_bonus            = percent added to shield production
; trade_bonus             = percent added to trade production
;   In summary, output bonuses from roads are given by the formula:
;   (base_prod + roads.incr_const + roads.incr*terrain.incr_pct) * roads.bonus
; compat_special          = what kind of pre-2.5 special this road corresponds
;                           to, if any: "Road", "Railroad", "River, or "None".
;                           Used for UI and loading old savegames
; integrates              = list of road types that are suitable next steps
;                           for travel from this road type; such steps are
;                           possible for units native to both roads and don`t
;                           get cost from underlying terrain; graphics are
;                           drawn accordingly
; flags
;   - "RequiresBridge"    = Technology with "Bridge" flag needed to build this
;                           road on the same tile as another road with
;                           "PreventsOtherRoads" flag (usually rivers)
;   - "PreventsOtherRoads" = Prevents "RequiresBridge" roads being built on
;                           the same tile as this one without appropriate tech
;   - "River"             = Automatically generated by map generator, always
;                           flowing from land tiles to ocean
;   - "UnrestrictedInfra" = Use of the enemy owned road is not restricted
;                           even if server setting 'restrictinfra' is set
;   - "JumpFrom"          = Move to a tile nativity providing "JumpTo"
;                           road is considered native
;   - "JumpTo"            = Move from a tile nativity providing "JumpFrom"
;                           road is considered native
;
; */ <-- avoid gettext warnings

[road_road]
extra          = "Road"
move_cost      = 1
food_incr      = 0
shield_incr    = 0
trade_incr     = 1
food_bonus     = 0
shield_bonus   = 0
trade_bonus    = 0
compat_special = "Road"
flags          = "RequiresBridge"

[road_railroad]
extra          = "Railroad"
move_cost      = 0
food_incr      = 0
shield_incr    = 0
trade_incr     = 0
food_bonus     = 0
shield_bonus   = 50
trade_bonus    = 0
compat_special = "Railroad"
flags          = "RequiresBridge"

[road_river]
extra          = "River"
move_cost      = 1
move_mode      = "Cardinal"
trade_incr_const = 1
compat_special = "River"
flags          = "River", "PreventsOtherRoads", "UnrestrictedInfra"
