]> git.pond.sub.org Git - empserver/blobdiff - doc/CHANGES4.X
Final polish for 4.3.1.
[empserver] / doc / CHANGES4.X
index fe661d101fe4076c0297f05c52d0226982ccb172..6eac82eb0ea7c703e8798d5f40d44697c94223af 100644 (file)
@@ -1,3 +1,349 @@
+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
@@ -21,7 +367,7 @@ Changes to Empire 4.2.20 - Tue Mar 22 21:07:18 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.
@@ -1751,4 +2097,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.
-