]> git.pond.sub.org Git - empserver/blobdiff - info/Empire4.t
Update change log again for 4.3.16
[empserver] / info / Empire4.t
index ae176427aec6a1a341e124e18e978b20814decad..f9be59491c6abdd7aab06458004cb91d119931e1 100644 (file)
@@ -7,14 +7,326 @@ new Empire4 Server.  This outlines the various changes and how they
 will affect you, the player.  These were coded as the Wolfpack project,
 and bug-reports should be sent to <wolfpack@wolfpackempire.com>.
 .NF
+Changes to Empire 4.3.16 - Sat Aug  9 15:56:52 UTC 2008
+ * Production command incorrectly limited the number of graduates,
+   happy strollers, technological breakthroughs and medical
+   discoveries produced by a sector to 999.  Broken in 4.2.15.
+ * Fix a bug in improve that could let you spend more money than you
+   have.
+ * Fix work command not to spend more mobility than requested, and to
+   round mobility use randomly instead of down.
+ * Commands demobilize, convert and work no longer let you spend more
+   money than you have.  Commands demobilize and convert no longer ask
+   for confirmation before spending more than half your money.  Saving
+   that feature would have been more work than it's worth.
+ * Remove undocumented key 'd' at bomb ship, plane and land unit
+   target prompts.
+ * Fix land unit flak when pin-bombed to match flak when overflown:
+   proportional to efficiency, and randomly rounded.  Was missed in
+   4.3.6.
+ * Don't permit bombing of embarked planes and land units.
+ * Fix capital maintenance to charge at 60% efficiency.
+ * launch command now requires only 40% plane efficiency, for
+   consistency with other ways to launch missiles.
+ * Disable collateral damage when automatically launched missiles miss
+   their target.  Collateral damage was done even when the launch
+   failed or the missile got intercepted.  It's been disabled for
+   manually launched missiles since 4.0.18, for the same reason.
+ * Fix a bug that corrupted the lostitems file.  Broken in 4.3.12.
+ * Show command changes:
+   - Move product information from "show sect c" into new "show
+     product", and reformat it to be easier to understand.
+   - New column navigability in "show sect s".
+   - "show sect s" now shows the packing bonus type instead of
+     selected packing bonuses.  "show item" shows the actual bonuses
+     for each type.
+   - "show sect b" now shows the usual values in addition to unusual
+     ones.
+ * Fix interdiction to obey op-area for missiles.
+ * Fix a bug that caused a stale sources.mk to be distributed in the
+   4.3.14 an 4.3.15 tarballs.  The latter does not build out of the
+   box because of that.
+ * Don't strip tab characters from quoted command arguments.  Broken
+   in 4.2.21.
+ * shutdown commands now always take effect immediately.  Before, they
+   could be delayed by up to a minute.
+ * shutdown could start multiple shutdown threads when you initiated a
+   shutdown shortly after cancelling one.  This screwed up the timing
+   of the shutdown.
+ * Deity syntax of zdone changed, and is now documented in info.
+ * The threshold command could be tricked into accepting negative
+   thresholds.
+ * Fix designate to always write updated bmap to disk.
+ * Fix bomb to fail on empty <pin|strat> argument instead of flying
+   without bombs.
+ * Fix a bug in distribute that screwed up the current sector's
+   distribution center when the command got aborted.
+ * Commands arm, bomb, deliver, drop, fire, fly, paradrop, recon,
+   lmine, order, power, range, sail, shutdown, sweep and tend did not
+   honor command abortion at some prompts.
+ * Fix a bug in handling of EOF from client that could bite in the
+   following ways:
+   - EOF at target prompts for bombing commodities, ships, planes and
+     land units sent the server into an infinite loop that ate all
+     memory.
+   - EOF at sail's path prompt crashed the server.
+   - EOF at some prompts in deliver, designate, fly, morale, zdone,
+     attack and assault didn't abort the command.
+   Broken in 4.3.11.
+ * Selector terr is now the same as terr0 for mortal players, and
+   dterr for deities.  This matches how the territory command works.
+   Unfortunately, this required us to rename xdump sect field terr to
+   terr0.  Sorry about that.
+ * Fix bomb not to let you bomb dead ships and land units.
+ * Make the retreat command a bit more helpful on retreat conditions,
+   and make it fail on bad conditions.
+ * Fix the mapper scripts.  Broken in 4.2.0.
+ * Fix flying commands not to let planes do double duty as escorts.
+   Broken in 4.3.12.
+ * When a minesweeper hit a mine after sweeping, the mine wasn't used
+   up.  If it sank the minesweeper, the code accessed freed memory,
+   which could clobber the ship file or worse.  Broken in 4.0.17.
+ * Don't let non-light units board ships that can't carry them.
+ * Capitals can now employ up to 1000 civilians instead of 999.
+ * Spy command changes:
+   - Spy now requires sector military.  Before, presence of land units
+     was sufficient, but spies shot were only deduced from sector
+     military.  If you lost more spies than you had sector military,
+     the rest came back from the dead.
+   - Spy no longer ignores non-sea sectors without civilians, military
+     and land units.
+   - Remove columns lnd, pln from spy report.  The values didn't match
+     the reported land units and planes, and could leak the presence
+     of spy units.
+   - Establish contact when spy succeeds even though the spy was
+     caught.
+ * Fix news reporting and damage when land units interdict ships in
+   sectors other than sea.
+ * Fix land unit return fire damage to ships to take accuracy into
+   account, like the fire command and interdiction does.
+ * Remove the inconsistent shelling damage reduction for range.  Fire
+   command got damage reduced by 10-20% with a chance depending on
+   range ("Wind deflects shells").  Ships interdicting got it reduced
+   by half.  Other ways to shell did not get damage reduced for range.
+ * Fix ground combat to report defending land units.  Broken in 4.3.4.
+ * Info file and documentation fixes and improvements.
+
+Changes to Empire 4.3.15 - Sun May 18 08:59:30 UTC 2008
+ * The edit command keys deprecated in 4.3.10 are now gone.
+ * fairland now obeys game file locks.
+ * Do not leak world creation time in files utility, because that
+   facilitates attacks against fairland's PRNG.  Broken in 4.3.12.
+ * Fix starvation not to starve one more than it should.  The last man
+   on a boat or land unit now can't starve anymore.
+ * Fix a crash bug in satellite.  Broken in 4.2.7 and not fixed
+   correctly in 4.2.12.
+ * Fix a coordinate normalization bug that could theoretically lead to
+   buffer overruns and other unpleasantness.  None have been
+   reproduced, though.  Broken in 4.3.12.
+ * Remove option FUEL.  The abstract idea of tying ships and land
+   units to a logistical tether is sound, the concrete implementation
+   as option FUEL is flawed.  It adds too much busy-work to the game
+   to be enjoyable.  It hasn't been enabled in a public game for
+   years.  The code implementing it is ugly, repetitive, and a burden
+   to maintain.  The edit command still accepts and ignores the fuel
+   keys for compatibility, but they are deprecated.
+ * Fix pin-bomb not to report subs when there are none.
+ * You now have to take a capital to capture the victim's money, loans
+   or market lots.  Merely obliterating the capital doesn't cut it.
+   It still makes the victim lose money, though.
+ * Fix a bug that could theoretically allow sacking of non-existant
+   capitals of visitors, deities and such.
+ * You now gain BTUs and MOB_ACCESS mobility before the first update
+   again.  You didn't since 4.3.10 introduced the ETU clock.
+ * Fix edit to detect when the edited object changes while it's being
+   edited.
+ * Fix xdump nat for relations: it got HIDDEN backwards.  Broken in
+   4.3.12.
+ * Fix origin command not to prompt twice for its argument.  Broken in
+   4.3.0.
+ * Info file improvements.
+
+Changes to Empire 4.3.14 - Mon May  5 04:57:03 UTC 2008
+ * Another round of fixes to the fire command:
+   - Don't disclose where the target retreated to.
+   - Charge the target shells for returning fire.
+   - Always use guns when the target is out of range, even if it's a
+     submarine.  Before, the difference in shell use disclosed whether
+     the target is a submarine.  Loophole opened in 4.3.12.
+   - Make depth charges again work with just one shell.  Failing the
+     command in that case lets players find out whether the target is
+     a submarine.  Loophole opened in 4.3.12.
+   - Detect when the firing sector, ship or land unit changes across
+     the target prompt.  Abusable.
+ * Fix parsing of anchor-relative time in update schedule.  Broken in
+   4.3.13.
+ * Fix logging of player input in the journal to include command
+   interruption and EOF.
+ * Fix oversights in 4.3.12's change to keep track of flying planes:
+   planes could be erroneously reported damaged by their own ground
+   strikes.  Happened with missions and the launch command.
+ * Fix load not load hardened missiles.
+ * Fix harden not to harden missiles loaded on land units.
+ * New server option -E to choose what to do on recoverable internal
+   error.  You can now make the server dump core and keep going (not
+   implemented for Windows).  New econfig key post_crash_dump_hook to
+   run a program after crash-dumping.  See scripts/savecore for an
+   example.
+ * Journal entries are now flushed to disk right away even when the
+   server is not running in debug mode.
+ * Don't let land units load trains.
+ * Allow deity to display power report for all types of countries,
+   with power c.
+ * Fix designate's check for disallowed sector types.  Broken in
+   4.3.12.
+ * Documentation fixes.
+
+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, because 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.
+   - Interdicting land units now resupply shells automatically, for
+     consistency with other ways to fire.
+   - 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
+ * Rewrite the client's code for reading 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.
@@ -56,7 +368,7 @@ Changes to Empire 4.3.11 - Tue Jan  1 18:57:38 UTC 2008
    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
+   - 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.
@@ -158,7 +470,9 @@ Changes to Empire 4.3.10 - Thu Sep  6 17:59:53 UTC 2007
  * 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.
+   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:
@@ -775,7 +1089,7 @@ Changes to Empire 4.2.22 - Tue Oct 11 20:23:51 UTC 2005
  * 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.
+ * 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