Allow using things that were deprecated in gtk+-3.22.
[freeciv.git] / data / classic / units.ruleset
bloba68fc64715593a2dbc90268de7e36c5d08b26c4f
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 ; You should sort role units from worst to better, as often the best
10 ; available role unit of a given sort will be picked by choosing
11 ; the first available (not obsolete) such unit, or by picking the last
12 ; such unit directly. When determining starting units, the first 
13 ; unit with the relevant role that the player can build will be chosen.
14 ; If no such unit can be found (eg Explorers that require Seafaring),
15 ; then the first unit with this role will be chosen.
17 [datafile]
18 description="Classic unit_type data for Freeciv"
19 options="+Freeciv-2.6-ruleset"
21 [control]
22 ; Names for custom unit type flags. There can be up to 32 of these.
23 ; name          = rule name; In some circumstances user may see this
24 ;                 as part of some sentences, so try to make it descriptive
25 ;                 and sensible.
26 ; helptxt       = displayed in the help for units with this flag (optional)
27 flags =
28   { "name", "helptxt"
29     _("Airbase")
30     _("Transform")
31     _("AirAttacker"), _("Very bad at attacking AEGIS.")
32     _("Horse"), _("Attack value halved when attacking Pikemen.")
33     _("Helicopter"), _("Defends very badly against Fighters.")
34     _("Unbribable")
35     _("TradeRoute"), _("Can establish trade routes (must travel to target city).")
36     _("HelpWonder")
37   }
39 [veteran_system]
40 ; What are the names of the levels?
41 veteran_names = _("green"), _("veteran"), _("hardened"), _("elite")
43 ; The percentage chance of increasing level through combat
44 veteran_raise_chance = 50, 33, 20, 0
46 ; The percentage chance of a settler/engineer increasing level through
47 ; performing useful work (per turn)
48 veteran_work_raise_chance = 0, 0, 0, 0
50 ; Power factors are as a percentage.
51 ; +50% is represented by 150
52 veteran_power_fact = 100, 150, 175, 200
54 ; The additional number of movement points granted for different veteran
55 ; levels. These are fractional move points as defined by move_fragments in
56 ; terrain.ruleset.
57 veteran_move_bonus = 0, 0, 0, 0
59 ; /* <-- avoid gettext warnings
61 ; Unit classes
62 ; The number can be variable, up to 32
63 ; When adding new classes, remember to check effects.ruleset also.
64 ; Eg. if you divide class 'Land' to two separate classes, you may
65 ; want add effect giving City Walls defence bonus against new class
66 ; too.
68 ; The actual tag used (the * in [unitclass_*]) does not matter, except
69 ; it must be unique within this file, and it may be used in debug
70 ; output when reading this file.
72 ; ** Fields **
74 ; name          = translatable name as seen by user
75 ; rule_name     = (optional) name for savegames, rulesets etc; if not
76 ;                 present, 'name' is used. Since the name used in savegames
77 ;                 must not change, use this when renaming a unit class after a
78 ;                 ruleset has been released.
79 ; min_speed     = Minimum speed after damage and effects (whole movement points)
80 ; hp_loss_pct   = Hitpoints lost each turn if unit not in city or native base
81 ; non_native_def_pct = Defense power percentage applying when defending on
82 ;                      non-native terrain (such as ship in harbour)
83 ; hut_behavior  = What happens to huts when unit enters tile:
84 ;                 "Normal", "Nothing" or "Frighten"
85 ; flags         = List of unit class flags (from the following list; you
86 ;                 cannot add custom unit class flags)
87 ; helptext      = optional help text string; should escape all raw newlines
88 ;                 so that xgettext parsing works
90 ; ** Unit class Flags **
92 ; "TerrainSpeed"   = Units use terrain specific speed
93 ; "TerrainDefense" = Units gain defense bonus from terrain
94 ; "DamageSlows"   = Damaged units are slowed down
95 ; "CanOccupyCity" = Military units of this class can occupy enemy cities
96 ; "Missile"       = Unit is destroyed when it attacks
97 ; "BuildAnywhere" = Unit can be built even in the middle of non-native terrain
98 ; "Unreachable"   = Unit can be attacked only by units explicitly listing this
99 ;                   class in its 'targets', unless on a city or native base.
100 ;                   For class members which are transports, cargo cannot load/
101 ;                   unload except in a city or native base, unless that unit
102 ;                   explicitly lists this class in its 'embarks'/'disembarks'.
103 ; "CollectRansom" = Unit can collect ransom when killing lone barbarian leader
104 ; "ZOC"           = Unit is subject to ZOC rules. Unit type flag "IgZOC" can
105 ;                   override this
106 ; "CanFortify"    = Unit can fortify at land tiles. Unit type flag
107 ;                   "Cant_Fortify" can override this
108 ; "CanPillage"    = Unit can pillage tile infrastructure
109 ; "DoesntOccupyTile"  = Even if this kind of enemy unit is on tile, cities can
110 ;                       still work that tile
111 ; "AttackNonNative"   = Unit can attack units on non-native tiles. Unit type
112 ;                       flag "Only_Native_Attack" can override this
113 ; "AttFromNonNative"  = Unit can launch attack from non-native tile (against
114 ;                       native one)
115 ;                       This applies for both attacking from transport or
116 ;                       cities. If only some unit types of the class should
117 ;                       get this property, use type flag "Marines"
118 ; "KillCitizen"       = Upon successful attack against a city, unit kills one
119 ;                       citizen. The effect "Unit_No_Lose_Pop" and the server
120 ;                       setting 'killcitizen' can disable this.
121 ; "Airliftable"       = Unit may be airlifted
123 ; */ <-- avoid gettext warnings
125 [unitclass_missile]
126 ; /* TRANS: Unit class: used adjectivally */
127 name          = _("?unitclass:Missile")
128 min_speed     = 1
129 hp_loss_pct   = 0
130 hut_behavior  = "Frighten"
131 flags         = "Missile", "Unreachable", "DoesntOccupyTile"
133 [unitclass_land]
134 ; /* TRANS: Unit class: used adjectivally */
135 name          = _("?unitclass:Land")
136 min_speed     = 1
137 hp_loss_pct   = 0
138 flags         = "TerrainSpeed", "DamageSlows", "CanOccupyCity", "BuildAnywhere",
139                 "CollectRansom", "ZOC", "CanFortify", "CanPillage",
140                 "TerrainDefense", "KillCitizen", "Airliftable"
142 [unitclass_sea]
143 ; /* TRANS: Unit class: used adjectivally */
144 name          = _("?unitclass:Sea")
145 min_speed     = 2
146 hp_loss_pct   = 0
147 flags         = "DamageSlows", "AttackNonNative", "AttFromNonNative"
149 [unitclass_trireme]
150 ; /* TRANS: Unit class: used adjectivally */
151 name          = _("?unitclass:Trireme")
152 min_speed     = 2
153 hp_loss_pct   = 0
154 flags         = "DamageSlows", "AttFromNonNative"
156 [unitclass_heli]
157 ; /* TRANS: Unit class: used adjectivally */
158 name          = _("?unitclass:Helicopter")
159 min_speed     = 1
160 hp_loss_pct   = 10
161 flags         = "CanOccupyCity", "CollectRansom"
163 [unitclass_air]
164 ; /* TRANS: Unit class: used adjectivally */
165 name          = _("?unitclass:Air")
166 min_speed     = 1
167 hp_loss_pct   = 0
168 hut_behavior  = "Frighten"
169 flags         = "Unreachable", "DoesntOccupyTile"
171 ; /* <-- avoid gettext warnings
173 ; Below: The individual units, one per section.
175 ; The number can be variable, up to 200.
176 ; However for the "official" rulesets, units should not be removed
177 ; because that would break backward compatability with savegames.
179 ; The order here matters: later units are considered "better" for
180 ; a given flag or role.
182 ; The actual tag used (the * in [unit_*]) does not matter, except
183 ; it must be unique within this file, and it may be used in debug
184 ; output when reading this file.
186 ; ** Fields **
188 ; name          = translatable name as seen by user
189 ; rule_name     = (optional) name for savegames, rulesets etc; if not
190 ;                 present, 'name' is used. Since the name used in savegames
191 ;                 must not change, use this when renaming a unit after a
192 ;                 ruleset has been released.
193 ; graphic       = tag specifying preferred graphic
194 ; graphic_alt   = tag for alternate graphic if preferred graphic is not
195 ;                 present; especially if preferred graphic is non-standard,
196 ;                 this should be a standard tag.  Otherwise can use eg "-"
197 ;                 for no alternate graphic.
198 ; tech_req      = required advance, names from techs.ruleset, or special:
199 ;                 "None" => available from start
200 ; impr_req      = required city improvement, names from buildings.ruleset
201 ; gov_req       = required government, names from governments.ruleset
202 ; obsolete_by   = can be upgraded to and made obsolete by another unit by name
203 ; build_cost    = production shields required to build
204 ; pop_cost      = population removed from city when built; for 'AddToCity'
205 ;                 units this is also the population added to the destination
206 ; attack        = base attack strength (0 = cannot attack)
207 ; defense       = base defense strength (0 = cannot defend)
208 ; hitpoints     = how much damage unit can withstand
209 ; firepower     = number of hitpoints removed per round of combat; at least 1
210 ; move_rate     = base move rate (whole movement points)
211 ; vision_radius_sq = base vision of unit: unit can see tile up to the square
212 ;                 root of this value away
213 ; convert_to    = can be converted to another type of unit by name
214 ; convert_time  = time it takes to convert to another unit type
215 ; class         = One of the classes listed above
216 ; transport_cap = Number of units (ground, or air/missiles, depending on flags)
217 ; fuel          = Number of turns unit can spend outside refuel points.
218 ;                 If more time passes without unit refueling over turn change,
219 ;                 they are lost. If this is zero, unit has no need to refuel
220 ; uk_*          = upkeep costs, these are used as base values in the game
221 ; cargo         = Unit classes this unit can transport
222 ; city_size     = Initial size of the cities built by 'Cities' type units
223 ;                 (but 'AddToCity' uses pop_cost)
224 ; targets       = list of unit classes this unit can attack against even
225 ;                 if they have Unreachable unit class flag
226 ; embarks       = list of unit classes this unit may load into while not in
227 ;                 native base or city even if transporter has Unreachable unit
228 ;                 class flag
229 ; disembarks    = list of unit classes this unit may unload from while not in
230 ;                 native base or city even if transporter has Unreachable unit
231 ;                 class flag
232 ; bonuses       = definitions of combat bonuses against specific other units
233 ; bonuses.flag  = flag of the unit that bonus applies against
234 ; bonuses.type  = type of the bonus. See below
235 ; bonuses.value = value of the bonus. Sum of these is used if multiple apply.
236 ; bonuses.quiet = don't auto generate help text for this bonus. Use this if
237 ;                 the bonus is documented in the unit type's help text.
238 ;                 This is useful when the combination of a unit's bonuses
239 ;                 becomes complex enough to make the auto generated help
240 ;                 ugly or inaccurate.
241 ; flags         = special flag strings; list of built-in flags described below
242 ;                 and/or user flags defined above
244 ; veteran_names = Special veteran level for this unit. See the definitions in
245 ;                 game.ruleset. All of the veteran_* entries have to have the
246 ;                 same length!
247 ; veteran_raise_chance =
248 ; veteran_work_raise_chance =
249 ; veteran_power_fact =
250 ; veteran_move_bonus =
252 ; roles         = special role strings
253 ; sound_move    = optional sound effect when the unit moves
254 ; sound_move_alt= optional alternative sound effect if above not
255 ;                 supported in client
256 ; sound_fight   = optional sound effect when the unit fights
257 ; sound_fight_alt= optional alternative sound effect if above not
258 ;                  supported in client
259 ; helptext      = optional help text string; should escape all raw newlines 
260 ;                 so that xgettext parsing works
263 ; ** Bonuses **
265 ; "DefenseMultiplier" = Multiply defense value (1 + 'value') times.
266 ;                       Value of 1 means multiplication by 2, value 2 by 3...
267 ;                       Bonus is defined in defenders entry.
268 ; "DefenseDivider"    = Divide defense value with (1 + 'value').
269 ;                       Bonus is defined in attackers entry.
270 ; "FirePower1"        = Defender firepower is reduced to value 1 when
271 ;                       ever this has non-zero value.
272 ;                       Bonus is defined in attackers entry.
275 ; ** Flags **
277 ; "IgZOC"       = ignore Zones of Control (ZOC) even if unit class has
278 ;                 "ZOC" flag
279 ; "HasNoZOC"    = unit has no Zone of Control (ZOC), thus any unit can move
280 ;                 around it freely
281 ; "NonMil"      = a non-military unit: no attacks; no martial law; can enter
282 ;                 peaceful borders; DoesntOccupyTile
283 ; "IgTer"       = use constant move cost defined in igter_cost (terrain.ruleset)
284 ;                 rather than terrain/road etc cost, unless terrain cost is
285 ;                 less
286 ; "OneAttack"   = can only make a single attack, regardless of movement points
287 ; "FieldUnit"   = cause unhappiness even when not being aggressive
288 ; "Marines"     = can attack from non-native tile (from transport or city)
289 ; "Partial_Invis" = visible only to adjancent units; does not hide transported
290 ;                 units other than missiles
291 ; "Settlers"    = can irrigate and build roads
292 ; "Diplomat"    = can defend against diplomat actions (see diplchance
293 ;                 server option)
294 ; "Spy"         = enhanced diplomat actions. _Must_ be "Diplomat" also
295 ; "Trireme"     = (sea only) cannot leave shoreline
296 ; "Nuclear"     = nuke!
297 ; "Paratroopers"= can paradrop
298 ; "Cities"      = can disband to produce a city (initial population city_size)
299 ; "Only_Native_Attack" = cannot attack targets on non-native tiles even if
300 ;                 unit class can
301 ; "Cant_Fortify" =  cannot fortify even if unit class has "CanFortify" flag
302 ; "AddToCity"   = can disband to add pop_cost population to a city
303 ;                 (see cities.ruleset for limitation of this ability)
304 ; "Fanatic"     = can only be built by governments that allow them
305 ;                 (see civ2/governments.ruleset, Fundamentalism government)
306 ; "Unique"      = a player can only have one of these units in the game at
307 ;                 the same time; barbarians cannot use this at present
308 ; "GameLoss"    = losing one of these units means you lose the game, but it
309 ;                 is produced without homecity and upkeep
310 ; "Undisbandable" = this unit cannot be disbanded, will not drown, and will not
311 ;                 disband due to lack of shields to upkeep it in homecity;
312 ;                 if not given enough food to upkeep it, homecity will shrink 
313 ;                 every turn it cannot do so, however
314 ; "SuperSpy"    = this unit always wins diplomatic contests, that is, unless
315 ;                 it encounters another SuperSpy, in which case defender wins;
316 ;                 can also be used on non-diplomat units, in which case it can
317 ;                 protect cities from diplomats; also 100% spy survival chance
318 ; "NoHome"      = this unit has no homecity and will be free of all upkeep, and
319 ;                 therefore will not revolt along with its city of origin should
320 ;                 it be incited
321 ; "NoVeteran"   = this unit cannot gain veteran levels through experience
322 ;                 (as if both raise_chance and work_raise_chance were zero);
323 ;                 it can still gain veterancy through Veteran_Build, etc
324 ; "Bombarder"   = this unit cannot kill other units, only damage them, but
325 ;                 also is not harmed by return fire when attacking; the field
326 ;                 bombard_rate regulates its number of shots
327 ; "CityBuster"  = this unit has double firepower against cities
328 ; "NoBuild"     = this unit cannot be built
329 ; "BadWallAttacker"     = the firepower of this unit is set to 1 if
330 ;                 attacking a city
331 ;                 defended by a city wall (or other city building defense)
332 ; "BadCityDefender"     = if attacked while in a city, firepower is set to 1
333 ;                 and firepower of attacker is doubled (the Pearl Harbour
334 ;                 rule)
335 ; "BarbarianOnly" = only barbarians can build this unit
336 ; "Shield2Gold" = Switch from shield upkeep to gold upkeep possible
337 ; "Capturable"  = can be captured by units with "Capturer" flag
338 ; "Capturer"    = can capture units with flag "Capturable" instead of
339 ;                 fighting them
340 ; "NewCityGamesOnly" = unit can't be built on scenarios where founding new cities
341 ;                 is not allowed. Give this flag to units that would make no sense
342 ;                 to have in a game with such a scenario
344 ; Following flag strings require extra fields:
345 ;  "Paratroopers"
346 ;   paratroopers_range  = the maximal range the unit can be paradropped to.
347 ;                         Max range is 65534.
348 ;   paratroopers_mr_req = the move rate which is required at least for
349 ;                         paradropping (whole movement points)
350 ;   paratroopers_mr_sub = the move rate which is subtracted after paradropping
351 ;                         (whole movement points)
352 ;  "Bombarder"
353 ;   bombard_rate = the number of shots fired at enemy units when attacking
355 ; ** Roles **
357 ; "FirstBuild"  = first to be built when city founded
358 ; "Explorer"    = unit to use for exploring
359 ; "Hut"         = can be found in a hut
360 ; "HutTech"     = can be found in a hut, but its techs required
361 ; "Partisan"    = can be created as a partisan (only one unit can have this 
362 ;                 flag), see end of this file for its tech requirements option
363 ; "DefendOk"    = AI hint: ok for defending with
364 ; "DefendGood"  = AI hint: good for defending with
365 ; "Ferryboat"   = AI hint: useful for ferrying
366 ; "Barbarian"          = can be created as land barbarian
367 ; "BarbarianTech"      = can be created as land barbarian, if someone has
368 ;                        researched its tech requirements
369 ; "BarbarianBoat"      = can be created as boat for sea barbarian
370 ; "BarbarianBuild"     = can be built by barbarians
371 ; "BarbarianBuildTech" = can be built by barbarians if someone has
372 ;                        researched its tech requirements
373 ; "BarbarianLeader"    = this unit is the barbarian leader (only one)
374 ; "BarbarianSea"       = can be created as a barbarian that disembarks from a barbarian boat
375 ; "BarbarianSeaTech"   = can be created as a barbarian that disembarks from a barbarian boat
376 ;                        if someone has researched its tech requirements
377 ; "Settlers"    = can irrigate and build roads
378 ; "Hunter"      = AI hint: good for hunting other units
379 ; "CitiesStartUnit"       = Gets granted as 'c' startunit
380 ; "WorkerStartUnit"       = Gets granted as 'w' startunit
381 ; "ExplorerStartUnit"     = Gets granted as 'x' startunit
382 ; "KingStartUnit"         = Gets granted as 'k' startunit
383 ; "DiplomatStartUnit"     = Gets granted as 's' startunit
384 ; "FerryStartUnit"        = Gets granted as 'f' startunit
385 ; "DefendOkStartUnit"     = Gets granted as 'd' startunit
386 ; "DefendGoodStartUnit"   = Gets granted as 'D' startunit
387 ; "AttackFastStartUnit"   = Gets granted as 'a' startunit
388 ; "AttackStrongStartUnit" = Gets granted as 'A' startunit
390 ; */ <-- avoid gettext warnings
392 [unit_settlers]
393 name          = _("Settlers")
394 class         = "Land"
395 tech_req      = "None"
396 obsolete_by   = "None"
397 graphic       = "u.settlers"
398 graphic_alt   = "-"
399 sound_move    = "m_settlers"
400 sound_move_alt = "m_generic"
401 sound_fight   = "f_settlers"
402 sound_fight_alt = "f_generic"
403 build_cost    = 40
404 pop_cost      = 1
405 attack        = 0
406 defense       = 1
407 hitpoints     = 20
408 firepower     = 1
409 move_rate     = 1
410 vision_radius_sq = 2
411 transport_cap = 0
412 fuel          = 0
413 uk_happy      = 0
414 uk_shield     = 1
415 uk_food       = 1
416 uk_gold       = 0
417 flags         = "Settlers", "Cant_Fortify", "NonMil", "HasNoZOC", "AddToCity", "Cities"
418 ; No veteran levels (level name is never displayed)
419 veteran_names = _("green")
420 veteran_raise_chance = 0
421 veteran_work_raise_chance = 0
422 veteran_power_fact = 100
423 veteran_move_bonus = 0
424 roles         = "CitiesStartUnit"
425 helptext      = _("\
426 Settlers are one of the key units in the game, as they are your main\
427  means of founding new cities.\
428 "), _("\
429 Settlers can also perform some of the same terrain alterations as\
430  Workers.\
431 "), _("\
432 Upkeep for Settlers is in food as well as production, and a Settler\
433  can die if its supporting city runs out of food. Settlers in a\
434  Republic or Democracy require twice as much food per turn.\
437 [unit_worker]
438 name          = _("?unit:Workers")
439 class         = "Land"
440 tech_req      = "Pottery"
441 obsolete_by   = "Engineers"
442 graphic       = "u.worker"
443 graphic_alt   = "u.engineers" ; for compatibility
444 sound_move    = "m_worker"
445 sound_move_alt = "m_generic"
446 sound_fight   = "f_worker"
447 sound_fight_alt = "f_generic"
448 build_cost    = 30
449 pop_cost      = 0
450 attack        = 0
451 defense       = 1
452 hitpoints     = 10
453 firepower     = 1
454 move_rate     = 1
455 vision_radius_sq = 2
456 transport_cap = 0
457 fuel          = 0
458 uk_happy      = 0
459 uk_shield     = 1
460 uk_food       = 0
461 uk_gold       = 0
462 flags         = "Settlers", "Cant_Fortify", "NonMil", "HasNoZOC", "Airbase"
463 ; No veteran levels (level name is never displayed)
464 veteran_names = _("green")
465 veteran_raise_chance = 0
466 veteran_work_raise_chance = 0
467 veteran_power_fact = 100
468 veteran_move_bonus = 0
469 roles         = "Settlers", "WorkerStartUnit"
470 helptext      = _("\
471 Workers have the ability to improve terrain tiles.\
472 "), _("\
473 Building an irrigation system on a suitable tile causes it to \
474 produce some extra food each turn. This requires a nearby source of \
475 water: an ocean, lake, or river tile, or another tile with an \
476 irrigation system, must share an edge (not just a corner) with the \
477 target tile. Once irrigated, land remains so even if the water source \
478 is removed. When Refrigeration is known, irrigation systems can be \
479 upgraded to Farmland by irrigating them a second time; this provides \
480 more food to a city if it has a Supermarket.\
481 "), _("\
482 Building a mine on suitable terrain increases the \
483 number of production points produced by that tile. However, it is not \
484 possible to have an irrigation system and a mine on the same tile.\
485 "), _("\
486 On terrain unsuitable for irrigation systems or mines, issuing the \
487 \"irrigate\" or \"mine\" order may permanently convert the terrain \
488 to another type; this is usually more expensive. For instance, Swamp \
489 may be \"irrigated\" to yield Grassland. (Terrain conversion with \
490 the \"irrigate\" order does not require a water source.)\
491 "), _("\
492 Workers can build airbases and buoys, which Settlers cannot. \
493 Workers must be on board a ship to build buoys.\
494 "), _("\
495 See the help on Terrain and Terrain Alterations for the effects of \
496 these actions.\
499 [unit_engineers]
500 name          = _("Engineers")
501 class         = "Land"
502 tech_req      = "Explosives"
503 obsolete_by   = "None"
504 graphic       = "u.engineers"
505 graphic_alt   = "-"
506 sound_move    = "m_engineers"
507 sound_move_alt = "m_generic"
508 sound_fight   = "f_engineers"
509 sound_fight_alt = "f_generic"
510 build_cost    = 40
511 pop_cost      = 0
512 attack        = 0
513 defense       = 2
514 hitpoints     = 20
515 firepower     = 1
516 move_rate     = 2
517 vision_radius_sq = 2
518 transport_cap = 0
519 fuel          = 0
520 uk_happy      = 0
521 uk_shield     = 1
522 uk_food       = 0
523 uk_gold       = 0
524 flags         = "Settlers", "Cant_Fortify", "NonMil", "HasNoZOC", "Transform", "Airbase"
525 ; No veteran levels (level name is never displayed)
526 veteran_names = _("green")
527 veteran_raise_chance = 0
528 veteran_work_raise_chance = 0
529 veteran_power_fact = 100
530 veteran_move_bonus = 0
531 roles         = "Settlers", "WorkerStartUnit"
532 helptext      = _("\
533 Engineers are similar to Workers, but they work twice as fast and\
534  move twice as fast. Engineers may also perform major terrain\
535  transformations which are beyond the capabilities of Workers and\
536  Settlers, such as converting Tundra into Desert, or even Ocean into\
537  Swamp in some circumstances (when on board an ocean-going vessel,\
538  on a tile surrounded by sufficient existing land). See the\
539  Terrain Alterations section for more details.\
540 "), _("\
541 TIP 1:  Upgrade Workers to Engineers when possible, as Engineers\
542  require the same resources as ordinary Workers.\
543 "), _("\
544 TIP 2:  If you manage to build Leonardo's Workshop, research\
545  Explosives before the Workshop becomes obsolete.  This way,\
546  your Workers units will be upgraded for free.\
549 [unit_warriors]
550 name          = _("Warriors")
551 class         = "Land"
552 tech_req      = "None"
553 obsolete_by   = "Pikemen"
554 graphic       = "u.warriors"
555 graphic_alt   = "-"
556 sound_move    = "m_warriors"
557 sound_move_alt = "m_generic"
558 sound_fight   = "f_warriors"
559 sound_fight_alt = "f_generic"
560 build_cost    = 10
561 pop_cost      = 0
562 attack        = 1
563 defense       = 1
564 hitpoints     = 10
565 firepower     = 1
566 move_rate     = 1
567 vision_radius_sq = 2
568 transport_cap = 0
569 fuel          = 0
570 uk_happy      = 1
571 uk_shield     = 1
572 uk_food       = 0
573 uk_gold       = 0
574 flags         = ""
575 roles         = "DefendOk", "DefendOkStartUnit", "FirstBuild"
576 helptext      = _("\
577 This unit may be built from the start of the game.  It is the\
578  weakest offensive unit.\
581 [unit_phalanx]
582 name          = _("Phalanx")
583 class         = "Land"
584 tech_req      = "Bronze Working"
585 obsolete_by   = "Pikemen"
586 graphic       = "u.phalanx"
587 graphic_alt   = "-"
588 sound_move    = "m_phalanx"
589 sound_move_alt = "m_generic"
590 sound_fight   = "f_phalanx"
591 sound_fight_alt = "f_generic"
592 build_cost    = 20
593 pop_cost      = 0
594 attack        = 1
595 defense       = 2
596 hitpoints     = 10
597 firepower     = 1
598 move_rate     = 1
599 vision_radius_sq = 2
600 transport_cap = 0
601 fuel          = 0
602 uk_happy      = 1
603 uk_shield     = 1
604 uk_food       = 0
605 uk_gold       = 0
606 flags         = ""
607 roles         = "DefendGood", "DefendGoodStartUnit", "FirstBuild"
608 helptext      = _("\
609 The Phalanx is armored infantry, suitable for defending your cities.\
612 [unit_archers]
613 name          = _("Archers")
614 class         = "Land"
615 tech_req      = "Warrior Code"
616 obsolete_by   = "Musketeers"
617 graphic       = "u.archers"
618 graphic_alt   = "-"
619 sound_move    = "m_archers"
620 sound_move_alt = "m_generic"
621 sound_fight   = "f_archers"
622 sound_fight_alt = "f_generic"
623 build_cost    = 30
624 pop_cost      = 0
625 attack        = 3
626 defense       = 2
627 hitpoints     = 10
628 firepower     = 1
629 move_rate     = 1
630 vision_radius_sq = 2
631 transport_cap = 0
632 fuel          = 0
633 uk_happy      = 1
634 uk_shield     = 1
635 uk_food       = 0
636 uk_gold       = 0
637 flags         = ""
638 roles         = "DefendOk", "DefendOkStartUnit"
639 helptext      = _("\
640 Archers fight with bows and arrows and have a good offensive\
641  value as well as decent defense.\
644 [unit_legion]
645 name          = _("Legion")
646 class         = "Land"
647 tech_req      = "Iron Working"
648 obsolete_by   = "Musketeers"
649 graphic       = "u.legion"
650 graphic_alt   = "-"
651 sound_move    = "m_legion"
652 sound_move_alt = "m_generic"
653 sound_fight   = "f_legion"
654 sound_fight_alt = "f_generic"
655 build_cost    = 40
656 pop_cost      = 0
657 attack        = 4
658 defense       = 2
659 hitpoints     = 10
660 firepower     = 1
661 move_rate     = 1
662 vision_radius_sq = 2
663 transport_cap = 0
664 fuel          = 0
665 uk_happy      = 1
666 uk_shield     = 1
667 uk_food       = 0
668 uk_gold       = 0
669 flags         = ""
670 roles         = "DefendOk", "DefendOkStartUnit", "Hut", "BarbarianBuild", "BarbarianSea"
671 helptext      = _("\
672 Legions are heavily armed and well disciplined infantry\
673  units with an excellent offensive value.\
676 [unit_pikemen]
677 name          = _("Pikemen")
678 class         = "Land"
679 tech_req      = "Feudalism"
680 obsolete_by   = "Musketeers"
681 graphic       = "u.pikemen"
682 graphic_alt   = "-"
683 sound_move    = "m_pikemen"
684 sound_move_alt = "m_generic"
685 sound_fight   = "f_pikemen"
686 sound_fight_alt = "f_generic"
687 build_cost    = 20
688 pop_cost      = 0
689 attack        = 1
690 defense       = 2
691 hitpoints     = 10
692 firepower     = 1
693 move_rate     = 1
694 vision_radius_sq = 2
695 transport_cap = 0
696 fuel          = 0
697 uk_happy      = 1
698 uk_shield     = 1
699 uk_food       = 0
700 uk_gold       = 0
701 bonuses       =
702    { "flag", "type", "value"
703      "Horse", "DefenseMultiplier", 1
704    }
705 flags         = ""
706 roles         = "DefendGood", "DefendGoodStartUnit", "FirstBuild"
707 helptext      = _("\
708 Equipped with long pikes, Pikemen replaces Phalanx\
709  as the preferred city defender.\
712 [unit_musketeers]
713 name          = _("Musketeers")
714 class         = "Land"
715 tech_req      = "Gunpowder"
716 obsolete_by   = "Riflemen"
717 graphic       = "u.musketeers"
718 graphic_alt   = "-"
719 sound_move    = "m_musketeers"
720 sound_move_alt = "m_generic"
721 sound_fight   = "f_musketeers"
722 sound_fight_alt = "f_generic"
723 build_cost    = 30
724 pop_cost      = 0
725 attack        = 3
726 defense       = 3
727 hitpoints     = 20
728 firepower     = 1
729 move_rate     = 1
730 vision_radius_sq = 2
731 transport_cap = 0
732 fuel          = 0
733 uk_happy      = 1
734 uk_shield     = 1
735 uk_food       = 0
736 uk_gold       = 0
737 flags         = ""
738 roles         = "DefendGood", "DefendGoodStartUnit", "FirstBuild", "HutTech",
739                 "BarbarianTech", "BarbarianBuildTech", "BarbarianSeaTech"
740 helptext      = _("\
741 Musketeers are infantry equipped with early\
742  firearms and replace Pikemen as the preferred\
743  city defender.\
746 [unit_partisan]
747 name          = _("Partisan")
748 class         = "Land"
749 tech_req      = "Guerilla Warfare"
750 obsolete_by   = "None"
751 graphic       = "u.partisan"
752 graphic_alt   = "-"
753 sound_move    = "m_partisan"
754 sound_move_alt = "m_generic"
755 sound_fight   = "f_partisan"
756 sound_fight_alt = "f_generic"
757 build_cost    = 50
758 pop_cost      = 0
759 attack        = 4
760 defense       = 4
761 hitpoints     = 20
762 firepower     = 1
763 move_rate     = 1
764 vision_radius_sq = 2
765 transport_cap = 0
766 fuel          = 0
767 uk_happy      = 1
768 uk_shield     = 1
769 uk_food       = 0
770 uk_gold       = 0
771 flags         = "IgTer", "IgZOC"
772 roles         = "DefendGood", "DefendGoodStartUnit", "Partisan", "BarbarianTech"
773 helptext      = _("\
774 Partisans are guerilla fighters who are experts\
775  at using the terrain to their advantage.\
776 "), _("\
777 A number of Partisans are granted free when an enemy conquers your\
778  city -- they automatically assume defensive positions in the\
779  surrounding countryside -- but only under these conditions:\n\
780  - Guerilla Warfare must be known by at least one player.\n\
781  - You must be the player who originally built the city.\n\
782  - You must know about Communism and Gunpowder.\n\
783  - You must run either a Democracy or a Communist government.\
786 [unit_alpine_troops]
787 name          = _("Alpine Troops")
788 class         = "Land"
789 tech_req      = "Tactics"
790 obsolete_by   = "None"
791 graphic       = "u.alpine_troops"
792 graphic_alt   = "-"
793 sound_move    = "m_alpine_troops"
794 sound_move_alt = "m_generic"
795 sound_fight   = "f_alpine_troops"
796 sound_fight_alt = "f_generic"
797 build_cost    = 50
798 pop_cost      = 0
799 attack        = 5
800 defense       = 5
801 hitpoints     = 20
802 firepower     = 1
803 move_rate     = 1
804 vision_radius_sq = 2
805 transport_cap = 0
806 fuel          = 0
807 uk_happy      = 1
808 uk_shield     = 1
809 uk_food       = 0
810 uk_gold       = 0
811 flags         = "IgTer"
812 roles         = "DefendGood", "DefendGoodStartUnit"
813 helptext      = _("\
814 Alpine Troops are highly mobile units as well as\
815  excellent defenders.\
818 [unit_riflemen]
819 name          = _("Riflemen")
820 class         = "Land"
821 tech_req      = "Conscription"
822 obsolete_by   = "None"
823 graphic       = "u.riflemen"
824 graphic_alt   = "-"
825 sound_move    = "m_riflemen"
826 sound_move_alt = "m_generic"
827 sound_fight   = "f_riflemen"
828 sound_fight_alt = "f_generic"
829 build_cost    = 40
830 pop_cost      = 0
831 attack        = 5
832 defense       = 4
833 hitpoints     = 20
834 firepower     = 1
835 move_rate     = 1
836 vision_radius_sq = 2
837 transport_cap = 0
838 fuel          = 0
839 uk_happy      = 1
840 uk_shield     = 1
841 uk_food       = 0
842 uk_gold       = 0
843 flags         = ""
844 roles         = "DefendGood", "DefendGoodStartUnit", "FirstBuild"
845 helptext      = _("\
846 Riflemen are World War-era infantry, very good\
847  at defending your cities.\
850 [unit_marines]
851 name          = _("Marines")
852 class         = "Land"
853 tech_req      = "Amphibious Warfare"
854 obsolete_by   = "None"
855 graphic       = "u.marines"
856 graphic_alt   = "-"
857 sound_move    = "m_marines"
858 sound_move_alt = "m_generic"
859 sound_fight   = "f_marines"
860 sound_fight_alt = "f_generic"
861 build_cost    = 60
862 pop_cost      = 0
863 attack        = 8
864 defense       = 5
865 hitpoints     = 20
866 firepower     = 1
867 move_rate     = 1
868 vision_radius_sq = 2
869 transport_cap = 0
870 fuel          = 0
871 uk_happy      = 1
872 uk_shield     = 1
873 uk_food       = 0
874 uk_gold       = 0
875 flags         = "Marines"
876 roles         = "DefendOk", "DefendOkStartUnit", "BarbarianSeaTech"
877 helptext      = _("\
878 Marines are infantry who are experts at marine warfare.\
881 [unit_paratroopers]
882 name          = _("Paratroopers")
883 class         = "Land"
884 tech_req      = "Combined Arms"
885 obsolete_by   = "None"
886 graphic       = "u.paratroopers"
887 graphic_alt   = "-"
888 sound_move    = "m_paratroopers"
889 sound_move_alt = "m_generic"
890 sound_fight   = "f_paratroopers"
891 sound_fight_alt = "f_generic"
892 build_cost    = 60
893 pop_cost      = 0
894 attack        = 6
895 defense       = 4
896 hitpoints     = 20
897 firepower     = 1
898 move_rate     = 1
899 vision_radius_sq = 2
900 transport_cap = 0
901 fuel          = 0
902 uk_happy      = 1
903 uk_shield     = 1
904 uk_food       = 0
905 uk_gold       = 0
906 flags         = "Paratroopers"
907 roles         = "DefendOk", "DefendOkStartUnit"
908 helptext      = _("\
909 Paratroopers are experts at airborne attacks. \
910 From a friendly city or airbase, Paratroopers who have not expended any \
911 movement points can paradrop directly to any tile in range, and be \
912 immediately ready to act there. (Beware dropping into unseen territory, \
913 as Paratroopers landing on a tile occupied by enemy units are easy \
914 targets!)\
916 paratroopers_range = 10
917 paratroopers_mr_req = 1
918 paratroopers_mr_sub = 0
920 [unit_mech_inf]
921 name          = _("Mech. Inf.")
922 class         = "Land"
923 tech_req      = "Labor Union"
924 obsolete_by   = "None"
925 graphic       = "u.mech_inf"
926 graphic_alt   = "-"
927 sound_move    = "m_mech_inf"
928 sound_move_alt = "m_generic"
929 sound_fight   = "f_mech_inf"
930 sound_fight_alt = "f_generic"
931 build_cost    = 50
932 pop_cost      = 0
933 attack        = 6
934 defense       = 6
935 hitpoints     = 30
936 firepower     = 1
937 move_rate     = 3
938 vision_radius_sq = 2
939 transport_cap = 0
940 fuel          = 0
941 uk_happy      = 1
942 uk_shield     = 1
943 uk_food       = 0
944 uk_gold       = 0
945 flags         = ""
946 roles         = "DefendGood", "DefendGoodStartUnit"
947 helptext      = _("\
948 The Mechanized Infantry has the strongest defensive strength\
949  of any land unit, but is only available near the end of the\
950  technology tree.\
953 [unit_horsemen]
954 name          = _("Horsemen")
955 class         = "Land"
956 tech_req      = "Horseback Riding"
957 obsolete_by   = "Knights"
958 graphic       = "u.horsemen"
959 graphic_alt   = "-"
960 sound_move    = "m_horsemen"
961 sound_move_alt = "m_generic"
962 sound_fight   = "f_horsemen"
963 sound_fight_alt = "f_generic"
964 build_cost    = 20
965 pop_cost      = 0
966 attack        = 2
967 defense       = 1
968 hitpoints     = 10
969 firepower     = 1
970 move_rate     = 2
971 vision_radius_sq = 2
972 transport_cap = 0
973 fuel          = 0
974 uk_happy      = 1
975 uk_shield     = 1
976 uk_food       = 0
977 uk_gold       = 0
978 flags         = "Horse"
979 roles         = "AttackFastStartUnit", "Hut", "Barbarian", "Hunter"
980 helptext      = _("\
981 Horsemen are mounted warriors and an early\
982  shock-troop that can penetrate deep into\
983  enemy territory.\
986 [unit_chariot]
987 name          = _("Chariot")
988 class         = "Land"
989 tech_req      = "The Wheel"
990 obsolete_by   = "Knights"
991 graphic       = "u.chariot"
992 graphic_alt   = "-"
993 sound_move    = "m_chariot"
994 sound_move_alt = "m_generic"
995 sound_fight   = "f_chariot"
996 sound_fight_alt = "f_generic"
997 build_cost    = 30
998 pop_cost      = 0
999 attack        = 3
1000 defense       = 1
1001 hitpoints     = 10
1002 firepower     = 1
1003 move_rate     = 2
1004 vision_radius_sq = 2
1005 transport_cap = 0
1006 fuel          = 0
1007 uk_happy      = 1
1008 uk_shield     = 1
1009 uk_food       = 0
1010 uk_gold       = 0
1011 flags         = "Horse"
1012 roles         = "AttackFastStartUnit", "Hut", "Hunter"
1013 helptext      = _("\
1014 Chariots are horse-pulled war wagons, stronger\
1015  but more expensive than horsemen.\
1018 [unit_knights]
1019 name          = _("Knights")
1020 class         = "Land"
1021 tech_req      = "Chivalry"
1022 obsolete_by   = "Dragoons"
1023 graphic       = "u.knights"
1024 graphic_alt   = "-"
1025 sound_move    = "m_knights"
1026 sound_move_alt = "m_generic"
1027 sound_fight   = "f_knights"
1028 sound_fight_alt = "f_generic"
1029 build_cost    = 40
1030 pop_cost      = 0
1031 attack        = 4
1032 defense       = 2
1033 hitpoints     = 10
1034 firepower     = 1
1035 move_rate     = 2
1036 vision_radius_sq = 2
1037 transport_cap = 0
1038 fuel          = 0
1039 uk_happy      = 1
1040 uk_shield     = 1
1041 uk_food       = 0
1042 uk_gold       = 0
1043 flags         = "Horse"
1044 roles         = "AttackFastStartUnit", "HutTech", "BarbarianTech",
1045                 "BarbarianBuildTech", "BarbarianSeaTech", "Hunter"
1046 helptext      = _("\
1047 Knights are mounted and heavily armored warriors.\
1050 [unit_dragoons]
1051 name          = _("Dragoons")
1052 class         = "Land"
1053 tech_req      = "Leadership"
1054 obsolete_by   = "Cavalry"
1055 graphic       = "u.dragoons"
1056 graphic_alt   = "-"
1057 sound_move    = "m_dragoons"
1058 sound_move_alt = "m_generic"
1059 sound_fight   = "f_dragoons"
1060 sound_fight_alt = "f_generic"
1061 build_cost    = 50
1062 pop_cost      = 0
1063 attack        = 5
1064 defense       = 2
1065 hitpoints     = 20
1066 firepower     = 1
1067 move_rate     = 2
1068 vision_radius_sq = 2
1069 transport_cap = 0
1070 fuel          = 0
1071 uk_happy      = 1
1072 uk_shield     = 1
1073 uk_food       = 0
1074 uk_gold       = 0
1075 flags         = "Horse"
1076 roles         = "AttackFastStartUnit", "BarbarianBuildTech", "BarbarianSeaTech",
1077                 "Hunter"
1078 helptext      = _("\
1079 Dragoons are mounted warriors carrying early firearms.\
1082 [unit_cavalry]
1083 name          = _("Cavalry")
1084 class         = "Land"
1085 tech_req      = "Tactics"
1086 obsolete_by   = "Armor"
1087 graphic       = "u.cavalry"
1088 graphic_alt   = "-"
1089 sound_move    = "m_cavalry"
1090 sound_move_alt = "m_generic"
1091 sound_fight   = "f_cavalry"
1092 sound_fight_alt = "f_generic"
1093 build_cost    = 60
1094 pop_cost      = 0
1095 attack        = 8
1096 defense       = 3
1097 hitpoints     = 20
1098 firepower     = 1
1099 move_rate     = 2
1100 vision_radius_sq = 2
1101 transport_cap = 0
1102 fuel          = 0
1103 uk_happy      = 1
1104 uk_shield     = 1
1105 uk_food       = 0
1106 uk_gold       = 0
1107 flags         = ""
1108 roles         = "AttackFastStartUnit", "Hunter"
1109 helptext      = _("\
1110 Cavalry are mounted and highly trained soldiers.\
1113 [unit_armor]
1114 name          = _("Armor")
1115 class         = "Land"
1116 tech_req      = "Mobile Warfare"
1117 obsolete_by   = "None"
1118 graphic       = "u.armor"
1119 graphic_alt   = "-"
1120 sound_move    = "m_armor"
1121 sound_move_alt = "m_generic"
1122 sound_fight   = "f_armor"
1123 sound_fight_alt = "f_generic"
1124 build_cost    = 80
1125 pop_cost      = 0
1126 attack        = 10
1127 defense       = 5
1128 hitpoints     = 30
1129 firepower     = 1
1130 move_rate     = 3
1131 vision_radius_sq = 2
1132 transport_cap = 0
1133 fuel          = 0
1134 uk_happy      = 1
1135 uk_shield     = 1
1136 uk_food       = 0
1137 uk_gold       = 0
1138 flags         = ""
1139 roles         = "AttackFastStartUnit", "Hunter"
1140 helptext      = _("\
1141 Armors are motorized war wagons that are faster,\
1142  stronger, and can take more damage than any\
1143  mounted unit.\
1146 [unit_catapult]
1147 name          = _("Catapult")
1148 class         = "Land"
1149 tech_req      = "Mathematics"
1150 obsolete_by   = "Cannon"
1151 graphic       = "u.catapult"
1152 graphic_alt   = "-"
1153 sound_move    = "m_catapult"
1154 sound_move_alt = "m_generic"
1155 sound_fight   = "f_catapult"
1156 sound_fight_alt = "f_generic"
1157 build_cost    = 40
1158 pop_cost      = 0
1159 attack        = 6
1160 defense       = 1
1161 hitpoints     = 10
1162 firepower     = 1
1163 move_rate     = 1
1164 vision_radius_sq = 2
1165 transport_cap = 0
1166 fuel          = 0
1167 uk_happy      = 1
1168 uk_shield     = 1
1169 uk_food       = 0
1170 uk_gold       = 0
1171 flags         = ""
1172 roles         = "AttackStrongStartUnit"
1173 helptext      = _("\
1174 Catapults are large rock-throwing machines of war.\
1175  They are very strong attackers but equally weak\
1176  defenders and will need an escort to be effective.\
1179 [unit_cannon]
1180 name          = _("Cannon")
1181 class         = "Land"
1182 tech_req      = "Metallurgy"
1183 obsolete_by   = "Artillery"
1184 graphic       = "u.cannon"
1185 graphic_alt   = "-"
1186 sound_move    = "m_cannon"
1187 sound_move_alt = "m_generic"
1188 sound_fight   = "f_cannon"
1189 sound_fight_alt = "f_generic"
1190 build_cost    = 40
1191 pop_cost      = 0
1192 attack        = 8
1193 defense       = 1
1194 hitpoints     = 20
1195 firepower     = 1
1196 move_rate     = 1
1197 vision_radius_sq = 2
1198 transport_cap = 0
1199 fuel          = 0
1200 uk_happy      = 1
1201 uk_shield     = 1
1202 uk_food       = 0
1203 uk_gold       = 0
1204 flags         = ""
1205 roles         = "AttackStrongStartUnit", "BarbarianTech", "BarbarianBuildTech"
1206 helptext      = _("\
1207 Cannons are large firearms that can fire heavy\
1208  projectiles over long distances. They are very\
1209  strong attackers but equally weak defenders and\
1210  will need an escort to be effective.\
1213 [unit_artillery]
1214 name          = _("Artillery")
1215 class         = "Land"
1216 tech_req      = "Machine Tools"
1217 obsolete_by   = "Howitzer"
1218 graphic       = "u.artillery"
1219 graphic_alt   = "-"
1220 sound_move    = "m_artillery"
1221 sound_move_alt = "m_generic"
1222 sound_fight   = "f_artillery"
1223 sound_fight_alt = "f_generic"
1224 build_cost    = 50
1225 pop_cost      = 0
1226 attack        = 10
1227 defense       = 1
1228 hitpoints     = 20
1229 firepower     = 2
1230 move_rate     = 1
1231 vision_radius_sq = 2
1232 transport_cap = 0
1233 fuel          = 0
1234 uk_happy      = 1
1235 uk_shield     = 1
1236 uk_food       = 0
1237 uk_gold       = 0
1238 flags         = ""
1239 roles         = "AttackStrongStartUnit"
1240 helptext      = _("\
1241 The artillery is an upgraded cannon. It is a very\
1242  strong attacker but equally weak defender and\
1243  will need an escort to be effective.\
1246 [unit_howitzer]
1247 name          = _("Howitzer")
1248 class         = "Land"
1249 tech_req      = "Robotics"
1250 obsolete_by   = "None"
1251 graphic       = "u.howitzer"
1252 graphic_alt   = "-"
1253 sound_move    = "m_howitzer"
1254 sound_move_alt = "m_generic"
1255 sound_fight   = "f_howitzer"
1256 sound_fight_alt = "f_generic"
1257 build_cost    = 70
1258 pop_cost      = 0
1259 attack        = 12
1260 defense       = 2
1261 hitpoints     = 30
1262 firepower     = 2
1263 move_rate     = 2
1264 vision_radius_sq = 2
1265 transport_cap = 0
1266 fuel          = 0
1267 uk_happy      = 1
1268 uk_shield     = 1
1269 uk_food       = 0
1270 uk_gold       = 0
1271 flags         = ""
1272 roles         = "AttackStrongStartUnit"
1273 helptext      = _("\
1274 Howitzers are upgraded artillery with improved\
1275  defensive as well as offensive capabilities.\
1276  They can shoot over city walls, ignoring their effect.\
1279 [unit_fighter]
1280 name          = _("Fighter")
1281 class         = "Air"
1282 tech_req      = "Flight"
1283 obsolete_by   = "Stealth Fighter"
1284 graphic       = "u.fighter"
1285 graphic_alt   = "-"
1286 sound_move    = "m_fighter"
1287 sound_move_alt = "m_generic"
1288 sound_fight   = "f_fighter"
1289 sound_fight_alt = "f_generic"
1290 build_cost    = 60
1291 pop_cost      = 0
1292 attack        = 4
1293 defense       = 3
1294 hitpoints     = 20
1295 firepower     = 2
1296 move_rate     = 10
1297 vision_radius_sq = 8
1298 transport_cap = 0
1299 fuel          = 1
1300 uk_happy      = 0
1301 uk_shield     = 1
1302 uk_food       = 0
1303 uk_gold       = 0
1304 targets       = "Air", "Missile"
1305 bonuses       =
1306    { "flag", "type", "value"
1307      "Helicopter", "DefenseDivider", 1
1308      "Helicopter", "Firepower1", 1
1309    }
1310 flags         = "AirAttacker"
1311 roles         = ""
1312 helptext      = _("\
1313 Fighters are your first airborne units. They can\
1314  move anywhere and attack any unit.\
1317 [unit_bomber]
1318 name          = _("Bomber")
1319 class         = "Air"
1320 tech_req      = "Advanced Flight"
1321 obsolete_by   = "Stealth Bomber"
1322 graphic       = "u.bomber"
1323 graphic_alt   = "-"
1324 sound_move    = "m_bomber"
1325 sound_move_alt = "m_generic"
1326 sound_fight   = "f_bomber"
1327 sound_fight_alt = "f_generic"
1328 build_cost    = 120
1329 pop_cost      = 0
1330 attack        = 12
1331 defense       = 1
1332 hitpoints     = 20
1333 firepower     = 2
1334 move_rate     = 8
1335 vision_radius_sq = 8
1336 transport_cap = 0
1337 fuel          = 2
1338 uk_happy      = 1
1339 uk_shield     = 1
1340 uk_food       = 0
1341 uk_gold       = 0
1342 flags         = "FieldUnit", "OneAttack", "AirAttacker", "HasNoZOC"
1343 roles         = ""
1344 helptext      = _("\
1345 Bombers are specialized airborne units that may\
1346  only attack ground targets, not other airborne\
1347  units.\
1350 [unit_helicopter]
1351 ; /* TRANS: unit type */
1352 name          = _("Helicopter")
1353 class         = "Helicopter"
1354 tech_req      = "Combined Arms"
1355 obsolete_by   = "None"
1356 graphic       = "u.helicopter"
1357 graphic_alt   = "-"
1358 sound_move    = "m_helicopter"
1359 sound_move_alt = "m_generic"
1360 sound_fight   = "f_helicopter"
1361 sound_fight_alt = "f_generic"
1362 build_cost    = 100
1363 pop_cost      = 0
1364 attack        = 10
1365 defense       = 3
1366 hitpoints     = 20
1367 firepower     = 2
1368 move_rate     = 6
1369 vision_radius_sq = 8
1370 transport_cap = 0
1371 fuel          = 0
1372 uk_happy      = 1
1373 uk_shield     = 1
1374 uk_food       = 0
1375 uk_gold       = 0
1376 flags         = "FieldUnit", "OneAttack", "Helicopter", "AirAttacker"
1377 roles         = ""
1378 helptext      = _("\
1379 The Helicopter is a very powerful unit, as it can both fly and\
1380  conquer cities.  Care must be exercised, because Helicopters lose a\
1381  small amount of health for every turn not spent in a city or airbase\
1382  or on a Carrier, unless you have the United Nations wonder, and\
1383  Helicopters may be attacked by ground units.\
1386 [unit_stealth_fighter]
1387 name          = _("Stealth Fighter")
1388 class         = "Air"
1389 tech_req      = "Stealth"
1390 obsolete_by   = "None"
1391 graphic       = "u.stealth_fighter"
1392 graphic_alt   = "-"
1393 sound_move    = "m_stealth_fighter"
1394 sound_move_alt = "m_generic"
1395 sound_fight   = "f_stealth_fighter"
1396 sound_fight_alt = "f_generic"
1397 build_cost    = 80
1398 pop_cost      = 0
1399 attack        = 8
1400 defense       = 4
1401 hitpoints     = 20
1402 firepower     = 2
1403 move_rate     = 14
1404 vision_radius_sq = 8
1405 transport_cap = 0
1406 fuel          = 1
1407 uk_happy      = 0
1408 uk_shield     = 1
1409 uk_food       = 0
1410 uk_gold       = 0
1411 targets       = "Air", "Missile"
1412 bonuses       =
1413    { "flag", "type", "value"
1414      "Helicopter", "DefenseDivider", 1
1415      "Helicopter", "Firepower1", 1
1416    }
1417 flags         = "Partial_Invis", "AirAttacker"
1418 roles         = ""
1419 helptext      = _("\
1420 An improved Fighter, with improved attack and a higher movement\
1421  radius.\
1424 [unit_stealth_bomber]
1425 name          = _("Stealth Bomber")
1426 class         = "Air"
1427 tech_req      = "Stealth"
1428 obsolete_by   = "None"
1429 graphic       = "u.stealth_bomber"
1430 graphic_alt   = "-"
1431 sound_move    = "m_stealth_bomber"
1432 sound_move_alt = "m_generic"
1433 sound_fight   = "f_stealth_bomber"
1434 sound_fight_alt = "f_generic"
1435 build_cost    = 160
1436 pop_cost      = 0
1437 attack        = 18
1438 defense       = 5
1439 hitpoints     = 20
1440 firepower     = 2
1441 move_rate     = 12
1442 vision_radius_sq = 8
1443 transport_cap = 0
1444 fuel          = 2
1445 uk_happy      = 1
1446 uk_shield     = 1
1447 uk_food       = 0
1448 uk_gold       = 0
1449 flags         = "Partial_Invis", "FieldUnit", "OneAttack", "AirAttacker",
1450                 "HasNoZOC"
1451 roles         = ""
1452 helptext      = _("\
1453 An improved Bomber, with improved attack and a higher movement\
1454  radius.\
1457 [unit_trireme]
1458 ; /* TRANS: unit type */
1459 name          = _("Trireme")
1460 class         = "Trireme"
1461 tech_req      = "Map Making"
1462 obsolete_by   = "Caravel"
1463 graphic       = "u.trireme"
1464 graphic_alt   = "-"
1465 sound_move    = "m_trireme"
1466 sound_move_alt = "m_generic"
1467 sound_fight   = "f_trireme"
1468 sound_fight_alt = "f_generic"
1469 build_cost    = 40
1470 pop_cost      = 0
1471 attack        = 1
1472 defense       = 1
1473 hitpoints     = 10
1474 firepower     = 1
1475 move_rate     = 3
1476 vision_radius_sq = 2
1477 transport_cap = 2
1478 fuel          = 0
1479 uk_happy      = 1
1480 uk_shield     = 1
1481 uk_food       = 0
1482 uk_gold       = 0
1483 cargo         = "Land"
1484 flags         = "BadCityDefender"
1485 roles         = "Ferryboat", "FerryStartUnit"
1486 helptext      = _("\
1487 The Trireme is your first boat unit. It can act\
1488  as a transport ship and has rudimentary offensive\
1489  capabilities, but may not enter deep ocean tiles.\
1492 [unit_caravel]
1493 name          = _("Caravel")
1494 class         = "Sea"
1495 tech_req      = "Navigation"
1496 obsolete_by   = "Galleon"
1497 graphic       = "u.caravel"
1498 graphic_alt   = "-"
1499 sound_move    = "m_caravel"
1500 sound_move_alt = "m_generic"
1501 sound_fight   = "f_caravel"
1502 sound_fight_alt = "f_generic"
1503 build_cost    = 40
1504 pop_cost      = 0
1505 attack        = 2
1506 defense       = 1
1507 hitpoints     = 10
1508 firepower     = 1
1509 move_rate     = 3
1510 vision_radius_sq = 2
1511 transport_cap = 3
1512 fuel          = 0
1513 uk_happy      = 1
1514 uk_shield     = 1
1515 uk_food       = 0
1516 uk_gold       = 0
1517 cargo         = "Land"
1518 flags         = "BadCityDefender"
1519 roles         = "Ferryboat", "FerryStartUnit", "BarbarianBoat"
1520 helptext      = _("\
1521 The Caravel replaces the Trireme and can enter\
1522  any ocean tile.\
1525 [unit_galleon]
1526 name          = _("Galleon")
1527 class         = "Sea"
1528 tech_req      = "Magnetism"
1529 obsolete_by   = "Transport"
1530 graphic       = "u.galleon"
1531 graphic_alt   = "-"
1532 sound_move    = "m_galleon"
1533 sound_move_alt = "m_generic"
1534 sound_fight   = "f_galleon"
1535 sound_fight_alt = "f_generic"
1536 build_cost    = 40
1537 pop_cost      = 0
1538 attack        = 0
1539 defense       = 2
1540 hitpoints     = 20
1541 firepower     = 1
1542 move_rate     = 4
1543 vision_radius_sq = 2
1544 transport_cap = 4
1545 fuel          = 0
1546 uk_happy      = 1
1547 uk_shield     = 1
1548 uk_food       = 0
1549 uk_gold       = 0
1550 cargo         = "Land"
1551 flags         = "BadCityDefender"
1552 roles         = "Ferryboat", "FerryStartUnit", "BarbarianBoat"
1553 helptext      = _("\
1554 The Galleon is a pure transport ship and cannot\
1555  attack other ships, though it may still defend\
1556  itself when attacked.\
1559 [unit_frigate]
1560 name          = _("Frigate")
1561 class         = "Sea"
1562 tech_req      = "Magnetism"
1563 obsolete_by   = "Ironclad"
1564 graphic       = "u.frigate"
1565 graphic_alt   = "-"
1566 sound_move    = "m_frigate"
1567 sound_move_alt = "m_generic"
1568 sound_fight   = "f_frigate"
1569 sound_fight_alt = "f_generic"
1570 build_cost    = 50
1571 pop_cost      = 0
1572 attack        = 4
1573 defense       = 2
1574 hitpoints     = 20
1575 firepower     = 1
1576 move_rate     = 4
1577 vision_radius_sq = 2
1578 transport_cap = 2
1579 fuel          = 0
1580 uk_happy      = 1
1581 uk_shield     = 1
1582 uk_food       = 0
1583 uk_gold       = 0
1584 cargo         = "Land"
1585 flags         = "BadCityDefender"
1586 roles         = "Hunter"
1587 helptext      = _("\
1588 The Frigate is a highly versatile boat unit,\
1589  that is both a strong offensive unit as well\
1590  as a decent transport ship.\
1593 [unit_ironclad]
1594 name          = _("Ironclad")
1595 class         = "Sea"
1596 tech_req      = "Steam Engine"
1597 obsolete_by   = "Destroyer"
1598 graphic       = "u.ironclad"
1599 graphic_alt   = "-"
1600 sound_move    = "m_ironclad"
1601 sound_move_alt = "m_generic"
1602 sound_fight   = "f_ironclad"
1603 sound_fight_alt = "f_generic"
1604 build_cost    = 60
1605 pop_cost      = 0
1606 attack        = 4
1607 defense       = 4
1608 hitpoints     = 30
1609 firepower     = 1
1610 move_rate     = 4
1611 vision_radius_sq = 2
1612 transport_cap = 0
1613 fuel          = 0
1614 uk_happy      = 1
1615 uk_shield     = 1
1616 uk_food       = 0
1617 uk_gold       = 0
1618 flags         = "BadCityDefender"
1619 roles         = "Hunter"
1620 helptext      = _("\
1621 The Ironclad is an armored ship that is\
1622  much more sturdy than the Frigate but\
1623  loses the latter's transport capability.\
1626 [unit_destroyer]
1627 name          = _("Destroyer")
1628 class         = "Sea"
1629 tech_req      = "Electricity"
1630 obsolete_by   = "None"
1631 graphic       = "u.destroyer"
1632 graphic_alt   = "-"
1633 sound_move    = "m_destroyer"
1634 sound_move_alt = "m_generic"
1635 sound_fight   = "f_destroyer"
1636 sound_fight_alt = "f_generic"
1637 build_cost    = 60
1638 pop_cost      = 0
1639 attack        = 4
1640 defense       = 4
1641 hitpoints     = 30
1642 firepower     = 1
1643 move_rate     = 6
1644 vision_radius_sq = 8
1645 transport_cap = 0
1646 fuel          = 0
1647 uk_happy      = 1
1648 uk_shield     = 1
1649 uk_food       = 0
1650 uk_gold       = 0
1651 flags         = "BadCityDefender"
1652 roles         = "Hunter"
1653 helptext      = _("\
1654 An improved Ironclad, with better move rate and vision.\
1655 "), _("\
1656 TIP:  A very fast unit, which is very useful for hunting down enemy\
1657  Transports.\
1660 [unit_cruiser]
1661 name          = _("Cruiser")
1662 class         = "Sea"
1663 tech_req      = "Steel"
1664 obsolete_by   = "AEGIS Cruiser"
1665 graphic       = "u.cruiser"
1666 graphic_alt   = "-"
1667 sound_move    = "m_cruiser"
1668 sound_move_alt = "m_generic"
1669 sound_fight   = "f_cruiser"
1670 sound_fight_alt = "f_generic"
1671 build_cost    = 80
1672 pop_cost      = 0
1673 attack        = 6
1674 defense       = 6
1675 hitpoints     = 30
1676 firepower     = 2
1677 move_rate     = 5
1678 vision_radius_sq = 8
1679 transport_cap = 0
1680 fuel          = 0
1681 uk_happy      = 1
1682 uk_shield     = 1
1683 uk_food       = 0
1684 uk_gold       = 0
1685 flags         = "BadCityDefender"
1686 roles         = "DefendGood", "DefendGoodStartUnit"
1687 helptext      = _("\
1688 The Cruiser is a strong offensive boat unit.\
1691 [unit_aegis_cruiser]
1692 name          = _("AEGIS Cruiser")
1693 class         = "Sea"
1694 tech_req      = "Rocketry"
1695 obsolete_by   = "None"
1696 graphic       = "u.aegis_cruiser"
1697 graphic_alt   = "-"
1698 sound_move    = "m_aegis_cruiser"
1699 sound_move_alt = "m_generic"
1700 sound_fight   = "f_aegis_cruiser"
1701 sound_fight_alt = "f_generic"
1702 build_cost    = 100
1703 pop_cost      = 0
1704 attack        = 8
1705 defense       = 8
1706 hitpoints     = 30
1707 firepower     = 2
1708 move_rate     = 5
1709 vision_radius_sq = 8
1710 transport_cap = 0
1711 fuel          = 0
1712 uk_happy      = 1
1713 uk_shield     = 1
1714 uk_food       = 0
1715 uk_gold       = 0
1716 bonuses       =
1717    { "flag", "type", "value"
1718      "AirAttacker", "DefenseMultiplier", 4
1719    }
1720 flags         = "BadCityDefender"
1721 roles         = "DefendGood", "DefendGoodStartUnit"
1722 helptext      = _("\
1723 The AEGIS Cruiser is equipped with an advanced\
1724  defensive missile system.\
1727 [unit_battleship]
1728 name          = _("Battleship")
1729 class         = "Sea"
1730 tech_req      = "Automobile"
1731 obsolete_by   = "None"
1732 graphic       = "u.battleship"
1733 graphic_alt   = "-"
1734 sound_move    = "m_battleship"
1735 sound_move_alt = "m_generic"
1736 sound_fight   = "f_battleship"
1737 sound_fight_alt = "f_generic"
1738 build_cost    = 160
1739 pop_cost      = 0
1740 attack        = 12
1741 defense       = 12
1742 hitpoints     = 40
1743 firepower     = 2
1744 move_rate     = 4
1745 vision_radius_sq = 8
1746 transport_cap = 0
1747 fuel          = 0
1748 uk_happy      = 1
1749 uk_shield     = 1
1750 uk_food       = 0
1751 uk_gold       = 0
1752 flags         = "BadCityDefender"
1753 roles         = ""
1754 helptext      = _("\
1755 The Battleship is the supreme naval unit with\
1756  excellent offensive and defensive values.\
1759 [unit_submarine]
1760 name          = _("Submarine")
1761 class         = "Sea"
1762 tech_req      = "Combustion"
1763 obsolete_by   = "None"
1764 graphic       = "u.submarine"
1765 graphic_alt   = "-"
1766 sound_move    = "m_submarine"
1767 sound_move_alt = "m_generic"
1768 sound_fight   = "f_submarine"
1769 sound_fight_alt = "f_generic"
1770 build_cost    = 50
1771 pop_cost      = 0
1772 attack        = 12
1773 defense       = 2
1774 hitpoints     = 30
1775 firepower     = 2
1776 move_rate     = 5
1777 vision_radius_sq = 8
1778 transport_cap = 8
1779 fuel          = 0
1780 uk_happy      = 1
1781 uk_shield     = 1
1782 uk_food       = 0
1783 uk_gold       = 0
1784 cargo         = "Missile"
1785 flags         = "Partial_Invis", "BadCityDefender",
1786                 "Only_Native_Attack"
1787 roles         = "Hunter"
1788 helptext      = _("\
1789 Traveling under the surface of the ocean, Submarines have\
1790  a very high strategic value, but a weak defense if caught\
1791  off guard.\
1794 [unit_carrier]
1795 name          = _("Carrier")
1796 class         = "Sea"
1797 tech_req      = "Advanced Flight"
1798 obsolete_by   = "None"
1799 graphic       = "u.carrier"
1800 graphic_alt   = "-"
1801 sound_move    = "m_carrier"
1802 sound_move_alt = "m_generic"
1803 sound_fight   = "f_carrier"
1804 sound_fight_alt = "f_generic"
1805 build_cost    = 160
1806 pop_cost      = 0
1807 attack        = 1
1808 defense       = 9
1809 hitpoints     = 40
1810 firepower     = 2
1811 move_rate     = 5
1812 vision_radius_sq = 8
1813 transport_cap = 8
1814 fuel          = 0
1815 uk_happy      = 1
1816 uk_shield     = 1
1817 uk_food       = 0
1818 uk_gold       = 0
1819 cargo         = "Air", "Missile", "Helicopter"
1820 flags         = "BadCityDefender", "Only_Native_Attack"
1821 roles         = ""
1822 helptext      = _("\
1823 The Carrier is a mobile airport.\
1824 "), _("\
1825 TIP:  Guard Carriers with a handful of fast-moving ships and a\
1826  battleship, as losing a fully-equipped Carrier is VERY\
1827  painful and expensive.\
1830 [unit_transport]
1831 name          = _("Transport")
1832 class         = "Sea"
1833 tech_req      = "Industrialization"
1834 obsolete_by   = "None"
1835 graphic       = "u.transport"
1836 graphic_alt   = "-"
1837 sound_move    = "m_transport"
1838 sound_move_alt = "m_generic"
1839 sound_fight   = "f_transport"
1840 sound_fight_alt = "f_generic"
1841 build_cost    = 50
1842 pop_cost      = 0
1843 attack        = 0
1844 defense       = 3
1845 hitpoints     = 30
1846 firepower     = 1
1847 move_rate     = 5
1848 vision_radius_sq = 8
1849 transport_cap = 8
1850 fuel          = 0
1851 uk_happy      = 1
1852 uk_shield     = 1
1853 uk_food       = 0
1854 uk_gold       = 0
1855 cargo         = "Land"
1856 flags         = "BadCityDefender"
1857 roles         = "Ferryboat", "FerryStartUnit"
1858 helptext      = _("\
1859 The Transport cannot attack on its own but\
1860  may defend itself when under attack.\
1863 [unit_cruise_missile]
1864 name          = _("Cruise Missile")
1865 class         = "Missile"
1866 tech_req      = "Rocketry"
1867 obsolete_by   = "None"
1868 graphic       = "u.cruise_missile"
1869 graphic_alt   = "-"
1870 sound_move    = "m_cruise_missile"
1871 sound_move_alt = "m_generic"
1872 sound_fight   = "f_cruise_missile"
1873 sound_fight_alt = "f_generic"
1874 build_cost    = 60
1875 pop_cost      = 0
1876 attack        = 18
1877 defense       = 0
1878 hitpoints     = 10
1879 firepower     = 3
1880 move_rate     = 12
1881 vision_radius_sq = 2
1882 transport_cap = 0
1883 fuel          = 1
1884 uk_happy      = 1
1885 uk_shield     = 1
1886 uk_food       = 0
1887 uk_gold       = 0
1888 flags         = "FieldUnit", "OneAttack", "AirAttacker", "HasNoZOC"
1889 roles         = ""
1890 helptext      = _("\
1891 The Cruise Missile is a long-distance missile\
1892  that can strike deep into enemy territory.\
1893 "), _("\
1894 TIP:  A handful of these can successfully keep the waters around\
1895  your treasured homeland free of enemy ships.\
1898 [unit_nuclear]
1899 name          = _("Nuclear")
1900 class         = "Missile"
1901 tech_req      = "Rocketry"
1902 obsolete_by   = "None"
1903 graphic       = "u.nuclear"
1904 graphic_alt   = "-"
1905 sound_move    = "m_nuclear"
1906 sound_move_alt = "m_generic"
1907 sound_fight   = "f_nuclear"
1908 sound_fight_alt = "f_generic"
1909 build_cost    = 160
1910 pop_cost      = 0
1911 attack        = 99
1912 defense       = 0
1913 hitpoints     = 10
1914 firepower     = 1
1915 move_rate     = 16
1916 vision_radius_sq = 2
1917 transport_cap = 0
1918 fuel          = 1
1919 uk_happy      = 1
1920 uk_shield     = 1
1921 uk_food       = 0
1922 uk_gold       = 0
1923 flags         = "FieldUnit", "OneAttack", "Nuclear", "HasNoZOC"
1924 ; No veteran levels (level name is never displayed)
1925 veteran_names = _("green")
1926 veteran_raise_chance = 0
1927 veteran_work_raise_chance = 0
1928 veteran_power_fact = 100
1929 veteran_move_bonus = 0
1930 roles         = ""
1931 helptext      = _("\
1932 You can build Nuclear units when you have the required advance, and\
1933  the Manhattan Project wonder has been built by any player.\
1934 "), _("\
1935 On impact, the blast will destroy any unit in an area 3 tiles wide\
1936  (3x3 squares for rectangular grids), including friendly units.\
1937  Any city within the blast area loses half its population, and\
1938  land tiles within the blast area are subject to nuclear fallout.\
1939 "), _("\
1940 Similar to pollution and global warming, the risk of global nuclear\
1941  winter increases with fallout. If nuclear winter occurs, terrain\
1942  across the globe changes into desert, tundra, and ice. Settlers,\
1943  Workers, and Engineers can clean up nuclear fallout.\
1944 "), _("\
1945 TIP 1:  Nuking the ocean will not generate fallout, and is a most\
1946  effective (but expensive!!) way of getting rid of enemy\
1947  ships.\
1948 "), _("\
1949 TIP 2:  You may be involved in a situation where you've invaded an\
1950  enemy country en masse, but the enemy cities are too strong.\
1951  Before using a Nuclear unit, assemble a gang of Settlers, Workers,\
1952  and/or Engineers next to the city and have them ready to fix\
1953  the fallout on the same turn it occurs!  This minimizes the\
1954  chance of nuclear winter.  Eco-friendly nukes!\
1957 [unit_diplomat]
1958 name          = _("Diplomat")
1959 class         = "Land"
1960 tech_req      = "Writing"
1961 obsolete_by   = "Spy"
1962 graphic       = "u.diplomat"
1963 graphic_alt   = "-"
1964 sound_move    = "m_diplomat"
1965 sound_move_alt = "m_generic"
1966 sound_fight   = "f_diplomat"
1967 sound_fight_alt = "f_generic"
1968 build_cost    = 30
1969 pop_cost      = 0
1970 attack        = 0
1971 defense       = 0
1972 hitpoints     = 10
1973 firepower     = 1
1974 move_rate     = 2
1975 vision_radius_sq = 2
1976 transport_cap = 0
1977 fuel          = 0
1978 uk_happy      = 0
1979 uk_shield     = 0
1980 uk_food       = 0
1981 uk_gold       = 0
1982 flags         = "Diplomat", "IgZOC", "NonMil", "HasNoZOC"
1983 veteran_names =
1984 ; /* TRANS: diplomatic rank. */
1985   _("?diplomatic_rank:attaché"),
1986 ; /* TRANS: diplomatic rank */
1987   _("?diplomatic_rank:secretary"),
1988 ; /* TRANS: diplomatic rank */
1989   _("?diplomatic_rank:envoy"),
1990 ; /* TRANS: diplomatic rank */
1991   _("?diplomatic_rank:ambassador")
1992 veteran_raise_chance = 50, 33, 20, 0
1993 veteran_work_raise_chance = 0, 0, 0, 0
1994 veteran_power_fact = 100, 105, 110, 115
1995 veteran_move_bonus = 0, 0, 0, 0
1996 roles         = "DiplomatStartUnit"
1997 helptext      = _("\
1998 A Diplomat is an official that carries your dispatches and\
1999  is authorized to deal with foreign dignitaries. He may\
2000  also undertake various covert operations with the intent of\
2001  harming your opponents; Diplomats in your own cities defend\
2002  them against such actions.\
2003 "), _("\
2004 Many covert actions may be attempted even in peacetime, but the more\
2005  aggressive actions will be discovered and cause diplomatic incidents,\
2006  which can allow Republics and Democracies to break treaties.\
2007 "), _("\
2008 If a foreign unit is alone on a tile, you may attempt to bribe it\
2009  with your Diplomat. By paying a sum of gold the unit will immediately\
2010  become yours; the exact sum depends on the status of the unit and\
2011  that of the civilization owning it. However, units belonging to\
2012  Democratic governments cannot be bribed. Bribery when not at war\
2013  will cause a diplomatic incident.\
2014 "), _("\
2015 Diplomats can also perform a number of actions in another player's\
2016  city, although each Diplomat may attempt only one action. Most of\
2017  these actions have a chance of failure. Also, any enemy Diplomats or\
2018  Spies in the city will oppose hostile actions, as will the enemy Leader\
2019  in games with leaders; in this case, either your unit or the defending\
2020  unit will die (if you go up against the Leader you will always die). If\
2021  the defending unit dies, you lose one movement point and may try again.\
2022 "), _("\
2023 The actions available to Diplomats in a city are:\
2024 "), _("\
2025  - \"Establish Embassy\": This action always succeeds, and gives\
2026  permanent contact with the city's owner, as well as intelligence\
2027  on their tax rates and technology.\
2028 "), _("\
2029  - \"Investigate City\": Your unit attempts to report detailed\
2030  information about the city: its status, what buildings and units are\
2031  within, and what it is currently producing.\
2032 "), _("\
2033  - \"Sabotage City\": Your unit attempts either to disrupt all the\
2034  city's work so far towards its current project, or to destroy an\
2035  existing building in the city, at random. Once built, Palaces and\
2036  Wonders cannot be sabotaged, and attempts to sabotage City Walls\
2037  or any building in a capital each halve the chance of success.\
2038  Sabotage may only be attempted when openly at war.\
2039 "), _("\
2040  - \"Steal Technology\": Your unit attempts to learn the secrets of a\
2041  random technology known to the city's owner but not to you. Technology\
2042  may only be stolen once from a given enemy city by Diplomats. This\
2043  action may be attempted even when not at war, but will cause a\
2044  diplomatic incident.\
2045 "), _("\
2046  - \"Incite a Revolt\": In return for gold a foreign city will change\
2047  allegiance and join your empire, bringing along all nearby units that\
2048  call it home, but reducing its size by 1. Units in other cities\
2049  remain in the enemy's control, but units outside cities are lost to\
2050  both players. The exact sum depends on the status of the city and\
2051  that of the civilization that owns it. It is not possible to incite\
2052  a rebellion in a capital, or in any city governed by a democracy.\
2053  Incitement may be attempted in peacetime, but will cause a\
2054  diplomatic incident.\
2055 "), _("\
2056 In some game strategies, hordes of Diplomats can be used to wreak\
2057  havoc on the enemy.  Little wonder that Diplomats are often\
2058  viewed with suspicion and fear!\
2059 "), _("\
2060 Diplomats built under a Communist government will start at the first\
2061  veteran level (secretary).\
2064 [unit_spy]
2065 name          = _("Spy")
2066 class         = "Land"
2067 tech_req      = "Espionage"
2068 obsolete_by   = "None"
2069 graphic       = "u.spy"
2070 graphic_alt   = "-"
2071 sound_move    = "m_spy"
2072 sound_move_alt = "m_generic"
2073 sound_fight   = "f_spy"
2074 sound_fight_alt = "f_generic"
2075 build_cost    = 30
2076 pop_cost      = 0
2077 attack        = 0
2078 defense       = 0
2079 hitpoints     = 10
2080 firepower     = 1
2081 move_rate     = 3
2082 vision_radius_sq = 8
2083 transport_cap = 0
2084 fuel          = 0
2085 uk_happy      = 0
2086 uk_shield     = 0
2087 uk_food       = 0
2088 uk_gold       = 0
2089 flags         = "Diplomat", "IgZOC", "NonMil", "HasNoZOC", "Spy"
2090 veteran_names =
2091 ; /* TRANS: Spy veteran level */
2092   _("?spy_level:informant"),
2093 ; /* TRANS: Spy veteran level */
2094   _("?spy_level:handler"),
2095 ; /* TRANS: Spy veteran level */
2096   _("?spy_level:agent"),
2097 ; /* TRANS: Spy veteran level */
2098   _("?spy_level:spymaster")
2099 veteran_raise_chance = 50, 33, 20, 0
2100 veteran_work_raise_chance = 0, 0, 0, 0
2101 veteran_power_fact = 100, 105, 110, 115
2102 veteran_move_bonus = 0, 0, 0, 0
2103 roles         = "DiplomatStartUnit"
2104 helptext      = _("\
2105 A Spy is more skilled in the arts of espionage than her Diplomat predecessor.\
2106 "), _("\
2107 She can perform all the functions of the Diplomat; refer to the Diplomat\
2108  entry for more details. Unlike a Diplomat, a Spy may also survive an\
2109  operation in a foreign city and become more experienced as a result.\
2110  Spies are also more effective than Diplomats at defending cities\
2111  against foreign Diplomats and Spies.\
2112 "), _("\
2113 A Spy can also be used to:\n\
2114  - sabotage an enemy unit (reducing its hit points to half), if it is\
2115  alone on a tile and the players are at war;\n\
2116  - poison the water supply of an enemy city (reducing the population\
2117  by one);\n\
2118  - steal specific technology (with a reduced chance of success);\n\
2119  - steal further technologies from a city which has already been\
2120  stolen from (although cities become more resistant each time they\
2121  are stolen from);\n\
2122  - sabotage predetermined city targets (with a reduced chance of\
2123  success).\
2124 "), _("\
2125 A Spy that survives the more aggressive actions (sabotage, theft,\
2126  inciting rebellion, and poisoning) escapes to the safety of the\
2127  nearest friendly city.\
2128 "), _("\
2129 Spies built under a Communist government will start at the first\
2130  veteran level (handler).\
2133 [unit_caravan]
2134 name          = _("Caravan")
2135 class         = "Land"
2136 tech_req      = "Trade"
2137 obsolete_by   = "Freight"
2138 graphic       = "u.caravan"
2139 graphic_alt   = "-"
2140 sound_move    = "m_caravan"
2141 sound_move_alt = "m_generic"
2142 sound_fight   = "f_caravan"
2143 sound_fight_alt = "f_generic"
2144 build_cost    = 50
2145 pop_cost      = 0
2146 attack        = 0
2147 defense       = 1
2148 hitpoints     = 10
2149 firepower     = 1
2150 move_rate     = 1
2151 vision_radius_sq = 2
2152 transport_cap = 0
2153 fuel          = 0
2154 uk_happy      = 0
2155 uk_shield     = 0
2156 uk_food       = 0
2157 uk_gold       = 0
2158 flags         = "TradeRoute", "HelpWonder", "IgZOC", "NonMil", "HasNoZOC"
2159 roles         = ""
2160 helptext      = _("\
2161 A Caravan carries goods or material for trading with distant cities\
2162  and foreign countries, or to help build wonders in your cities.\
2163 "), _("\
2164 Caravans can establish trade routes with your own cities or those of other\
2165  nations (even enemies) by traveling to them. A route's ongoing revenue\
2166  is doubled if the two cities involved are on different continents, and\
2167  doubled again if the cities are from different civilizations. This last\
2168  condition means the net benefit to your civilization of a trade route\
2169  is the same regardless of whether you own both cities or only one of\
2170  them; if you only own one city, trade in each city is doubled, but you\
2171  only get the benefit from one end of the route.\
2172 "), _("\
2173 Initially cities can support a maximum of two trade routes. Knowledge of\
2174  the technologies Magnetism and The Corporation each increase this limit\
2175  by one; knowing both allows cities to support four trade routes each.\
2176 "), _("\
2177 Every Caravan that is used to build a wonder will add 50 shields\
2178  towards the production of the wonder.\
2179 "), _("\
2180 TIP:  You can stockpile a stack of Caravans in advance and bring\
2181  them all into a city where you have started to build a wonder,\
2182  and finish it in only one turn!\
2185 [unit_freight]
2186 name          = _("Freight")
2187 class         = "Land"
2188 tech_req      = "The Corporation"
2189 obsolete_by   = "None"
2190 graphic       = "u.freight"
2191 graphic_alt   = "-"
2192 sound_move    = "m_freight"
2193 sound_move_alt = "m_generic"
2194 sound_fight   = "f_freight"
2195 sound_fight_alt = "f_generic"
2196 build_cost    = 50
2197 pop_cost      = 0
2198 attack        = 0
2199 defense       = 1
2200 hitpoints     = 10
2201 firepower     = 1
2202 move_rate     = 2
2203 vision_radius_sq = 2
2204 transport_cap = 0
2205 fuel          = 0
2206 uk_happy      = 0
2207 uk_shield     = 0
2208 uk_food       = 0
2209 uk_gold       = 0
2210 flags         = "TradeRoute", "HelpWonder", "IgZOC", "NonMil", "HasNoZOC"
2211 roles         = ""
2212 helptext      = _("\
2213 The Freight unit replaces the Caravan, and moves at twice the speed.\
2216 [unit_explorer]
2217 name          = _("Explorer")
2218 class         = "Land"
2219 tech_req      = "Seafaring"
2220 obsolete_by   = "Partisan"
2221 graphic       = "u.explorer"
2222 graphic_alt   = "-"
2223 sound_move    = "m_explorer"
2224 sound_move_alt = "m_generic"
2225 sound_fight   = "f_explorer"
2226 sound_fight_alt = "f_generic"
2227 build_cost    = 30
2228 pop_cost      = 0
2229 attack        = 0
2230 defense       = 1
2231 hitpoints     = 10
2232 firepower     = 1
2233 move_rate     = 1
2234 vision_radius_sq = 2
2235 transport_cap = 0
2236 fuel          = 0
2237 uk_happy      = 0
2238 uk_shield     = 0
2239 uk_food       = 0
2240 uk_gold       = 0
2241 flags         = "IgTer", "IgZOC", "NonMil", "HasNoZOC"
2242 roles         = "Explorer", "ExplorerStartUnit"
2243 helptext      = _("\
2244 Explorers are brave individuals that are very useful for\
2245  mapping unknown territory.\
2248 [unit_leader]
2249 name          = _("?unit:Leader")
2250 class         = "Land"
2251 tech_req      = "None"
2252 obsolete_by   = "None"
2253 graphic       = "u.leader"
2254 graphic_alt   = "u.explorer"
2255 sound_move    = "m_leader"
2256 sound_move_alt = "m_generic"
2257 sound_fight   = "f_leader"
2258 sound_fight_alt = "f_generic"
2259 build_cost    = 10
2260 pop_cost      = 0
2261 attack        = 0
2262 defense       = 2
2263 hitpoints     = 20
2264 firepower     = 1
2265 move_rate     = 2
2266 vision_radius_sq = 8
2267 transport_cap = 0
2268 fuel          = 0
2269 uk_happy      = 0
2270 uk_shield     = 0
2271 uk_food       = 0
2272 uk_gold       = 0
2273 flags         = "IgZOC", "NonMil", "HasNoZOC", "NoBuild", "NoHome", "SuperSpy", 
2274                 "Undisbandable", "Unbribable", "GameLoss", "Unique"
2275 ; No veteran levels (level name is never displayed)
2276 veteran_names = _("green")
2277 veteran_raise_chance = 0
2278 veteran_work_raise_chance = 0
2279 veteran_power_fact = 100
2280 veteran_move_bonus = 0
2281 roles         = "KingStartUnit"
2282 helptext      = _("\
2283 This is you. If you lose this unit, you lose the game. So don't.\
2284 "), _("\
2285 Won't unleash barbarians from huts.\
2288 [unit_barbarian_leader]
2289 name          = _("Barbarian Leader")
2290 class         = "Land"
2291 tech_req      = "None"
2292 obsolete_by   = "None"
2293 graphic       = "u.barbarian_leader"
2294 graphic_alt   = "u.diplomat"
2295 sound_move    = "m_barbarian_leader"
2296 sound_move_alt = "m_generic"
2297 sound_fight   = "f_barbarian_leader"
2298 sound_fight_alt = "f_generic"
2299 build_cost    = 40
2300 pop_cost      = 0
2301 attack        = 0
2302 defense       = 0
2303 hitpoints     = 10
2304 firepower     = 1
2305 move_rate     = 2
2306 vision_radius_sq = 2
2307 transport_cap = 0
2308 fuel          = 0
2309 uk_happy      = 0
2310 uk_shield     = 0
2311 uk_food       = 0
2312 uk_gold       = 0
2313 flags         = "IgZOC", "NonMil", "HasNoZOC", "Unbribable",
2314                 "Undisbandable", "SuperSpy", "NoHome", "NoBuild"
2315 ; No veteran levels (level name is never displayed)
2316 veteran_names = _("green")
2317 veteran_raise_chance = 0
2318 veteran_work_raise_chance = 0
2319 veteran_power_fact = 100
2320 veteran_move_bonus = 0
2321 roles         = "BarbarianLeader"
2322 helptext      = _("\
2323 One Barbarian Leader appears every time there is a barbarian uprising\
2324  somewhere in the world.\
2325 "), _("\
2326 When a Barbarian Leader is killed on a tile without any defending units,\
2327  the 100 gold ransom is paid, but only to land units and helicopters.\
2330 [unit_awacs]
2331 name          = _("AWACS")
2332 class         = "Air"
2333 tech_req      = "Advanced Flight"
2334 obsolete_by   = "None"
2335 graphic       = "u.awacs"
2336 graphic_alt   = "u.bomber"  ; backwards compatibility
2337 sound_move    = "m_awacs"
2338 sound_move_alt = "m_generic"
2339 sound_fight   = "f_awacs"
2340 sound_fight_alt = "f_generic"
2341 build_cost    = 140
2342 pop_cost      = 0
2343 attack        = 0
2344 defense       = 1
2345 hitpoints     = 20
2346 firepower     = 1
2347 move_rate     = 16
2348 vision_radius_sq = 26
2349 transport_cap = 0
2350 fuel          = 2
2351 uk_happy      = 1
2352 uk_shield     = 1
2353 uk_food       = 0
2354 uk_gold       = 0
2355 flags         = "HasNoZOC"
2356 roles         = ""
2357 helptext      = _("\
2358 The AWACS (Airborne Warning and Control System) is an airplane with an \
2359 advanced radar that can determine the location of enemy units over a \
2360 wide area.\