Make enum type conversion explicit.
[freeciv.git] / data / sandbox / game.ruleset
blob5d5a55918e29c0670f2476997fa2033ef82ea861
1 ; Modifying this file:
2 ; You should not modify this file except to make bugfixes or
3 ; for other "maintenance".  If you want to make custom changes,
4 ; you should create a new datadir subdirectory and copy this file
5 ; into that directory, and then modify that copy.  Then use the
6 ; command "rulesetdir <mysubdir>" in the server to have freeciv
7 ; use your new customized file.
9 ; Note that the freeciv AI may not cope well with anything more
10 ; than minor changes.
12 [datafile]
13 description="Sandbox game rules for Freeciv"
14 options="+Freeciv-ruleset-Devel-2017.Jan.02"
15 format_version=20
17 ; This section contains meta information for freeciv-ruledit to recreate the ruleset
18 ; file in a form wanted. These have no in-game effect whatsoever
19 [ruledit]
21 ; Which file to read description in from.
22 description_file = "sandbox/README.sandbox"
24 [about]
25 ; Ruleset name
26 name = _("Sandbox ruleset")
28 ; There`s no separate versioning in rulesets part of main freeciv distribution
29 ;version = ""
31 ; Summary of the ruleset
32 summary = _("\
33 You are playing Freeciv with sandbox ruleset. This showcases new or \
34 unusual features available in Freeciv without regard for strict game \
35 balancing, playability, AI performance, or savegame compatibility \
36 between versions.\
37 \n\n\
38 This ruleset was originally based on current default ruleset, civ2civ3.\
41 ; Detailed description
42 ; When updating this, update also desciption_file in [ruledit] section to match
43 description = *sandbox/README.sandbox*
45 [options]
46 global_init_techs=""
47 global_init_buildings="Palace"
49 [civstyle]
50 ; Value added to city pollution
51 base_pollution   = -20
53 ; Cost in luxuries of making one citizen happier
54 happy_cost       = 2
56 ; Cost in food of upkeeping a single citizen
57 food_cost        = 2
59 ; Parameters used to generalize the calculation of city granary size:
60 ;   if city_size <= num_inis:
61 ;     city_granary_size = (granary_food_ini[city_size] * foodbox / 100)
62 ;   if city_size > num_inis;
63 ;     city_granary_size = (granary_food_ini[num_inis] +
64 ;        granary_food_inc * (city_size - num_inis)) * foodbox / 100
65 granary_food_ini = 20, 20, 20, 20, 20, 30, 30, 40
66 granary_food_inc = 0
68 ; City center minimum outputs
69 min_city_center_food    = 1
70 min_city_center_shield  = 0
71 min_city_center_trade   = 0
73 ; Square of initial city radius
74 init_city_radius_sq     = 5
76 ; Square of initially visible radius (true distance).
77 init_vis_radius_sq      = 5
79 ; A base bribe cost, modified heavily by other factors
80 base_bribe_cost  = 750
82 ; Barbarian leader ransom in gold
83 ransom_gold      = 100
85 ; Number of veteran levels lost when upgrading a unit
86 upgrade_veteran_loss     = 1
88 ; Number of veteran levels lost when auto-upgrading a unit
89 autoupgrade_veteran_loss = 1
91 ; Whether player gets to select which terrain improvement to pillage.
92 pillage_select           = TRUE
94 ; Whether one can steal a tech for which prereqs are not known
95 tech_steal_allow_holes    = FALSE
96 ; Whether one can get a tech for which prereqs are not known via
97 ; diplomatic trading
98 tech_trade_allow_holes    = FALSE
99 ; ...and whether one can lose a tech which is prereq for another known
100 ; tech via trade, if techlost_donor is nonzero
101 tech_trade_loss_allow_holes = FALSE
102 ; Whether one can get a tech for which prereqs are not known via
103 ; parasite effect (Great Library)
104 tech_parasite_allow_holes = FALSE
105 ; Whether one can lose a tech which is prereq for another known tech
106 ; due to negative bulbs, if techlossforgiveness allows loss
107 tech_loss_allow_holes     = FALSE
109 ; Whether civil war is possible at all
110 civil_war_enabled        = TRUE
112 ; Comma separated list of things to happen, in addition to death
113 ; of owner, when gameloss unit dies
114 ; "CivilWar"   - Part of the empire remains, controlled by a new player
115 ; "Barbarians" - Depending on if there`s also "CivilWar", all or part
116 ;                or half of the dead players empire gets under barbarian
117 ;                control.
118 ; "Loot"       - Player who killed the gameloss unit gets loot:
119 ;                Partial map, gold, techs, cities
120 gameloss_style           = ""
122 ; Whether units may safely paradrop to transport on non-native terrain
123 paradrop_to_transport    = FALSE
125 ; Method of paying unit and improvement gold upkeep
126 ; "City" - The player`s total gold must be non-negative after paying upkeep
127 ;          costs associated with each city. If for any city the player`s
128 ;          gold is negative, random buildings in the city are sold off. If
129 ;          the gold is still negative, then supported units with gold upkeep
130 ;          are disbanded.
131 ; "Mixed" - In the first step, the player`s total gold must be non-negative
132 ;           after paying upkeep for all buildings within a city. If for any
133 ;           city the player`s gold is negative, random buildings in the city
134 ;           are sold off.
135 ;           In the second step, gold upkeep for all units is paid in a lump
136 ;           sum. If the player does not have enough gold, random units with
137 ;           gold upkeep are disbanded.
138 ; "Nation" - Gold upkeep for all buildings and units is paid in a lump sum
139 ;            after all cities have been processed. If the player does not
140 ;            have enough gold, random buildings from random cities are sold.
141 ;            If still more gold is needed, then random units with gold
142 ;            upkeep are disbanded.
143 gold_upkeep_style = "Mixed"
145 [illness]
146 ; Whether plagues (illness) are possible
147 illness_on = TRUE
149 ; the base factor for illness (of percent)
150 illness_base_factor = 10
152 ; minimum city size for illness
153 illness_min_size = 5
155 ; factor for how much trading with a plagued city increases our city`s
156 ; chance for plague (in percent)
157 illness_trade_infection = 50
159 ; factor for how much pollution within a city increases its chance for
160 ; plague (in percent)
161 illness_pollution_factor = 50
163 [incite_cost]
164 ; city_incite_cost = total_factor * (city_size) * (base_incite_cost
165 ;                      + (units_cost) * unit_factor
166 ;                      + (improvements_cost) * improvement_factor)
167 ;                    / ((distance to capital) * 100)
168 ; See city_incite_cost() for more details
169 base_incite_cost = 1000
170 improvement_factor = 1
171 unit_factor = 2
172 total_factor = 100
174 [global_unit_options]
175 ; Shore landing style
176 ;  FALSE - normal movement
177 ;  TRUE  - (default) slow invasions by removing all
178 ;          movement points from ground units moving
179 ;          from ocean tile to land
180 slow_invasions = TRUE
182 [combat_rules]
183 ; If tired_attack is set to TRUE, units that attack with less than a single
184 ; move point (per move_fragments in terrain.ruleset) will have their attack
185 ; power reduced accordingly. For instance, if move_fragments=3, a unit with
186 ; 2/3 move points will have attack power 2/3 of normal.
187 ; If this is set to FALSE units will attack with full strength even if they
188 ; have only fractional moves left.
189 tired_attack = TRUE
191 [auto_attack]
192 ; An auto attack may be triggered when another unit moves to an adjacent
193 ; tile and the autoattack server setting is enabled. The following details
194 ; are ruleset controlled.
195 ;   will_never - units with this unit type flag will never auto attack.
197 ; Not a good idea to nuke our own area.
198 will_never = "Nuclear"
200 [actions]
201 ; If force_trade_route is set to TRUE it is illegal for an actor unit to
202 ; enter the marketplace of a city if it can establish a trade route to it
203 ; in stead.
204 force_trade_route = FALSE
206 ; If force_capture_units is set to TRUE it is illegal for an actor unit to
207 ; bombard, explode nuclear or perform a regular attack against a tile if
208 ; it can capture units on it in stead.
209 force_capture_units = TRUE
211 ; If force_bombard is set to TRUE it is illegal for an actor unit to
212 ; explode nuclear or perform a regular attack against a tile if it can
213 ; bombard it in stead.
214 force_bombard = TRUE
216 ; If force_explode_nuclear is set to TRUE it is illegal for an actor unit
217 ; to perform a regular attack against a tile if it can do explode nuclear
218 ; in stead.
219 force_explode_nuclear = TRUE
221 ; If poison_empties_food_stock is set to TRUE a successful "Poison City"
222 ; will empty the food stock.
223 poison_empties_food_stock = FALSE
225 ; The maximum distance from the actor unit to the target of the "Bombard"
226 ; action. The value 1 means that the targets must be on a tile adjacent to
227 ; the actor unit. The special value "unlimited" lifts the maximum distance
228 ; restriction. The maximum distance can`t be smaller than the minimum
229 ; distance.
230 bombard_max_range = 1
232 ; What each action should be called when showing them to the player.
233 ; The first %s should be before the mnemonic of the action. A Freeciv client
234 ; that supports mnemonics will replace it with the in-band signal that marks
235 ; the following character as a mnemonic in its graphical toolkit.
236 ; The second %s marks where extra details should be inserted.
238 ; /* TRANS: _Poison City (3% chance of success). */
239 ui_name_poison_city = _("%sPoison City%s")
241 ; /* TRANS: _Sabotage Enemy Unit (3% chance of success). */
242 ui_name_sabotage_unit = _("%sSabotage Enemy Unit%s")
244 ; /* TRANS: _Bribe Enemy Unit (3% chance of success). */
245 ui_name_bribe_unit = _("%sBribe Enemy Unit%s")
247 ; /* TRANS: _Sabotage City (3% chance of success). */
248 ui_name_sabotage_city = _("%sSabotage City%s")
250 ; /* TRANS: Industrial _Sabotage (3% chance of success). */
251 ui_name_targeted_sabotage_city = _("Industrial %sSabotage%s")
253 ; /* TRANS: Incite a _Revolt (3% chance of success). */
254 ui_name_incite_city = _("Incite a %sRevolt%s")
256 ; /* TRANS: Establish _Embassy (100% chance of success). */
257 ui_name_establish_embassy = _("Establish %sEmbassy%s")
259 ; /* TRANS: Establish _Embassy (and stay) (100% chance of success). */
260 ui_name_establish_embassy_stay = _("Establish %sEmbassy (and stay)%s")
262 ; /* TRANS: Steal _Technology (3% chance of success). */
263 ui_name_steal_tech = _("Steal %sTechnology%s")
265 ; /* TRANS: Indus_trial Espionage (3% chance of success). */
266 ui_name_targeted_steal_tech = _("Indus%strial Espionage%s")
268 ; /* TRANS: Steal _Map Fragments (3% chance of success). */
269 ui_name_steal_maps = _("Steal %sMap Fragments%s")
271 ; /* TRANS: _Investigate City (100% chance of success). */
272 ui_name_investigate_city = _("%sInvestigate City%s")
274 ; /* TRANS: _Investigate City (spends the unit) (100% chance of success). */
275 ui_name_investigate_city_spend_unit = _("%sInvestigate City (spends the unit)%s")
277 ; /* TRANS: Establish Trade _Route (100% chance of success). */
278 ui_name_establish_trade_route = _("Establish Trade %sRoute%s")
280 ; /* TRANS: Enter _Marketplace (100% chance of success). */
281 ui_name_enter_marketplace = _("Enter %sMarketplace%s")
283 ; /* TRANS: Help _build Wonder (100% chance of success). */
284 ui_name_help_wonder = _("Help %sbuild Wonder%s")
286 ; /* TRANS: Rec_ycle Unit (100% chance of success). */
287 ui_name_recycle_unit = _("Rec%sycle Unit%s")
289 ; /* TRANS: _You're Fired (100% chance of success). */
290 ui_name_disband_unit = _("%sYou're Fired%s")
292 ; /* TRANS: _Capture Units (100% chance of success). */
293 ui_name_capture_units = _("%sCapture Units%s")
295 ; /* TRANS: _Build City (100% chance of success). */
296 ui_name_found_city = _("%sBuild City%s")
298 ; /* TRANS: _Add to City (100% chance of success). */
299 ui_name_join_city = _("%sAdd to City%s")
301 ; /* TRANS: _Bombard (100% chance of success). */
302 ui_name_bombard = _("%sBombard%s")
304 ; /* TRANS: Explode _Nuclear (100% chance of success). */
305 ui_name_explode_nuclear = _("Explode %sNuclear%s")
307 ; /* TRANS: Destroy _City (100% chance of success). */
308 ui_name_destroy_city = _("Destroy %sCity%s")
310 ; /* TRANS: Set _Home City (100% chance of success). */
311 ui_name_home_city = _("Set %sHome City%s")
313 ; /* TRANS: _Upgrade Unit (100% chance of success). */
314 ui_upgrade_unit = _("%sUpgrade Unit%s")
316 ; /* TRANS: Drop _Paratrooper (100% chance of success). */
317 ui_paradrop_unit = _("Drop %sParatrooper%s")
319 ; /* TRANS: _Airlift to City (100% chance of success). */
320 ui_airlift_unit = _("%sAirlift to City%s")
322 ; /* TRANS: _Attack (100% chance of success). */
323 ui_name_attack = _("%sAttack%s")
325 ; /* TRANS: _Conquer City (100% chance of success). */
326 ui_name_conquer_city = _("%sConquer City%s")
328 ; Suppress automatic help text generation about what enables and/or
329 ; disables the following actions.
331 ; Can make the help text less redundant when you document it your self.
332 ;quiet_actions = "Targeted Sabotage City", "Targeted Steal Tech"
334 ; /* <-- avoid gettext warnings
336 ; Action enablers:
338 ; action               = the action to enable.
339 ; actor_reqs           = requirements that apply to the actor.
340 ; target_reqs          = requirements that apply to the target.
342 ; README.actions lists the possible actions and their hard coded
343 ; requirements.
345 ; An action enabler is active when its actor_reqs AND its target_reqs are
346 ; satisfied.
348 ; */ <-- avoid gettext warnings
350 [actionenabler_sabotage_city]
351 action = "Sabotage City"
352 actor_reqs    =
353     { "type",   "name", "range"
354       "UnitFlag", "Diplomat", "Local"
355       "DiplRel", "War", "Local"
356       "UnitState", "OnLivableTile", "Local"
357       "MinMoveFrags", "1", "Local"
358     }
360 [actionenabler_sabotage_city_target]
361 action = "Targeted Sabotage City"
362 actor_reqs    =
363     { "type",   "name", "range"
364       "DiplRel", "War", "Local"
365       "UnitFlag", "Spy", "Local"
366       "UnitState", "OnLivableTile", "Local"
367       "MinMoveFrags", "1", "Local"
368     }
370 [actionenabler_establish_embassy]
371 action       = "Establish Embassy Stay"
372 actor_reqs    =
373     { "type",         "name",     "range", "present"
374       "UnitFlag",     "Diplomat", "Local", TRUE
375       "MinMoveFrags", "1",        "Local", TRUE
376       "DiplRel",      "Foreign",  "Local", TRUE
377       "UnitFlag",     "Spy",      "Local", FALSE
378     }
379 target_reqs  =
380     { "type",        "name",      "range", "present"
381       "NationGroup", "Barbarian", "Player", FALSE
382     }
384 [actionenabler_establish_embassy_spy]
385 action       = "Establish Embassy"
386 actor_reqs    =
387     { "type",         "name",    "range"
388       "UnitFlag",     "Spy",     "Local"
389       "MinMoveFrags", "1",       "Local"
390       "DiplRel",      "Foreign", "Local"
391     }
392 target_reqs  =
393     { "type",        "name",      "range", "present"
394       "NationGroup", "Barbarian", "Player", FALSE
395     }
397 [actionenabler_establish_embassy_explorer]
398 action       = "Establish Embassy Stay"
399 actor_reqs    =
400     { "type",         "name",     "range"
401       "UnitType",     "Explorer", "Local"
402       "MinMoveFrags", "1",        "Local"
403       "DiplRel",      "Foreign",  "Local"
404     }
405 target_reqs  =
406     { "type",        "name",      "range", "present"
407       "NationGroup", "Barbarian", "Player", FALSE
408     }
410 [actionenabler_investigate_city]
411 action       = "Investigate City Spend Unit"
412 actor_reqs    =
413     { "type",   "name", "range", "present"
414       "UnitFlag", "Diplomat", "Local", TRUE
415       "MinMoveFrags", "1", "Local", TRUE
416       "DiplRel", "Foreign", "Local", TRUE
417       "UnitFlag", "Spy", "Local", FALSE
418     }
420 [actionenabler_investigate_city_spy]
421 action       = "Investigate City"
422 actor_reqs    =
423     { "type",   "name", "range"
424       "UnitFlag", "Spy", "Local"
425       "MinMoveFrags", "1", "Local"
426       "DiplRel", "Foreign", "Local"
427     }
429 [actionenabler_investigate_city_explorer]
430 action       = "Investigate City Spend Unit"
431 actor_reqs    =
432     { "type",   "name", "range"
433       "UnitType", "Explorer", "Local"
434       "MinMoveFrags", "1", "Local"
435       "DiplRel", "Foreign", "Local"
436     }
438 [actionenabler_steal_maps]
439 action = "Steal Maps"
440 actor_reqs    =
441     { "type",   "name", "range"
442       "UnitFlag", "Spy", "Local"
443       "UnitState", "OnLivableTile", "Local"
444       "MinMoveFrags", "1", "Local"
445       "DiplRel", "Foreign", "Local"
446     }
447 target_reqs  =
448     { "type",   "name", "range", "present"
449       "NationGroup", "Barbarian", "Player", FALSE
450     }
452 [actionenabler_steal_tech_random]
453 action = "Steal Tech"
454 actor_reqs    =
455     { "type",   "name", "range", "present"
456       "UnitFlag", "Diplomat", "Local"
457       "UnitState", "OnLivableTile", "Local"
458       "MinMoveFrags", "1", "Local"
459       "DiplRel", "Foreign", "Local"
460     }
461 target_reqs  =
462     { "type",   "name", "range", "present"
463       "NationGroup", "Barbarian", "Player", FALSE
464     }
466 [actionenabler_steal_tech_target]
467 action = "Targeted Steal Tech"
468 actor_reqs    =
469     { "type",   "name", "range"
470       "UnitFlag", "Spy", "Local"
471       "UnitState", "OnLivableTile", "Local"
472       "MinMoveFrags", "1", "Local"
473       "DiplRel", "Foreign", "Local"
474     }
475 target_reqs  =
476     { "type",   "name", "range", "present"
477       "NationGroup", "Barbarian", "Player", FALSE
478     }
480 [actionenabler_poison_city]
481 action = "Poison City"
482 actor_reqs    =
483     { "type",   "name", "range"
484       "UnitFlag", "Spy", "Local"
485       "DiplRel", "War", "Local"
486       "UnitState", "OnLivableTile", "Local"
487       "MinMoveFrags", "1", "Local"
488     }
489 target_reqs    =
490     { "type",   "name", "range"
491       "MinSize", "2", "City"
492     }
494 [actionenabler_incite_city]
495 action = "Incite City"
496 actor_reqs    =
497     { "type",   "name", "range", "present"
498       "UnitFlag", "Diplomat", "Local", TRUE
499       "DiplRel", "Alliance", "Local", FALSE
500       "DiplRel", "Team", "Local", FALSE
501       "UnitState", "OnLivableTile", "Local", TRUE
502       "MinMoveFrags", "1", "Local", TRUE
503       "DiplRel", "Foreign", "Local", TRUE
504     }
505 target_reqs  =
506     { "type",   "name", "range", "present"
507       "Gov", "Federation", "Player", FALSE
508       "Gov", "Democracy", "Player", FALSE
509       "Building", "Palace", "City", FALSE
510       "Building", "Ecclesiastical Palace", "City", FALSE
511       "Building", "Mausoleum of Mausolos", "Player", FALSE
512     }
514 [actionenabler_bribe_unit]
515 action = "Bribe Unit"
516 actor_reqs    =
517     { "type",   "name", "range", "present"
518       "UnitFlag", "Diplomat", "Local", TRUE
519       "DiplRel", "Alliance", "Local", FALSE
520       "DiplRel", "Team", "Local", FALSE
521       "UnitState", "OnLivableTile", "Local", TRUE
522       "MinMoveFrags", "1", "Local", TRUE
523       "DiplRel", "Foreign", "Local", TRUE
524     }
525 target_reqs    =
526     { "type",   "name", "range", "present"
527       "UnitFlag", "Unbribable", "Local", FALSE
528       "CityTile", "Center", "Local", FALSE
529       "Gov", "Republic", "Player", FALSE
530       "Gov", "Democracy", "Player", FALSE
531     }
533 [actionenabler_sabotage_unit]
534 action = "Sabotage Unit"
535 actor_reqs    =
536     { "type",   "name", "range"
537       "UnitFlag", "Spy", "Local"
538       "DiplRel", "War", "Local"
539       "UnitState", "OnLivableTile", "Local"
540       "MinMoveFrags", "1", "Local"
541     }
542 target_reqs    =
543     { "type",   "name", "range", "present"
544       "CityTile", "Center", "Local", FALSE
545       "MinHitPoints", "2", "Local", TRUE
546     }
548 [actionenabler_traderoute]
549 action = "Establish Trade Route"
550 actor_reqs    =
551     { "type",   "name", "range", "present"
552       "UnitFlag", "TradeRoute", "Local", TRUE
553       "MinMoveFrags", "1", "Local", TRUE
554     }
556 [actionenabler_marketplace]
557 action = "Enter Marketplace"
558 actor_reqs    =
559     { "type",   "name", "range", "present"
560       "UnitFlag", "TradeRoute", "Local", TRUE
561       "MinMoveFrags", "1", "Local", TRUE
562     }
563 target_reqs  =
564     { "type",     "name",        "range"
565       "Building", "Marketplace", "City"
566     }
568 [actionenabler_help_build_wonder]
569 action = "Help Wonder"
570 actor_reqs    =
571     { "type",     "name",       "range", "present"
572       "UnitFlag", "HelpWonder", "Local", TRUE
573       "DiplRel",  "Armistice",  "Local", FALSE
574       "DiplRel",  "War",        "Local", FALSE
575       "DiplRel",  "Cease-fire", "Local", FALSE
576       "DiplRel",  "Peace",      "Local", FALSE
577       "MinMoveFrags", "1", "Local", TRUE
578     }
579 target_reqs    =
580     { "type",   "name", "range"
581       "BuildingGenus", "GreatWonder", "Local"
582     }
584 [actionenabler_help_build_small_wonder]
585 action = "Help Wonder"
586 actor_reqs    =
587     { "type",     "name",       "range", "present"
588       "UnitFlag", "HelpWonder", "Local", TRUE
589       "DiplRel",  "Armistice",  "Local", FALSE
590       "DiplRel",  "War",        "Local", FALSE
591       "DiplRel",  "Cease-fire", "Local", FALSE
592       "DiplRel",  "Peace",      "Local", FALSE
593     }
594 target_reqs    =
595     { "type",   "name", "range"
596       "BuildingGenus", "SmallWonder", "Local"
597     }
599 [actionenabler_recycle_unit]
600 action = "Recycle Unit"
601 actor_reqs    =
602     { "type",   "name", "range", "present"
603       "UnitFlag", "EvacuateFirst", "Local", FALSE
604       "UnitFlag", "Consensus",     "Local", FALSE
605       "DiplRel",  "War",        "Local", FALSE
606       "DiplRel",  "Cease-fire", "Local", FALSE
607       "DiplRel",  "Armistice",  "Local", FALSE
608       "DiplRel",  "Peace",      "Local", FALSE
609     }
611 [actionenabler_recycle_unit_consensus]
612 action = "Recycle Unit"
613 actor_reqs    =
614     { "type",     "name",          "range",  "present"
615       "UnitFlag", "EvacuateFirst", "Local",  FALSE
616       "UnitFlag", "Consensus",     "Local",  TRUE
617       "Gov",      "Communism",     "Player", FALSE
618       "Gov",      "Democracy",     "Player", FALSE
619       "Gov",      "Republic",      "Player", FALSE
620       "DiplRel",  "War",        "Local", FALSE
621       "DiplRel",  "Cease-fire", "Local", FALSE
622       "DiplRel",  "Armistice",  "Local", FALSE
623       "DiplRel",  "Peace",      "Local", FALSE
624     }
626 [actionenabler_disband_unit]
627 action = "Disband Unit"
628 actor_reqs    =
629     { "type",   "name", "range", "present"
630       "UnitFlag", "EvacuateFirst", "Local", FALSE
631       "UnitFlag", "Consensus",     "Local", FALSE
632     }
634 [actionenabler_disband_unit_consensus]
635 action = "Disband Unit"
636 actor_reqs    =
637     { "type",     "name",          "range",  "present"
638       "UnitFlag", "EvacuateFirst", "Local",  FALSE
639       "UnitFlag", "Consensus",     "Local",  TRUE
640       "Gov",      "Communism",     "Player", FALSE
641       "Gov",      "Democracy",     "Player", FALSE
642       "Gov",      "Republic",      "Player", FALSE
643     }
645 [actionenabler_capture]
646 action = "Capture Units"
647 actor_reqs    =
648     { "type",   "name", "range", "present"
649       "UnitFlag", "Capturer", "Local", TRUE
650       "DiplRel", "War", "Local", TRUE
651       "MinMoveFrags", "1", "Local", TRUE
652       "DiplRel", "Foreign", "Local", TRUE
653     }
654 target_reqs    =
655     { "type",   "name", "range", "present"
656       "UnitFlag", "Capturable", "Local", TRUE
657       "CityTile", "Center", "Local", FALSE
658     }
660 [actionenabler_bombard]
661 action = "Bombard"
662 actor_reqs    =
663     { "type",         "name",        "range", "present"
664       "UnitFlag",     "Bombarder",   "Local", TRUE
665       "UnitState",    "Transported", "Local", FALSE
666       "MinMoveFrags", "1",           "Local", TRUE
667       "DiplRel",      "War",         "Local", TRUE
668     }
669 target_reqs    =
670     { "type",   "name", "range", "present"
671       "TerrainClass", "Oceanic", "Local", FALSE
672     }
674 [actionenabler_build_city_pioneer]
675 action = "Found City"
676 actor_reqs    =
677     { "type",   "name", "range"
678       "UnitFlag", "Cities", "Local"
679       "UnitState", "OnLivableTile", "Local"
680       "MinMoveFrags", "1", "Local"
681     }
682 target_reqs    =
683     { "type",   "name", "range", "present"
684       "CityTile", "Claimed", "Local", FALSE
685     }
687 [actionenabler_build_city_domestic]
688 action = "Found City"
689 actor_reqs    =
690     { "type",   "name", "range", "present"
691       "UnitFlag", "Cities", "Local", TRUE
692       "UnitState", "OnLivableTile", "Local", TRUE
693       "MinMoveFrags", "1", "Local", TRUE
694       "DiplRel", "Foreign", "Local", FALSE
695     }
697 [actionenabler_join_city]
698 action = "Join City"
699 actor_reqs    =
700     { "type",   "name", "range", "present"
701       "UnitFlag", "AddToCity", "Local", TRUE
702       "DiplRel", "Foreign", "Local", FALSE
703       "MinMoveFrags", "1", "Local", TRUE
704     }
706 [actionenabler_border_police]
707 action = "Expel Unit"
708 actor_reqs    =
709     { "type",          "name",           "range", "present"
710       "UnitClassFlag", "BorderPolice",   "Local", TRUE
711       "UnitState",     "OnDomesticTile", "Local", TRUE
712       "DiplRel",       "Foreign",     "Local", TRUE
713       "DiplRel",       "Team",           "Local", FALSE
714       "DiplRel",       "Alliance",       "Local", FALSE
715       "DiplRel",       "War",            "Local", FALSE
716       "MinMoveFrags",  "1",              "Local", TRUE
717     }
718 target_reqs    =
719     { "type",          "name",           "range", "present"
720       "UnitClassFlag", "Expellable",     "Local", TRUE
721       "UnitState",     "OnDomesticTile", "Local", FALSE
722     }
724 [actionenabler_nuke]
725 action = "Explode Nuclear"
726 actor_reqs    =
727     { "type",   "name", "range", "present"
728       "UnitFlag", "Nuclear", "Local", TRUE
729     }
731 ; The GameLoss unit requirement makes sending units on a suicide mission to
732 ; capture and destroy cities deep inside enemy terrain national suicide.
733 ; The risk of moving a GameLoss unit to the target city increases the cost
734 ; of the action. Rationalization for the requirement: the physical presence
735 ; of the Leader makes it easier to comply with the order to destroy the
736 ; city. (See the "orders by phone" Milgram experiment variation)
738 ; The domestic city requirement forces the player to invade a city before
739 ; he can destroy it. If this limit is weakened by allowing the destruction
740 ; of undefended (MaxUnitsOnTile) foreign cities during war it will lead to
741 ; situations where a player can destroy a city but is unable to occupy it.
742 ; Rationalization: the resistance must be crushed before the destruction.
744 ; TODO: create an international incident (set the Casus_Belli_Success
745 ; effect value to 1000) if "Destroy City" still is overpowered.
746 [actionenabler_scorched_earth]
747 action = "Destroy City"
748 actor_reqs    =
749     { "type",         "name",          "range", "present"
750       "UnitFlag",     "GameLoss",      "Local", TRUE
751       "DiplRel",      "Foreign",    "Local", FALSE
752       "MinMoveFrags", "1",             "Local", TRUE
753       "UnitState",    "OnLivableTile", "Local", TRUE
754     }
756 [actionenabler_attack_native]
757 action = "Attack"
758 actor_reqs    =
759     { "type",         "name",         "range", "present"
760       "UnitFlag",     "NonMil",       "Local", FALSE
761       "MinMoveFrags", "1",            "Local", TRUE
762       "UnitState",    "OnNativeTile", "Local", TRUE
763     }
765 [actionenabler_attack_marines]
766 action = "Attack"
767 actor_reqs    =
768     { "type",         "name",    "range", "present"
769       "UnitFlag",     "NonMil",  "Local", FALSE
770       "MinMoveFrags", "1",       "Local", TRUE
771       "UnitFlag",     "Marines", "Local", TRUE
772     }
774 [actionenabler_attack_att_from_non_native]
775 action = "Attack"
776 actor_reqs    =
777     { "type",          "name",             "range", "present"
778       "UnitFlag",      "NonMil",           "Local", FALSE
779       "MinMoveFrags",  "1",                "Local", TRUE
780       "UnitClassFlag", "AttFromNonNative", "Local", TRUE
781     }
783 [actionenabler_conquer_city_native]
784 action = "Conquer City"
785 actor_reqs    =
786     { "type",           "name",          "range", "present"
787       "UnitClassFlag",  "CanOccupyCity", "Local", TRUE
788       "UnitFlag",       "NonMil",        "Local", FALSE
789       "DiplRel",        "War",           "Local", TRUE
790       "MinMoveFrags",   "1",             "Local", TRUE
791       "UnitState",      "OnLivableTile", "Local", TRUE
792     }
793 target_reqs    =
794     { "type",           "name",          "range", "present"
795       "MaxUnitsOnTile", "0",             "Local", TRUE
796     }
798 [actionenabler_conquer_city_marines]
799 action = "Conquer City"
800 actor_reqs    =
801     { "type",           "name",          "range", "present"
802       "UnitClassFlag",  "CanOccupyCity", "Local", TRUE
803       "UnitFlag",       "NonMil",        "Local", FALSE
804       "DiplRel",        "War",           "Local", TRUE
805       "MinMoveFrags",   "1",             "Local", TRUE
806       "UnitFlag",       "Marines",       "Local", TRUE
807     }
808 target_reqs    =
809     { "type",           "name",          "range", "present"
810       "MaxUnitsOnTile", "0",             "Local", TRUE
811     }
813 [actionenabler_conquer_city_att_from_non_native]
814 action = "Conquer City"
815 actor_reqs    =
816     { "type",           "name",             "range", "present"
817       "UnitClassFlag",  "CanOccupyCity",    "Local", TRUE
818       "UnitFlag",       "NonMil",           "Local", FALSE
819       "DiplRel",        "War",              "Local", TRUE
820       "MinMoveFrags",   "1",                "Local", TRUE
821       "UnitClassFlag",  "AttFromNonNative", "Local", TRUE
822     }
823 target_reqs    =
824     { "type",           "name",          "range", "present"
825       "MaxUnitsOnTile", "0",             "Local", TRUE
826     }
828 [actionenabler_change_home_city]
829 action = "Home City"
830 actor_reqs    =
831     { "type",      "name",        "range", "present"
832       "UnitFlag",  "NoHome",      "Local", FALSE
833       "UnitState", "HasHomeCity", "Local", TRUE
834       "DiplRel",   "Foreign",  "Local", FALSE
835     }
837 [actionenabler_paradrop_not_forest_base]
838 action = "Paradrop Unit"
839 actor_reqs    =
840     { "type",      "name",         "range", "present"
841       "UnitFlag",  "Paratroopers", "Local", TRUE
842       "UnitState", "Transporting", "Local", FALSE
843       "ExtraFlag", "ParadropFrom", "Local", TRUE
844     }
845 target_reqs    =
846     { "type",   "name", "range", "present"
847       "TerrainFlag", "DifficultLanding", "Local", FALSE
848     }
850 [actionenabler_paradrop_veteran_base]
851 action = "Paradrop Unit"
852 actor_reqs    =
853     { "type",      "name",         "range", "present"
854       "UnitFlag",  "Paratroopers", "Local", TRUE
855       "UnitState", "Transporting", "Local", FALSE
856       "MinVeteran", 1,             "Local", TRUE
857       "ExtraFlag", "ParadropFrom", "Local", TRUE
858     }
860 [actionenabler_paradrop_not_forest_city]
861 action = "Paradrop Unit"
862 actor_reqs    =
863     { "type",      "name",         "range", "present"
864       "UnitFlag",  "Paratroopers", "Local", TRUE
865       "UnitState", "Transporting", "Local", FALSE
866       "CityTile",  "Center",       "Local", TRUE
867     }
868 target_reqs    =
869     { "type",   "name", "range", "present"
870       "TerrainFlag", "DifficultLanding", "Local", FALSE
871     }
873 [actionenabler_paradrop_veteran_city]
874 action = "Paradrop Unit"
875 actor_reqs    =
876     { "type",       "name",         "range", "present"
877       "UnitFlag",   "Paratroopers", "Local", TRUE
878       "UnitState",  "Transporting", "Local", FALSE
879       "MinVeteran", 1,              "Local", TRUE
880       "CityTile",   "Center",       "Local", TRUE
881     }
883 [actionenabler_upgrade_unit]
884 action = "Upgrade Unit"
885 actor_reqs    =
886     { "type",    "name",       "range", "present"
887       "DiplRel", "Foreign", "Local", FALSE
888     }
890 [actionenabler_airlift_light_unit]
891 action = "Airlift Unit"
892 actor_reqs    =
893     { "type",          "name",         "range", "present"
894       "UnitClassFlag", "LightWeight",  "Local", TRUE
895       "UnitState",     "Transporting", "Local", FALSE
896       "MinMoveFrags",  "1",            "Local", TRUE
897     }
899 [actionenabler_airlift_medium_unit]
900 action = "Airlift Unit"
901 actor_reqs    =
902     { "type",          "name",            "range",  "present"
903       "UnitClassFlag", "MediumWeight",    "Local",  TRUE
904       "UnitState",     "Transporting",    "Local",  FALSE
905       "Tech",          "Advanced Flight", "Player", TRUE
906       "Building",      "Airport",         "City",   TRUE
907       "MinMoveFrags",  "1",               "Local",  TRUE
908     }
909 target_reqs    =
910     { "type",     "name",    "range"
911       "Building", "Airport", "City"
912     }
914 [actionenabler_airlift_heavy_unit]
915 action = "Airlift Unit"
916 actor_reqs    =
917     { "type",          "name",         "range",  "present"
918       "UnitClassFlag", "HeavyWeight",  "Local",  TRUE
919       "UnitState",     "Transporting", "Local",  FALSE
920       "Tech",          "Fusion Power", "Player", TRUE
921       "Building",      "Airport",      "City",   TRUE
922       "MinMoveFrags",  "1",            "Local",  TRUE
923     }
924 target_reqs    =
925     { "type",     "name",    "range"
926       "Building", "Airport", "City"
927     }
929 [borders]
930 ; Base border radius from city.
931 radius_sq_city = 5
933 ; Border radius square increased by this amount / point of city size
934 size_effect    = 1
936 ; Difference between city workable area and area permanently claimed by
937 ; city (these tiles cannot be stolen by stronger border sources).
938 ; 0 means exactly city workable area is immune to border stealing.
939 ; Negative value means outer workable tiles can be stolen; highly negative
940 ; value (more than max city radius_sq) means any workable tile can be stolen.
941 ; If City_Radius_Sq is variable, so is the set of locked tiles; this is
942 ; a squared value, so the radius of the ring of tiles which are workable
943 ; but not locked (or vice versa) varies but the area is constant.
944 radius_sq_city_permanent = -3
946 [research]
947 ; Method of calculating technology costs
948 ;   "Civ I|II"      - Civ (I|II) style. Every new tech add base_tech_cost to
949 ;                     cost of next tech.
950 ;   "Classic"       - Cost of technology is:
951 ;                       base_tech_cost * (1 + reqs) * sqrt(1 + reqs) / 2
952 ;                     where reqs == number of requirement for tech, counted
953 ;                     recursively.
954 ;   "Classic+"      - Cost are read from tech.ruleset. Missing costs are
955 ;                     generated by style "Classic".
956 ;   "Experimental"  - Cost of technology is:
957 ;                       base_tech_cost * (reqs^2 / (1 + sqrt(sqrt(reqs + 1)))
958 ;                                         - 0.5)
959 ;                     where reqs == number of requirement for tech, counted
960 ;                     recursively.
961 ;   "Experimental+" - Cost are read from tech.ruleset. Missing costs are
962 ;                     generated by style "Experimental".
963 tech_cost_style = "Classic+"
965 ; Base research cost. Used in tech cost styles where tech cost is generated.
966 ; In other words: used everywhere unless the cost of *all* techs are
967 ; specified and the tech cost style is "Experimental+" or "Classic+".
968 base_tech_cost   = 20
970 ; Technology leak from other civilizations
971 ; "None"           - No reduction of the technology cost.
972 ; "Embassies"      - Technology cost is reduced depending on the number of
973 ;                    players which already know the tech and you have an
974 ;                    embassy with.
975 ; "All Players"    - Technology cost is reduced depending on the number of
976 ;                    all players (human, AI and barbarians) which already
977 ;                    know the tech.
978 ; "Normal Players" - Technology cost is reduced depending on the number of
979 ;                    normal players (human and AI) which already know the
980 ;                    tech.
981 tech_leakage = "Embassies"
983 ; Method of paying tech upkeep
984 ; "None"   - no upkeep
985 ; "Basic"  - upkeep is calculated as:
986 ;     <Cost of technology> / tech_upkeep_divider - tech_upkeep_free
987 ; "Cities" - upkeep is calculated like "Basic", but multiplied by number of cities
988 tech_upkeep_style = "Cities"
990 ; upkeep cost is divided by this value
991 tech_upkeep_divider = 6000
993 ; Method of selecting techs given for free
994 ; "Goal"     - Towards player`s goal, random if no goal
995 ; "Random"   - Random researchable tech
996 ; "Cheapest" - Cheapest researchable tech, random among equal cost ones
997 free_tech_method = "Cheapest"
999 [culture]
1000 ; Minimum culture points for cultural domination victory
1001 victory_min_points = 10000
1003 ; How big lead relative to second best player is needed for victory
1004 victory_lead_pct   = 200
1006 ; How much each culture point affects the migration
1007 ; from/to the city. Each culture point count as this many permilles
1008 ; of a migration point.
1009 migration_pml = 50
1011 [calendar]
1012 ; Year in the beginning of the game
1013 start_year = -4000
1015 ; Year 1 instead of 0.
1016 skip_year_0 = TRUE
1018 ; How many fragments each year has. Value 0 disables year advancement by fragment
1019 ; accumulation.
1020 fragments = 0
1022 ; Calendar fragment names. If name is missing, only a fragment number +1 (so human readable
1023 ; numbers begin from 1 and not 0) is shown.
1025 ;fragment_name0 = "Jan"
1026 ;fragment_name1 = "Feb"
1027 ; ...
1029 ; What labels are used for positive and negative years.
1030 ; /* TRANS: year label (Common Era) */
1031 positive_label = _("CE")
1032 ; /* TRANS: year label (Before Common Era) */
1033 negative_label = _("BCE")
1035 ; /* <-- avoid gettext warnings
1037 ; Disaster types:
1039 ; name                    = translatable name as seen by user
1040 ; reqs                    = requirements for disaster to happen (see effects.ruleset
1041 ;                           and README.effects for help on requirements)
1042 ; frequency               = how likely disaster is to occur
1043 ; effects
1044 ;   - "DestroyBuilding"   = Random building is destroyed
1045 ;   - "ReducePopulation"  = Reduce city size by one unless it's already 1
1046 ;   - "ReducePopDestroy"  = Reduce city size by one, possibly destroying the city
1047 ;   - "EmptyFoodStock"    = Remove all food from food stock
1048 ;   - "EmptyProdStock"    = Destroy current production
1049 ;   - "Pollution"         = One tile surrounding city polluted
1050 ;   - "Fallout"           = One tile surrounding city polluted with fallout
1052 ; */ <-- avoid gettext warnings
1054 [disaster_earthquake]
1055 name           = _("Earthquake")
1056 reqs           =
1057     { "type", "name", "range"
1058       "Terrain", "Hills", "Local"
1059     }
1060 frequency      = 100
1061 effects        = "EmptyProdStock"
1063 [disaster_flood]
1064 name           = _("Flood")
1065 reqs           =
1066     { "type", "name", "range"
1067       "Extra", "River", "Adjacent"
1068     }
1069 frequency      = 100
1070 effects        = "EmptyFoodStock"
1072 [disaster_fire]
1073 name           = _("Fire")
1074 reqs           =
1075     { "type", "name", "range"
1076       "MinSize", "9", "City"
1077     }
1078 frequency      = 100
1079 effects        = "DestroyBuilding"
1081 [disaster_industrial_accident]
1082 name           = _("Industrial Accident")
1083 reqs           =
1084     { "type", "name", "range"
1085       "Building", "Mfg. Plant", "City"
1086     }
1087 frequency      = 100
1088 effects        = "ReducePopulation", "Pollution"
1090 [disaster_nuclear_accident]
1091 name           = _("Nuclear Accident")
1092 reqs           =
1093     { "type", "name", "range"
1094       "Building", "Nuclear Plant", "City"
1095     }
1096 frequency      = 100
1097 effects        = "ReducePopulation", "Fallout"
1099 ; /* <-- avoid gettext warnings
1101 ; Achievement types:
1103 ; name                    = translatable name as seen by user
1104 ; rule_name               = (optional) name for savegames, rulesets etc; if not
1105 ;                           present, 'name' is used. Since the name used in
1106 ;                           savegames must not change, use this when renaming a
1107 ;                           achievement after a ruleset has been released.
1108 ; type                    = What event grants the achievement to player.
1109 ;                           See README.achievements for list of these types.
1110 ; unique                  = If TRUE, only first one reaching the achievement will
1111 ;                           get it. Defaults to TRUE.
1112 ; value                   = Value to reach. Exact meaning of this depends on
1113 ;                           achievement type.
1114 ; culture                 = Amount of culture granted to player who gets achievement
1115 ;                           granted.
1116 ; first_msg               = Message shown to first player gaining the achievement
1117 ; cons_msg                = Message shown to consecutive players gaining the achievement
1119 ; */ <-- avoid gettext warnings
1121 [achievement_spaceship]
1122 name           = _("Spaceship Launch")
1123 type           = "Spaceship"
1124 unique         = FALSE
1125 culture        = 10000
1126 first_msg      = _("You're the first one to launch a spaceship towards Alpha Centauri!");
1127 cons_msg       = _("You have launched a spaceship towards Alpha Centauri!")
1129 [achievement_map_known]
1130 name           = _("Entire Map Known")
1131 type           = "Map_Known"
1132 unique         = FALSE
1133 value          = 100
1134 culture        = 1000
1135 first_msg      = _("You're the first one to have mapped the entire world!")
1136 cons_msg       = _("You have mapped the entire world!")
1138 [achievement_another_island]
1139 name           = _("Land Ahoy")
1140 type           = "Land_Ahoy"
1141 unique         = FALSE
1142 value          = 2
1143 culture        = 100
1144 first_msg      = _("As the first people in history, your people sight a foreign shore!")
1145 cons_msg       = _("You sight your first foreign shore!")
1147 [achievement_literate]
1148 name           = _("Literate")
1149 type           = "Literate"
1150 unique         = FALSE
1151 value          = 100
1152 culture        = 100
1153 ; /* xgettext:no-c-format */
1154 first_msg      = _("You're the first one to achieve 100% of literacy!")
1155 ; /* xgettext:no-c-format */
1156 cons_msg       = _("You have achieved 100% of literacy!")
1158 [achievement_multicultural]
1159 name           = _("Multicultural")
1160 type           = "Multicultural"
1161 unique         = FALSE
1162 value          = 2
1163 culture        = 100
1164 first_msg      = _("You're the first nation with citizens of 2 different nationalities!")
1165 cons_msg       = _("In your nation there are citizens of 2 different nationalities!")
1167 [achievement_metropolis]
1168 name           = _("Metropolis")
1169 type           = "Metropolis"
1170 unique         = FALSE
1171 value          = 20
1172 culture        = 100
1173 first_msg      = _("Your city is the first one to reach population 20!")
1174 cons_msg       = _("Your city has reached population 20!")
1176 [achievement_cultured_city]
1177 name           = _("Cultured City")
1178 type           = "Cultured_City"
1179 unique         = FALSE
1180 value          = 1000
1181 culture        = 100
1182 first_msg      = _("Your city is the first one to achieve 1000 culture points!")
1183 cons_msg       = _("Your city has achieved 1000 culture points!")
1185 [achievement_cultured_nation]
1186 name           = _("Cultured Nation")
1187 type           = "Cultured_Nation"
1188 unique         = FALSE
1189 value          = 10000
1190 first_msg      = _("Your nation is the first one to achieve 10000 culture points!")
1191 cons_msg       = _("Your nation has achieved 10000 culture points!")
1194 ; Trade settings
1196 ; IN = international, IC = intercontinental.
1197 ; For each of the trade route types:
1198 ; "pct"        - Trade income %. If this is 0, trade route cannot be
1199 ;                established at all
1200 ; "cancelling" - What to do to previously established traderoutes when they
1201 ;                turn illegal
1202 ;                "Active"   - Keep them active (although they will only
1203 ;                             provide nonzero income if illegal due to
1204 ;                             trademindist rather than pct==0)
1205 ;                "Inactive" - Keep them inactive
1206 ;                "Cancel"   - Cancel them altogether
1207 ; "bonus"      - One-time bonuses granted when traderoute established
1208 ;                "None"     - No one-time bonus
1209 ;                "Gold"     - Bonus to gold
1210 ;                "Science"  - Bonus to research
1211 ;                "Both"     - Bonus to gold and research
1213 [trade]
1214 settings =
1215   { "type",       "pct", "cancelling", "bonus"
1216     "National",   0,     "Cancel",     "Both"
1217     "NationalIC", 0,     "Cancel",     "Both"
1218     "IN",         100,   "Cancel",     "Both"
1219     "INIC",       200,   "Cancel",     "Both"
1220     "Ally",       100,   "Cancel",     "Both"
1221     "AllyIC",     200,   "Cancel",     "Both"
1222     "Enemy",      0,     "Cancel",     "None"
1223     "EnemyIC",    0,     "Cancel",     "None"
1224     "Team",       100,   "Cancel",     "Both"
1225     "TeamIC",     200,   "Cancel",     "Both"
1226   }
1228 ; When are goods for the trade route chosen.
1229 ; "Leaving" - Goods to carry are assigned to unit when it`s built, or it changes homecity
1230 ; "Arrival" - Goods are chosen when trade route is established, when unit arrives to destination
1231 goods_selection = "Leaving"
1233 ; /* <-- avoid gettext warnings
1235 ; Goods types:
1237 ; name                    = translatable name as seen by user
1238 ; rule_name               = (optional) name for savegames, rulesets etc; if not
1239 ;                           present, 'name' is used. Since the name used in
1240 ;                           savegames must not change, use this when renaming
1241 ;                           an good after a ruleset has been released.
1242 ; reqs                    = requirements for a city to provide goods (see effects.ruleset
1243 ;                           and README.effects for help on requirements)
1244 ; from_pct                = Income for the sending end of the trade route. Default is 100%
1245 ;                           This value is applied to both ends of bidirectional routes.
1246 ; to_pct                  = Income for the receiving end of the trade route. Default is 100%
1247 ;                           This value is not used at all in case of bidirectional routes.
1248 ; flags
1249 ;   - "Bidirectional"     = Trade route carrying the goods does not have "from" and "to"
1250 ;                           ends, but both ends are considered the same.
1251 ;   - "Depletes"          = Trade route gets cancelled when the source city cannot provide
1252 ;                           goods any more. Bidirectional routes gets cancelled if either
1253 ;                           one of the involved cities cannot provide goods.
1254 ; helptext                = Optional help text string; should escape all raw
1255 ;                           newlines so that xgettext parsing works
1257 ; */ <-- avoid gettext warnings
1259 [goods_wares]
1260 name  = _("Wares")
1261 flags = "Bidirectional"
1263 [goods_spice]
1264 name  = _("Spice")
1265 reqs  =
1266     { "type", "name", "range"
1267       "Extra", "Spice", "City"
1268     }
1269 from_pct = 135
1270 to_pct   = 100
1271 flags = "Depletes"
1273 [goods_gems]
1274 name  = _("Gems")
1275 reqs  =
1276     { "type", "name", "range"
1277       "Extra", "Gems", "City"
1278     }
1279 from_pct = 135
1280 to_pct   = 100
1281 flags = "Depletes"
1283 [goods_jewelry]
1284 name = _("Jewelry")
1285 reqs =
1286     { "type", "name", "range"
1287       "Good", "Gems", "City"
1288     }
1289 from_pct = 250
1290 to_pct   = 150
1291 flags = "Depletes"
1293 [goods_ore]
1294 name = _("Ore")
1295 reqs =
1296     { "type", "name", "range"
1297       "Extra", "Mine", "City"
1298     }
1299 flags = "Depletes"
1301 [goods_metal]
1302 name = _("Metal")
1303 reqs =
1304     { "type", "name", "range"
1305       "Good", "Ore", "City"
1306     }
1307 from_pct = 135
1308 to_pct   = 100
1309 flags = "Depletes"
1311 [goods_good]
1312 name = _("Goods")
1313 reqs =
1314     { "type", "name", "range", "present"
1315       "Good", "Metal", "City", TRUE
1316       "Tech", "Electronics", "Player", FALSE
1317     }
1318 from_pct = 150
1319 to_pct   = 135
1320 flags = "Depletes"
1322 [goods_equipment]
1323 name = _("Equipment")
1324 reqs =
1325     { "type", "name", "range"
1326       "Good", "Metal", "City"
1327       "Tech", "Electronics", "Player"
1328     }
1329 from_pct = 200
1330 to_pct   = 150
1331 flags = "Depletes"
1333 [playercolors]
1334 background.r = 86
1335 background.g = 86
1336 background.b = 86
1338 ; Player colors for 32 players are defined below.
1339 ; Avoid greens, blues, and white / very pale colors (too easy to confuse
1340 ; with terrain).
1341 ; Avoid dark colors.
1342 colorlist =
1343     { "r", "g", "b"
1344       255,   0,   0
1345       255, 255,   0
1346         0, 255, 255
1347       138,  43, 226
1348       255, 165,   0
1349       255,   0, 255
1350       173, 216, 230
1351         0, 255, 127
1352       250, 128, 114
1353       124, 252,   0
1354       139,   0,   0
1355       255, 192, 203
1356       211, 211, 211
1357       218, 112, 214
1358       255,  20, 147
1359       100, 149, 237
1360       255, 215,   0
1361       245, 222, 179
1362       255, 255, 128
1363       192, 255, 128
1364       204, 255,   0
1365       255, 211, 140
1366       255,  79,   0
1367       240, 145, 169
1368       255, 219,  88
1369       153,  17, 153
1370       184, 134,  11
1371       255, 102,   0
1372       102, 205, 170
1373       195,  33,  72
1374       168, 153, 230
1375       255, 250, 205
1376     }
1378 [teams]
1379 ; freeciv optional team names definition.
1381 ; names =
1382 ; _("Team 1"),
1383 ; _("Team 2"),
1384 ; _("Team 3"),
1385 ; _("Team 4"),
1386 ; etc...
1388 [settings]
1389 ; freeciv game settings for sandbox ruleset
1391 set =
1392     { "name", "value"
1393       "aifill", 12
1394       "generator", "FRACTAL"
1395       "topology", "WRAPX|WRAPY|ISO"
1396       "mapsize", "PLAYER"
1397       "tilesperplayer", 100
1398       "tinyisles", "ENABLED"
1399       "startunits", "cwx"
1400       "citymindist", 3
1401       "techlevel", 1
1402       "borders", "ENABLED"
1403       "foggedborders", "ENABLED"
1404       "restrictinfra", "ENABLED"
1405       "unreachableprotects", "DISABLED"
1406       "onsetbarbs", 120
1407       "occupychance", 100
1408       "techlossforgiveness", 0
1409       "techlossrestore", 50
1410     }