Annotation of 43BSDReno/games/sail/sail.6, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1988 Regents of the University of California.
                      2: .\" All rights reserved.
                      3: .\"
                      4: .\" Redistribution and use in source and binary forms are permitted provided
                      5: .\" that: (1) source distributions retain this entire copyright notice and
                      6: .\" comment, and (2) distributions including binaries display the following
                      7: .\" acknowledgement:  ``This product includes software developed by the
                      8: .\" University of California, Berkeley and its contributors'' in the
                      9: .\" documentation or other materials provided with the distribution and in
                     10: .\" all advertising materials mentioning features or use of this software.
                     11: .\" Neither the name of the University nor the names of its contributors may
                     12: .\" be used to endorse or promote products derived from this software without
                     13: .\" specific prior written permission.
                     14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
                     15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
                     16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
                     17: .\"
                     18: .\"    @(#)sail.6      5.6 (Berkeley) 6/23/90
                     19: .\"
                     20: .TH SAIL 6 "June 23, 1990"
                     21: .UC 4
                     22: .SH NAME
                     23: sail \- multi-user wooden ships and iron men
                     24: .SH SYNOPSIS
                     25: .B sail
                     26: [
                     27: .B \-s
                     28: [
                     29: .B \-l
                     30: ] ] [
                     31: .B \-x
                     32: ] [
                     33: .B \-b
                     34: ] [
                     35: .B num
                     36: ]
                     37: .br
                     38: .fi
                     39: .SH DESCRIPTION
                     40: .I Sail
                     41: is a computer version of Avalon Hill's game of fighting sail
                     42: originally developed by S. Craig Taylor.
                     43: .PP
                     44: Players of
                     45: .I Sail
                     46: take command of an old fashioned Man of War and fight other
                     47: players or the computer.  They may re-enact one of the many
                     48: historical sea battles recorded in the game, or they can choose
                     49: a fictional battle.
                     50: .PP
                     51: As a sea captain in the 
                     52: .I Sail
                     53: Navy, the player has complete control over the workings of his ship.
                     54: He must order every maneuver, change the set of his sails, and judge the
                     55: right moment to let loose the terrible destruction of his broadsides.
                     56: In addition to fighting the enemy, he must harness the powers of the wind
                     57: and sea to make them work for him.  The outcome of many battles during the
                     58: age of sail was decided by the ability of one captain to hold the `weather
                     59: gage.'
                     60: .PP
                     61: The flags are:
                     62: .TP
                     63: .B \-s
                     64: Print the names and ships of the top ten sailors.
                     65: .TP
                     66: .B \-l
                     67: Show the login name.  Only effective with \fB-s\fP.
                     68: .TP
                     69: .B \-x
                     70: Play the first available ship instead of prompting for a choice.
                     71: .TP
                     72: .B \-b
                     73: No bells.
                     74: .SH IMPLEMENTATION
                     75: .I Sail
                     76: is really two programs in one.  Each player starts up a process which
                     77: runs his own ship.  In addition, a
                     78: .I driver
                     79: process is forked (by the first player) to run the computer ships
                     80: and take care of global bookkeeping.
                     81: .PP
                     82: Because the
                     83: .I driver
                     84: must calculate moves for each ship it controls, the
                     85: more ships the computer is playing, the slower the game will appear.
                     86: .PP
                     87: If a player joins a game in progress, he will synchronize
                     88: with the other players (a rather slow process for everyone), and 
                     89: then he may play along with the rest.
                     90: .PP
                     91: To implement a multi-user game in Version 7 UNIX, which was the operating
                     92: system
                     93: .I Sail
                     94: was first written under, the communicating processes must use a common
                     95: temporary file as a place to read and write messages.  In addition, a
                     96: locking mechanism must be provided to ensure exclusive access to the
                     97: shared file.  For example,
                     98: .I Sail
                     99: uses a temporary file named /tmp/#sailsink.21 for scenario 21, and
                    100: corresponding file names for the other scenarios.  To provide exclusive
                    101: access to the temporary file, 
                    102: .I Sail
                    103: uses a technique stolen from an old game called "pubcaves" by Jeff Cohen.
                    104: Processes do a busy wait in the loop
                    105: .br
                    106: .sp
                    107: .ce 2
                    108:        for (n = 0; link(sync_file, sync_lock) < 0 && n < 30; n++)
                    109:                sleep(2);
                    110: .br
                    111: .sp
                    112: until they are able to create a link to a file named "/tmp/#saillock.??".
                    113: The "??" correspond to the scenario number of the game.  Since UNIX 
                    114: guarantees that a link will point to only one file, the process that succeeds
                    115: in linking will have exclusive access to the temporary file.
                    116: .PP
                    117: Whether or not this really works is open to speculation.  When ucbmiro
                    118: was rebooted after a crash, the file system check program found 3 links
                    119: between the
                    120: .I Sail
                    121: temporary file and its link file.
                    122: .SH CONSEQUENCES OF SEPARATE PLAYER AND DRIVER PROCESSES
                    123: When players do something of global interest, such as moving or firing,
                    124: the driver must coordinate the action with the other ships in the game.
                    125: For example, if a player wants to move in a certain direction, he writes a
                    126: message into the temporary file requesting the driver to move his ship.
                    127: Each ``turn,'' the driver reads all the messages sent from the players and
                    128: decides what happened.  It then writes back into the temporary file new
                    129: values of variables, etc.
                    130: .PP
                    131: The most noticeable effect this communication has on the game is the
                    132: delay in moving.  Suppose a player types a move for his ship and hits
                    133: return.  What happens then?  The player process saves up messages to
                    134: be written to the temporary file in a buffer.  Every 7 seconds or so, the
                    135: player process gets exclusive access to the temporary file and writes 
                    136: out its buffer to the file.  The driver, running asynchronously, must
                    137: read in the movement command, process it, and write out the results.  This
                    138: takes two exclusive accesses to the temporary file.  Finally, when the player 
                    139: process gets around to doing another 7 second update, the results of the
                    140: move are displayed on the screen.  Hence, every movement requires four
                    141: exclusive accesses to the temporary file (anywhere from 7 to 21 seconds
                    142: depending upon asynchrony) before the player sees the results of his moves.
                    143: .PP
                    144: In practice, the delays are not as annoying as they would appear.  There
                    145: is room for "pipelining" in the movement.  After the player writes out
                    146: a first movement message, a second movement command can then be issued.
                    147: The first message will be in the temporary file waiting for the driver, and
                    148: the second will be in the file buffer waiting to be written to the file.
                    149: Thus, by always typing moves a turn ahead of the time, the player can
                    150: sail around quite quickly.
                    151: .PP
                    152: If the player types several movement commands between two 7 second updates,
                    153: only the last movement command typed will be seen by the driver.  Movement
                    154: commands within the same update "overwrite" each other, in a sense.
                    155: .SH THE HISTORY OF SAIL 
                    156: I wrote the first version of
                    157: .I Sail
                    158: on a PDP 11/70 in the fall of 1980.  Needless to say, the code was horrendous,
                    159: not portable in any sense of the word, and didn't work.  The program was not
                    160: very modular and had fseeks() and fwrites() every few lines.  After a
                    161: tremendous rewrite from the top down, I got the first working version up by
                    162: 1981.  There were several annoying bugs concerning firing broadsides and
                    163: finding angles.
                    164: .I Sail
                    165: uses no floating point, by the way, so the direction routines are rather 
                    166: tricky.
                    167: Ed Wang rewrote my angle() routine in 1981 to be more correct (although
                    168: it still doesn't work perfectly), and he added code to let a player select
                    169: which ship he wanted at the start of the game (instead of the first one
                    170: available).
                    171: .PP
                    172: Captain Happy (Craig Leres) is responsible for making
                    173: .I Sail
                    174: portable for the first time.  This was no easy task, by the way.  Constants
                    175: like 2 and 10 were very frequent in the code.  I also became famous for
                    176: using "Riggle Memorial Structures" in
                    177: .I Sail.
                    178: Many of my structure references are so long that they run off the line
                    179: printer page.  Here is an example, if you promise not to laugh.
                    180: .br
                    181: .sp
                    182: .ce
                    183: specs[scene[flog.fgamenum].ship[flog.fshipnum].shipnum].pts
                    184: .br
                    185: .sp
                    186: .PP
                    187: .I Sail
                    188: received its fourth and most thorough rewrite in the summer and fall
                    189: of 1983.  Ed Wang rewrote and modularized the code (a monumental feat)
                    190: almost from scratch.  Although he introduced many new bugs, the final
                    191: result was very much cleaner and (?) faster.  He added window movement
                    192: commands and find ship commands.
                    193: .SH HISTORICAL INFO
                    194: Old Square Riggers were very maneuverable ships capable of intricate
                    195: sailing.  Their only disadvantage was an inability to sail very 
                    196: close to the wind.  The design of a wooden ship allowed only for the
                    197: guns to bear to the left and right sides.  A few guns of small
                    198: aspect (usually 6 or 9 pounders) could point forward, but their
                    199: effect was small compared to a 68 gun broadside of 24 or 32 pounders.
                    200: The guns bear approximately like so:
                    201: .nf
                    202: 
                    203:        \\
                    204:         b----------------
                    205:     ---0
                    206:         \\
                    207:          \\
                    208:           \\     up to a range of ten (for round shot)
                    209:            \\
                    210:             \\
                    211:              \\
                    212: 
                    213: .fi
                    214: An interesting phenomenon occurred when a broadside was fired
                    215: down the length of an enemy ship.  The shot tended to bounce along
                    216: the deck and did several times more damage.  This phenomenon was called
                    217: a rake.  Because the bows of a ship are very strong and present a smaller
                    218: target than the stern, a stern rake (firing from the stern to the bow) causes
                    219: more damage than a bow rake.
                    220: .nf
                    221: 
                    222:                         b
                    223:                        00   ----  Stern rake!
                    224:                          a
                    225: 
                    226: .fi
                    227: Most ships were equipped with carronades, which were very large, close
                    228: range cannons.  American ships from the revolution until the War of 1812
                    229: were almost entirely armed with carronades.
                    230: .PP
                    231: The period of history covered in
                    232: .I Sail
                    233: is approximately from the 1770's until the end of Napoleanic France in 1815.
                    234: There are many excellent books about the age of sail.  My favorite author
                    235: is Captain Frederick Marryat.  More contemporary authors include C.S. Forester
                    236: and Alexander Kent.
                    237: .PP
                    238: Fighting ships came in several sizes classed by armament.  The mainstays of
                    239: any fleet were its "Ships of the Line", or "Line of Battle Ships".  They
                    240: were so named because these ships fought together in great lines.  They were
                    241: close enough for mutual support, yet every ship could fire both its broadsides.
                    242: We get the modern words "ocean liner," or "liner," and "battleship" from
                    243: "ship of the line."  The most common size was the the 74 gun two decked
                    244: ship of the line.  The two gun decks usually mounted 18 and 24 pounder guns.
                    245: .PP
                    246: The pride of the fleet were the first rates.  These were huge three decked
                    247: ships of the line mounting 80 to 136 guns.  The guns in the three tiers
                    248: were usually 18, 24, and 32 pounders in that order from top to bottom.
                    249: .PP
                    250: Various other ships came next.  They were almost all "razees," or ships
                    251: of the line with one deck sawed off.  They mounted 40-64 guns and were
                    252: a poor cross between a frigate and a line of battle ship.  They neither
                    253: had the speed of the former nor the firepower of the latter.
                    254: .PP
                    255: Next came the "eyes of the fleet."  Frigates came in many sizes mounting
                    256: anywhere from 32 to 44 guns.  They were very handy vessels.  They could
                    257: outsail anything bigger and outshoot anything smaller.  Frigates didn't
                    258: fight in lines of battle as the much bigger 74's did.  Instead, they
                    259: harassed the enemy's rear or captured crippled ships.  They were much
                    260: more useful in missions away from the fleet, such as cutting out expeditions
                    261: or boat actions.  They could hit hard and get away fast.
                    262: .PP
                    263: Lastly, there were the corvettes, sloops, and brigs.  These were smaller
                    264: ships mounting typically fewer than 20 guns.  A corvette was only slightly
                    265: smaller than a frigate, so one might have up to 30 guns.  Sloops were used
                    266: for carrying dispatches or passengers.  Brigs were something you built for 
                    267: land-locked lakes.
                    268: .SH SAIL PARTICULARS
                    269: Ships in
                    270: .I Sail
                    271: are represented by two characters.  One character represents the bow of
                    272: the ship, and the other represents the stern.  Ships have nationalities
                    273: and numbers.  The first ship of a nationality is number 0, the second
                    274: number 1, etc.  Therefore, the first British ship in a game would be
                    275: printed as "b0".  The second Brit would be "b1", and the fifth Don
                    276: would be "s4".  
                    277: .PP
                    278: Ships can set normal sails, called Battle Sails, or bend on extra canvas
                    279: called Full Sails.  A ship under full sail is a beautiful sight indeed,
                    280: and it can move much faster than a ship under Battle Sails.  The only
                    281: trouble is, with full sails set, there is so much tension on sail and
                    282: rigging that a well aimed round shot can burst a sail into ribbons where
                    283: it would only cause a little hole in a loose sail.  For this reason,
                    284: rigging damage is doubled on a ship with full sails set.  Don't let
                    285: that discourage you from using full sails.  I like to keep them up
                    286: right into the heat of battle.  A ship
                    287: with full sails set has a capital letter for its nationality.  E.g.,
                    288: a Frog, "f0", with full sails set would be printed as "F0".
                    289: .PP
                    290: When a ship is battered into a listing hulk, the last man aboard "strikes
                    291: the colors."  This ceremony is the ship's formal surrender.  The nationality
                    292: character
                    293: of a surrendered ship is printed as "!".  E.g., the Frog of our last example
                    294: would soon be "!0".
                    295: .PP
                    296: A ship has a random chance of catching fire or sinking when it reaches the
                    297: stage of listing hulk.  A sinking ship has a "~" printed for its nationality,
                    298: and a ship on fire and about to explode has a "#" printed.
                    299: .PP
                    300: Captured ships become the nationality of the prize crew.  Therefore, if
                    301: an American ship captures a British ship, the British ship will have an
                    302: "a" printed for its nationality.  In addition, the ship number is changed
                    303: to "&","'", "(", ,")", "*", or "+" depending upon the original number,
                    304: be it 0,1,2,3,4, or 5.  E.g., the "b0" captured by an American becomes the
                    305: "a&".  The "s4" captured by a Frog becomes the "f*".
                    306: .PP
                    307: The ultimate example is, of course, an exploding Brit captured by an
                    308: American: "#&".
                    309: .SH MOVEMENT
                    310: Movement is the most confusing part of 
                    311: .I Sail
                    312: to many.  Ships can head in 8 directions:
                    313: .nf
                    314: 
                    315:                                  0      0      0
                    316:         b       b       b0      b       b       b       0b      b
                    317:         0        0                                             0
                    318: 
                    319: .fi
                    320: The stern of a ship moves when it turns.  The bow remains stationary.
                    321: Ships can always turn, regardless of the wind (unless they are becalmed).
                    322: All ships drift when they lose headway.  If a ship doesn't move forward
                    323: at all for two turns, it will begin to drift.  If a ship has begun to
                    324: drift, then it must move forward before it turns, if it plans to do
                    325: more than make a right or left turn, which is always possible.
                    326: .PP
                    327: Movement commands to 
                    328: .I Sail
                    329: are a string of forward moves and turns.  An example is "l3".  It will
                    330: turn a ship left and then move it ahead 3 spaces.  In the drawing above,
                    331: the "b0" made 7 successive left turns.  When 
                    332: .I Sail
                    333: prompts you for a move, it prints three characters of import.  E.g., 
                    334: .nf
                    335:        move (7, 4): 
                    336: .fi
                    337: The first number is the maximum number of moves you can make,
                    338: including turns.  The second number is the maximum number of turns
                    339: you can make.  Between the numbers is sometimes printed a quote "'".
                    340: If the quote is present, it means that your ship has been drifting, and
                    341: you must move ahead to regain headway before you turn (see note above).
                    342: Some of the possible moves for the example above are as follows:
                    343: .nf
                    344: 
                    345:        move (7, 4): 7
                    346:        move (7, 4): 1
                    347:        move (7, 4): d          /* drift, or do nothing */
                    348:        move (7, 4): 6r
                    349:        move (7, 4): 5r1
                    350:        move (7, 4): 4r1r
                    351:        move (7, 4): l1r1r2
                    352:        move (7, 4): 1r1r1r1
                    353: 
                    354: .fi
                    355: Because square riggers performed so poorly sailing into the wind, if at
                    356: any point in a movement command you turn into the wind, the movement stops
                    357: there.  E.g.,
                    358: .nf
                    359: 
                    360:        move (7, 4): l1l4
                    361:        Movement Error;
                    362:        Helm: l1l
                    363: 
                    364: .fi
                    365: Moreover, whenever you make a turn, your movement allowance drops to
                    366: min(what's left, what you would have at the new attitude).  In short,
                    367: if you turn closer to the wind, you most likely won't be able to sail the
                    368: full allowance printed in the "move" prompt.
                    369: .PP
                    370: Old sailing captains had to keep an eye constantly on the wind.  Captains
                    371: in 
                    372: .I Sail
                    373: are no different.  A ship's ability to move depends on its attitide to the
                    374: wind.  The best angle possible is to have the wind off your quarter, that is,
                    375: just off the stern.  The direction rose on the side of the screen gives the
                    376: possible movements for your ship at all positions to the wind.  Battle
                    377: sail speeds are given first, and full sail speeds are given in parenthesis.
                    378: .nf
                    379: 
                    380:                                 0 1(2)
                    381:                                \\|/
                    382:                                -^-3(6)
                    383:                                /|\\
                    384:                                 | 4(7)
                    385:                                3(6)  
                    386: 
                    387: .fi
                    388: Pretend the bow of your ship (the "^") is pointing upward and the wind is
                    389: blowing from the bottom to the top of the page.  The
                    390: numbers at the bottom "3(6)" will be your speed under battle or full
                    391: sails in such a situation.  If the wind is off your quarter, then you
                    392: can move "4(7)".  If the wind is off your beam, "3(6)".  If the wind is
                    393: off your bow, then you can only move "1(2)".  Facing into the wind, you
                    394: can't move at all.  Ships facing into the wind were said to be "in irons".
                    395: .SH WINDSPEED AND DIRECTION
                    396: The windspeed and direction is displayed as a little weather vane on the
                    397: side of the screen.  The number in the middle of the vane indicates the wind
                    398: speed, and the + to - indicates the wind direction.  The wind blows from
                    399: the + sign (high pressure) to the - sign (low pressure).  E.g.,
                    400: .nf
                    401: 
                    402:                                |
                    403:                                3
                    404:                                +
                    405: 
                    406: .fi
                    407: .PP
                    408: The wind speeds are 0 = becalmed, 1 = light breeze, 2 = moderate breeze,
                    409: 3 = fresh breeze, 4 = strong breeze, 5 = gale, 6 = full gale, 7 = hurricane.
                    410: If a hurricane shows up, all ships are destroyed.
                    411: .SH GRAPPLING AND FOULING
                    412: If two ships collide, they run the risk of becoming tangled together.  This
                    413: is called "fouling."  Fouled ships are stuck together, and neither can move.
                    414: They can unfoul each other if they want to.  Boarding parties can only be
                    415: sent across to ships when the antagonists are either fouled or grappled.
                    416: .PP
                    417: Ships can grapple each other by throwing grapnels into the rigging of
                    418: the other.
                    419: .PP
                    420: The number of fouls and grapples you have are displayed on the upper
                    421: right of the screen.
                    422: .SH BOARDING
                    423: Boarding was a very costly venture in terms of human life.  Boarding parties
                    424: may be formed in 
                    425: .I Sail
                    426: to either board an enemy ship or to defend your own ship against attack.
                    427: Men organized as Defensive Boarding Parties fight twice as hard to save
                    428: their ship as men left unorganized.
                    429: .PP
                    430: The boarding strength of a crew depends upon its quality and upon the
                    431: number of men sent.
                    432: .SH CREW QUALITY
                    433: The British seaman was world renowned for his sailing abilities.  American
                    434: sailors, however, were actually the best seamen in the world.  Because the
                    435: American Navy offered twice the wages of the Royal Navy, British seamen 
                    436: who liked the sea defected to America by the thousands.
                    437: .PP
                    438: In 
                    439: .I Sail,
                    440: crew quality is quantized into 5 energy levels.  "Elite" crews can outshoot
                    441: and outfight all other sailors.  "Crack" crews are next.  "Mundane" crews
                    442: are average, and "Green" and "Mutinous" crews are below average.  A good
                    443: rule of thumb is that "Crack" or "Elite" crews get one extra hit
                    444: per broadside compared to "Mundane" crews.  Don't expect too much from
                    445: "Green" crews.
                    446: .SH BROADSIDES
                    447: Your two broadsides may be loaded with four kinds of shot: grape, chain,
                    448: round, and double.  You have guns and carronades in both the port and starboard
                    449: batteries.  Carronades only have a range of two, so you have to get in
                    450: close to be able to fire them.  You have the choice of firing at the hull
                    451: or rigging of another ship.  If the range of the ship is greater than 6,
                    452: then you may only shoot at the rigging.
                    453: .PP
                    454: The types of shot and their advantages are:
                    455: .SH ROUND
                    456: Range of 10.  Good for hull or rigging hits.
                    457: .SH DOUBLE
                    458: Range of 1.  Extra good for hull or rigging hits.
                    459: Double takes two turns to load.
                    460: .SH CHAIN
                    461: Range of 3.  Excellent for tearing down rigging.
                    462: Cannot damage hull or guns, though.
                    463: .SH GRAPE
                    464: Range of 1.  Sometimes devastating against enemy crews.
                    465: .PP
                    466: On the side of the screen is displayed some vital information about your
                    467: ship:
                    468: .nf
                    469: 
                    470:                        Load  D! R!
                    471:                        Hull  9  
                    472:                        Crew  4  4  2
                    473:                        Guns  4  4  
                    474:                        Carr  2  2 
                    475:                        Rigg  5 5 5 5
                    476: 
                    477: .fi
                    478: "Load" shows what your port (left) and starboard (right) broadsides are
                    479: loaded with.  A "!" after the type of shot indicates that it is an initial
                    480: broadside.  Initial broadside were loaded with care before battle and before
                    481: the decks ran red with blood.  As a consequence, initial broadsides are a
                    482: little more effective than broadsides loaded later.  A "*" after the type of
                    483: shot indicates that the gun
                    484: crews are still loading it, and you cannot fire yet.  "Hull" shows how much
                    485: hull you have left.  "Crew" shows your three sections of crew.  As your
                    486: crew dies off, your ability to fire decreases.  "Guns" and "Carr" show
                    487: your port and starboard guns.  As you lose guns, your ability to fire
                    488: decreases.  "Rigg" shows how much rigging you have on your 3 or 4 masts.
                    489: As rigging is shot away, you lose mobility.
                    490: .SH EFFECTIVENESS OF FIRE
                    491: It is very dramatic when a ship fires its thunderous broadsides, but the
                    492: mere opportunity to fire them does not guarantee any hits.  Many factors
                    493: influence the destructive force of a broadside.  First of all, and the chief
                    494: factor, is distance.  It is harder to hit a ship at range ten than it is
                    495: to hit one sloshing alongside.  Next is raking.  Raking fire, as
                    496: mentioned before, 
                    497: can sometimes dismast a ship at range ten.  Next, crew size and quality affects
                    498: the damage done by a broadside.   The number of guns firing also bears on the
                    499: point,
                    500: so to speak.  Lastly, weather affects the accuracy of a broadside.  If the
                    501: seas are high (5 or 6), then the lower gunports of ships of the line can't
                    502: even be opened to run out the guns.  This gives frigates and other flush
                    503: decked vessels an advantage in a storm.  The scenario 
                    504: .I Pellew vs. The Droits de L'Homme
                    505: takes advantage of this peculiar circumstance.
                    506: .SH REPAIRS
                    507: Repairs may be made to your Hull, Guns, and Rigging at the slow rate of
                    508: two points per three turns.  The message "Repairs Completed" will be
                    509: printed if no more repairs can be made.
                    510: .SH PECULIARITIES OF COMPUTER SHIPS
                    511: Computer ships in 
                    512: .I Sail
                    513: follow all the rules above with a few exceptions.  Computer ships never
                    514: repair damage.  If they did, the players could never beat them.  They
                    515: play well enough as it is.  As a consolation, the computer ships can fire double
                    516: shot every turn.  That fluke is a good reason to keep your distance.  The
                    517: .I
                    518: Driver
                    519: figures out the moves of the computer ships.   It computes them with a typical
                    520: A.I. distance function and a depth first search to find the maximum "score."
                    521: It seems to work fairly well, although I'll be the first to admit it isn't
                    522: perfect.
                    523: .SH HOW TO PLAY
                    524: Commands are given to 
                    525: .I Sail
                    526: by typing a single character.  You will then be prompted for further
                    527: input.  A brief summary of the commands follows.
                    528: .bp
                    529: .SH COMMAND SUMMARY
                    530: .nf
                    531: 
                    532:     'f'  Fire broadsides if they bear
                    533:     'l'  Reload
                    534:     'L'  Unload broadsides (to change ammo)
                    535:     'm'  Move 
                    536:     'i'  Print the closest ship
                    537:     'I'  Print all ships
                    538:     'F'  Find a particular ship or ships (e.g. "a?" for all Americans)
                    539:     's'  Send a message around the fleet
                    540:     'b'  Attempt to board an enemy ship
                    541:     'B'  Recall boarding parties
                    542:     'c'  Change set of sail
                    543:     'r'  Repair
                    544:     'u'  Attempt to unfoul
                    545:     'g'  Grapple/ungrapple
                    546:     'v'  Print version number of game
                    547:    '^L'  Redraw screen
                    548:     'Q'  Quit
                    549: 
                    550:     'C'      Center your ship in the window
                    551:     'U'             Move window up
                    552:     'D','N'  Move window down
                    553:     'H'             Move window left
                    554:     'J'             Move window right
                    555:     'S'      Toggle window to follow your ship or stay where it is
                    556: 
                    557: .fi
                    558: .bg
                    559: .SH SCENARIOS
                    560: Here is a summary of the scenarios in 
                    561: .I Sail:
                    562: 
                    563: .br
                    564: .SH Ranger vs. Drake:
                    565: .nf
                    566: Wind from the N, blowing a fresh breeze.
                    567: 
                    568: (a) Ranger            19 gun Sloop (crack crew) (7 pts)
                    569: (b) Drake             17 gun Sloop (crack crew) (6 pts)
                    570: .SH The Battle of Flamborough Head:
                    571: .nf
                    572: Wind from the S, blowing a fresh breeze.
                    573: 
                    574: .fi
                    575: This is John Paul Jones' first famous battle.  Aboard the Bonhomme
                    576: Richard, he was able to overcome the Serapis's greater firepower
                    577: by quickly boarding her.
                    578: .nf
                    579: 
                    580: (a) Bonhomme Rich     42 gun Corvette (crack crew) (11 pts)
                    581: (b) Serapis           44 gun Frigate (crack crew) (12 pts)
                    582: .SH Arbuthnot and Des Touches:
                    583: .nf
                    584: Wind from the N, blowing a gale.
                    585: 
                    586: (b) America           64 gun Ship of the Line (crack crew) (20 pts)
                    587: (b) Befford           74 gun Ship of the Line (crack crew) (26 pts)
                    588: (b) Adamant           50 gun Ship of the Line (crack crew) (17 pts)
                    589: (b) London            98 gun 3 Decker SOL (crack crew) (28 pts)
                    590: (b) Royal Oak         74 gun Ship of the Line (crack crew) (26 pts)
                    591: (f) Neptune           74 gun Ship of the Line (average crew) (24 pts)
                    592: (f) Duc Bougogne      80 gun 3 Decker SOL (average crew) (27 pts)
                    593: (f) Conquerant        74 gun Ship of the Line (average crew) (24 pts)
                    594: (f) Provence          64 gun Ship of the Line (average crew) (18 pts)
                    595: (f) Romulus           44 gun Ship of the Line (average crew) (10 pts)
                    596: .SH Suffren and Hughes:
                    597: .nf
                    598: 
                    599: Wind from the S, blowing a fresh breeze.
                    600: 
                    601: (b) Monmouth          74 gun Ship of the Line (average crew) (24 pts)
                    602: (b) Hero              74 gun Ship of the Line (crack crew) (26 pts)
                    603: (b) Isis              50 gun Ship of the Line (crack crew) (17 pts)
                    604: (b) Superb            74 gun Ship of the Line (crack crew) (27 pts)
                    605: (b) Burford           74 gun Ship of the Line (average crew) (24 pts)
                    606: (f) Flamband          50 gun Ship of the Line (average crew) (14 pts)
                    607: (f) Annibal           74 gun Ship of the Line (average crew) (24 pts)
                    608: (f) Severe            64 gun Ship of the Line (average crew) (18 pts)
                    609: (f) Brilliant         80 gun Ship of the Line (crack crew) (31 pts)
                    610: (f) Sphinx            80 gun Ship of the Line (average crew) (27 pts)
                    611: .SH Nymphe vs. Cleopatre:
                    612: .nf
                    613: Wind from the S, blowing a fresh breeze.
                    614: 
                    615: (b) Nymphe            36 gun Frigate (crack crew) (11 pts)
                    616: (f) Cleopatre         36 gun Frigate (average crew) (10 pts)
                    617: .SH Mars vs. Hercule:
                    618: Wind from the S, blowing a fresh breeze.
                    619: .nf
                    620: (b) Mars              74 gun Ship of the Line (crack crew) (26 pts)
                    621: (f) Hercule           74 gun Ship of the Line (average crew) (23 pts)
                    622: .SH Ambuscade vs. Baionnaise:
                    623: .nf
                    624: Wind from the N, blowing a fresh breeze.
                    625: 
                    626: (b) Ambuscade         32 gun Frigate (average crew) (9 pts)
                    627: (f) Baionnaise        24 gun Corvette (average crew) (9 pts)
                    628: .SH Constellation vs. Insurgent:
                    629: .nf
                    630: Wind from the S, blowing a gale.
                    631: 
                    632: (a) Constellation     38 gun Corvette (elite crew) (17 pts)
                    633: (f) Insurgent         36 gun Corvette (average crew) (11 pts)
                    634: .SH Constellation vs. Vengeance:
                    635: .nf
                    636: Wind from the S, blowing a fresh breeze.
                    637: 
                    638: (a) Constellation     38 gun Corvette (elite crew) (17 pts)
                    639: (f) Vengeance         40 gun Frigate (average crew) (15 pts)
                    640: .SH The Battle of Lissa:
                    641: .nf
                    642: Wind from the S, blowing a fresh breeze.
                    643: 
                    644: (b) Amphion           32 gun Frigate (elite crew) (13 pts)
                    645: (b) Active            38 gun Frigate (elite crew) (18 pts)
                    646: (b) Volage            22 gun Frigate (elite crew) (11 pts)
                    647: (b) Cerberus          32 gun Frigate (elite crew) (13 pts)
                    648: (f) Favorite          40 gun Frigate (average crew) (15 pts)
                    649: (f) Flore             40 gun Frigate (average crew) (15 pts)
                    650: (f) Danae             40 gun Frigate (crack crew) (17 pts)
                    651: (f) Bellona           32 gun Frigate (green crew) (9 pts)
                    652: (f) Corona            40 gun Frigate (green crew) (12 pts)
                    653: (f) Carolina          32 gun Frigate (green crew) (7 pts)
                    654: .SH Constitution vs. Guerriere:
                    655: .nf
                    656: Wind from the SW, blowing a gale.
                    657: 
                    658: (a) Constitution      44 gun Corvette (elite crew) (24 pts)
                    659: (b) Guerriere         38 gun Frigate (crack crew) (15 pts)
                    660: .SH United States vs. Macedonian:
                    661: .nf
                    662: Wind from the S, blowing a fresh breeze.
                    663: 
                    664: (a) United States     44 gun Frigate (elite crew) (24 pts)
                    665: (b) Macedonian        38 gun Frigate (crack crew) (16 pts)
                    666: .SH Constitution vs. Java:
                    667: .nf
                    668: Wind from the S, blowing a fresh breeze.
                    669: 
                    670: (a) Constitution      44 gun Corvette (elite crew) (24 pts)
                    671: (b) Java              38 gun Corvette (crack crew) (19 pts)
                    672: .SH Chesapeake vs. Shannon:
                    673: .nf
                    674: Wind from the S, blowing a fresh breeze.
                    675: 
                    676: (a) Chesapeake        38 gun Frigate (average crew) (14 pts)
                    677: (b) Shannon           38 gun Frigate (elite crew) (17 pts)
                    678: .SH The Battle of Lake Erie:
                    679: .nf
                    680: Wind from the S, blowing a light breeze.
                    681: 
                    682: (a) Lawrence          20 gun Sloop (crack crew) (9 pts)
                    683: (a) Niagara           20 gun Sloop (elite crew) (12 pts)
                    684: (b) Lady Prevost      13 gun Brig (crack crew) (5 pts)
                    685: (b) Detroit           19 gun Sloop (crack crew) (7 pts)
                    686: (b) Q. Charlotte      17 gun Sloop (crack crew) (6 pts)
                    687: .SH Wasp vs. Reindeer:
                    688: .nf
                    689: Wind from the S, blowing a light breeze.
                    690: 
                    691: (a) Wasp              20 gun Sloop (elite crew) (12 pts)
                    692: (b) Reindeer          18 gun Sloop (elite crew) (9 pts)
                    693: .SH Constitution vs. Cyane and Levant:
                    694: .br
                    695: Wind from the S, blowing a moderate breeze.
                    696: 
                    697: (a) Constitution      44 gun Corvette (elite crew) (24 pts)
                    698: (b) Cyane             24 gun Sloop (crack crew) (11 pts)
                    699: (b) Levant            20 gun Sloop (crack crew) (10 pts)
                    700: .br
                    701: .SH Pellew vs. Droits de L'Homme:
                    702: .nf
                    703: Wind from the N, blowing a gale.
                    704: 
                    705: (b) Indefatigable     44 gun Frigate (elite crew) (14 pts)
                    706: (b) Amazon            36 gun Frigate (crack crew) (14 pts)
                    707: (f) Droits L'Hom      74 gun Ship of the Line (average crew) (24 pts)
                    708: .SH Algeciras:
                    709: .nf
                    710: Wind from the SW, blowing a moderate breeze.
                    711: 
                    712: (b) Caesar            80 gun Ship of the Line (crack crew) (31 pts)
                    713: (b) Pompee            74 gun Ship of the Line (crack crew) (27 pts)
                    714: (b) Spencer           74 gun Ship of the Line (crack crew) (26 pts)
                    715: (b) Hannibal          98 gun 3 Decker SOL (crack crew) (28 pts)
                    716: (s) Real-Carlos       112 gun 3 Decker SOL (green crew) (27 pts)
                    717: (s) San Fernando      96 gun 3 Decker SOL (green crew) (24 pts)
                    718: (s) Argonauta         80 gun Ship of the Line (green crew) (23 pts)
                    719: (s) San Augustine     74 gun Ship of the Line (green crew) (20 pts)
                    720: (f) Indomptable       80 gun Ship of the Line (average crew) (27 pts)
                    721: (f) Desaix            74 gun Ship of the Line (average crew) (24 pts)
                    722: .SH Lake Champlain:
                    723: .nf
                    724: Wind from the N, blowing a fresh breeze.
                    725: 
                    726: (a) Saratoga          26 gun Sloop (crack crew) (12 pts)
                    727: (a) Eagle             20 gun Sloop (crack crew) (11 pts)
                    728: (a) Ticonderoga       17 gun Sloop (crack crew) (9 pts)
                    729: (a) Preble            7 gun Brig (crack crew) (4 pts)
                    730: (b) Confiance         37 gun Frigate (crack crew) (14 pts)
                    731: (b) Linnet            16 gun Sloop (elite crew) (10 pts)
                    732: (b) Chubb             11 gun Brig (crack crew) (5 pts)
                    733: .SH Last Voyage of the USS President:
                    734: .nf
                    735: Wind from the N, blowing a fresh breeze.
                    736: 
                    737: (a) President         44 gun Frigate (elite crew) (24 pts)
                    738: (b) Endymion          40 gun Frigate (crack crew) (17 pts)
                    739: (b) Pomone            44 gun Frigate (crack crew) (20 pts)
                    740: (b) Tenedos           38 gun Frigate (crack crew) (15 pts)
                    741: .SH Hornblower and the Natividad:
                    742: .nf
                    743: Wind from the E, blowing a gale.
                    744: 
                    745: .fi
                    746: A scenario for you Horny fans.  Remember, he sank the Natividad
                    747: against heavy odds and winds.  Hint: don't try to board the Natividad,
                    748: her crew is much bigger, albeit green.
                    749: .nf
                    750: 
                    751: (b) Lydia             36 gun Frigate (elite crew) (13 pts)
                    752: (s) Natividad         50 gun Ship of the Line (green crew) (14 pts)
                    753: .SH Curse of the Flying Dutchman:
                    754: .nf
                    755: Wind from the S, blowing a fresh breeze.
                    756: 
                    757: Just for fun, take the Piece of cake.
                    758: 
                    759: (s) Piece of Cake     24 gun Corvette (average crew) (9 pts)
                    760: (f) Flying Dutchy     120 gun 3 Decker SOL (elite crew) (43 pts)
                    761: .SH The South Pacific:
                    762: .nf
                    763: Wind from the S, blowing a strong breeze.
                    764: 
                    765: (a) USS Scurvy        136 gun 3 Decker SOL (mutinous crew) (27 pts)
                    766: (b) HMS Tahiti        120 gun 3 Decker SOL (elite crew) (43 pts)
                    767: (s) Australian        32 gun Frigate (average crew) (9 pts)
                    768: (f) Bikini Atoll      7 gun Brig (crack crew) (4 pts)
                    769: .SH Hornblower and the battle of Rosas bay:
                    770: .nf
                    771: Wind from the E, blowing a fresh breeze.
                    772: 
                    773: The only battle Hornblower ever lost.  He was able to dismast one
                    774: ship and stern rake the others though.  See if you can do as well.
                    775: .nf
                    776: 
                    777: (b) Sutherland        74 gun Ship of the Line (crack crew) (26 pts)
                    778: (f) Turenne           80 gun 3 Decker SOL (average crew) (27 pts)
                    779: (f) Nightmare         74 gun Ship of the Line (average crew) (24 pts)
                    780: (f) Paris             112 gun 3 Decker SOL (green crew) (27 pts)
                    781: (f) Napolean          74 gun Ship of the Line (green crew) (20 pts)
                    782: .SH Cape Horn:
                    783: .nf
                    784: Wind from the NE, blowing a strong breeze.
                    785: 
                    786: (a) Concord           80 gun Ship of the Line (average crew) (27 pts)
                    787: (a) Berkeley          98 gun 3 Decker SOL (crack crew) (28 pts)
                    788: (b) Thames            120 gun 3 Decker SOL (elite crew) (43 pts)
                    789: (s) Madrid            112 gun 3 Decker SOL (green crew) (27 pts)
                    790: (f) Musket            80 gun 3 Decker SOL (average crew) (27 pts)
                    791: .SH New Orleans:
                    792: .nf
                    793: Wind from the SE, blowing a fresh breeze.
                    794: 
                    795: Watch that little Cypress go!
                    796: 
                    797: (a) Alligator         120 gun 3 Decker SOL (elite crew) (43 pts)
                    798: (b) Firefly           74 gun Ship of the Line (crack crew) (27 pts)
                    799: (b) Cypress           44 gun Frigate (elite crew) (14 pts)
                    800: .SH Botany Bay:
                    801: .nf
                    802: Wind from the N, blowing a fresh breeze.
                    803: 
                    804: (b) Shark             64 gun Ship of the Line (average crew) (18 pts)
                    805: (f) Coral Snake       44 gun Corvette (elite crew) (24 pts)
                    806: (f) Sea Lion          44 gun Frigate (elite crew) (24 pts)
                    807: .SH Voyage to the Bottom of the Sea:
                    808: .nf
                    809: Wind from the NW, blowing a fresh breeze.
                    810: 
                    811: This one is dedicated to Richard Basehart and David Hedison.
                    812: 
                    813: (a) Seaview           120 gun 3 Decker SOL (elite crew) (43 pts)
                    814: (a) Flying Sub        40 gun Frigate (crack crew) (17 pts)
                    815: (b) Mermaid           136 gun 3 Decker SOL (mutinous crew) (27 pts)
                    816: (s) Giant Squid       112 gun 3 Decker SOL (green crew) (27 pts)
                    817: .SH Frigate Action:
                    818: .nf
                    819: Wind from the E, blowing a fresh breeze.
                    820: 
                    821: (a) Killdeer          40 gun Frigate (average crew) (15 pts)
                    822: (b) Sandpiper         40 gun Frigate (average crew) (15 pts)
                    823: (s) Curlew            38 gun Frigate (crack crew) (16 pts)
                    824: .SH The Battle of Midway:
                    825: .nf
                    826: Wind from the E, blowing a moderate breeze.
                    827: 
                    828: (a) Enterprise        80 gun Ship of the Line (crack crew) (31 pts)
                    829: (a) Yorktown          80 gun Ship of the Line (average crew) (27 pts)
                    830: (a) Hornet            74 gun Ship of the Line (average crew) (24 pts)
                    831: (j) Akagi             112 gun 3 Decker SOL (green crew) (27 pts)
                    832: (j) Kaga              96 gun 3 Decker SOL (green crew) (24 pts)
                    833: (j) Soryu             80 gun Ship of the Line (green crew) (23 pts)
                    834: 
                    835: .SH Star Trek:
                    836: .nf
                    837: Wind from the S, blowing a fresh breeze.
                    838: 
                    839: (a) Enterprise        450 gun Ship of the Line (elite crew) (75 pts)
                    840: (a) Yorktown          450 gun Ship of the Line (elite crew) (75 pts)
                    841: (a) Reliant           450 gun Ship of the Line (elite crew) (75 pts)
                    842: (a) Galileo           450 gun Ship of the Line (elite crew) (75 pts)
                    843: (k) Kobayashi Maru    450 gun Ship of the Line (elite crew) (75 pts)
                    844: (k) Klingon II        450 gun Ship of the Line (elite crew) (75 pts)
                    845: (o) Red Orion         450 gun Ship of the Line (elite crew) (75 pts)
                    846: (o) Blue Orion        450 gun Ship of the Line (elite crew) (75 pts)
                    847: 
                    848: .SH CONCLUSION
                    849: 
                    850: .I Sail
                    851: has been a group effort.
                    852: 
                    853: .SH AUTHOR
                    854: Dave Riggle
                    855: .SH CO-AUTHOR
                    856: Ed Wang 
                    857: .SH REFITTING
                    858: Craig Leres
                    859: .SH CONSULTANTS
                    860: .nf
                    861: Chris Guthrie
                    862: Captain Happy
                    863: Horatio Nelson
                    864:        and many valiant others...
                    865: .fi
                    866: .SH "REFERENCES"
                    867: .nf
                    868: Wooden Ships & Iron Men, by Avalon Hill
                    869: Captain Horatio Hornblower Novels, (13 of them) by C.S. Forester
                    870: Captain Richard Bolitho Novels, (12 of them) by Alexander Kent
                    871: The Complete Works of Captain Frederick Marryat, (about 20) especially
                    872: .in +6n
                    873: Mr. Midshipman Easy
                    874: Peter Simple
                    875: Jacob Faithful
                    876: Japhet in Search of a Father
                    877: Snarleyyow, or The Dog Fiend
                    878: Frank Mildmay, or The Naval Officer
                    879: .in -6n
                    880: .SH BUGS
                    881: Probably a few, and please report them to "[email protected]" and
                    882: "[email protected]"

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.