; 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="Civ1-style game rules for Freeciv"
options="+Freeciv-3.1-ruleset"
format_version=20

; This section contains meta information for freeciv-ruledit to recreate the ruleset
; file in a form wanted. These have no in-game effect whatsoever
[ruledit]

; Which file to read description in from.
;description_file = ""

[about]
; Ruleset name
name = _("Civ1 ruleset")

; There`s no separate versioning in rulesets part of main freeciv distribution
;version = ""

; When about to migrate ruleset under a new name in the future version, set
; alt_dir to the name of that future directory. Then savegames saved with this
; version of freeciv can find the ruleset from the correct place when loading
; the savegame to the future version.
;alt_dir = ""

; Summary of the ruleset
summary = _("\
You are playing with civ1 style rules. \
These rules are much simpler than the Freeciv default rules. \
If you know only the default rules, spend some time checking the \
differences.\
\n\n\
 * There are fewer technologies, buildings and units.\n\
 * Hitpoints are meaningless. If unit wins a battle, it remains in full health.\n\
")

; Detailed description
; When updating this, update also description_file in [ruledit] section to match
; description = ""

; What capabilities ruleset provides for the scenarios.
; See doc/README.rulesets for definitions of official capabilities
capabilities = ""

[options]
global_init_techs=""
global_init_buildings="Palace"

[tileset]
; If preferred tileset is set, clients that support the feature will suggest
; using that tileset with the ruleset.
; preferred = ""

[soundset]
; If preferred soundset is set, clients that support the feature will suggest
; using that soundset with the ruleset.
; preferred = ""

[musicset]
; If preferred musicset is set, clients that support the feature will suggest
; using that musicset with the ruleset.
; preferred = ""

[civstyle]
; Parameters used to generalize the calculation of city granary size:
;   if city_size <= num_inis:
;     city_granary_size = (granary_food_ini[city_size] * foodbox / 100)
;   if city_size > num_inis;
;     city_granary_size = (granary_food_ini[num_inis] +
;        granary_food_inc * (city_size - num_inis)) * foodbox / 100
granary_food_ini = 20
granary_food_inc = 10

; City center minimum outputs
min_city_center_food    = 0
min_city_center_shield  = 0
min_city_center_trade   = 0

; Square of initial city radius
init_city_radius_sq     = 5

; Square of initially visible radius (true distance).
init_vis_radius_sq      = 2

; Barbarian leader ransom in gold. The ransom is taken from
; the victim (typically a barbarian player), and it`s possible
; they cannot pay this in full.
ransom_gold      = 100

; Number of veteran levels lost when upgrading a unit
upgrade_veteran_loss     = 10

; Number of veteran levels lost when auto-upgrading a unit
autoupgrade_veteran_loss = 10

; Whether player gets to select which terrain improvement to pillage.
pillage_select           = FALSE

; Whether one can steal a tech for which prereqs are not known
tech_steal_allow_holes      = FALSE
; Whether one can get a tech for which prereqs are not known via
; diplomatic trading
tech_trade_allow_holes      = FALSE
; ...and whether one can lose a tech which is prereq for another known
; tech via trade, if techlost_donor is nonzero
tech_trade_loss_allow_holes = FALSE
; Whether one can get a tech for which prereqs are not known via
; parasite effect (Great Library)
tech_parasite_allow_holes   = FALSE
; Whether one can lose a tech which is prereq for another known tech
; due to negative bulbs, if techlossforgiveness allows loss
tech_loss_allow_holes       = FALSE

; Whether civil war is possible at all
civil_war_enabled        = TRUE

; How many percents each celebrating city affects chance of civil war
civil_war_bonus_celebrating = -5

; How many percents each unhappy city affects chance of civil war
civil_war_bonus_unhappy     = 5

; Comma separated list of things to happen, in addition to death
; of owner, when gameloss unit dies
; "CivilWar"   - Part of the empire remains, controlled by a new player
; "Barbarians" - Depending on if there`s also "CivilWar", all or part
;                or half of the dead players empire gets under barbarian
;                control.
; "Loot"       - Player who killed the gameloss unit gets loot:
;                Partial map, gold, techs, cities
gameloss_style           = ""

; Whether units may safely paradrop to transport on non-native terrain
paradrop_to_transport    = FALSE

; Method of paying unit and improvement gold upkeep
; "City" - The player`s total gold must be non-negative after paying upkeep
;          costs associated with each city. If for any city the player`s
;          gold is negative, random buildings in the city are sold off. If
;          the gold is still negative, then supported units with gold upkeep
;          are disbanded.
; "Mixed" - In the first step, the player`s total gold must be non-negative
;           after paying upkeep for all buildings within a city. If for any
;           city the player`s gold is negative, random buildings in the city
;           are sold off.
;           In the second step, gold upkeep for all units is paid in a lump
;           sum. If the player does not have enough gold, random units with
;           gold upkeep are disbanded.
; "Nation" - Gold upkeep for all buildings and units is paid in a lump sum
;            after all cities have been processed. If the player does not
;            have enough gold, random buildings from random cities are sold.
;            If still more gold is needed, then random units with gold
;            upkeep are disbanded.
gold_upkeep_style = "City"

; How many points of output one basic unit consists of. Typically you
; want this to be some 10^n.
output_granularity = 1

; Is it possible to airlift even with zero airlift capacity when
; airliftingstyle server setting has been set to unlimited airlifts?
airlift_from_always_enabled = FALSE
airlift_to_always_enabled = TRUE

[wonder_visibility]
; When do opponents know which city, if any, has built the Small Wonder
; "Always" - Information is always sent
; "Never"  - Information is never sent
small_wonders = "Always"

[illness]
; Whether plagues (illness) are possible
illness_on = FALSE

; the base factor for illness (of percent)
illness_base_factor = 25

; minimum city size for illness
illness_min_size = 3

; factor for how much trading with a plagued city increases our city`s
; chance for plague (in percent)
illness_trade_infection = 50

; factor for how much pollution within a city increases its chance for
; plague (in percent)
illness_pollution_factor = 50

[incite_cost]
; city_incite_cost = total_factor * (city_size) * (base_incite_cost
;                      + (units_cost) * unit_factor
;                      + (improvements_cost) * improvement_factor)
;                    / ((distance to capital) * 100)
; See city_incite_cost() for more details
improvement_factor = 1
unit_factor = 2
total_factor = 100

[combat_rules]
; If tired_attack is set to TRUE, units that attack with less than a single
; move point (per move_fragments in terrain.ruleset) will have their attack
; power reduced accordingly. For instance, if move_fragments=3, a unit with
; 2/3 move points will have attack power 2/3 of normal.
; If this is set to FALSE units will attack with full strength even if they
; have only fractional moves left.
tired_attack = TRUE

; With some rules it`s possible that neither side of a combat dies.
; Set this to TRUE if unit should never gain veterancy from such a combat.
only_killing_makes_veteran = FALSE

; If either side of the fight is completely powerless, i.e., has
; zero attack/defense power after modifiers, fight is not considered
; a real fight. If this setting is enabled, nobody gets made veteran after
; such a fight.
only_real_fight_makes_veteran = FALSE

; When this setting is enabled, chance of getting veterancy from a combat
; gets modified by the strength of the opponent relative to the strength
; of unit that might gain the veterancy.
; When this setting is disabled, the modifier is always simply considered
; to be 100%, i.e, the base veterancy chance from units.ruleset is used as is.
; This affects both regular and diplomat combat.
combat_odds_scaled_veterancy = FALSE

; Does unit`s bombard rate get scaled down by how damaged it is.
; Even after this unit gets at least one bombard round.
damage_reduces_bombard_rate = TRUE

; When the attacker has BadWallAttacker flag, and there`s
; positive DefendBonus effect applied to the attack, attacker`s
; firepower gets reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_badwallattacker = 10

; When the defender has BadCityDefender flag, and it`s
; defending on a city tile, attacker`s firepower is doubled
; and defenders firepower is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_pearl_harbour = 10

; When the opponent has LowFirepower combat bonus against
; a unit, it`s firepower is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_combat_bonus = 10

; When a unit capable of attacking NonNative tiles does such an
; attack against NonNatBombardTgt unit, firepower of both sides
; is reduced to this value.
; If firepower is already lower than this, it won`t be affected.
low_firepower_nonnat_bombard = 10

; Percentage of population lost by a city after nuclear attak. If set to
; 100 city is destroyed along with all the units. If set to 0 city does not
; lose population. Any value below 50 means the city can never be
; destroyed completely using nuclear.
nuke_pop_loss_pct = 49

; Percentage chance of a city defender surviving nuclear attack. When set
; to 50 roughly half of defenders will survive nuclear attack. When set to
; 0 no defenders will survive. When set to 100 all defenders will survive.
nuke_defender_survival_chance_pct = 0

[auto_attack]
; An auto attack may be triggered when another unit moves to an adjacent
; tile and the autoattack server setting is enabled. The following details
; are ruleset controlled.
;   attack_actions - the actions to try during an auto attack in the order
;                    they should be tried.
;   if_attacker    - this requirement vector must be true before a unit even
;                    considers to auto attack.

attack_actions = "Attack", "Suicide Attack"

if_attacker =
    { "type",         "name",    "range", "present"
      "DiplRel",      "War",     "Local", TRUE
      "MinMoveFrags", "1",       "Local", TRUE
      ; Not a good idea to nuke our own area.
      "UnitFlag",     "Nuclear", "Local", FALSE
    }

[actions]
; Forbid "Enter Marketplace" if any one of the listed actions are legal.
enter_marketplace_blocked_by = "Establish Trade Route"

; Forbid "Attack" if any one of the listed actions are legal.
attack_blocked_by = "Explode Nuclear", "Nuke City", "Nuke Units"

; Forbid "Suicide Attack" if any one of the listed actions are legal.
suicide_attack_blocked_by = "Explode Nuclear", "Nuke City", "Nuke Units"

; Forbid "Conquer City" if any one of the listed actions are legal.
conquer_city_blocked_by = "Explode Nuclear", "Nuke City", "Nuke Units",
                          "Attack", "Suicide Attack"

; Forbid regular unit move if one of the actions below is legal.
move_blocked_by = "Transport Disembark", "Enter Hut", "Enter Hut 2"

; Actor units will - under certain circumstances - be forced to try
; performing the following actions in the specified order after successfully
; performing "Bribe Unit".
bribe_unit_post_success_forced_actions = "Transport Embark",
                                         "Transport Disembark",
                                         "Transport Disembark 2",
                                         "Conquer Extras",
                                         "Conquer Extras 2",
                                         "Enter Hut", "Enter Hut 2",
                                         "Unit Move"

; Actor units will - under certain circumstances - be forced to try
; performing the following actions in the specified order after successfully
; performing "Attack".
attack_post_success_forced_actions = "Conquer City", "Conquer City 2",
                                     "Transport Disembark",
                                     "Transport Disembark 2",
                                     "Conquer Extras", "Conquer Extras 2",
                                     "Enter Hut", "Enter Hut 2",
                                     "Unit Move"

; The city that made the unit`s current tile native is gone. This is a Hail
; Mary attempt at survival by performing an action. Evaluated against an
; adjacent tile. Currently only able to target native tiles.
escape_city = "Transport Embark", "Enter Hut", "Enter Hut 2", "Unit Move"

; The unit`s stack has been defeated and is scheduled for execution but the
; unit has the CanEscape unit type flag. Evaluated against an adjacent tile.
;unit_stack_death = "Transport Embark", "Enter Hut", "Enter Hut 2",
;                   "Unit Move"

; If poison_empties_food_stock is set to TRUE a successful "Poison City"
; or "Poison City Escape" will empty the food stock.
;poison_empties_food_stock = FALSE

; If steal_maps_reveals_all_cities is set to TRUE a successful "Steal Maps"
; or "Steal Maps Escape" will transfer the map for all tiles containing a
; city.
;steal_maps_reveals_all_cities = TRUE

; The maximum distance from the actor unit to the target of the
; "Help Wonder" action. The value 0 means that the target`s tile must be the
; tile of the actor unit. The value 1 means that the city must be on a tile
; adjacent to the actor unit. The special value "unlimited" lifts the
; maximum distance restriction. The maximum distance can`t be smaller than
; the minimum distance.
help_wonder_max_range = 1

; The maximum distance from the actor unit to the target of the
; "Disband Unit Recover" action. The value 0 means that the target`s tile must be the
; tile of the actor unit. The value 1 means that the city must be on a tile
; adjacent to the actor unit. The special value "unlimited" lifts the
; maximum distance restriction. The maximum distance can`t be smaller than
; the minimum distance.
disband_unit_recover_max_range = 1

; The maximum distance from the actor unit to the target of the "Bombard"
; action. The value 1 means that the targets must be on a tile adjacent to
; the actor unit. The special value "unlimited" lifts the maximum distance
; restriction. The maximum distance can`t be smaller than the minimum
; distance.
bombard_max_range = 1

; The maximum distance from the actor unit to the target of the "Bombard 2"
; action. The value 1 means that the targets must be on a tile adjacent to
; the actor unit. The special value "unlimited" lifts the maximum distance
; restriction. The maximum distance can`t be smaller than the minimum
; distance.
bombard_2_max_range = 1

; The maximum distance from the actor unit to the target of the "Bombard 3"
; action. The value 1 means that the targets must be on a tile adjacent to
; the actor unit. The special value "unlimited" lifts the maximum distance
; restriction. The maximum distance can`t be smaller than the minimum
; distance.
bombard_3_max_range = 1

; The minimal distance from the actor unit to the target. The value 0 means
; that the target must be at the tile of the actor unit. The value 1 means
; that the tile must be a tile adjacent to the actor unit.
explode_nuclear_min_range = 0

; The maximum distance from the actor unit to the target of the
; "Explode Nuclear" action. The value 0 means that the target tile must be
; the tile of the actor unit. The value 1 means that the tile must be a tile
; adjacent to the actor unit. The special value "unlimited" lifts the
; maximum distance restriction. The maximum distance can`t be smaller than
; the minimum distance.
explode_nuclear_max_range = 0

; Will performing this action always consume the actor unit?
explode_nuclear_consuming_always = TRUE

; The minimal distance from the actor unit to the target. The value 0 means
; that the target must be at the tile of the actor unit. The value 1 means
; that the tile must be a tile adjacent to the actor unit.
nuke_city_min_range = 1

; The maximum distance from the actor unit to the target of the
; "Nuke City" action. The value 1 means that the tile must be a tile
; adjacent to the actor unit. The special value "unlimited" lifts the
; maximum distance restriction. The maximum distance can`t be smaller than
; the minimum distance.
nuke_city_max_range = 1

; Will performing this action always consume the actor unit?
nuke_city_consuming_always = TRUE

; The kind of target the "Nuke City" action has. The target requirements of
; its enablers are evaluated against the target. The target owner is the one
; that gets a Casus Belli if the ruleset has a Casus Belli for this action.
; Supported values are "City" and "Tile".
nuke_city_target_kind = "City"

; The minimal distance from the actor unit to the target. The value 0 means
; that the target must be at the tile of the actor unit. The value 1 means
; that the tile must be a tile adjacent to the actor unit.
nuke_units_min_range = 1

; The maximum distance from the actor unit to the target of the
; "Nuke Units" action. The value 1 means that the tile must be a tile
; adjacent to the actor unit. The special value "unlimited" lifts the
; maximum distance restriction. The maximum distance can`t be smaller than
; the minimum distance.
nuke_units_max_range = 1

; Will performing this action always consume the actor unit?
nuke_units_consuming_always = TRUE

; Will performing this action always consume the actor unit?
found_city_consuming_always = TRUE

; What each action should be called when showing them to the player.
; The first %s should be before the mnemonic of the action. A Freeciv client
; that supports mnemonics will replace it with the in-band signal that marks
; the following character as a mnemonic in its graphical toolkit.
; The second %s marks where extra details should be inserted.

; /* TRANS: _Bribe Enemy Unit (3% chance of success). */
ui_name_bribe_unit = _("%sBribe Enemy Unit%s")

; /* TRANS: _Sabotage City (3% chance of success). */
ui_name_sabotage_city = _("%sSabotage City%s")

; /* TRANS: Incite a _Revolt (3% chance of success). */
ui_name_incite_city = _("Incite a %sRevolt%s")

; /* TRANS: Becom_e Ambassador (100% chance of success). */
ui_name_establish_embassy_stay = _("Becom%se Ambassador%s")

; /* TRANS: Steal _Technology (3% chance of success). */
ui_name_steal_tech = _("Steal %sTechnology%s")

; /* TRANS: _Investigate City (spends the unit) (100% chance of success). */
ui_name_investigate_city_spend_unit = _("%sInvestigate City (spends the unit)%s")

; /* TRANS: Establish Trade _Route (100% chance of success). */
ui_name_establish_trade_route = _("Establish Trade %sRoute%s")

; /* TRANS: Enter _Marketplace (100% chance of success). */
ui_name_enter_marketplace = _("Enter %sMarketplace%s")

; /* TRANS: Help _build Wonder (100% chance of success). */
ui_name_help_wonder = _("Help %sbuild Wonder%s")

; /* TRANS: Dis_band recovering production (100% chance of success). */
ui_name_disband_unit_recover = _("Dis%sband recovering production%s")

; /* TRANS: Dis_band without recovering production (100% chance of success). */
ui_name_disband_unit = _("Dis%sband without recovering production%s")

; /* TRANS: _Build City (100% chance of success). */
ui_name_found_city = _("%sBuild City%s")

; /* TRANS: _Add to City (100% chance of success). */
ui_name_join_city = _("%sAdd to City%s")

; /* TRANS: Explode _Nuclear In Place (100% chance of success). */
ui_name_explode_nuclear = _("Explode %sNuclear In Place%s")

; /* TRANS: _Nuke City (100% chance of success). */
ui_name_nuke_city = _("%sNuke City%s")

; /* TRANS: _Nuke Units (100% chance of success). */
ui_name_nuke_units = _("%sNuke Units%s")

; /* TRANS: Set _Home City (100% chance of success). */
ui_name_home_city = _("Set %sHome City%s")

; /* TRANS: _Attack (100% chance of success). */
ui_name_attack = _("%sAttack%s")

; /* TRANS: _Explode Missile (100% chance of success). */
ui_name_suicide_attack = _("%sExplode Missile%s")

; /* TRANS: _Conquer City (100% chance of success). */
ui_name_conquer_city = _("%sConquer City%s")

; /* TRANS: _Transform Terrain (3% chance of success). */
ui_name_transform_terrain = _("%sTransform Terrain%s")

; /* TRANS: Transform by _Cultivating (3% chance of success). */
ui_name_cultivate = _("Transform by %sCultivating%s")

; /* TRANS: Transform by _Planting (3% chance of success). */
ui_name_plant = _("Transform by %sPlanting%s")

; /* TRANS: Pilla_ge (100% chance of success). */
ui_name_pillage = _("Pilla%sge%s")

; /* TRANS: Clean _Pollution (100% chance of success). */
ui_name_clean_pollution = _("Clean %sPollution%s")

; /* TRANS: _Fortify (100% chance of success). */
ui_name_fortify = _("%sFortify%s")

; /* TRANS: Build _Road (100% chance of success). */
ui_name_road = _("Build %sRoad%s")

; /* TRANS: _Build Base (100% chance of success). */
ui_name_build_base = _("%sBuild Base%s")

; /* TRANS: Build _Mine (100% chance of success). */
ui_name_build_mine = _("Build %sMine%s")

; /* TRANS: Build _Irrigation (100% chance of success). */
ui_name_irrigate = _("Build %sIrrigation%s")

; /* TRANS: _Deboard (100% chance of success). */
ui_name_transport_alight = _("%sDeboard%s")

; /* TRANS: _Board (100% chance of success). */
ui_name_transport_board = _("%sBoard%s")

; /* TRANS: _Unload (100% chance of success). */
ui_name_transport_unload = _("%sUnload%s")

; /* TRANS: _Disembark (100% chance of success). */
ui_name_transport_disembark = _("%sDisembark%s")

; /* TRANS: _Embark (100% chance of success). */
ui_name_transport_embark = _("%sEmbark%s")

; /* TRANS: Enter _Hut (100% chance of success). */
ui_name_enter_hut = _("Enter %sHut%s")

; /* TRANS: Enter _Hut from transport (100% chance of success). */
ui_name_enter_hut_2 = _("Enter %sHut from transport%s")

; /* TRANS: Regular _Move (100% chance of success). */
ui_name_unit_move = _("%sKeep moving%s")

; Blank ruleset defined user actions.
; See the section "Ruleset defined actions" in doc/README.actions
; Example: set up "User Action 1"
;ui_name_user_action_1                = _("%sDisrupt Supply Lines%s")
;user_action_1_target_kind            = "Unit"
;user_action_1_min_range              = 1
;user_action_1_max_range              = 3
;user_action_1_actor_consuming_always = FALSE

; Some actions have a action dice roll before the action starts where it can
; fail. The initial probability of success is 100% unless the action appears
; in the following list. Then the initial probability comes from the setting
; diplchance. The initial probability of success is modified by the
; Action_Odds_Pct effect before the roll happens.
diplchance_initial_odds = "Sabotage City", "Steal Tech", "Incite City"

; Suppress automatic help text generation about what enables and/or
; disables the following actions.
;
; Can make the help text less redundant when you document it your self.
;
; "Enter Hut 2" is "Enter Hut" but while being transported.
; The transported version and the native tile version won`t appear in the
; same action selection dialog given their opposite requirements. Avoid
; double entries in the auto help by silencing it.
quiet_actions = "Enter Hut 2", "Unit Move"

; /* <-- avoid gettext warnings
;
; Action enablers:
;
; action               = the action to enable.
; actor_reqs           = requirements that apply to the actor.
; target_reqs          = requirements that apply to the target.
;
; README.actions lists the possible actions and their hard coded
; requirements.
;
; An action enabler is active when its actor_reqs AND its target_reqs are
; satisfied.
;
; */ <-- avoid gettext warnings

[actionenabler_sabotage_city]
action = "Sabotage City"
actor_reqs    =
    { "type",   "name", "range"
      "UnitFlag", "Diplomat", "Local"
      "DiplRel", "War", "Local"
      "UnitState", "OnLivableTile", "Local"
      "MinMoveFrags", "1", "Local"
    }

[actionenabler_establish_embassy]
action       = "Establish Embassy Stay"
actor_reqs    =
    { "type",         "name",             "range", "present"
      "UnitFlag",     "Diplomat",         "Local", TRUE
      "UnitState",    "OnLivableTile",    "Local", TRUE
      "MinMoveFrags", "1",                "Local", TRUE
      "DiplRel",      "Foreign",          "Local", TRUE
      "DiplRel",      "Has real embassy", "Local", FALSE
    }
target_reqs  =
    { "type",        "name",      "range",  "present"
      "NationGroup", "Barbarian", "Player", FALSE
    }

[actionenabler_investigate_city]
action       = "Investigate City Spend Unit"
actor_reqs    =
    { "type",   "name", "range"
      "UnitFlag", "Diplomat", "Local"
      "UnitState", "OnLivableTile", "Local"
      "MinMoveFrags", "1", "Local"
      "DiplRel", "Foreign", "Local"
    }

[actionenabler_steal_tech_random]
action = "Steal Tech"
actor_reqs    =
    { "type",   "name", "range"
      "UnitFlag", "Diplomat", "Local"
      "UnitState", "OnLivableTile", "Local"
      "MinMoveFrags", "1", "Local"
      "DiplRel", "Foreign", "Local"
    }
target_reqs  =
    { "type",   "name", "range", "present"
      "NationGroup", "Barbarian", "Player", FALSE
    }

[actionenabler_incite_city]
action = "Incite City"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "Diplomat", "Local", TRUE
      "DiplRel", "Alliance", "Local", FALSE
      "DiplRel", "Team", "Local", FALSE
      "UnitState", "OnLivableTile", "Local", TRUE
      "MinMoveFrags", "1", "Local", TRUE
      "DiplRel", "Foreign", "Local", TRUE
    }
target_reqs  =
    { "type",   "name", "range", "present"
      "Gov", "Democracy", "Player", FALSE
      "Building", "Palace", "City", FALSE
    }

[actionenabler_bribe_unit]
action = "Bribe Unit"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "Diplomat", "Local", TRUE
      "DiplRel", "Alliance", "Local", FALSE
      "DiplRel", "Team", "Local", FALSE
      "UnitState", "OnLivableTile", "Local", TRUE
      "MinMoveFrags", "1", "Local", TRUE
      "DiplRel", "Foreign", "Local", TRUE
    }
target_reqs    =
    { "type",   "name", "range", "present"
      "CityTile", "Center", "Local", FALSE
      "Gov", "Democracy", "Player", FALSE
      "MaxUnitsOnTile", "1", "Local", TRUE
    }

[actionenabler_trade_route]
action = "Establish Trade Route"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "TradeRoute", "Local", TRUE
      "UnitState", "HasHomeCity", "Local", TRUE
    }

[actionenabler_marketplace]
action = "Enter Marketplace"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "TradeRoute", "Local", TRUE
      "UnitState", "HasHomeCity", "Local", TRUE
    }

[actionenabler_help_build_wonder]
action = "Help Wonder"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "HelpWonder", "Local", TRUE
      "DiplRel", "Foreign", "Local", FALSE
    }
target_reqs    =
    { "type",   "name", "range"
      "BuildingGenus", "GreatWonder", "Local"
    }

[actionenabler_disband_unit_recover]
action = "Disband Unit Recover"
actor_reqs    =
    { "type",   "name", "range", "present"
      "DiplRel",  "War",        "Local", FALSE
      "DiplRel",  "Cease-fire", "Local", FALSE
      "DiplRel",  "Armistice",  "Local", FALSE
      "DiplRel",  "Peace",      "Local", FALSE
    }

[actionenabler_disband_unit]
action = "Disband Unit"

[actionenabler_build_city_pioneer]
action = "Found City"
actor_reqs    =
    { "type",   "name", "range"
      "UnitFlag", "Cities", "Local"
      "UnitState", "OnLivableTile", "Local"
      "MinMoveFrags", "1", "Local"
    }
target_reqs    =
    { "type",   "name", "range", "present"
      "CityTile", "Claimed", "Local", FALSE
      "TerrainFlag","NoCities","Local",FALSE
    }

[actionenabler_build_city_domestic]
action = "Found City"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "Cities", "Local", TRUE
      "UnitState", "OnLivableTile", "Local", TRUE
      "MinMoveFrags", "1", "Local", TRUE
      "DiplRel", "Foreign", "Local", FALSE
    }
target_reqs    =
    { "type",        "name",     "range", "present"
      "CityTile",    "Claimed",  "Local", TRUE
      "TerrainFlag", "NoCities", "Local", FALSE
    }

[actionenabler_join_city]
action = "Join City"
actor_reqs    =
    { "type",   "name", "range", "present"
      "UnitFlag", "AddToCity", "Local", TRUE
      "DiplRel", "Foreign", "Local", FALSE
      "MinMoveFrags", "1", "Local", TRUE
    }

[actionenabler_nuke]
action      = "Explode Nuclear"
actor_reqs  =
    { "type",     "name",    "range", "present"
      "UnitFlag", "Nuclear", "Local", TRUE
    }

[actionenabler_nuke_city]
action      = "Nuke City"
actor_reqs  =
    { "type",         "name",    "range"
      "UnitFlag",     "Nuclear", "Local"
      "MinMoveFrags", "1",       "Local"
      "DiplRel",      "War",     "Local"
    }

[actionenabler_nuke_units]
action      = "Nuke Units"
actor_reqs  =
    { "type",         "name",    "range"
      "UnitFlag",     "Nuclear", "Local"
      "MinMoveFrags", "1",       "Local"
      "DiplRel",      "War",     "Local"
    }
target_reqs =
    { "type",     "name",   "range", "present"
      "CityTile", "Center", "Local", FALSE
    }

[actionenabler_attack_from_native]
action = "Attack"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitFlag",      "NonMil",       "Local", FALSE
      "UnitClassFlag", "Missile",      "Local", FALSE
      "MinMoveFrags",  "1",            "Local", TRUE
      "UnitState",     "OnNativeTile", "Local", TRUE
      "DiplRel",       "War",          "Local", TRUE
    }

[actionenabler_attack_uclass_sea]
action = "Attack"
actor_reqs    =
    { "type",          "name",    "range", "present"
      "UnitFlag",      "NonMil",  "Local", FALSE
      "UnitClassFlag", "Missile", "Local", FALSE
      "MinMoveFrags",  "1",       "Local", TRUE
      "UnitClass",     "Sea",     "Local", TRUE
      "DiplRel",       "War",     "Local", TRUE
    }

[actionenabler_explode_missile]
action = "Suicide Attack"
actor_reqs    =
    { "type",          "name",    "range", "present"
      "UnitFlag",      "NonMil",  "Local", FALSE
      "UnitClassFlag", "Missile", "Local", TRUE
      "MinMoveFrags",  "1",       "Local", TRUE
      "DiplRel",       "War",     "Local", TRUE
    }

[actionenabler_conquer_city_native]
action = "Conquer City"
actor_reqs    =
    { "type",           "name",          "range", "present"
      "UnitClassFlag",  "CanOccupyCity", "Local", TRUE
      "UnitFlag",       "NonMil",        "Local", FALSE
      "DiplRel",        "War",           "Local", TRUE
      "MinMoveFrags",   "1",             "Local", TRUE
      "UnitState",      "OnLivableTile", "Local", TRUE
    }
target_reqs    =
    { "type",           "name",          "range", "present"
      "MaxUnitsOnTile", "0",             "Local", TRUE
    }

[actionenabler_change_home_city]
action = "Home City"
actor_reqs    =
    { "type",      "name",        "range", "present"
      "UnitState", "HasHomeCity", "Local", TRUE
      "DiplRel",   "Foreign",  "Local", FALSE
    }

[actionenabler_cultivate]
action        = "Cultivate"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitFlag",      "Settlers",     "Local", TRUE
    }

[actionenabler_plant]
action        = "Plant"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitFlag",      "Settlers",     "Local", TRUE
    }
target_reqs   =
    { "type",          "name",         "range", "present"
      "Extra",         "River",        "Local", FALSE
    }

[actionenabler_pillage]
action        = "Pillage"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitClassFlag", "CanPillage",   "Local"
    }

[actionenabler_clean_pollution]
action        = "Clean Pollution"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitFlag",      "Settlers",     "Local", TRUE
    }

[actionenabler_fortify_terrain]
action        = "Fortify"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitClassFlag", "CanFortify",   "Local", TRUE
      "UnitFlag",      "Cant_Fortify", "Local", FALSE
      "TerrainFlag",   "NoFortify",    "Local", FALSE
      "Activity",      "Fortified",    "Local", FALSE
    }

[actionenabler_fortify_city]
action        = "Fortify"
actor_reqs    =
    { "type",          "name",         "range", "present"
      "UnitClassFlag", "CanFortify",   "Local", TRUE
      "UnitFlag",      "Cant_Fortify", "Local", FALSE
      "CityTile",      "Center",       "Local", TRUE
      "Activity",      "Fortified",    "Local", FALSE
    }

[actionenabler_road]
action        = "Build Road"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }

[actionenabler_base]
action        = "Build Base"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }

[actionenabler_mining]
action        = "Build Mine"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }
target_reqs    =
    { "type",         "name",    "range"
      "TerrainAlter", "CanMine", "Local"
    }

[actionenabler_irrigate_src_ocean]
action        = "Build Irrigation"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }
target_reqs    =
    { "type",         "name",        "range"
      "TerrainClass", "Oceanic",     "CAdjacent"
      "TerrainAlter", "CanIrrigate", "Local"
    }

[actionenabler_irrigate_src_river]
action        = "Build Irrigation"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }
target_reqs    =
    { "type",         "name",        "range"
      "Extra",        "River",       "CAdjacent"
      "TerrainAlter", "CanIrrigate", "Local"
    }

[actionenabler_irrigate_src_irrigation]
action        = "Build Irrigation"
actor_reqs    =
    { "type",          "name",         "range"
      "UnitFlag",      "Settlers",     "Local"
    }
target_reqs    =
    { "type",         "name",        "range"
      "Extra",        "Irrigation",  "CAdjacent"
      "TerrainAlter", "CanIrrigate", "Local"
    }

[actionenabler_alight]
action        = "Transport Alight"
actor_reqs    =
    { "type",      "name",          "range"
      "UnitState", "OnLivableTile", "Local"
      "UnitState", "Transported",   "Local"
    }
target_reqs    =
    { "type",      "name",         "range"
      "UnitState", "Transporting", "Local"
    }

[actionenabler_board]
action        = "Transport Board"
actor_reqs    =
    { "type",    "name",       "range", "present"
      "DiplRel", "Armistice",  "Local", FALSE
      "DiplRel", "War",        "Local", FALSE
      "DiplRel", "Cease-fire", "Local", FALSE
      "DiplRel", "Peace",      "Local", FALSE
      "DiplRel", "Never met",  "Local", FALSE
    }

[actionenabler_unload]
action        = "Transport Unload"
actor_reqs    =
    { "type",      "name",         "range"
      "UnitState", "Transporting", "Local"
    }
target_reqs    =
    { "type",      "name",          "range"
      "UnitState", "OnLivableTile", "Local"
      "UnitState", "Transported",   "Local"
    }

[actionenabler_disembark]
action        = "Transport Disembark"
actor_reqs    =
    { "type",         "name",        "range", "present"
      "UnitState",    "Transported", "Local", TRUE
      "MinMoveFrags", "1",           "Local", TRUE
      ; use "Transport Alight" from inside the city
      "CityTile",     "Center",      "Local", FALSE
    }

[actionenabler_embark]
action        = "Transport Embark"
actor_reqs    =
    { "type",         "name",       "range", "present"
      "MinMoveFrags", "1",          "Local", TRUE
      "DiplRel",      "Armistice",  "Local", FALSE
      "DiplRel",      "War",        "Local", FALSE
      "DiplRel",      "Cease-fire", "Local", FALSE
      "DiplRel",      "Peace",      "Local", FALSE
      "DiplRel",      "Never met",  "Local", FALSE
    }
target_reqs    =
    { "type",     "name",   "range", "present"
      ; use "Transport Board" from inside the city
      "CityTile", "Center", "Local", FALSE
    }

[actionenabler_regular_move]
action     = "Unit Move"
actor_reqs =
    { "type",         "name",        "range", "present"
      "MinMoveFrags", "1",           "Local", TRUE
      "UnitState",    "Transported", "Local", FALSE
    }

[actionenabler_hut_enter_from_native]
action        = "Enter Hut"
actor_reqs    =
    { "type",          "name",        "range", "present"
      "MinMoveFrags",  "1",           "Local", TRUE
      "UnitState",     "Transported", "Local", FALSE
      "UnitClassFlag", "HutNothing",  "Local", FALSE
    }

[actionenabler_hut_enter_from_transport]
action        = "Enter Hut 2"
actor_reqs    =
  { "type",         "name",         "range", "present"
    "MinMoveFrags", "1",            "Local", TRUE
    "UnitState",    "Transported",  "Local", TRUE
    "UnitClassFlag", "HutNothing",  "Local", FALSE
    }

[borders]
; Base border radius from city.
radius_sq_city = 17

; Border radius square increased by this amount / point of city size
size_effect    = 1

; Difference between city workable area and area permanently claimed by
; city (these tiles cannot be stolen by stronger border sources).
; 0 means exactly city workable area is immune to border stealing.
; Negative value means outer workable tiles can be stolen; highly negative
; value (more than max city radius_sq) means any workable tile can be stolen.
; If City_Radius_Sq is variable, so is the set of locked tiles; this is
; a squared value, so the radius of the ring of tiles which are workable
; but not locked (or vice versa) varies but the area is constant.
radius_sq_city_permanent = 0

[research]
; Method of calculating technology costs
;   "Civ I|II"      - Civ (I|II) style. Every new tech add base_tech_cost to
;                     cost of next tech.
;   "Classic"       - Cost of technology is:
;                       base_tech_cost * (1 + reqs) * sqrt(1 + reqs) / 2
;                     where reqs == number of requirement for tech, counted
;                     recursively.
;   "Classic+"      - Cost are read from tech.ruleset. Missing costs are
;                     generated by style "Classic".
;   "Experimental"  - Cost of technology is:
;                       base_tech_cost * (reqs^2 / (1 + sqrt(sqrt(reqs + 1)))
;                                         - 0.5)
;                     where reqs == number of requirement for tech, counted
;                     recursively. Initial techs` cost will be base_tech_cost.
;   "Experimental+" - Cost are read from tech.ruleset. Missing costs are
;                     generated by style "Experimental".
;   "Linear"        - Cost of technology is:
;                     base_tech_cost * reqs
;                     where reqs == number of requirement for tech, counted
;                     recursively.
tech_cost_style = "Civ I|II"

; Base research cost. Used in tech cost styles where tech cost is generated.
; In other words: used everywhere unless the cost of *all* techs are
; specified and the tech cost style is "Experimental+" or "Classic+".
base_tech_cost   = 20

; Technology leak from other civilizations
; "None"           - No reduction of the technology cost.
; "Embassies"      - Technology cost is reduced depending on the number of
;                    players which already know the tech and you have an
;                    embassy with.
; "All Players"    - Technology cost is reduced depending on the number of
;                    all players (human, AI and barbarians) which already
;                    know the tech.
; "Normal Players" - Technology cost is reduced depending on the number of
;                    normal players (human and AI) which already know the
;                    tech.
tech_leakage = "None"

; Method of paying tech upkeep
; "None"   - no upkeep
; "Basic"  - upkeep is calculated as:
;     <Cost of technology> / tech_upkeep_divider - <Free tech upkeep>
; "Cities" - upkeep is calculated like "Basic", but multiplied by number of cities
tech_upkeep_style = "None"

; Method of selecting techs given for free
; "Goal"     - Towards player`s goal, random if no goal
; "Random"   - Random researchable tech
; "Cheapest" - Cheapest researchable tech, random among equal cost ones
free_tech_method = "Random"

[culture]
; Minimum culture points for cultural domination victory
victory_min_points = 1000

; How big lead relative to second best player is needed for victory
victory_lead_pct   = 200

; How much existing history grows each turn. This makes older history
; of the same original value more valuable as newer history, as it has
; gained more interest.
history_interest_pml = 0

; How much each culture point affects the migration
; from/to the city. Each culture point count as this many permilles
; of a migration point.
migration_pml = 50

[calendar]
; Year 1 instead of 0.
skip_year_0 = TRUE

; How many fragments each year has. In addition to this, "Turn_Fragments" effects are
; needed to control fragment accumulation.
; Value 0 here disables year advancement by fragment accumulation.
fragments = 0

; Calendar fragment names. If name is missing, only a fragment number +1 (so human readable
; numbers begin from 1 and not 0) is shown.

;fragment_name0 = _("Jan")
;fragment_name1 = _("Feb")
; ...

; What labels are used for positive and negative years.
; /* TRANS: year label (Anno Domini) */
positive_label = _("AD")
; /* TRANS: year label (Before Christ) */
negative_label = _("BC")

; /* <-- avoid gettext warnings
;
; Disaster types:
;
; name                    = translatable name as seen by user
; reqs                    = requirements for disaster to happen (see effects.ruleset
;                           and README.effects for help on requirements)
; frequency               = how likely disaster is to occur
; effects
;   - "DestroyBuilding"   = Random building is destroyed
;   - "ReducePopulation"  = Reduce city size by one unless it's already 1
;   - "ReducePopDestroy"  = Reduce city size by one, possibly destroying the city
;   - "EmptyFoodStock"    = Remove all food from food stock
;   - "EmptyProdStock"    = Destroy current production
;   - "Pollution"         = One tile surrounding city polluted
;   - "Fallout"           = One tile surrounding city polluted with fallout
;
; */ <-- avoid gettext warnings

[disaster_earthquake]
name           = _("Earthquake")
reqs           =
    { "type", "name", "range"
      "Terrain", "Hills", "Adjacent"
    }
frequency      = 10
effects        = "DestroyBuilding"

[disaster_famine]
name           = _("Famine")
reqs           =
    { "type", "name", "range", "present"
      "Building", "Granary", "City", FALSE
    }
frequency      = 10
effects        = "ReducePopulation", "EmptyFoodStock"

[disaster_fire]
name           = _("Fire")
reqs           =
    { "type", "name", "range", "present"
      "Building", "Aqueduct", "City", FALSE
    }
frequency      = 10
effects        = "DestroyBuilding"

[disaster_flood]
name           = _("Flood")
reqs           =
    { "type", "name", "range", "present"
      "Extra", "River", "Adjacent", TRUE
      "Building", "City Walls", "City", FALSE
    }
frequency      = 10
effects        = "ReducePopulation"

[disaster_piracy]
name           = _("Piracy")
reqs           =
    { "type", "name", "range", "present"
      "Terrain", "Ocean", "Adjacent", TRUE
      "Building", "Barracks", "City", FALSE
      "Building", "Barracks II", "City", FALSE
      "Building", "Barracks III", "City", FALSE
    }
frequency      = 10
effects        = "EmptyFoodStock", "EmptyProdStock"

[disaster_plague]
name           = _("Plague")
reqs          =
    { "type", "name", "range", "present"
      "Tech", "Medicine", "Player", FALSE
      "Building", "Aqueduct", "City", FALSE
    }
frequency      = 10
effects        = "ReducePopulation"

[disaster_volcano]
name           = _("Volcano")
reqs           =
    { "type", "name", "range", "present"
      "Terrain", "Mountains", "Adjacent", TRUE
      "Building", "Temple", "City", FALSE
    }
frequency      = 10
effects        = "ReducePopulation"

; /* <-- avoid gettext warnings
;
; Achievement 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".
; type                    = What event grants the achievement to player.
;                           See README.achievements for list of these types.
; unique                  = If TRUE, only first one reaching the achievement will
;                           get it. Defaults to TRUE
; value                   = Value to reach. Exact meaning of this depends on
;                           achievement type.
; culture                 = Amount of culture granted to player who gets achievement
;                           granted.
; first_msg               = Message shown to first player gaining the achievement
; cons_msg                = Message shown to consecutive players gaining the achievement
;
; */ <-- avoid gettext warnings

; No achievements in civ1 ruleset

;
; Trade settings
;
; IN = international, IC = intercontinental.
; For each of the trade route types:
; "pct"        - Trade income %. If this is 0, trade route cannot be
;                established at all
; "cancelling" - What to do to previously established trade routes when they
;                turn illegal
;                "Active"   - Keep them active (although they will only
;                             provide nonzero income if illegal due to
;                             trademindist rather than pct==0)
;                "Inactive" - Keep them inactive
;                "Cancel"   - Cancel them altogether
;
; If you have established a trade route with enemy city nearby, conquer it and
; thus get trade route between your cities with less than trademindist distance,
; civ1 removes the trade route completely.
;
; "bonus"      - One-time bonuses granted when trade route established
;                "None"     - No one-time bonus
;                "Gold"     - Bonus to gold
;                "Science"  - Bonus to research
;                "Both"     - Bonus to gold and research
;
[trade]
settings =
  { "type",       "pct", "cancelling", "bonus"
    "National",   100,   "Cancel",     "Gold"
    "NationalIC", 200,   "Cancel",     "Gold"
    "IN",         200,   "Cancel",     "Gold"
    "INIC",       400,   "Cancel",     "Gold"
    "Ally",       200,   "Cancel",     "Gold"
    "AllyIC",     400,   "Cancel",     "Gold"
    "Enemy",      200,   "Cancel",     "Gold"
    "EnemyIC",    400,   "Cancel",     "Gold"
    "Team",       200,   "Cancel",     "Gold"
    "TeamIC",     400,   "Cancel",     "Gold"
  }

; Minimum trade a trade route produces, as long as the good has nonzero income
; for the relevant direction (from_pct / to_pct)
min_trade_route_val = 0

; When are goods for the trade route chosen.
; "Leaving" - Goods to carry are assigned to unit when it`s built, or it changes homecity
; "Arrival" - Goods are chosen when trade route is established, when unit arrives to destination
goods_selection = "Arrival"

; /* <-- avoid gettext warnings
;
; Goods 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".
; reqs                    = requirements for a city to provide goods (see effects.ruleset
;                           and README.effects for help on requirements)
; from_pct                = Income for the sending end of the trade route. Default is 100%
;                           This value is applied to both ends of bidirectional routes.
; to_pct                  = Income for the receiving end of the trade route. Default is 100%
;                           This value is not used at all in case of bidirectional routes.
; onetime_pct             = Onetime bonuses when trade route gets established. Default is 100%
; flags
;   - "Bidirectional"     = Trade route carrying the goods does not have "from" and "to"
;                           ends, but both ends are considered the same.
;   - "Depletes"          = Trade route gets cancelled when the source city cannot provide
;                           goods any more. Bidirectional routes gets cancelled if either
;                           one of the involved cities cannot provide goods.
; helptext                = Optional help text string; should escape all raw
;                           newlines so that xgettext parsing works
;
; */ <-- avoid gettext warnings

[goods_good]
name  = _("Goods")
flags = "Bidirectional"


; /* <-- avoid gettext warnings
;
; Clause types
;
; Clause types that are not listed here, are not enabled at all.
;
; type                   = Type of the clause, one of "Advance", "Gold", "Map", "Seamap",
;                          "City", "Ceasefire", "Peace", "Alliance", "Vision", "Embassy"
; giver_reqs             = requirements that the giving side of the clause needs to fulfill
;                          (see effects.ruleset and README.effects for help on requirements)
; receiver_reqs          = requirements that the receiving side of the clause needs to fulfill
;
; */ <-- avoid gettext warnings

[clause_advance]
type = "Advance"

[clause_gold]
type = "Gold"

[clause_map]
type = "Map"

[clause_seamap]
type = "Seamap"

[clause_city]
type = "City"

[clause_ceasefire]
type = "Ceasefire"

[clause_peace]
type = "Peace"

[clause_vision]
type = "Vision"

[clause_embassy]
type = "Embassy"


[playercolors]
background.r = 86
background.g = 86
background.b = 86

; Player colors for 32 players are defined below.
; Avoid greens, blues, and white / very pale colors (too easy to confuse
; with terrain).
; Avoid dark colors.
colorlist =
    { "r", "g", "b"
      255,   0,   0
      255, 255,   0
        0, 255, 255
      138,  43, 226
      255, 165,   0
      255,   0, 255
      173, 216, 230
        0, 255, 127
      250, 128, 114
      124, 252,   0
      139,   0,   0
      255, 192, 203
      211, 211, 211
      218, 112, 214
      255,  20, 147
      100, 149, 237
      255, 215,   0
      245, 222, 179
      255, 255, 128
      192, 255, 128
      204, 255,   0
      255, 211, 140
      255,  79,   0
      240, 145, 169
      255, 219,  88
      153,  17, 153
      184, 134,  11
      255, 102,   0
      102, 205, 170
      195,  33,  72
      168, 153, 230
      255, 250, 205
    }

[teams]
; freeciv optional team names definition.
;
; names =
; _("Team 1"),
; _("Team 2"),
; _("Team 3"),
; _("Team 4"),
; etc...

[settings]
; freeciv game  for the civ1 ruleset
;
; set =
;     { "name", "value", "lock"
;       "bool_set", TRUE, FALSE
;       "int_set", 123, FALSE
;       "str_set", "test", FALSE
;     }
set =
    { "name", "value", "lock"
      "sciencebox", 50, FALSE
      "startunits", "c", FALSE
      "borders", "DISABLED", FALSE
      "citymindist", 1, FALSE
      "gold", 0, FALSE
      "savepalace", "DISABLED", FALSE
      ; Ruleset has no trait ranges, so player choosing EVEN would have
      ; no effect anyway
      "traitdistribution", "FIXED", TRUE
      "plrcolormode", "NATION_ORDER", FALSE
      "topology", "WRAPX|ISO", FALSE
    }
