Documentation and packaging tweaks.
[vms-empire.git] / vms-empire.xml
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3                    "">
4 <refentry id='vmsempire6'>
5 <!--  See the file COPYING, distributed with empire, for restriction
6  and warranty information. -->
8 <refmeta>
9 <refentrytitle>Empire</refentrytitle>
10 <manvolnum>6</manvolnum>
11 <refmiscinfo class='date'>March 29, 1990</refmiscinfo>
12 <refmiscinfo class='productname'>empire</refmiscinfo>
13 <refmiscinfo class='source'>empire</refmiscinfo>
14 <refmiscinfo class='manual'>Games</refmiscinfo>
15 </refmeta>
16 <refnamediv>
17 <refname>empire</refname>
18 <refpurpose>the wargame of the century</refpurpose>
19 </refnamediv>
20 <refsynopsisdiv id='synopsis'>
21 <cmdsynopsis>
22   <command>empire</command>
23     <arg choice='opt'>-w <replaceable>water</replaceable></arg>
24     <arg choice='opt'>-s <replaceable>smooth</replaceable></arg>
25     <arg choice='opt'>-d <replaceable>delay</replaceable></arg>
26     <arg choice='opt'>-S <replaceable>save-interval</replaceable></arg>
27     <arg choice='opt'>-f <replaceable>savefile</replaceable></arg>
28 </cmdsynopsis>
29 </refsynopsisdiv>
31 <refsect1 id='description'><title>DESCRIPTION</title>
32 <para>Empire is a simulation of a full-scale war between two
33 emperors, the computer and you.  Naturally, there is only
34 room for one, so the object of the game is to destroy
35 the other.  The computer plays by the same rules that you
36 do.</para>
38 <variablelist>
39   <varlistentry>
40   <term><option>-w</option><replaceable>water</replaceable></term>
41   <listitem>
42 <para>This option controls the amount of water on the map.
43 This is given as the percentage of the map which should
44 be water.  The default is 70% water.  <emphasis remap='I'>water</emphasis>
45 must be an integer in the between 10 and 90 inclusive.</para>
46   </listitem>
47   </varlistentry>
48   <varlistentry>
49   <term><option>-s</option><replaceable>smooth</replaceable></term>
50   <listitem>
51 <para>This controls the smoothness of the map.  A low value
52 will produce a highly chaotic map with lots of small
53 islands or lakes.  A high value will produce a map
54 with a few scattered continents.  Be forewarned that
55 a high value will cause the program to take a long
56 time to start up.  The default value is 5.</para>
57   </listitem>
58   </varlistentry>
59   <varlistentry>
60   <term><option>-d</option><replaceable>delay</replaceable></term>
61   <listitem>
62 <para>This option controls the length of time the computer will
63 delay after printing informational messages at the top of
64 the screen.  <emphasis remap='I'>delay</emphasis> is specified in milliseconds.  The
65 default value is 2000 which allows the user two seconds to
66 read a message.</para>
67   </listitem>
68   </varlistentry>
69 </variablelist>
70 </refsect1>
72 <refsect1 id='examples'><title>EXAMPLES</title>
73 <para>empire -w90 -s2</para>
74 <para>This produces a map with many islands.</para>
75 <para>empire -w50 -s0</para>
76 <para>This produces a really strange map.  These values
77 are not recommended for the faint at heart.</para>
78 <para>empire -w10</para>
79 <para>This produces a map with lots of land and a few lakes.
80 The computer will have a hard time on this sort of map
81 as it will try and produce lots of troop transports,
82 which are fairly useless.</para>
83 <para>There are two other option.</para>
84 <variablelist>
85   <varlistentry>
86   <term><option>-S</option><replaceable>interval</replaceable></term>
87   <listitem>
88     <para>sets the <emphasis remap='I'>save interval</emphasis> for the
89     game (default is 10). Once per <emphasis remap='I'>interval</emphasis>
90     turns the game state will be automatically saved after your move. It
91     will be saved in any case when you change modes or do various special
92     things from command mode, such as `M' or `N'.</para>
93   </listitem>
94   </varlistentry>
95   <varlistentry>
96   <term><option>-f</option><replaceable>savefile</replaceable></term>
97   <listitem>
98     <para>Set the save file name (normally empsave.dat).</para>
99   </listitem>
100   </varlistentry>
101 </variablelist>
102 </refsect1>
104 <refsect1 id='introduction'><title>INTRODUCTION</title>
105 <para>Empire is a war game played between you and the user.  The world
106 on which the game takes place is a square rectangle containing cities,
107 land, and water.  Cities are used to build armies, planes, and ships
108 which can move across the world destroying enemy pieces, exploring,
109 and capturing more cities.  The objective of the game is to destroy
110 all the enemy pieces, and capture all the cities.</para>
111 <para>The world is a rectangle 60 by 100 squares on a side.  The world
112 consists of sea (.), land (+), uncontrolled
113 cities (*), computer-controlled cities (X), and cities that you
114 control (O).</para>
115 <para>The world is displayed on the player's screen during
116 movement.  (On terminals with small screens, only a portion of
117 the world is shown at any one time.)
118 Each piece is represented by a unique
119 character on the map.  With a few exceptions, you can
120 only have one piece on a given location.  On the map, you
121 are shown only the 8 squares adjacent to your units.
122 This information is updated before and during each of your moves.
123 The map displays the most recent information known.</para>
124 <para>The game starts by assigning you one city and the
125 computer one city.  Cities can produce new pieces.  Every
126 city that you own produces more pieces for you according
127 to the cost of the desired piece.  The typical play of the
128 game is to issue the Automove command until you decide
129 to do something special.  During movement in each round,
130 the player is prompted to move each piece that does not
131 otherwise have an assigned function.</para>
132 <para>Map coordinates are 4-digit numbers.  The first two
133 digits are the row, the second two digits are the
134 column.</para>
135 </refsect1>
137 <refsect1 id='pieces'><title>PIECES</title>
138 <para>The pieces are as follows:</para>
140 <informaltable pgwide='0' frame='all'>
141   <tgroup cols='7' align='center'>
142     <colspec colname='c1'/>
143     <colspec colname='c2'/>
144     <colspec colname='c3'/>
145     <colspec colname='c4'/>
146     <colspec colname='c5'/>
147     <colspec colname='c6'/>
148     <colspec colname='c7'/>
149     <tbody>
150       <row rowsep='1'>
151         <entry align='left' colsep='1'>Piece</entry>
152         <entry align='center' colsep='1'>You</entry>
153         <entry align='center' colsep='1'>Enemy</entry>
154         <entry align='right' colsep='1'>Moves</entry>
155         <entry align='right' colsep='1'>Hits</entry>
156         <entry align='right' colsep='1'>Str</entry>
157         <entry align='center'>Cost</entry>
158       </row>
159       <row>
160         <entry align='left' colsep='1'>Army</entry>
161         <entry align='center' colsep='1'>A</entry>
162         <entry align='center' colsep='1'>a</entry>
163         <entry align='right' colsep='1'>1</entry>
164         <entry align='right' colsep='1'>1</entry>
165         <entry align='right' colsep='1'>1</entry>
166         <entry align='center'>5(6)</entry>
167       </row>
168       <row>
169         <entry align='left' colsep='1'>Fighter</entry>
170         <entry align='center' colsep='1'>F</entry>
171         <entry align='center' colsep='1'>f</entry>
172         <entry align='right' colsep='1'>8</entry>
173         <entry align='right' colsep='1'>1</entry>
174         <entry align='right' colsep='1'>1</entry>
175         <entry align='center'>10(12)</entry>
176       </row>
177       <row>
178         <entry align='left' colsep='1'>Patrol Boat</entry>
179         <entry align='center' colsep='1'>P</entry>
180         <entry align='center' colsep='1'>p</entry>
181         <entry align='right' colsep='1'>4</entry>
182         <entry align='right' colsep='1'>1</entry>
183         <entry align='right' colsep='1'>1</entry>
184         <entry align='center'>15(18)</entry>
185       </row>
186       <row>
187         <entry align='left' colsep='1'>Destroyer</entry>
188         <entry align='center' colsep='1'>D</entry>
189         <entry align='center' colsep='1'>d</entry>
190         <entry align='right' colsep='1'>2</entry>
191         <entry align='right' colsep='1'>3</entry>
192         <entry align='right' colsep='1'>1</entry>
193         <entry align='center'>20(24)</entry>
194       </row>
195       <row>
196         <entry align='left' colsep='1'>Submarine</entry>
197         <entry align='center' colsep='1'>S</entry>
198         <entry align='center' colsep='1'>s</entry>
199         <entry align='right' colsep='1'>2</entry>
200         <entry align='right' colsep='1'>2</entry>
201         <entry align='right' colsep='1'>3</entry>
202         <entry align='center'>20(24)</entry>
203       </row>
204       <row>
205         <entry align='left' colsep='1'>Troop Transport</entry>
206         <entry align='center' colsep='1'>T</entry>
207         <entry align='center' colsep='1'>t</entry>
208         <entry align='right' colsep='1'>2</entry>
209         <entry align='right' colsep='1'>1</entry>
210         <entry align='right' colsep='1'>1</entry>
211         <entry align='center'>30(36)</entry>
212       </row>
213       <row>
214         <entry align='left' colsep='1'>Aircraft Carrier</entry>
215         <entry align='center' colsep='1'>C</entry>
216         <entry align='center' colsep='1'>c</entry>
217         <entry align='right' colsep='1'>2</entry>
218         <entry align='right' colsep='1'>8</entry>
219         <entry align='right' colsep='1'>1</entry>
220         <entry align='center'>30(36)</entry>
221       </row>
222       <row>
223         <entry align='left' colsep='1'>Battleship</entry>
224         <entry align='center' colsep='1'>B</entry>
225         <entry align='center' colsep='1'>b</entry>
226         <entry align='right' colsep='1'>2</entry>
227         <entry align='right' colsep='1'>10</entry>
228         <entry align='right' colsep='1'>2</entry>
229         <entry align='center'>40(48)</entry>
230       </row>
231       <row>
232         <entry align='left' colsep='1'>Satellite</entry>
233         <entry align='center' colsep='1'>Z</entry>
234         <entry align='center' colsep='1'>z</entry>
235         <entry align='right' colsep='1'>10</entry>
236         <entry align='right' colsep='1'>--</entry>
237         <entry align='right' colsep='1'>--</entry>
238         <entry align='center'>50(60)</entry>
239       </row>
240     </tbody>
241   </tgroup>
242 </informaltable>
244 <para>The second column shows the map representation for your
245 units.</para>
246 <para>The third shows the representations of enemy units.</para>
247 <para>Moves is the number of squares that the unit can move in a
248 single round.</para>
249 <para>Hits is the amount of damage a unit can take before it
250 is destroyed.</para>
251 <para>Strength is the amount of damage a unit can inflict upon an
252 enemy during each round of an attack.</para>
253 <para>Cost is the number of rounds needed for a city to produce
254 the piece.</para>
255 <para>The number in parenthesis is the cost for a city to
256 produce the first unit.</para>
257 <para>Each piece has certain advantages associated with it that
258 can make it useful.  One of the primary strategic aspects
259 of this game is deciding which pieces will be produced
260 and in what quantities.</para>
261 <para><emphasis remap='B'>Armies</emphasis> can only move on land, and are the only piece that can
262 move on land.  Only armies can capture cities.
263 This means that you must produce armies in order to win the
264 game.  Armies have a 50% chance of capturing a city when they
265 attack.  (Attacking one's own city results in the army's
266 destruction.  Armies that move onto the sea will drown.
267 Armies can attack objects at sea, but even if they win, they
268 will drown.)  Armies can be carried by troop transports.
269 If an army is moved onto a troop transport, then whenever
270 the transport is moved, the army will be moved with the
271 transport.  You cannot attack any piece at sea while on a
272 transport.</para>
273 <para><emphasis remap='B'>Fighters</emphasis> move over both land and sea, and they move 8 squares
274 per round.  Their high speed and great mobility make fighters
275 ideal for exploring.  However, fighters must periodically land
276 at user-owned cities for refueling.  A fighter can travel 32
277 squares without refeuling.  Fighters are also shot down if they
278 attempt to fly over a city which is not owned by the user.</para>
279 <para><emphasis remap='B'>Patrol boats</emphasis> are fast but lightly armored.  Therefore
280 they are useful for patrolling ocean waters and exploring.
281 In an attack against a stronger boat, however, patrol boats
282 will suffer heavy casulties.</para>
283 <para><emphasis remap='B'>Destroyers</emphasis> are fairly heavily armored and reasonably quick
284 to produce.  Thus they are useful for destroying enemy transports
285 which may be trying to spread the enemy across the face of the
286 world.</para>
287 <para>When a <emphasis remap='B'>submarine</emphasis> scores a hit, 3 hits are exacted instead of 1.
288 Thus submarines can inflict heavy damage in a fight against
289 heavily armored boats.  Notice that healthy submarines will
290 typically defeat healthy destroyers two-thirds of the time.
291 However, a submarine will defeat a fighter about two-thirds
292 of the time, while a destroyer will defeat a fighter three-fourths
293 of the time.</para>
294 <para><emphasis remap='B'>Troop transports</emphasis> are the only pieces that can carry armies.
295 A maximum of six armies can be carried by a transport.
296 On any world containing a reasonable amount of water,
297 transports will be a critical resource in winning the game.
298 Notice that the weakness of transports implies they need
299 protection from stronger ships.</para>
300 <para><emphasis remap='B'>Aircraft carriers</emphasis> are the only ships that can
301 carry fighters.  Carriers carry a maximum of the number
302 of hits left of fighters.  Fighters are refueled when they
303 land on a carrier.</para>
304 <para><emphasis remap='B'>Battleships</emphasis> are similar to destroyers except that they are
305 much stronger.</para>
306 <para><emphasis remap='B'>Satellites</emphasis> are only useful for reconaissance.  They can not
307 be attacked.  They are launched in a random diagonal orbit, and
308 stay up for 50 turns.  They can see one square farther than other
309 objects.</para>
310 <para>All ships can move only on sea.  Ships can also dock in a
311 user-owned city.  Docked ships have damage repaired at the
312 rate of 1 hit per turn.  Ships which have suffered a lot
313 of damage will move more slowly.</para>
314 <para>Because of their ability
315 to be repaired, ships with lots of hits such as Carriers and
316 Battleships have an additional advantage.
317 After suffering minor damage while destroying enemy shipping,
318 these ships can sail back to port and be quickly repaired before
319 the enemy has time to replenish her destroyed shipping.</para>
320 <para>The following table gives the probability that the piece listed
321 on the side will defeat the piece listed at the top in a battle.
322 (The table assumes that both pieces are undamaged.)</para>
324 <informaltable pgwide='0' frame='all'>
325   <tgroup cols='6' align='center'>
326     <colspec colname='c1'/>
327     <colspec colname='c2'/>
328     <colspec colname='c3'/>
329     <colspec colname='c4'/>
330     <colspec colname='c5'/>
331     <colspec colname='c6'/>
332     <tbody>
333       <row rowsep='1'>
334         <entry align='left' colsep='1'>AFPT</entry>
335         <entry align='center' colsep='1'>D</entry>
336         <entry align='center' colsep='1'>S</entry>
337         <entry align='center' colsep='1'>C</entry>
338         <entry align='center' colsep='1'>B</entry>
339         <entry align='center'></entry>
340       </row>
341       <row>
342         <entry align='left' colsep='1'>AFPT</entry>
343         <entry align='center' colsep='1'>50.0%</entry>
344         <entry align='center' colsep='1'>12.5%</entry>
345         <entry align='center' colsep='1'>25.0%</entry>
346         <entry align='center' colsep='1'>00.391%</entry>
347         <entry align='center'>00.0977%</entry>
348       </row>
349       <row>
350         <entry align='left' colsep='1'>D</entry>
351         <entry align='center' colsep='1'>87.5%</entry>
352         <entry align='center' colsep='1'>50.0%</entry>
353         <entry align='center' colsep='1'>25.0%</entry>
354         <entry align='center' colsep='1'>05.47%</entry>
355         <entry align='center'>00.537%</entry>
356       </row>
357       <row>
358         <entry align='left' colsep='1'>S</entry>
359         <entry align='center' colsep='1'>75.0%</entry>
360         <entry align='center' colsep='1'>75.0%</entry>
361         <entry align='center' colsep='1'>50.0%</entry>
362         <entry align='center' colsep='1'>31.3%</entry>
363         <entry align='center'>06.25%</entry>
364       </row>
365       <row>
366         <entry align='left' colsep='1'>C</entry>
367         <entry align='center' colsep='1'>99.6%</entry>
368         <entry align='center' colsep='1'>94.5%</entry>
369         <entry align='center' colsep='1'>68.7%</entry>
370         <entry align='center' colsep='1'>50.0%</entry>
371         <entry align='center'>04.61%</entry>
372       </row>
373       <row>
374         <entry align='left' colsep='1'>B</entry>
375         <entry align='center' colsep='1'>99.9%</entry>
376         <entry align='center' colsep='1'>99.5%</entry>
377         <entry align='center' colsep='1'>93.8%</entry>
378         <entry align='center' colsep='1'>95.4%</entry>
379         <entry align='center'>50.0%</entry>
380       </row>
381     </tbody>
382   </tgroup>
383 </informaltable>
385 <para>Notice, however, that when a ship has been damaged, the odds of
386 being defeated can go up quite a bit.  For example, a healthy
387 submarine has a 25% chance of defeating a battleship that has
388 had one hit of damage done to it, and a healthy submarine has
389 a 50% chance of defeating a carrier which has suffered two hits
390 of damage.</para>
391 </refsect1>
393 <refsect1 id='movement_functions'><title>MOVEMENT FUNCTIONS</title>
394 <para>There are a variety of movement functions.  The movement functions
395 of pieces can be specified in user mode and edit mode.
396 Cities can have movement functions set for each type of piece.
397 When a movement function for a type of pieces is set for a city,
398 then every time that type of piece appears in the city, the piece
399 will acquire that movement function.  Be forewarned that moving
400 loaded transports or loaded carriers into a city can have undesirable
401 side effects.</para>
402 <para>Normally, when a movement
403 function has been specified, the piece will continue moving according to
404 that function until one of the following happen:</para>
405 <itemizedlist>
406   <listitem>
407 <para>An enemy piece or unowned city appears next to the piece.  In this case
408 the piece will be completely awoken, unless its movement function has
409 been set to a specific destination.
410 Armies on ships and pieces inside
411 cities will not be awoken if the enemy piece is gone by the time it is
412 their turn to move.</para>
413   </listitem>
414   <listitem>
415 <para>You explicitly awaken the piece.</para>
416   </listitem>
417   <listitem>
418 <para>The piece can no longer move in accordance with its programmed function.
419 In this case, the piece will awaken <emphasis remap='I'>temporarily</emphasis>.  You will be asked
420 to move the piece at which time you may awaken it.</para>
421   </listitem>
422   <listitem>
423 <para>The piece is a fighter which has just enough fuel (plus a small reserve)
424 to get to the nearest city.
425 In this case,
426 the piece will awaken completely, unless its movement function has
427 been set to a specific destination, or its movement function has been
428 set to <emphasis remap='I'>land</emphasis>.</para>
429   </listitem>
430 </itemizedlist>
431 <para>The rationale behind this complexity is that fighters must be awoken
432 completely before they are out of range of a city
433 to prevent one from accidentally forgetting to waken the
434 fighter and then watching it fly off to its doom.  However, it is presumed
435 that when a path is set for the fighter, the fighter is not in danger of
436 running out of fuel.</para>
437 <para>Pieces do not completely awaken when their function has been set to a
438 destination because it is slightly time consuming to reset the destination,
439 but very simple (one keystroke) to wake the piece.</para>
440 <para>The movement functions are:</para>
441 <variablelist>
442   <varlistentry>
443   <term><emphasis remap='B'>Attack</emphasis></term>
444   <listitem>
445 <para>This function applies only to armies.  When this function is set,
446 the army will move toward the nearest enemy city, unowned city, or
447 enemy army.  This is useful when fighting off an invading enemy or
448 taking over a new continent.  When an army is set to this mode,
449 it will also explore nearby territory.  This tends to make
450 the "grope" movement mode pretty useless.</para>
451   </listitem>
452   </varlistentry>
453   <varlistentry>
454   <term><emphasis remap='B'>Awake</emphasis></term>
455   <listitem>
456 <para>When pieces are awake, you will be asked for the direction in which
457 the piece should move on each turn.</para>
458   </listitem>
459   </varlistentry>
460   <varlistentry>
461   <term><emphasis remap='B'>Fill</emphasis></term>
462   <listitem>
463 <para>This function applies to carriers and transports.  When this function is
464 specified, these ships sleep until they have been filled with fighters or
465 armies respectively.</para>
466   </listitem>
467   </varlistentry>
468   <varlistentry>
469   <term><emphasis remap='B'>Grope</emphasis></term>
470   <listitem>
471 <para>This function causes a piece to explore.  The piece heads toward the nearest
472 unseen square of the map on each of its moves.  Some attempt is made to 
473 explore in an optimal fashion.</para>
474   </listitem>
475   </varlistentry>
476   <varlistentry>
477   <term><emphasis remap='B'>Land</emphasis></term>
478   <listitem>
479 <para>This function applies to fighters and causes the fighter to head toward
480 the nearest transport or carrier.</para>
481   </listitem>
482   </varlistentry>
483   <varlistentry>
484   <term><emphasis remap='B'>Random</emphasis></term>
485   <listitem>
486 <para>This movement function causes a piece to move at random to an adjacent
487 empty square.</para>
488   </listitem>
489   </varlistentry>
490   <varlistentry>
491   <term><emphasis remap='B'>Sentry</emphasis></term>
492   <listitem>
493 <para>This movement function puts a piece to sleep.
494 The function of a city cannot be set to 'sleep'.</para>
495   </listitem>
496   </varlistentry>
497   <varlistentry>
498   <term><emphasis remap='B'>Transport</emphasis></term>
499   <listitem>
500 <para>This movement function only works on armies.  The army sleeps until
501 an unfull transport passes by, at which point the army wakes up and
502 boards the transport.</para>
503   </listitem>
504   </varlistentry>
505   <varlistentry>
506   <term><emphasis remap='B'>Upgrade</emphasis></term>
507   <listitem>
508 <para>This movement function only works with ships.  The ship will move
509 to the nearest owned city and remain there until it is repaired.</para>
510   </listitem>
511   </varlistentry>
512   <varlistentry>
513   <term><emphasis remap='B'>&lt;dir&gt;</emphasis></term>
514   <listitem>
515 <para>Pieces can be set to move in a specified direction.</para>
516   </listitem>
517   </varlistentry>
518   <varlistentry>
519   <term><emphasis remap='B'>&lt;dest&gt;</emphasis></term>
520   <listitem>
521 <para>Pieces can be set to move toward a specified square.  In this movement
522 mode, pieces take a shortest path toward the destination.  Pieces moving
523 in accordance with this function prefer diagonal moves that explore
524 territory.  Because of this, the movement of the piece may be
525 non-intuitive.</para>
526   </listitem>
527   </varlistentry>
528 </variablelist>
529 <para>As examples of how to use these movement functions, typically
530 when I have a new city on a continent, I set the Army function of the
531 city to <emphasis remap='I'>attack</emphasis>.  Whenever an army is produced, it merrily goes off
532 on its way exploring the continent and moving towards unowned cities
533 or enemy armies or cities.</para>
534 <para>I frequently set the ship functions for cities that are far from the
535 front to automatically move ships towards the front.</para>
536 <para>When I have armies on a continent, but there is nothing to explore
537 or attack, I move the army to the shore and use the <emphasis remap='I'>transport</emphasis>
538 function to have that army hop aboard the first passing transport.</para>
539 </refsect1>
541 <refsect1 id='commands'><title>COMMANDS</title>
542 <para>There are three command modes.  The first of these is "command mode".
543 In this mode, you give commands that affect the game as a whole.
544 In the second mode, "move mode", you give commands to move your
545 pieces.  The third mode is "edit mode", and in this mode you can
546 edit the functions of your pieces and examine various portions of
547 the map.</para>
548 <para>All commands are one character long.  The full mnemonic names are
549 listed below as a memorization aid.
550 The mnemonics are somewhat contrived because there are so few
551 characters in the English language.  Too bad this program isn't
552 written in Japanese, neh?</para>
553 <para>In all command modes, typing "H" will print out a screen of help
554 information, and typing &lt;ctrl-L&gt; will redraw the screen.</para>
555 </refsect1>
557 <refsect1 id='command_mode'><title>COMMAND MODE</title>
558 <para>In command mode, the computer will prompt you for your orders.
559 The following commands can be given at this time:</para>
560 <variablelist>
561   <varlistentry>
562   <term><emphasis remap='B'>Automove</emphasis></term>
563   <listitem>
564 <para>Enter automove mode.  This command begins a new round of movement.
565 You will remain in move mode after each of the computer's turns.
566 (In move mode, the "O" command will return you to command mode
567 after the computer finishes its next turn.</para>
568   </listitem>
569   </varlistentry>
570   <varlistentry>
571   <term><emphasis remap='B'>City</emphasis></term>
572   <listitem>
573 <para>Give the computer a random unowned city.  This command is useful if you
574 find that the computer is getting too easy to beat.</para>
575   </listitem>
576   </varlistentry>
577   <varlistentry>
578   <term><emphasis remap='B'>Date</emphasis></term>
579   <listitem>
580 <para>The current round is displayed.</para>
581   </listitem>
582   </varlistentry>
583   <varlistentry>
584   <term><emphasis remap='B'>Examine</emphasis></term>
585   <listitem>
586 <para>Examine the enemy's map.  This command is only valid after the computer
587 has resigned.</para>
588   </listitem>
589   </varlistentry>
590   <varlistentry>
591   <term><emphasis remap='B'>File</emphasis></term>
592   <listitem>
593 <para>Print a copy of the map to the specified file.</para>
594   </listitem>
595   </varlistentry>
596   <varlistentry>
597   <term><emphasis remap='B'>Give</emphasis></term>
598   <listitem>
599 <para>This command gives the computer a free move.</para>
600   </listitem>
601   </varlistentry>
602   <varlistentry>
603   <term><emphasis remap='B'>J</emphasis></term>
604   <listitem>
605 <para>Enter edit mode where you can examine and change the functions
606 associated with your pieces and cities.</para>
607   </listitem>
608   </varlistentry>
609   <varlistentry>
610   <term><emphasis remap='B'>Move</emphasis></term>
611   <listitem>
612 <para>Enter move mode for a single round.</para>
613   </listitem>
614   </varlistentry>
615   <varlistentry>
616   <term><emphasis remap='B'>N</emphasis></term>
617   <listitem>
618 <para>Give the computer the number of free moves you specify.</para>
619   </listitem>
620   </varlistentry>
621   <varlistentry>
622   <term><emphasis remap='B'>Print</emphasis></term>
623   <listitem>
624 <para>Display a sector on the screen.</para>
625   </listitem>
626   </varlistentry>
627   <varlistentry>
628   <term><emphasis remap='B'>Quit</emphasis></term>
629   <listitem>
630 <para>Quit the game.</para>
631   </listitem>
632   </varlistentry>
633   <varlistentry>
634   <term><emphasis remap='B'>Restore</emphasis></term>
635   <listitem>
636 <para>Restore the game from empsave.dat.</para>
637   </listitem>
638   </varlistentry>
639   <varlistentry>
640   <term><emphasis remap='B'>Save</emphasis></term>
641   <listitem>
642 <para>Save the game in empsave.dat.</para>
643   </listitem>
644   </varlistentry>
645   <varlistentry>
646   <term><emphasis remap='B'>Trace</emphasis></term>
647   <listitem>
648 <para>This command toggles a flag.  When the flag is set,
649 after each move, either yours or the computer's,
650 a picture of the world is written out to the file
651 'empmovie.dat'.  <emphasis remap='B'>Watch out!  This command produces lots of
652 output.</emphasis></para>
653   </listitem>
654   </varlistentry>
655   <varlistentry>
656   <term><emphasis remap='B'>Watch</emphasis></term>
657   <listitem>
658 <para>This command allows you to watch a saved movie.
659 The movie is displayed in a condensed version so that
660 it will fit on a single screen, so the output may be
661 a little confusing.  This command is only legal if the
662 computer resigns.  If you lose the game, you cannot replay
663 a movie to learn the secrets of how the computer beat you.
664 Nor can you replay a movie to find out the current positions
665 of the computer's pieces.  When replaying a movie, it is
666 recommended that you use the <option>-d</option> option to set the delay
667 to around 2000 milliseconds or so.  Otherwise the screen will be
668 updated too quickly for you to really grasp what is going on.</para>
669   </listitem>
670   </varlistentry>
671   <varlistentry>
672   <term><emphasis remap='B'>Zoom</emphasis></term>
673   <listitem>
674 <para>Display a condensed version of the map on the screen.  The user map is
675 divided into small rectangles.  Each rectangle is displayed as one square
676 on the screen.  If there is a city in a rectangle, then it
677 is displayed.  Otherwise enemy pieces are displayed, then user pieces,
678 then land, then water, and then unexplored territory.  When pieces are
679 displayed, ships are preferred to fighters and armies.</para>
680   </listitem>
681   </varlistentry>
682 </variablelist>
683 </refsect1>
685 <refsect1 id='move_mode'><title>MOVE MODE</title>
686 <para>In move mode, the cursor will appear on the screen at the position
687 of each piece that needs to be moved.  You can then give commands
688 to move the piece.  Directions to move are specified by the
689 following keys:</para>
690 <literallayout>
691 <emphasis remap='5'>
692         QWE
693         A D
694         ZXC
695 </emphasis>
696 </literallayout>
697 <para>The arrow and keypad keys on your terminal, if any, should also work.</para>
698 <para>These keys move in the direction of the key from S.  The
699 characters are not echoed and only 1 character is
700 accepted, so there is no need for a &lt;Return&gt;.  Hit the &lt;Space&gt;
701 bar if you want the piece to stay put.</para>
702 <para>Other commands are:</para>
703 <variablelist>
704   <varlistentry>
705   <term><emphasis remap='B'>Build</emphasis></term>
706   <listitem>
707 <para>Change the production of a city.</para>
708   </listitem>
709   </varlistentry>
710   <varlistentry>
711   <term><emphasis remap='B'>Fill</emphasis></term>
712   <listitem>
713 <para>Set the function of a troop transport or aircraft carrier to
714 <emphasis remap='I'>fill</emphasis>.</para>
715   </listitem>
716   </varlistentry>
717   <varlistentry>
718   <term><emphasis remap='B'>Grope</emphasis></term>
719   <listitem>
720 <para>Set the function of a piece to <emphasis remap='I'>grope</emphasis>.</para>
721   </listitem>
722   </varlistentry>
723   <varlistentry>
724   <term><emphasis remap='B'>I</emphasis><emphasis remap='I'>dir</emphasis></term>
725   <listitem>
726 <para>Set the direction for a piece to move.</para>
727   </listitem>
728   </varlistentry>
729   <varlistentry>
730   <term><emphasis remap='B'>J</emphasis></term>
731   <listitem>
732 <para>Enter edit mode.</para>
733   </listitem>
734   </varlistentry>
735   <varlistentry>
736   <term><emphasis remap='B'>Kill</emphasis></term>
737   <listitem>
738 <para>Wake up the piece.  If the piece is a transport or carrier,
739 pieces on board will not be awoken.</para>
740   </listitem>
741   </varlistentry>
742   <varlistentry>
743   <term><emphasis remap='B'>Land</emphasis></term>
744   <listitem>
745 <para>Set a fighter's function to <emphasis remap='I'>land</emphasis>.</para>
746   </listitem>
747   </varlistentry>
748   <varlistentry>
749   <term><emphasis remap='B'>Out</emphasis></term>
750   <listitem>
751 <para>Cancel automove mode.  At the end of the round, you will
752 be placed in command mode.</para>
753   </listitem>
754   </varlistentry>
755   <varlistentry>
756   <term><emphasis remap='B'>Print</emphasis></term>
757   <listitem>
758 <para>Redraw the screen.</para>
759   </listitem>
760   </varlistentry>
761   <varlistentry>
762   <term><emphasis remap='B'>Random</emphasis></term>
763   <listitem>
764 <para>Set a piece's function to <emphasis remap='I'>random</emphasis>.</para>
765   </listitem>
766   </varlistentry>
767   <varlistentry>
768   <term><emphasis remap='B'>Sentry</emphasis></term>
769   <listitem>
770 <para>Set a piece's function to <emphasis remap='I'>sentry</emphasis>.</para>
771   </listitem>
772   </varlistentry>
773   <varlistentry>
774   <term><emphasis remap='B'>Transport</emphasis></term>
775   <listitem>
776 <para>Set an army's function to <emphasis remap='I'>transport</emphasis>.</para>
777   </listitem>
778   </varlistentry>
779   <varlistentry>
780   <term><emphasis remap='B'>Upgrade</emphasis></term>
781   <listitem>
782 <para>Set a ship's function to <emphasis remap='I'>upgrade</emphasis>.</para>
783   </listitem>
784   </varlistentry>
785   <varlistentry>
786   <term><emphasis remap='B'>V</emphasis><emphasis remap='I'>piece func</emphasis></term>
787   <listitem>
788 <para>Set the city movement function for the specified piece
789 to the specified function.  For example, typing "VAY" would
790 set the city movement function for armies to <emphasis remap='I'>attack</emphasis>.  Whenever
791 an army is produced in the city (or whenever a loaded transport
792 enters the city), the army's movement function
793 would be set to <emphasis remap='I'>attack</emphasis>.</para>
794   </listitem>
795   </varlistentry>
796   <varlistentry>
797   <term><emphasis remap='B'>Y</emphasis></term>
798   <listitem>
799 <para>Set an army's function to <emphasis remap='I'>attack</emphasis>.</para>
800   </listitem>
801   </varlistentry>
802   <varlistentry>
803   <term><emphasis remap='B'>?</emphasis></term>
804   <listitem>
805 <para>Display information about the piece.  The
806 function, hits left, range, and number of items on board are
807 displayed.</para>
808   </listitem>
809   </varlistentry>
810 </variablelist>
811 <para>Attacking something is accomplished by  moving  onto  the
812 square of the unit you wish to attack.  Hits are traded
813 off at 50% probability of a hit landing on one or the
814 other units until one unit is totally destroyed.  There
815 is only 1 possible winner.</para>
816 <para>You are "allowed" to do <emphasis remap='B'>fatal</emphasis> things like attack your
817 own cities or other pieces.  If you try to make a fatal
818 move, the computer will warn you and give you a chance to
819 change your mind.</para>
820 <para>You cannot move onto the edge of the world.</para>
821 </refsect1>
823 <refsect1 id='edit_mode'><title>EDIT MODE</title>
824 <para>In edit mode, you can move around the world and examine pieces
825 or assign them new functions.
826 To move the cursor around, use the standard direction
827 keys.
828 Other commands are:</para>
829 <variablelist>
830   <varlistentry>
831   <term><emphasis remap='B'>Build</emphasis></term>
832   <listitem>
833 <para>Change the production of the city under the cursor.
834 The program will prompt for the new production, and you
835 should respond with the key corresponding to the letter of the piece
836 that you want produced.</para>
837   </listitem>
838   </varlistentry>
839   <varlistentry>
840   <term><emphasis remap='B'>Fill</emphasis></term>
841   <listitem>
842 <para>Set a transport's or carrier's function to <emphasis remap='I'>fill</emphasis>.</para>
843   </listitem>
844   </varlistentry>
845   <varlistentry>
846   <term><emphasis remap='B'>Grope</emphasis></term>
847   <listitem>
848 <para>Set a piece's function to <emphasis remap='I'>grope</emphasis>.</para>
849   </listitem>
850   </varlistentry>
851   <varlistentry>
852   <term><emphasis remap='B'>I</emphasis><emphasis remap='I'>dir</emphasis></term>
853   <listitem>
854 <para>Set the function of a piece (or city) to the specified direction.</para>
855   </listitem>
856   </varlistentry>
857   <varlistentry>
858   <term><emphasis remap='B'>Kill</emphasis></term>
859   <listitem>
860 <para>Wake all pieces at the current location.  If the location is a city,
861 the fighter path will also be canceled.</para>
862   </listitem>
863   </varlistentry>
864   <varlistentry>
865   <term><emphasis remap='B'>Mark</emphasis></term>
866   <listitem>
867 <para>Select the piece or city at the current location.  This command
868 is used with the "N" command.</para>
869   </listitem>
870   </varlistentry>
871   <varlistentry>
872   <term><emphasis remap='B'>N</emphasis></term>
873   <listitem>
874 <para>Set the destination of the piece previously selected with the "M"
875 command to the current square.</para>
876   </listitem>
877   </varlistentry>
878   <varlistentry>
879   <term><emphasis remap='B'>Out</emphasis></term>
880   <listitem>
881 <para>Exit edit mode.</para>
882   </listitem>
883   </varlistentry>
884   <varlistentry>
885   <term><emphasis remap='B'>Print</emphasis><emphasis remap='I'>sector</emphasis></term>
886   <listitem>
887 <para>Display a new sector of the map.  The map is divided into
888 ten sectors of size 20 by 70.  Sector zero is in the upper-left
889 corner of the map.  Sector four is in the lower-left corner of
890 the map.  Sector five is in the upper-right corner, and sector
891 nine is in the lower-right corner.</para>
892   </listitem>
893   </varlistentry>
894   <varlistentry>
895   <term><emphasis remap='B'>Random</emphasis></term>
896   <listitem>
897 <para>Set a piece to move randomly.</para>
898   </listitem>
899   </varlistentry>
900   <varlistentry>
901   <term><emphasis remap='B'>Sentry</emphasis></term>
902   <listitem>
903 <para>Put a piece to sleep.</para>
904   </listitem>
905   </varlistentry>
906   <varlistentry>
907   <term><emphasis remap='B'>Transport</emphasis></term>
908   <listitem>
909 <para>Set an army's function to <emphasis remap='I'>transport</emphasis>.</para>
910   </listitem>
911   </varlistentry>
912   <varlistentry>
913   <term><emphasis remap='B'>Upgrade</emphasis></term>
914   <listitem>
915 <para>Set a ship's function to <emphasis remap='I'>upgrade</emphasis>.</para>
916   </listitem>
917   </varlistentry>
918   <varlistentry>
919   <term><emphasis remap='B'>V</emphasis><emphasis remap='I'>piece func</emphasis></term>
920   <listitem>
921 <para>Set the city movement function for a piece.</para>
922   </listitem>
923   </varlistentry>
924   <varlistentry>
925   <term><emphasis remap='B'>Y</emphasis></term>
926   <listitem>
927 <para>Set an army's function to <emphasis remap='I'>attack</emphasis>.</para>
928   </listitem>
929   </varlistentry>
930   <varlistentry>
931   <term><emphasis remap='B'>?</emphasis></term>
932   <listitem>
933 <para>Display information about a piece or city.
934 For a city, the production, time of completion of
935 the next piece, movement functions, and the number of fighters and ships
936 in the city are displayed.</para>
937   </listitem>
938   </varlistentry>
939 </variablelist>
940 <para>Note that you cannot directly affect anything inside a city with
941 the editor.</para>
942 </refsect1>
944 <refsect1 id='hints'><title>HINTS</title>
945 <para>After you have played this game for a while, you will probably
946 find that the computer is immensely easy to beat.  Here are some
947 ideas you can try that may make the game more interesting.</para>
949 <itemizedlist>
950   <listitem>
951     <para>Give the computer one or more extra cities before starting
952     the game.</para>
953   </listitem>
954   <listitem>
955     <para>Try playing the game with a low smoothness value (try using the
956     -s2 or even -s0 option).</para>
957   </listitem>
958   <listitem>
959     <para>When starting the game, the program will ask you what difficulty
960     level you want.  Here "difficulty level" is a misnomer.  To compute
961     a difficulty level, the program looks at each continent and counts
962     the number of cities on the continents.  A high "difficulty level"
963     gives the computer a large continent with many cities, while the
964     user gets a small continent with few cities.  A low "difficulty level"
965     has the opposite effect.  It may be the case that the computer will
966     play better when the "difficulty level" is low.  The reason for this
967     is that the computer is forced to move armies to multiple continents
968     early in the game.</para>
969   </listitem>
970 </itemizedlist>
971 </refsect1>
973 <refsect1 id='history'><title>HISTORY</title>
974 <para>According to 
975 <ulink url=''>
976 A Brief History of Empire </ulink>, the ancestral game was written by
977 Walter Bright sometime in the early 1970s while he was a student at
978 Caltech.  A copy leaked out of Caltech and was ported to DEC's VAX/VMS
979 from the TOPS-10/20 FORTRAN sources available sometime around fall 1979.
980 Support for different terminal types was added by Craig Leres.</para>
982 <para>Ed James got hold of the sources at Berkeley and converted
983 portions of the code to C, mostly to use curses for the screen
984 handling.  He published his modified sources on the net in December
985 1986.  Because this game ran on VMS machines for so long, it has been
986 known as VMS Empire.</para>
988 <para>In 1987 Chuck Simmons at Amdahl reverse-engineered the program
989 and wrote a version completely in C.  In doing so, he modified the
990 computer strategy, the commands, the piece types, many of the piece
991 attributes, and the algorithm for creating maps.</para>
993 <para>The various versions of this game were ancestral to later and
994 better-known 4X (expand/explore/exploit/exterminate) games, including
995 Civilization (1990) and Master of Orion (1993).</para>
997 <para>In 1994 Eric Raymond colorized the game.</para>
998 </refsect1>
1000 <refsect1 id='files'><title>FILES</title>
1001 <variablelist>
1002   <varlistentry>
1003   <term><emphasis remap='I'>empsave.dat</emphasis></term>
1004   <listitem>
1005 <para>holds a backup of the game.  Whenever empire is run,
1006 it will reload any game in this file.</para>
1007   </listitem>
1008   </varlistentry>
1009   <varlistentry>
1010   <term><emphasis remap='I'>empmovie.dat</emphasis></term>
1011   <listitem>
1012 <para>holds a history of the game so that the game can be replayed as
1013 a "movie".</para>
1014   </listitem>
1015   </varlistentry>
1016 </variablelist>
1017 </refsect1>
1019 <refsect1 id='bugs'><title>BUGS</title>
1020 <para>No doubt numerous.</para>
1021 <para>Satellites are not completely implemented.  You should be able to
1022 move to a square that contains a satellite, but the program won't
1023 let you.  Enemy satellites should not cause your pieces to awaken.</para>
1024 </refsect1>
1026 <refsect1 id='authors'><title>AUTHORS</title>
1027 <para>Original game by Walter Bright.  Support for different terminal
1028 types added by Craig Leres.  Curses support added by Ed James.  C/Unix
1029 version written by Chuck Simmons. Colorization by Eric S. Raymond.
1030 Probability table corrected by Michael Self.</para>
1031 </refsect1>
1033 <refsect1 id='copyleft'><title>COPYLEFT</title>
1034 <para>Copyright (C) 1987, 1988 Chuck Simmons</para>
1035 <para>See the file COPYING, distributed with empire, for restriction
1036 and warranty information.</para>
1037 </refsect1>
1038 </refentry>