]> git.pond.sub.org Git - empserver/blobdiff - doc/CHANGES4.X
Final polish for 4.3.13
[empserver] / doc / CHANGES4.X
index 781a1356c79a8835a6efa70307da25b121429102..a6ae38b2def3b80a3ced3672280fbb97ced7c0f8 100644 (file)
-Changes to Empire 4.2.20 - Thu Mar 17 21:34:13 UTC 2005
+Changes to Empire 4.3.13 - Tue Apr 15 19:03:11 UTC 2008
+ * Work around strptime() lossage on some systems.  Fixes the parsing
+   of the schedule file there.
+ * New selector maxnoc for xdump version.
+ * Fix initialization of realms in newcap.  Broken in 4.3.12.
+ * Fix add for status arguments active, god, delete.  Broken in
+   4.3.12.
+ * Info file, manual page and documentation fixes.
+
+Changes to Empire 4.3.12 - Wed Apr  2 05:35:06 UTC 2008
+ * Fix rounding error in update that could result in more babies than
+   food permits, and negative food.
+ * Fix a bug that could lead to unfair thread scheduling under
+   Windows.
+ * Fix ship and land unit missile interdiction and ballistic missile
+   interception to require a proper base.  Before, missiles could
+   launch from anywhere for that.
+ * Launch bug fixes:
+   - Don't allow launching from unowned sectors.
+   - Don't destroy missiles stuck on foreign ships.
+   - Use up the supplies required for launching an asat only when it
+     actually launches.
+   - Don't ignore satellites' fuel use.
+ * Deity command newcap now requires its second argument (sanctuary
+   coordinates).  Before, it tried to pick a suitable location when
+   none was given.  The code implementing this feature had problems,
+   and it's not worth fixing: it is obscure, and rarely (if ever)
+   used: no conscientious deity would use it for a real game, and for
+   blitzes fairland does a better job.
+ * Keep track of flying planes properly.  This fixes a number of bugs:
+   - While the bomb command awaited pin-bombing target input from the
+     player, other players could interact with the pin-bombers and
+     escorts as if they were sitting in their bases: spy them, damage,
+     capture, load, unload, or upgrade them, even get intercepted by
+     them.  But any changes to those planes were wiped out when they
+     landed.  Abusable.
+   - The bomb command could bomb its own escorts, directly (pin-bomb
+     planes) or through collateral damage, strategic sector damage,
+     collapsing bridges or nuke damage.  The damage to the escorts was
+     wiped out when they landed.
+   - If you asked for a plane to fly both in the primary mission and
+     escort, you got charged fuel for two sorties instead of one.
+ * Plug memory leaks in plane interception.
+ * Fix trade not to let the buyer teleport satellites (not in orbit)
+   and asats to an arbitrary sector.  Abusable, because abms
+   intercepted from anywhere, and satellites could be launched from
+   unowned sectors.
+ * The PRNG seed is now logged in the journal.
+ * Fix nightly build for Windows.
+ * Fix crash bug that bit when custom tables contained columns names
+   that existed, but weren't supposed to be in the custom table.
+ * New timestamp selector for commodity, country, game, loan, nation,
+   news, realm, trade, treaty to support incremental xdump.
+ * Deity commands newcap and add wipe the nation more thoroughly.  add
+   no longer touches relations and flags for status active and god.
+ * New utility program empdump to export and import game state as
+   plain text.  Check its manual for details, including limitations.
+ * Plane, ship and land unit stats are no longer stored as game state,
+   but recomputed from tech and base stats as needed.
+ * xdump ver is no longer a special case.  Syntax "xdump ver" is now
+   deprecated.  Use "xdump version *".
+ * Fire and torpedo cleanup and bug hunt:
+   - Plug memory leak in fire command.
+   - Fix ammunition use when returning fire: resupply could lose
+     shells when returning fire to multiple targets, and land units
+     were charged per target instead of just once.
+   - torpedo and fire no longer resupply shells automatically.  The
+     latter used to resupply land units only.
+   - Land units no longer have to be in supply to fire actively, for
+     consistency with other ways to fire.
+   - Submarines with zero mobility can no longer interdict, for
+     consistency with other ways to torpedo.
+   - Fix bugs that let submarines without capability torp use
+     torpedoes to return fire and interdict.
+   - Fix torpedo command not to require a line of sight for return
+     fire and depth charges, and to use torpedo range instead of
+     firing range for return torpedoes.
+   - Active fire and interdiction didn't work for ships with zero
+     firing range, even though return fire and support did.  No such
+     ships exist in the stock game.
+   - Let land units with zero firing range and non-zero firing damage
+     fire, for consistency with ships.  No such units exist in the
+     stock game.
+   - Ships required different numbers of military to operate their
+     guns for the various kinds of fire.  Unify to require 2*N-1
+     military to fire N guns.
+   - Ship ammunition use differed for the various kinds of fire.
+     Unify to use one shell per two guns.
+   - Forts could fire support even when there were not enough mil.
+   - Fix automatic shell resupply in several places to supply exactly
+     the shells actually fired, no more, no less.
+ * Change depth charges back to how they are documented and worked
+   before 4.0.6, mostly: require no guns, one military, do damage like
+   shell fire from three guns (before 4.0.6: two guns), use two
+   shells.  In 4.0.6's model, they worked exactly like shell fire
+   (require guns and gun crew, non-zero firing range, damage and
+   ammunition use scales with available guns), except for missions,
+   which was a bug.  Note that depth charge damage for all ships is
+   now like fire from three guns for two shells.  No change for dd; af
+   did two gun damage for one shell before, and nas did four gun
+   damage for two shells.
+ * The edit command keys deprecated in 4.3.3 are now gone.
+ * Fix build not to screw up automatic dependencies on certain compile
+   errors.
+ * Fix a bug that could prevent repeated news from properly
+   aggregating into one news item.
+ * Properly initialize all bits in game state files, even those that
+   aren't used.
+ * Fix explore's test for stopping on a splashed bridge.  The bug made
+   explore print to a bogus message.
+ * Fix spelling of symbol airburst in table plane-flags.  This could
+   affect clients.
+ * Change designate not to check total cost before executing the
+   redesignation.  The code implementing that was buggy and too ugly
+   to live.  Designate doesn't cost anything in the stock game.
+ * Always charge land units at least as much mobility for assaulting
+   from non-landing ships as from landing ships.  Before, marines lost
+   all mobility when assaulting from a non-landing ship, which could
+   be less than what the same assault costs from a landing ship (half
+   an update's worth).
+ * Fix LWP's stack initialization for -s.  It caused crashes on some
+   systems.
+ * Fix confused and buggy bridge splashing code:
+   - Flying planes could be reported drowned.
+   - Pin-bombing a bridge head failed to collapse bridge spans for
+     lack of support, unless the pin-bombing caused collateral damage.
+   - Corrupt sector file could lead to infinite recursion.
+ * Relative names now work for econfig keys data and info.
+ * Fix utility programs to abort on internal errors.  They used to
+   print a message and attempt to recover.
+ * Fix off-by-one in fairland that ate the last expansion island.
+ * Switch from CVS to git.
+ * Code refactoring and cleanup.
+ * Portability fixes.
+ * Info file, manual page and documentation fixes and updates.
+
+Changes to Empire 4.3.11 - Tue Jan  1 18:57:38 UTC 2008
+ * New sector selector elev.  It's set by fairland, but has no effect
+   on the game.  It can be useful for deities to customize a world
+   created by fairland.
+ * The client now copes with ids greater than 15.  The Empire
+   protocol currently uses 14 ids.
+ * Rewrite the client's code to read server output during login.  The
+   old code could write one byte beyond the end of the buffer
+   (theoretically a remote hole), got confused by long lines, and
+   lines that didn't arrive in one piece.
+ * Long country name, password or user name crashed the client.
+ * Fix xdump not to deny access to game state tables when maximum
+   minutes per day are exceeded.
+ * The server considers a country bankrupt when its treasury is
+   negative.  Except when it doesn't.  Fix that:
+   - report misreported countries with $0 as broke.
+   - If a command spent a few cents more than you had, commands requiring
+     money became unavailable even when rounding brought you back to
+     $0.  But logging out and back in then bankrupted you.
+   - If your treasury rose to exactly $0, commands requiring money
+     remained unavailable.
+   - If you had $0, sectors didn't build and sectors and ships didn't
+     produce at the update.
+ * Fix a bug in trade that made your money evaporate when a trade fell
+   through because you couldn't fully pay.  This bug was there since
+   the introduction of the market in 4.0.0.  It got aggravated by the
+   removal of forced loans in 4.3.0.
+ * Fix printing of the new group in army, fleet and wing.  Broken in
+   4.3.5.
+ * Fix flash not to screw up the message when the first argument
+   contains white-space.
+ * Don't let planes intercept when they are stuck in foreign bases, on
+   inefficient ships or land units, or on land units loaded on ships
+   or land units.
+ * Fix a bug that made interception require petrol to be present even
+   for planes that don't use fuel (SAMs).  Broken in 4.3.3.  Air
+   defense missions weren't affected.
+ * fairland and setsector now limit fertility to 100 instead of 120,
+   like the other resources.
+ * Generalize the autonav hack for fishing boats so it covers oil
+   derricks as well.
+ * Fix bug in path command that made it swallow every other step.
+   Broken in 4.2.22.
+ * The execute command no longer supports redirections and execute in
+   batch files.  Flaws in the Empire protocol make it next to
+   impossible for clients to implement that correctly.  See
+   doc/clients-howto for an explanation.
+ * Rewrite much of the client's code for sending commands and
+   receiving server output:
+   - No longer blocks on sending commands. which could deadlock the
+     session.
+   - Fix race condition that could cause server output to be discarded
+     on EOF on standard input.
+   - Don't discard server output when reading standard input fails.
+   - Fix error handling for execute and other, more obscure cases.
+   - More rigorous error checking for redirections and execute.
+     Clearer error messages, too.
+   - Fix execute redirected to file or pipe.  Believed to be broken in
+     4.2.0.
+   - The client now creates files for redirections with the same
+     permissions whether the redirection is in a pipe or not.  Before,
+     redirections without a pipe created files with no permissions for
+     group and others.  This change may make your redirected output
+     visible to other users on your system.  Use the usual controls,
+     like umask, to restrict permissions to your liking.
+   - Reject unexpected redirections (violating the protocol).  Before,
+     they silently replaced the current one, and in the case of pipes
+     leaked file descriptors and memory.
+   - Redirections in batch files are not implemented.  They didn't
+     quite work before, and could leak memory and file descriptors.  A
+     flaw in the Empire protocol makes them next to impossible to
+     implement correctly.
+   - The execute command in batch files is not implemented.  A flaw in
+     the Empire protocol makes this practically useless anyway.
+   - Old code leaked memory in various places.
+   - Unfortunate incompatibility with older servers: if you type the
+     EOF character (normally ^D) at an argument prompt, the session
+     hangs.  Use the interrupt character (normally ^C) to get out.
+ * The client now supports options -h and -v.
+ * The client no longer zaps its command line in a lame attempt at
+   protecting users who foolishly specify passwords on the command
+   line.  Zapping annoys system administrators and creates a false
+   sense of security.
+ * Journal entries are now flushed to disk right away when the server
+   is running in debug mode.
+ * Fix bugs in load that could make loading operations fail noisily
+   instead of silently on some systems.
+ * Server now reliably shuts down session when it receives an
+   end-of-file condition from the client.  Before, it merely failed
+   the current command when it got it at an argument prompt.
+ * Fix bug in execute that could crash the server on some systems when
+   it prompts for the argument.
+ * Fix bug that let you check whether a non-allied carrier is
+   efficient enough for takeoff when one of your planes got stuck
+   there somehow.
+ * Fix bug that let you attempt to escort a one-way mission to a
+   carrier with non-light, non-interceptor escorts.  Such planes don't
+   fit on carriers, and the command then failed with a bogus error
+   message.  Before 4.2.17, the planes flew, and the escorts were
+   teleported home.
+ * Change the rules for fitting planes on ships slightly, so that the
+   order of loading no longer matters. Choppers and x-lights can now
+   use plane slots even when not light.  X-light choppers, which don't
+   exist in the stock game, can no longer use x-light slots.
+ * The server now keeps its log file open, just like the journal.
+ * New server option -R to set the PRNG seed.  This is for
+   reproducible tests.  Change the Windows-only service uninstall
+   options from -r/-R to -u/-U.
+ * Supply a real PRNG for Windows instead of the leaky water-pistol
+   Windows provides.
+ * Threads sleeping until a specified time could return early under
+   Windows.  This could cause missed updates.  Broken in 4.3.10.
+ * Fix missing newline in show updates.
+ * Power report didn't factor tech into power correctly.  Broken in
+   4.3.3.
+ * Code refactoring and cleanup.
+ * Info file and documentation fixes and updates.
+
+Changes to Empire 4.3.10 - Thu Sep  6 17:59:53 UTC 2007
+ * Bridge spans now cost $1000 instead of $2000, and bridge towers
+   $3000 instead of $7500.
+ * The Windows port now supports IPv6, but it still needs to be
+   enabled manually at compile-time.
+ * The custom table reader detects more errors.
+ * Do not leak world creation time in files and fairland, because
+   that facilitates attacks against the PRNG.  This misfeature crept
+   into 4.3.0.
+ * Remove the ancient, crufty non-UCONTEXT system-dependent LWP code.
+   Using it required manual hackery since 4.3.0.
+ * Plug file descriptor leak in add command.
+ * Don't kill player connections violently when their thread appears
+   to be hung.  Threads being aborted by update or shutdown could be
+   misidentified as hung, and the violence could lead to resource
+   leaks, locked out updates, and corrupted game state.
+ * Fix LWP to reliably wake up threads sleeping for a time.  Before,
+   players with a sufficiently fast connection could starve out system
+   threads, including the update.
+ * Fix a class of bugs that made commands behave differently while the
+   update is attempting to take control:
+   - No MOB_ACCESS mobility was gained.
+   - Telegrams were miscounted.
+   - Bulletins got misfiled as production reports.
+   - The navigate command ignored sail paths.
+   - The declare command was more quiet, and declarations of war
+     failed silently when SLOW_WAR was enabled.
+   - Many messages got misdirected to bulletins.
+   Some of these bugs go back all the way to Empire 2, ca 1995.
+ * New deity command reload, effect similar to SIGHUP.
+ * Not voting for a demand update no longer lets you veto further
+   demand updates.  This feature was flawed (it encourages players to
+   vote late so that they can tactically vote no and thus build up
+   veto rights), virtually unused, and buggy.  The edit command still
+   accepts and ignores the country key 'U' for compatibility, but it
+   is deprecated.
+ * Fix zdone not to claim to have triggered an update when they're
+   disabled.
+ * New update scheduler and ETU clock:
+   - New schedule file.  See doc/schedule for how to use it.  Replaces
+     econfig keys update_policy, adj_update, update_times, hourslop,
+     blitz_time.  A change of schedule does not require a server
+     restart.
+   - The force command can no longer force updates in the future.
+     Edit the schedule file for that.
+   - New command show updates to show the update schedule.  Obsoletes
+     the update command.
+   - New xdump game and xdump updates.
+   - New utility program empsched to help test update schedules.
+   - Replace option DEMANDUPDATE and econfig key update_demandpolicy
+     by econfig key update_demand.
+   - econfig key update_demandtimes no longer applies to scheduled
+     demand updates.
+   - You now receive new BTUs at the update in addition to login.
+   - You now always gain the same BTUs and MOB_ACCESS mobility per
+     turn, even when the update schedule changes, updates get missed,
+     or unscheduled demand updates run.
+   - Remove the mobupdate command, because porting it to the new ETU
+     clock is not worth it.
+ * Redesign of synchronization between commands, update and shutdown,
+   and how updates are triggered:
+   - Simplify update to a single thread waiting for the trigger.
+     Before, three update threads had to perform a carefully
+     choreographed dance to make updates happen.  The dance relied on
+     thread priorities for correctness, which are only implemented by
+     LWP.  With pthreads and under Windows, demand updates were prone
+     to two update threads starting up concurrently.  Even with LWP,
+     forced and demand updates could lead to double updates.
+   - Use a lock for synchronization: commands take it shared, update
+     and shutdown take it exclusive.  This makes update and shutdown
+     block until all aborted commands terminated and gave up their
+     lock.  Before, they proceeded blindly after waiting two or one
+     seconds respectively, which was cheesy and unsafe.
+   - New commands no longer fail while the update is pending, they are
+     delayed until after the update.
+   - New commands can no longer start during shutdown.  Before, they
+     could, but risked getting killed violently, possibly corrupting
+     game state.
+   - Fix command execution so that commands blocked in writing
+     redirections are abortable.  The bug allowed players to delay
+     update and shutdown indefinitely.
+   - Fix shutdown not to let player threads block on output.  This
+     let players delay shutdown indefinitely.
+   - Fix reading of player input not to block again after update or
+     shutdown aborted it.  The bug allowed players to delay update and
+     shutdown indefinitely.
+ * Thread priorities are only implemented by LWP and no longer used.
+   With LWP, they let players with a sufficiently fast connection 
+   starve out the threads that clean the lost file and kill idle
+   connections.  Drop them.
+ * Show nuke rounded required research incorrectly.
+ * Log unprintable characters as octal escapes rather than question
+   marks in the journal file.
+ * The files program no longer changes permissions of existing files.
+ * The files program now creates all files with permissions ug=rw and
+   all directories ug=rwx, modified by umask.
+ * Fix a bug that could make arm, disarm and nuke detonation work with
+   a used-up nuke instead of the armed one.  This could be abused to
+   detonate nukes multiple times.  Broken in 4.3.3.
+ * Fix nuke detonation output for zero blast radius.
+ * Plug memory leaks in thread code.
+ * Fix a bug that made LWP I/O wakeup unreliable.
+ * New march sub-command v for view.
+ * Journal was initialized before threads were, which was wrong.
+ * Fix server not to create a journal on SIGHUP when it is disabled.
+ * shutdown 0 now requests immediate shutdown instead of cancellation
+   of a pending shutdown.  shutdown -1 now cancels.
+ * flash and wall no longer split long message lines.
+ * Fix a bug in collect that screwed up a fully collected loan instead
+   of deleting it.  The screwed up loan could not be sharked or
+   collected, but it could be repaid.
+ * Remove the wait command, it's been broken and restricted to deity
+   since Empire 2, ca. 1995.
+ * Budget failed to take sector production into account for predicting
+   unit repairs.  Before 4.3.6, this bug bit only when you fooled
+   around with budget priorities.
+ * When unit repairs are limited by materials, the efficiency gain is
+   now rounded down.
+ * Ship repairs outside harbors and plane repairs by carriers used to
+   consume commodities when and as far as available.  Now, they
+   consume the same fraction of the real cost of each commodity,
+   i.e. commodity use is limited by the most scarce commodity.
+   Neither old nor new behavior make much sense, but the new code is
+   simpler.
+ * Code refactoring and cleanup, in particular to make the Windows
+   port less ugly.
+ * Portability fixes.
+ * Info file and manual page updates.  All manual pages are now
+   installed in section 6.
+
+Changes to Empire 4.3.9 - Sat Jan  6 12:42:19 UTC 2007
+ * Fix declare to prevent the deity from changing relations for a
+   player to self.  Allow the deity to set the relations of a player
+   towards the deity.
+ * Fix arm not to put the same nuke on multiple planes (broken in
+   4.3.3).
+ * New option AUTO_POWER.
+ * Sectors now repair allied land units.
+ * Sectors now repair only own and allied planes.
+ * Fix repair of planes on foreign carriers: repair allied planes,
+   ignore the others.  Before 4.3.3, carriers destroyed rather than
+   repaired foreign planes.  Since 4.3.3, foreign planes were treated
+   as recoverable error.
+ * Fix automatic fortification of land units to use all excess
+   mobility even when mobility delta exceeds mobility maximum.
+ * Disable automatic fortification of land units when MOB_ACCESS is
+   on, because it is prohibitively slow then (broken in 4.2.13).
+ * Budget now shows level production (tech, education, research and
+   happiness) rounded instead of randomly rounded.
+ * Fix update not to randomly flush small level production to zero.
+ * Fix overly restrictive game file locking under Windows (broken in
+   4.3.8).
+ * Fix navigate to charge mobility for sweeping mines without moving
+   (broken in 4.3.6).
+ * Code cleanup.
+
+Changes to Empire 4.3.8 - Fri Oct 20 18:30:28 UTC 2006
+ * Ships no longer produce stuff when the government is broke.
+ * Fix land unit casualties in revolts.
+ * Fix security units not to raid friendly che.
+ * Fix update sequence to ensure stopped sectors don't work on the
+   ships, planes and land units in the sector.  Before 4.3.6, this bug
+   bit only when you fooled around with budget priorities.
+ * Fix canal loading (was broken in 4.3.0).
+ * Fix tend not to tend land units that could not be loaded.
+ * Make xdump command available before break, but deny access to game
+   state.
+ * Lock game files to prevent concurrent access by multiple programs.
+   fairland does not yet obey the lock.
+ * Fix production to consider sector item limit.
+ * Fix swapsector to update coastal flag correctly (broken in 4.3.0).
+ * Enhanced mapping sub-commands in move, test, explore and transport.
+ * Code cleanup.
+ * Info file fixes.
+
+Changes to Empire 4.3.7 - Fri Jul 14 23:05:19 UTC 2006
+ * Sanctuaries are again fully populated with civilians (4.3.6 changed
+   the limit, but not the population).  Food is now spread evenly
+   among them.
+ * Fix path finder to find shortest naval and aerial paths again
+   (broken in 4.3.4).
+ * transport's map sub-command now does the right thing for a unit
+   number argument.
+ * Fix bug in map sub-command of move, explore and transport that
+   passed junk to map command.  Could theoretically crash.
+ * Food need reported by starvation was one short for sectors without
+   food.
+ * Change land unit ammunition use back to what it was before 4.2.3.
+   This lets deities customize ammunition use independent of damage.
+   It also substantially reduces ammunition consumption at high tech.
+ * navigation and march enhancements:
+   - Sub-command 'f' now takes an optional ship / land unit number.
+   - Mapping sub-commands now take an optional ship / land unit
+     number.
+   - New sub-command 'd' to drop mines.
+ * Let minesweepers retreat at their full speed (missed in 4.3.6).
+ * SUPER_BARS cannot be harmed, so don't interdict them.
+ * Don't let trains and non-trains march together for now, because the
+   march code isn't prepared for that.
+ * New mapping flag 'n' to show nukes.
+ * Mapping flag '*' now shows nukes as well.
+ * New command nbmap to bmap around a nuke.  Overload command nmap to
+   map around a nuke when given a nuke argument.
+ * Fix an inconsistency that gave tactical bombers a small bonus
+   vs. flak when pin-bombing.
+ * Fix production to show the designation that actually produces, not
+   the designation as it is now (broken in 4.3.6).
+ * Fix accidental whitespace change in output of sdump, pdump and
+   ldump that crept into 4.3.5.
+ * Support user-defined sector types and products in custom tables,
+   not just customization of existing ones.
+ * Fix off-by-one bug in budget that used to be masked by budget
+   priorities until their demise in 4.3.6.  The bug could crash the
+   game on certain systems.
+ * Code cleanup.
+ * Info file fixes.
+
+Changes to Empire 4.3.6 - Tue Jun 20 18:46:18 UTC 2006
+ * The shutdown command now terminates the server process correctly
+   even with LinuxThreads pthreads under Linux 2.4 and earlier.
+ * Cope with old versions of groff (broken in 4.3.0).
+ * You can now arm allied planes with nukes.
+ * Taking a nuke off a plane gives it to the sector owner again.
+   Feature was accidentally dropped in 4.3.3.  Recipient must be
+   allied.
+ * Naval path went bananas for impassable end sectors (broken in
+   4.3.1).
+ * New econfig key disabled_commands.
+ * New territory selector dterr, restricted to deities.  The territory
+   command defaults to it for deities.
+ * Let land units attack as long as they have positive mobility,
+   except for high-mobility terrain (mountains), where the rules
+   remain as they were: land units need to have all the mobility
+   charged for the attack, not counting combat and moving in to
+   occupy.  Rationale: Making sure your land units reach attack
+   positions with enough mobility left is a pain in the neck.
+   Requiring only positive mobility is friendlier, but allowed rushing
+   of mountains, so we make an exception there.
+ * Can typeset info pages as PostScript.  Result isn't exactly pretty.
+ * Support disabling of infrastructure in infra custom table.  Remove
+   redundant option DEFENSE_INFRA.  show command now shows only enabled
+   infrastructure.
+ * Fix crash on empty argument in bmap, lbmap, lmap, map, nmap, pbmap,
+   pmap sbmap, smap (broken in 4.3.1).
+ * New, simpler sector mobility cost formula:
+   - The basic cost is still a linear function of sector efficiency,
+     with customizable cost at 0% and at 100%.  The latter used to be
+     derived from the former.  The show command shows both parameters
+     now.
+   - Mountains are no longer a special case.
+   - Tweak costs: mountains now range from 2.4 to 1.2 instead of 2.174
+     to 1.304, highway, bridge head, bridge span and bridge tower
+     range from 0.4 to 0.001 instead of 0.2 to 0.001, and wilderness
+     is 0.4 flat instead of 0.6 to 0.4.  All sector types mortal
+     players can designate now cost the same at 0%.  That's a feature.
+   - Road infrastructure now reduces cost up to 90%, linear in road
+     efficiency (used to be close to that, but non-linear).  Same for
+     rail infrastructure, but 99%.  Adapted from Ice World V.
+   - Double land unit minimum cost to 0.02, to slow them down on
+     highways.
+   - Change land unit cost penalty in newly taken land to an extra 0.2
+     instead of a minimum of 0.2, to reduce penetration depth.
+ * Reduce bridge head defense and collect value to match highway's.
+ * sinfrastructure displayed bogus rail mobility costs when there was
+   no rail.
+ * Retreating engineers took full landmine damage instead of half.
+ * Fix socket creation code not to print a null pointer.
+ * Fix login option code not to search beyond end of table (broken in
+   4.2.21).
+ * Spy planes and satellites can no longer spot landspies.
+ * Spy planes can now spot surface ships at sea.  They can no longer
+   spot land units loaded on ships or land units.
+ * Fix train retreat mobility cost, and don't permit retreat off rail.
+ * Change maximum population to 100 for plains (was 49), mountains
+   (was 99), bridge spans and bridge towers (was 999), and to 1000 for
+   the other habitable sector types (was 999).
+ * Let minesweepers navigate at the speed their stats indicate by
+   letting them sweep on the move at no extra mobility charge.
+ * Reduce chance for planes to abort from 100-eff (if eff<80) to
+   80-eff.  This should make it easier to punch through air defense,
+   flak in particular, and increase the risk of getting shot down.
+ * Ship and land unit flak intensity is now proportional to efficiency.
+ * Ship and land unit flak intensity is no longer scaled by the tech
+   of the owner of the last thing firing.  It's still scaled by each
+   thing's tech.
+ * All ships and land units firing flak now spot the plane and are
+   spotted by the plane.  Previously, spotting stopped as soon as flak
+   maxed out.
+ * Inefficient land units were overcharged mobility when reacting.
+   Broken when Empire3 changed land unit mobility use not to depend on
+   efficiency, except for supply units.
+ * New journal file to log complete player input plus selected
+   important events.  Controlled by new econfig key keep_journal, off
+   by default.
+ * Fix unsafe shutdown on SIGINT and SIGTERM.
+ * Fix land unit path finding: paths weren't always cheapest (broken
+   in 4.0.2), and trains could be sent down paths without rail (never
+   worked).  Also fixes unit reaction path cost.
+ * The custom table reader can now deal with sector, item, product and
+   infra tables more comfortably.  
+ * Remove option BIG_CITY.  Deities can customize the sect table to
+   get the same effect.
+ * Many more selectors can now be compared with names, not just
+   numbers.  This includes nations, e.g. census ?old=Mirkwood.  Does
+   not fully work for queer names like &&&.
+ * Let land units on missions support, just like ships.
+ * Don't let units loaded on a train react.
+ * Change update sequence to repair ships, planes and land units after
+   sectors produce.  This makes repairs use new avail instead of old.
+ * Let players stop and start units.
+ * Remove budget priorities.
+ * Make plane report easier to understand.
+ * Change land report to show carriers in the same format as plane and
+   nuke report do.
+ * Code cleanup.
+ * Info file and manual page fixes.
+
+Changes to Empire 4.3.5 - Sun May 28 07:49:54 UTC 2006
+ * In conditionals, ~ compared to a string selector now stands for an
+   empty string.
+ * Change encoding of `not in any group' from " " to "".  This makes
+   fleet=~ work.  It also affects xdump.
+ * Fix plane capture code to clear wing.
+ * People now eat and starve exactly the same in sectors, ships and
+   land units.  There used to be small differences, and civilians and
+   uw loaded on land units didn't eat at all.  The starvation command
+   has been updated accordingly.
+ * Fix bug that makes it impossible to assault or board with land
+   units (broken in 4.3.4).
+ * Code cleanup.
+
+Changes to Empire 4.3.4 - Thu May 25 05:46:10 UTC 2006
+ * Don't use non-portable groff features (broken in 4.3.0).
+ * Work around potential crash bugs in command argument access.
+ * Plug major information leak through nation selectors (broken in
+   4.2.21).  The fix unfortunately exchanges the meaning of xdump
+   nation and xdump country.  Sorry about that.
+ * Minimize redundancy between (mortal's) xdump nation and xdump
+   country.
+ * New nation selector rejects.
+ * xdump nation now shows foreign relations and no longer discloses
+   hidden relations.
+ * Fix crash bug in edit.
+ * Fix number of planes building in budget command (broken in 4.3.3).
+ * Selectors group, fleet, wing and army are now strings, and obvious
+   syntax like fleet#a works.  xdump also shows the strings now.
+   Units not assigned to a group currently have group string " ", but
+   that may still change.
+ * Don't fold conditionals to lower case, because it breaks valid
+   conditionals like fleet#A.
+ * Mobility cost of a plane sortie is no longer limited to current
+   mobility + 32.
+ * Various formulas no longer truncate or round intermediate results.
+ * Interdiction mission charged twice the normal mobility cost for
+   torpedoes.
+ * Fix sail not to interpret negative x-coordinates as unsail
+   argument.
+ * Improved configure script.
+ * Code cleanup.
+
+Changes to Empire 4.3.3 - Tue May 16 21:35:47 UTC 2006
+ * power c can now show powerless countries.  power c * works.
+ * Fortresses now require 5% efficiency to return fire and interdict.
+ * Range of ship return fire and support fire no longer depends on
+   efficiency.
+ * Fix heap smash in login command client.  Remote hole!
+ * Properly destroy nukes on collapsing bridges.  Before, you could
+   rescue them by building a new bridge or arming them on naval
+   planes.
+ * Nukes are now numbered like other units:
+   - New selector type replaces selectors number and types.
+   - New selector plane points to plane armed with this nuke.
+   - New selectors effic, mobil, tech, group, opx, opy, mission,
+     radius.  Provided because all units have them; values are
+     currently not interesting.
+   - nuke command output redesigned.
+   - ndump output changed subtly: nukes are no longer sorted by
+     location, nukes in the same location no longer share id, and
+     nukes on planes are shown.
+   - transport nuke now works like transport plane.
+ * arm and disarm now accept the common plane syntax, not just plane
+   numbers.
+ * Fix arm to let you change an armed plane's air-burst/ground-burst
+   (broken in 4.2.6).
+ * territory no longer re-prompts when supplied with a bad argument,
+   it just fails.
+ * edit lets you edit stuff that is actually computed from other
+   state, like sector's coastal flag.  This makes no sense and is now
+   deprecated.  Stuff deprecated since 4.2.15 is now gone.
+ * Code cleanup.
+
+Changes to Empire 4.3.2 - Thu Apr 27 17:59:58 UTC 2006
+ * Fix security units' raid at the update (broken in 4.0.0, fixed only
+   for 100% units in 4.2.7).  Back out 4.2.7's 2.5x deadliness
+   increase.  Make sure empty units don't kill anyone.
+ * Fix bug in player_init(), which was most likely fatal on 64 bit
+   hosts.  Broken in 4.3.0.
+ * Fix xdump not to disclose other countries' realms (new in 4.3.0).
+ * The order in which sectors were visited for `*' arguments disclosed
+   the real origin, fix.  Mapping commands used to work around this
+   bug, until 4.3.1 exposed it there as well.
+ * Code didn't compile on some systems.
+ * Fix edit plane not to truncate large values for keys 'a' and 'd'.
+
+Changes to Empire 4.3.1 - Sat Apr 15 11:40:47 UTC 2006
+ * Fix check of game state on server startup (new in 4.3.0).
+ * sail now accepts a destination sector.
+ * Tend could send bogus bulletins (broken in 4.3.0).
+ * Plug memory leaks in mission command.
+ * Close loophole in navigate that allowed players to find all sectors
+   that are unfriendly or inefficient harbors or bridges.
+ * Server didn't start when default econfig was missing and user
+   didn't supply one with -e (broken in 4.3.0).
+ * Retreat condition 'h' (helpless) never worked, fix.
+ * Fix retreating mine sweepers to use mobility for sweeping.
+ * Fix retreating land units to hit mines with the same probability
+   and to take the same damage as in normal movement.  Before,
+   hit probability was higher, and damage was lower.
+ * Ships could retreat into sectors owned by whoever made them
+   retreat, but not in their owner's sectors.
+ * Fix 'm' at the movement prompt of transport and test.
+ * Fix march and test not to apply conditionals to sectors mapped,
+   which led to spurious error messages.
+ * Fix break not to respect conditionals.  The bug let players keep
+   sanctuaries.
+ * Fix retreat code not to respect conditionals.  Attackers could
+   abuse this to suppress fleet and army retreat orders.
+ * Fix retreat and edit to zero-terminate retreat paths.
+   Theoretically abusable for gaining information.
+ * Fix format string crash bugs in load, spy and bomb.
+ * Fix the telegram editor: empty telegrams were broken in 4.2.21, and
+   ~p before the first line of text never worked.
+ * Fix ancient bridge building race condition that could break the
+   test whether the player can afford the bridge.
+ * Fix trade lot change detection in set command.  Probably abusable.
+ * The pthread code now compiles under Solaris.
+ * navigate and march now permit any whitespace between route and
+   optional argument for radar, lookout, sonar, not just spaces.
+ * Fix canal navigation (was broken in 4.3.0).
+ * Info file fixes.
+
+Changes to Empire 4.3.0 - Sun Mar 19 08:13:10 UTC 2006
+ * version no longer pretends option SHIPNAMES still exists.
+ * Remove files auth and ban.  They could be used to restrict client
+   address and user.  Restricting user is useless, because players can
+   send whatever they want.  Banning IPs is better done with a packet
+   filter.  That leaves restricting deity IPs.  Provide new econfig
+   key privip for that.  Apply it to session kill as well as login.
+ * xdump escapes GUINEA_PIGS status:
+   - xdump is now enabled unconditionally.
+   - xdump sect now dumps selector coastal, because it can't be
+     reliably computed from other xdump information.
+   - New xdump realm and country.  Realm information is now stored in
+     a separate file, with appropriate selectors.
+   - Reviewed for completeness and information leaks.  See info xdump
+     for remaining issues.  New treaty selector uid, nat selectors
+     relations, contacts.  Removed useless selectors: news and lost
+     uid, nat dayno.
+   - Command syntax changed.
+   - xdump opt is no more, option information is now in xdump ver.
+   - xdump can now dump meta-data.
+   - Header and footer changed to be more compact.  You now need
+     meta-data to identify fields.
+   - Bug fixes.
+   - Documentation in doc/xdump.
+ * New econfig key builtindir.
+ * New econfig key custom_tables lets you customize configuration
+   tables without recompiling.  Customizing tables other than unit
+   tables is not recommended for now.  See doc/econfig for
+   instructions.
+ * Check configuration and game state are sane on server startup.
+ * Remove option NONUKES and NEUTRON.  Deities can load a suitable
+   nuke table to get the same effect.
+ * Remove option DRNUKE.  Use econfig key drnuke_const to control
+   whether nukes need research.
+ * Disqualify land units from performing missions while loaded on
+   ships or trains.
+ * Fix dump for strings without terminating zero.
+ * Fix login command option not to send an extra prompt.
+ * zdone now displays information about demand update vetoing.
+ * The Windows port now requires Winsock version 2.
+ * Remove econfig key powe_cost.
+ * version report now shows all the configurable settings of interest
+   to players.
+ * carg and lcarg now display people as well.
+ * ldump now dumps civ and uw as well.
+ * Fix dangling pointer dereference in dogfighting code.
+ * Tell sector owner when partisans take over.  But don't disclose che
+   casualties then.
+ * emp_server, files, fairland now support options -h and -v.
+ * Simplify baroque version numbering to a single version number.
+   This affects output of version.
+ * New show item and show news.
+ * New build process:
+   - Follow the usual steps: configure; make; make install.  The
+     latter is optional.  The only file deities still have to edit is
+     econfig.
+   - Use GNU Autoconf for system configuration.
+   - Use GNU Make for portability and features.
+   - Support separate build trees.
+   - Remake out-of-date dependencies automatically.
+   - Remake out-of-date info files automatically.
+   - Flatten info directory.
+   - Formatted info files are no longer distributed in source tarball.
+   - Use LWP only with UCONTEXT.  Autoconfiguring the other LWP
+     low-level options doesn't seem to be worth the effort, as
+     UCONTEXT should be pretty portable.
+ * Fix use of freed memory in sail.
+ * sail could let large ships enter big cities.
+ * Fix reject and accept not to require contact.
+ * Fix sharebmap and telegram to prompt for a missing first argument.
+ * Fix report to align column research correctly for deities.
+ * When the optional newspaper argument doesn't work because HIDDEN is
+   enabled, complain instead of ignoring it silently.
+ * When BLITZ is enabled, fairland no longer permutes country numbers
+   in newcap_script so that start islands are ordered from top left to
+   bottom right.
+ * Minimize output format differences between options:
+   - census shows column fall regardless of FALLOUT.
+   - show nuke now shows column res regardless of DRNUKE.
+   - report no longer suppress column status when HIDDEN is enabled.
+     HIDDEN limits status information like for the country command.
+   - relations column width differed depending on option SLOW_WAR.
+     Always use the wider format.
+ * Fix a bug in edit that suppressed the player notification telex on
+   military reserve change.
+ * Fix command dispatch not to let deities use commands that are
+   declared not to be available to them.  The only command affected is
+   break.
+ * Fix the list command for visitor.
+ * econfig key m_m_p_d no longer applies to deities.
+ * Fix the origin command for country #0.  Allow moving origin to
+   another country's origin.  Allow deities to reset origin to
+   absolute 0,0.  This turns origin into a superset of the offset
+   command.  Remove offset command.
+ * Fix a bug that caused unpredictable flak damage when it should have
+   been maximum damage (was broken in 4.2.19).
+ * Don't store initial capital location, remove the associated nat
+   selectors xstart, ystart.
+ * Fix production command to consider resource depletion.
+ * Fix justification of coordinate output in cutoff and mission.
+ * Option UPDATESCHED is no longer optional.  Disabling it didn't
+   work anyway.
+ * Support IPv6.
+ * Turn options into ordinary econfig keys.
+ * New econfig key start_cash.
+ * BTU regeneration now depends on the capital's work percentage.
+ * nation now supports an optional argument that lets deities ask for
+   somebody else's nation report.
+ * Fix nation to display SANCTUARY instead of VISITOR for countries in
+   sanctuary.
+ * Fix capital to let you use a regained sacked capital without
+   activating another one in between.
+ * Don't move capital when it is sacked.
+ * New ship capability canal, replacing obscure formula based on build
+   materials.
+ * You now need a capital to request a demand update.
+ * power now ignores landspies.
+ * Fix LWP stack checking.
+ * Clean up LWP, drop dead machine-specific code, fix portability bugs
+   in UCONTEXT code.
+ * census now shows the old owner instead of `*'.  dump is unchanged
+   to avoid breaking clients.
+ * peek no longer prints the old owner.
+ * When a bombed land unit retreated, collateral damage was applied to
+   the wrong sector.
+ * paradrop, drop and fly can no longer abandon the base sector.
+ * Tending foreign ships now sends a bulletin to the owner.
+ * Fix bug that permitted login for inactive countries, including ""
+ * Fix tend for spies.
+ * Change launch to fire all missiles selected at the same target.
+   Previously, it prompted for a new target after each missile.
+ * add, consider, build, launch and fire no longer re-prompt when
+   supplied with a bad argument, they just fail.  Consequently, the
+   build command no longer lets you list types you can build.  It
+   points to the show command instead.
+ * Fix add not to truncate country number.
+ * Fix selector coastal to be accurate at all times.
+ * Fix obscure bug in fairland: the sector added last to an island
+   wasn't considered coastal.  Affected resource computation.
+ * Fix sector wiping in add command.
+ * Remove options NO_LCMS, NO_HCMS, NO_OIL.  They were broken in many
+   ways.  Custom configuration tables should become a serviceable
+   replacement eventually.
+ * Client no longer freezes on long lines of server output.
+ * Fix uninitialized signal mask bugs.
+ * Fix Windows service code's treatment of -e.
+ * Sub interdiction disclosed sub owner through news' actor selector.
+ * country reports on all countries, but carefully limits information
+   disclosed to mortals.  Output format changed.
+ * Market no longer forces sellers to grant loans.
+ * Fix potential crash bug in set command.  Friendlier prompt and
+   diagnostics.
+ * Substantial code cleanup and portability fixes.
+ * Extend empfile abstraction to cover game configuration.
+ * Overhaul of game state storage.
+ * The above includes major contributions from Ron Koenderink.  Many
+   thanks!
+
+Changes to Empire 4.2.23 - Sun Oct 23 09:28:26 UTC 2005
+ * Make version pretend option SHIPNAMES still exists, for the benefit
+   of clients that still depend on it.
+ * The change to conv in 4.2.22 could crash or compute incorrect
+   maximum population.
+ * Info updates missing in 4.2.22.
+ * A few code cleanups.
+
+Changes to Empire 4.2.22 - Tue Oct 11 20:23:51 UTC 2005
+ * Log player login, logout and session kill.
+ * Close loophole in assembly point rules that allowed players to find
+   all unowned sectors.  The assembly point must now be owned by you
+   or an ally, or you or an ally must have a ship there.
+ * Don't let embarked land units fire flak.
+ * Fix display of the last connection's host when the host name was
+   not resolved.
+ * Fix change command to accept full length representative (password),
+   currently 19 characters.  It used to chop off after eight
+   characters.
+ * Non-recon missions no longer establish contact to owners of
+   overflown sectors, because those missions do not identify the
+   owner.  This matches info Hidden.
+ * The following events now establish contact:
+   - Catching a spy
+   - Sighting a ship when toggle coastwatch is off
+   - Spotting overflying planes
+   - satellite spotting land units
+   - lookout and llookout spotting ships, planes and land units
+   - Any relations change
+ * The country command's `temporary' state of disorder ended after
+   ten years.
+ * Telegram notifications could get lost in exotic circumstances,
+   e.g. while a second client attempted to connect.  Abusable.
+ * Remove option SNEAK_ATTACK.
+ * Fix lboard not to let you board dead land units.
+ * Fix stack smash in bomb, drop, fly, paradrop, recon and sail.
+   Remote hole!
+ * bomb, drop, fly, paradrop, recon and sail now deal with EOF
+   correctly.
+ * Fix fly to let the player abort the command at the last prompt.
+ * Client no longer reads execute scripts in binary mode under
+   Windows.
+ * New econfig key listen_address.
+ * econfig key port can now be a service name.  Service empire no
+   longer takes precedence over econfig.
+ * Client falls back to compiled-in host only if environment doesn't
+   supply one, not if it can't be resolved.  Same for port.
+ * Oil derrick could extract slightly more oil than was in the ground.
+ * test command checked start sector for space and some other things
+   instead of end sector.
+ * convert now silently limits conversions to avoid exceeding maximum
+   population.
+ * shoot no longer limits you to 999 victims.
+ * 4.2.19 broke pin bombing commodities on some platforms.
+ * Don't block on output while update is pending.  This is required to
+   ensure the update can abort commands.
+ * Commands submitted while the update is waiting for commands to
+   abort now fail.
+ * The force command no longer waits for the specified time.  It
+   starts a scheduling thread instead, just like shutdown.
+ * Correct grammar and punctuation in output of version.
+ * Option SHIPNAMES is no longer optional.
+ * Fix output of qorder and sorder for ships with sail path.
+ * Don't change capital to agribusiness on retake.  From Pat Loney.
+ * bdes prompt for new designation was messed up for empty bmaps.
+ * Client now supports pipes under Windows.
+ * Care for subtle Windows socket incompatibilities.
+ * Fix strength command not to lie about units reacting into
+   mountains.
+ * strength now yields the processor periodically, to keep the game
+   responsive.
+ * Schedule commands more fairly.  Previously, a sufficiently fast
+   player could starve out the others.
+ * launch assumed plane maximum mobility 127 for calculating when
+   satellites will be ready to use.
+ * Drop support for for DCE threads.
+ * Drop support for pthread implementations lacking pthread_kill().
+   This includes ancient versions of OS X.
+ * Code cleanups.
+ * Minor info file fixes.
+ * The above includes major contributions from Ron Koenderink.  Many
+   thanks!
+
+Changes to Empire 4.2.21 - Sat Jul 16 17:51:01 UTC 2005
+ * Don't let threads block on output to another player thread's
+   socket.  Such blocking violates basic design assumptions and can
+   cause all kinds of grief.  In particular, it causes player session
+   hangs under Windows with 4.2.20.  Broken since the introduction of
+   flash and asynchronous telegram notification many years ago.
+ * Threads sleeping until a specified time could return early under
+   Windows.  This could cause double-updates.
+ * Fix fallout damage (was broken in 4.2.19).
+ * Fix show sector s (was broken in 4.2.19).
+ * Fix deliver not to deliver friendly civilians into occupied
+   sectors.
+ * Fix mil duplication in board (was broken in 4.2.14).
+ * Fix stack smash in lrange, shoot and execute.  Remote holes, and
+   the last one doesn't even require authentication.
+ * Fix crash bug in emp_config parsing.
+ * Fix buffer overruns in turn and shutdown.
+ * Fix second argument of shutdown.
+ * tele and turn now abort on EOF.
+ * Fix display of MOTD and game down message of maximum size.
+ * Correctly support telnet line termination on input.  Previously,
+   carriage returns could slip into ship names and such.
+ * Fix flash not to lie about recipients that are just logging in.
+ * Remove obscure login command list.
+ * Convert client from obsolete termcap to terminfo, and clean up
+   terminal handling.
+ * New fairland option -h to print usage information.  Improved
+   command line syntax diagnostics.  Exit unsuccessfully on unknown
+   options.
+ * fleet and army now copy retreat orders of the fleet's or army's
+   first member with group retreat orders in the same sector.
+   Previously, they used the retreat orders of the first fleet or army
+   member, which is less than useful, and failed to take ownership
+   into account, which is an abusable bug.
+ * New xdump nation.
+ * Fix xdump not to disclose other countries' losses.
+ * Fix exit status of files program when it can't create files.
+ * Support UTF-8 encoded Unicode in human-human communications.  This
+   affects MOTD, game down message, telexes, announcements and flash
+   messages.  See new doc/unicode for technical details.
+ * New login command `options' for client/server option negotiation.
+   See new doc/clients-howto for technical details.  The only option
+   so far is UTF-8.
+ * emp_client -u now requests UTF-8.  This requires a terminal that
+   understands UTF-8.
+ * Fix news for land unit defensive support.
+ * Properly mark sea mines hit by retreating ships.  Unmark mines
+   cleared by bridges.
+ * Fix diagnostics for unknown selector names in conditionals (was
+   broken in 4.2.20).
+ * Fix selector name clashes: rename ship selector mobquota to mquota,
+   land selector for reaction range limit from rad to rmax.
+ * Fix Windows services for relative file names on command line or in
+   econfig (was broken in 4.2.20).
+ * econfig keys ship_grow_scale, plane_grow_scale and land_grow_scale
+   are now float.  This gives deities finer control over maximum
+   efficiency gain.
+ * Fix production command for sectors with 60% efficiency.
+ * Improve syntax of read for deities.
+ * Code cleanups.
+ * Some info topic names differed only in case, which loses on
+   case-insensitive file systems, and is a bad user interface even
+   when it works.  Change those names.  Rename deity command hidden to
+   peek because its info topic clashed with that of option HIDDEN.
+ * Thanks to Doug Wescott sheep are finally covered properly in info.
+ * Documentation fixes.
+ * Much of the above was contributed by Ron Koenderink.  Many thanks!
+
+Changes to Empire 4.2.20 - Tue Mar 22 21:07:18 UTC 2005
+ * When units in different sectors marched, only units in the sector
+   with the highest-numbered unit were interdicted.  A marching
+   non-spy made all marching spies visible to interdiction regardless
+   of location.
+ * Fix crash when interdiction sinks second ship in a sector.  Broken
+   in 4.0.10.
+ * Fix an ancient bug in simulation of level production that clobbered
+   stack and could lead to low predictions, typically zero, which
+   screwed up budget.  The bug had no effect until 4.2.19.
+ * When a sector revolts, and there wasn't enough space to liberate
+   all uw, the number of remaining uw got the wrong sign.  Broken in
+   4.2.14.
  * Log and abort when LWP stack check detects stack smash.  Server
    option -s no longer implies -p.
  * The native Windows build now supports -p and -s.
@@ -9,7 +1025,7 @@ Changes to Empire 4.2.20 - Thu Mar 17 21:34:13 UTC 2005
    Other programs only support -e.  Remove option -D.  Use -e
    DIR/econfig instead of -D DIR.
  * New server option -v shows version information.
- * Fix the server's exit status with -h broken in 4.2.19.
+ * Fix the server's exit status with -h.  Broken in 4.2.19.
  * The linux-pthreads build failed to shut down on signals.
  * Fix threading bugs in the native Windows build that made shutdown
    unsafe and screwed up update aborting commands.
@@ -427,8 +1443,8 @@ Changes to Empire 4.2.13 - Fri Feb 13 22:12:36 UTC 2004
  * Fixed `sabo' reporting damage to player in deity coordinates.
  * New option ROLLOVER_AVAIL.  Contributed by Drake Diedrich.
  * Fix Windows server shutdown on reading "quit" from stdin.
- * Land units now fortify automatically at the update using excess
-   mobility.  With code from Marc Olzheim.
+ * Land units now fortify automatically when mobility plus growth
+   exceeds the maximum.  With code from Marc Olzheim.
  * Wandering che are less predictable.
  * Land units no longer regenerate mobility faster while it is
    negative.
@@ -1609,7 +2625,7 @@ Changes to Empire 4.0.1 - Wed Aug 28 11:35:40 EDT 1996
  * Fixed bug with scuttling a ship with units on it not scuttling the units
     too.
 
-Changes to Empire 4.0.0 - Initial release
+Changes to Empire 4.0.0 - Wed Aug 21 1996
  * Initial Wolfpack release - Long live the Wolfpack!!!!
  * Cleaned up the build environment.  Now all that is needed is to edit the
     build.conf file, answer the questions there and type "make <arch>" to
@@ -1739,4 +2755,3 @@ Changes to Empire 4.0.0 - Initial release
  * Added sstat command to list the statistics of your ships.
  * Added nmap command to show a map of your sectors after their new
     designations have taken place.
-