]> git.pond.sub.org Git - empserver/blobdiff - doc/CHANGES4.X
Final polish for 4.3.1.
[empserver] / doc / CHANGES4.X
index be93be1238e7d99c2b37bd11e1d366f928b159a2..6eac82eb0ea7c703e8798d5f40d44697c94223af 100644 (file)
-Changes to Empire 4.2.21 - Tue Jul  5 16:08:46 UTC 2005
+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.
- * Fix deliver not to deliver friendly civilians into occupied
-   sectors.
  * Threads sleeping until a specified time could return early under
    Windows.  This could cause double-updates.
- * Fix mil duplication in board.  Broken in 4.2.14.
+ * 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.
@@ -22,9 +302,6 @@ Changes to Empire 4.2.21 - Tue Jul  5 16:08:46 UTC 2005
  * Remove obscure login command list.
  * Convert client from obsolete termcap to terminfo, and clean up
    terminal handling.
- * Rename info topics so they don't just differ in case.  Rename deity
-   command hidden to peek because its info topic clashed with that of
-   option HIDDEN.
  * New fairland option -h to print usage information.  Improved
    command line syntax diagnostics.  Exit unsuccessfully on unknown
    options.
@@ -47,12 +324,12 @@ Changes to Empire 4.2.21 - Tue Jul  5 16:08:46 UTC 2005
  * 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.  Broken
-   in 4.2.20.
+ * 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.  Broken in 4.2.20.
+   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.
@@ -60,9 +337,10 @@ Changes to Empire 4.2.21 - Tue Jul  5 16:08:46 UTC 2005
  * 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.
- * Thanks to Doug Wescott, sheep are finally covered properly in info.
+   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!