]> git.pond.sub.org Git - empserver/commitdiff
info: Update change log for 4.4.0
authorMarkus Armbruster <armbru@pond.sub.org>
Sat, 12 Aug 2017 05:51:20 +0000 (07:51 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Sat, 12 Aug 2017 07:35:55 +0000 (09:35 +0200)
Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
info/Empire4.3.t
info/Empire4.4.t [new file with mode: 0644]
info/History.t

index cfa190e44cefe32fcdc84e6643a0e4459713e5c5..6c132f535bc5902eb3a97cea04fc7d37efce2576 100644 (file)
@@ -1,5 +1,5 @@
 .TH Server "Empire4 Changes"
-.NA Empire4.3 "Changes in Empire 4.3 (2006-present)"
+.NA Empire4.3 "Changes in Empire 4.3 (2006-2015)"
 .LV Expert
 .s1
 This document outlines the various changes to the game and how they
@@ -203,7 +203,8 @@ Changes to Empire 4.3.33 - Wed May 20 18:17:43 UTC 2015
  * Reject nat selectors relations, contacts and rejects, because they
    don't actually make sense.  They exist just for xdump.
  * Drop the code to resolve player IP address.  It's been disabled
-   since 4.2.13.  Deprecate nat selector hostname.
+   since 4.2.13.  Deprecate nat selector hostname.  Its value has
+   always been "" unless the deity messed with it.
  * Fix bridge spans next to a bridge tower or head taking damage to
    fall when they should with EASY_BRIDGES off.  Has always been
    broken.
@@ -1170,7 +1171,7 @@ Changes to Empire 4.3.20 - Fri Feb 20 18:14:20 UTC 2009
  * Fix enforcing game hours for players already logged in.  Broken in
    4.3.19.
  * Fix distribution not to abandon a distribution center by exporting
-   the last military.
+   the last civilian, or the last military if there are no civilians.
  * Many fixes to load, unload, lload and lunload:
    - Now usable for deities.
    - Plug loopholes that let you steal foreign commodities by making
diff --git a/info/Empire4.4.t b/info/Empire4.4.t
new file mode 100644 (file)
index 0000000..a5ecd9e
--- /dev/null
@@ -0,0 +1,274 @@
+.TH Server "Empire4 Changes"
+.NA Empire4.4 "Changes in Empire 4.4 (2015-present)"
+.LV Expert
+.s1
+This document outlines the various changes to the game and how they
+will affect you, the player.  These were coded as the Wolfpack project.
+.NF
+Changes to Empire 4.4.0 - Sat Aug 12 2017
+ * Don't increase negative ship and land unit to zero on trade.
+ * Client improvements
+   - Support fancy line editing and persistent history when compiled
+     with the GNU readline library.  Contributed by Martin Haukeli.
+   - Fix misdetection of input EOF in obscure circumstances.
+   - Tighten protection against rogue server abusing redirection and
+     execute.
+   - Improve some error and warning messages.
+ * Fix wire for deities to honor announcement rejection.  Broken in
+   Empire 3.
+ * Fix excessively fast contact aging with option LOSE_CONTACT.
+   Broken in 4.3.0.
+ * The edit command no longer shows contact with option HIDDEN.
+ * Grant security units a military control bonus similar to their
+   shoot and convert mobility bonus.
+ * Embarked land units no longer contribute to military control.
+ * Fix convert and shoot not to put foreign and embarked land units to
+   work.  Screwed up when land units were added in Chainsaw.
+ * A security unit's combat strength bonus for fighting guerrilla is
+   now proportional to its efficiency.
+ * The mobility bonus a security unit provides to shooting and
+   converting civilians is now proportional to its efficiency.
+ * Fix a missing newline in the edit command's "teleported" message.
+   Messed up in 4.3.32.
+ * Don't permit boarding of embarked land units.
+ * Guerrilla fighting fixes:
+   - Let rebels liberate old-owned sectors again.  Broken in 4.2.6.
+   - Fix overeager destruction of defending land units.  Screwed up
+     when land units were added in Chainsaw.
+   - Reduce under-strength land unit damage for consistency with
+     ordinary ground combat.
+   - Land units without military can no longer die fighting che.  They
+     can now get captured when the rebels take over the sector, just
+     like in ordinary ground combat.
+   - Fix the way casualties are applied to land units, because it is
+     utterly bonkers.  Screwed up when land units were added in
+     Chainsaw, made worse when military became loadable in 4.0.0.
+   - Fix guerrilla shootout body counts.  Screwed up when land units
+     were added in Chainsaw.
+ * Fix ground combat not to disclose retreat of defending land by
+   printing newlines.  Messed up in Empire 3.
+ * Fix bad grammar in message reporting destruction of an attacking
+   land unit.
+ * Fix a missing newline in intelligence reports on land units.
+   Broken in 4.3.33.
+ * Spy unit changes:
+   - Spies can no longer assault foreign sectors together with non-spy
+     units.  This matches attack and board.
+   - Ground attack can no longer detect spies in the target sector.
+     They can still get caught when the attack succeeds.
+   - Spies that get caught when their sector is taken over are now
+     summarily executed.
+   - Change the chance for assaulting spies to "sneak ashore"
+     undetected from 10% regardless of efficiency to 40% at 100%
+     efficiency.  The chance drops to 0% at 20% efficiency.
+   - Assaulting spies now use mobility and can hit landmines even when
+     they "sneak ashore".
+   - Plug memory leak in spies sneaking ashore.  Screwed up when spy
+     units were added in 4.0.0.
+ * Plug memory leak when missile defense sinks attacking ships.  The
+   leak goes back to flawed bug fix in Empire 2.
+ * Fix lost and xdump lost to report more than one lost sector.
+   Broken since lost item tracking was added in 4.0.7.
+ * Merged news reports now saturate "times" at 65535.  Before, merging
+   stopped when "times" reached 127.
+ * More detailed version information, looks like this:
+       V            Unmodified release V (same as before)
+       V.N-H        Modified release built from a clean git tree
+                    N is the number of additional commits, and
+                    H is the abbreviated commit hash
+       V.N-H-dirty  Same, but the working tree is dirty
+       V-dirty      Modified release built from a tarball
+   Visible in output of commands version, xdump version, and in
+   program output for option -v.
+ * Update, budget, neweff, production and work improvements:
+   - Delivery screws up when it abandons a sector.  Fix by making it
+     not abandon sectors.
+   - Plague people in sectors only after taxes and feeding, for
+     consistency with ships and land units.  Sectors were messed up in
+     Empire 3.
+   - Reorder the update sequence not to prefer countries with lower
+     country numbers when the same sector repairs ships, planes or
+     land units owned by multiple countries.  Broken since Chainsaw
+     introduced budget and foreign repairs as options.  Either option
+     worked sanely in isolation back then, but not their combination.
+     They both became standard in Empire 2.  Restore the pre-budget
+     order.
+   - Fix budget for ship, plane and land unit repairs in foreign
+     sectors.  Also broken since Chainsaw.
+   - Fix the update to use new available work for ship, plane and land
+     unit repairs even when the sector owner has a higher country
+     number.  Also broken since Chainsaw.
+   - Pilots are now paid at the same time as other military.  Can
+     matter only when the country goes broke during the update.
+   - Make ships produce after eating and building efficiency, like
+     sectors.  The starvation command assumed that, and the change
+     "fixes" it.
+   - Don't let stopped ships produce.
+   - Fix sector maintenance to charge for stopped sectors and when the
+     owner is broke.  Broken in 4.3.23.
+   - Fix plane maintenance to charge for satellites in orbit.  Broken
+     in 4.2.2.
+   - Change TECH_POP to count civilians in ships and land units.
+   - Fix happiness and education to count civilians in ships before
+     plague (same as in sectors), and to count civilians in land
+     units.  No such land units exist in the stock game.
+   - Revise sector production to avoid rounding intermediate values.
+     This makes commands production and budget a bit more accurate.
+   - Don't round income and expenses before adding them up.  Fixes
+     numerous crazy artifacts, such as military getting paid less when
+     spread over many sectors.
+   - Fix budget for nations going broke or becoming solvent.
+   - Fix military count in budget.
+   - Zap available work when the sector is stopped or its owner is
+     broke.  Broken in 4.0.0.
+   - Limit "rollover" of unused available work to about half the
+     work done by people at the update.
+   - Round the people's work randomly rather than down, to reduce
+     micromanagement incentives.  This is how things worked until
+     Empire 3.
+   - Make sector and unit building more predictable.  The budget
+     command is now a bit more accurate.
+   - Don't let repair of foreign ships, planes and land units use
+     materials and available work destroyed by che or the plague.
+   - Stopped sectors no longer repair foreign ships.
+   - Fix unowned uw to eat, procreate and produce normally.
+   - Fix budget not to predict production when the required level is
+     too low.
+   - Fix use of stale owner after revolt or revert to deity.  In
+     particular, a bank now pays interest to the rebels.  Research and
+     tech level for plague were also off.  Has always been wrong.
+   - neweff and production now simulate the effect of insufficient
+     food, like budget does.
+   - Fix double-rounding of new work that made the update sometimes do
+     less than neweff and production predicted.  Broken in Empire 3.
+   - Enforce sector population limit only right after growth.  Before,
+     it was also enforced when the sector changed from big city to not
+     big city (since Empire 2 added option BIG_CITY), but not for
+     other changes of the population limit during the update.
+   - Limit work in big cities to the population limit at 0%
+     efficiency, to get rid of ugly special cases in the code.
+   - Code refactoring to undo much of the damage done in Empire 3 to
+     make budget reuse the update's code.
+ * Make plains more like wilderness: efficiency costs no money,
+   but doesn't reduce mobility cost.
+ * Changes to collect:
+   - Tweak value of sectors.
+   - You can no longer collect an active capital.
+   - Don't disclose the value of a sector when it exceeds the amount
+     owed.
+ * Changes to xdumps, breaking compatibility:
+   - Split tables relat, reject, contact off table nat.  Saves disk
+     I/O and xdump bandwidth.
+   - Table nat's field "hostname" was deprecated in 4.3.33 and is now
+     gone.
+   - Meta-type numbers now map to meta-type symbols 1:1.  Meta-type
+     "c" is gone; the selectors use type "s" instead.
+   - New sect-chr and item field "power".  Field "value" is gone.
+   - New sect-chr and infrastructure fields "l_build", "h_build"
+     replace "lcms", "hcms".  The replacements track materials for
+     building 100% instead of 1%.
+   - New plane-chr field "m_build" replaces "crew".
+   - New sect-chr, ship-chr, plane-chr, land-chr, nuke-chr and
+     infrastructure fields for arbitrary build materials, named
+     "g_build" for guns, "p_build" for petrol, and so forth.  For now,
+     these are all zero.
+   - sect-chr field "cost" is now money to build 100% (was: cost to
+     designate).  It replaces field "build" (money to build 1%).
+   - New sect-chr, ship-chr, plane-chr, land-chr and nuke-chr field
+     "bwork" field "bwork" is work to build 100% sector efficiency.
+     Tearing down a sector costs one fourth as much.
+   - New sect-chr field "flags", backed by new table sect-chr-flags.
+     The only flag so far is "deity", which marks sectors mortals
+     can't designate.
+   - New infrastructure fields "cost" and "bmobil" are money and
+     mobility to build 100%.  They replace fields "dcost" and "mcost"
+     (money and mobility to build 1%).
+   - meta-flags "extra" and "const" are gone.  They were of no concern
+     to clients anyway.
+ * Game customization improvements:
+   - The power value of commodities is now configurable, and "show
+     item" shows it.  The collect value of commodities and sectors is
+     no longer independently configurable, but derived from power
+     value.
+   - More flexible infrastructure material and mobility cost
+     configuration.
+   - More flexible sector build material and cost configuration,
+     consistent with unit building.
+   - Work to build sectors, ships, planes, land units and nukes is now
+     independently configurable.  Before, it was fixed at 100 for
+     sectors, and a function of build materials for ships, planes,
+     land units and nukes.
+   - The designate command can no longer be made to cost money.
+ * Fix obscure corner cases where we failed to reset work percentage,
+   loyalty or old owner in sectors without civilians.  Lingering old
+   owner can prevent airlifting and unloading civilians.  The fix
+   partly mitigates the bug where airlifted and unloaded civilians
+   adopt the sector's work percentage and loyalty.  It also sets work
+   percentage to 100% for unowned sectors without civilians.
+ * Even planes without crew can now spread the plague.
+ * The transport command now computes plane weight from build material
+   weight rather than making it up.  The stock game's planes become a
+   bit easier to transport, except for Zeppelins.
+ * Tweak the "power factor", which determines power chart order:
+   - Nukes now contribute to power just like other units.
+   - Tweak power value of items, sectors ships, planes and land units:
+     construction materials, oil and civilians are worth less, shells,
+     guns, bars and petrol are worth more.  Cheap and old (low tech)
+     ships, planes and land units are worth less, expensive and new
+     ones are worth more.  Cheap and "small" (low maximum population)
+     sectors are worth less, expensive and big ones are worth more.
+   - Tweak tech's contribution to power so it's less dominant at low
+     tech.
+   - Research no longer contributes to power with option RES_POP.
+   Note that with the old formula, producing and building certain
+   things could be a net loss of "power".
+ * The edit command now lets you edit land unit plague stage and time.
+ * Takeoff and landing in mountains now require capability helo or
+   missile.  The flying commands reject fixed-wing planes based in
+   mountains.  When flying to a mountain, they select only helicopters
+   and silently ignore the rest, exactly like they select only VTOL
+   planes for flying to a non-airfield.  Similarly, missions ignore
+   fixed-wing planes in mountains.  Before, any plane could bomb,
+   drop, paradrop and fly missions out of a mountain, but no plane
+   could fly to a mountain one-way, with fly, recon or sweep.  Has
+   always been that way.
+ * Add missing newlines to "while it is carrying a nuclear weapon"
+   messages.  Screwed up in 4.3.23.
+ * Disallow bombing spy units.  Bombers spotting spies makes no sense.
+   Worse, they could bomb spies that weren't spotted.  Screwed up when
+   spy units were added in 4.0.0.
+ * Fix march's check for sector abandonment not to ignore land units
+   that evade spy detection or are loaded on ships, but to ignore land
+   units loaded on land units marching out.  Broken in 4.3.33.
+ * Fix damage and ammunition use when multiple defenders with the same
+   UID (say a ship and a land unit) return fire to multiple attackers.
+   Broken in 4.3.12.
+ * Fix march not to wipe out concurrent updates when the player
+   declines to abandon the sector.  Broken in 4.3.33.
+ * Make the savecore example script report more nicely when there's no
+   core dump.
+ * Enable various compiler options for hardening the programs against
+   certain kinds of attacks when available.
+ * Tell compilers not to rely on strict aliasing and signed overflow
+   rules.  These rules are subtle, and compilers can't reliably
+   diagnose violations.
+ * Test suite improvements:
+   - Add news to the smoke test.
+   - Enable GNU libc memory allocation error checking.
+   - Cover much of the update.  Notable gaps are fallout, delivery,
+     distribution, ALL_BLEED, LOSE_CONTACT, and parts of guerrilla.
+   - Cover version, show and xdump of configuration.
+   - Improve navigate and march coverage.
+ * Plug memory leaks in navigate and march.  Broken in 4.3.33.
+ * Fix read beyond buffer in navigate, march and automatic retreat.
+   Could theoretically crash the server.  Broken in 4.3.33.
+ * Fix out-of-bounds array read in bomb, drop, fly, paradrop, recon,
+   sweep.  Could theoretically crash the server, or be abused to gain
+   plane mobility.  Broken in 4.3.27.
+ * Enable more compiler warnings.
+ * Code refactoring and cleanup.
+ * Info page, manual page and documentation fixes and clarifications.
+
+.FI
+.s1
+.SA "Server"
index 043e804ec33e32e40fa8fae976322f4cd3163cd6..0b8d6d1d1eb328872b1e47e029f62ae0d23cde69 100644 (file)
@@ -255,5 +255,14 @@ Changes affecting players include extended start/stop commands
 (replacing budget priorities), radically reduced bridge population,
 somewhat reduced land unit penetration depth, fusing of interception
 with air defense, and limiting nukes to strategic roles again.
+
+2017 Empire 4.4, Wolfpack
+
+Hightlights so far are fancy line editing for the client, an overhaul
+of the update and associated forecasts like budget, and game
+customization improvements.
+
+The xdump command got a few incompatible changes.
+
 .FI
 .SA "Server"