dxx-rebirth/d2x-rebirth/RELEASE-NOTES.txt
Kp a24490033f Allow players to remove thief at level start
Commit f4b21088a0 ("Track vulcan ammo explicitly") fixed an original
retail bug that prevented the thief from stealing energy weapons,
because the thief could only steal weapons for which the player had ammo
and energy weapons never have ammo.  This went unremarked for several
years, until a recent report of the new semantics as a game-breaking
regression because the thief is now "ridiculously potent".

Address this report, as well as an intermittently raised issue from
various users over time, by adding two new knobs to both the single
player "Gameplay" menu and the multiplayer setup screen: "Remove Thief
at level start" and "Prevent Thief Stealing Energy Weapons".

"Remove Thief" deletes the thief object during level load.  It has no
impact on save games, and changing it after entering a level has no
effect on any thief already in the level.

"Prevent Thief Stealing" is checked at the moment of theft and, when
enabled, prevents stealing primary weapons other than Vulcan/Gauss.
This can be changed at will in single player and is immediately
effective.  In multiplayer, this option can only be changed by the game
host in the pre-game setup.

For both knobs, there is one pair of checkboxes to control this as a
player preference, which applies in single player games.  There is a
second pair of checkboxes in the multiplayer setup, which applies only
to multiplayer games.  Therefore, in multiplayer, the host chooses thief
settings and all clients use the host's choice.  The host may configure
the thief differently in multiplayer from how the host plays in single
player.

For users who wanted to remove the thief, no specific tally has been
kept for who requested it or when.  Now that the code is being updated,
this is thrown in as an easy addition.

Reported-by: MegaDescent <http://forum.dxx-rebirth.com/showthread.php?tid=980> (for the thief stealing energy weapons as a game-breaking regression)
2017-08-26 19:47:52 +00:00

67 lines
9.4 KiB
Plaintext

RELEASE NOTES
=============
What's new in 0.60
------------------
* Merged code bases and massive code refactorization. [Massive thanks to kp]
* Homing projectiles now behave like in the original game running at 30 FPS! [Thanks to Drakona, Lothar, roncli, A Future Pilot, Ryusei117 and more]
* Fixed FPS fluctuations with VSync. [Thanks to derhass]
* Flashing effects properly scale to ingame brightness setting.
* In addition to quicksave, there is now a quickload key!
* Original base input sensitivity for all devices and mouse overrun option for mouse. [Thanks to the Retro team]
* Improved collision detection, fixing player damage being way too low in some ocassions. [Thanks to Drakona]
* Reworked OPTIONS menu.
* New texture filtering options! [Thanks to beware]
* Optional timers displaying countdowns for cloak and invulnerability.
* New tracker for Multiplayer games.
* Players can now choose whether respawning is triggered by any input or only by pressing a weapon firing input. This allows players using push-to-talk to speak without respawning, and allows all players to iconify the game while dead.
* When a player exhausts an available weapon, auto-select previously acted as if the player had pressed the key to cycle to the next weapon. Now, it starts its search at the top of the auto-select preference list. Given three available weapons, with priorities #1, #2, and #3, if the player exhausted #2, the old behaviour was to select #3. Now, it selects #1. (Github issue #156).
* Fixed bug which allowed boss robots to teleport to a disallowed segment.
* Fixed bug which caused players to disagree about boss location after teleportation.
* Fixed a startup crash when more than 8 joysticks are present.
* Maximum number of joysticks is unchanged at 8, but is now settable via SConf parameter `max_joysticks`; previously, a source patch was required to change this limit. See also new SConf parameters `max_axes_per_joystick` (128), `max_buttons_per_joystick` (128), and `max_hats_per_joystick` (4).
* Generated boss robots were able to teleport into their starting segment, even if that segment was too small. This is no longer allowed (unless there are no segments into which it can teleport).
* Cloaked robots dropped from other robots will now cloak, rather than rendering with their placeholder texture.
* Internal limits on the number of destructable lights ("delta lights"; 10000 -> 32000), robot materialization centers (20 -> 128), and fuel centers (D1:50, D2: 70 -> both: 128) have been raised.
* Robot homing weapons now pick a target when first fired. Previously, they always began by tracking player 0.
* Using a fusion cannon against a boss which reflects energy weapons no longer produces a multiplier effect. The boss will now reflect only the bolts sent in. Previously, it reflected one bolt for every frame that the shot was in contact with the boss, producing dozens of reflected bolts. Although visually interesting, this was not the original author's intent, and the implementation had several defects. If there is community objection, this change might be reverted or made configurable (Github issue #265; #269).
* Fixed a bug which allowed premature Omega cannon recharging after ~9.1 hours on the same level (Github issue #262).
* Fixed a bug which prevented Omega cannon recharging after ~4459701 years on the same level (Github issue #262).
* Prevented undefined behaviour when a level trigger tries to open a wall where no wall exists. This is also diagnosed to the console, so that the level author can fix the level (Github issue #236).
* Fixed a bug where exploding players were checked for the Flash Missile special. Normally, this was silent and harmless, but it might have produced odd results in mods which apply the Flash Missile special to low-numbered weapons.
* Fixed a bug that prevented the thief stealing energy weapons.
* Prevented undefined behaviour when guidebot cannot reach its goal object (Github issue #232).
* Prevented undefined behaviour when reading demos written by old versions of Descent 2. Old demos recorded trigger transition events even when no trigger was hit (Github issue #177).
* Prevented undefined behaviour advancing to a new level while dead (Github issue #61).
* Added diagnostic to report levels which try to trigger a robot materialization center where none exists. Level authors should modify the level to fix the trigger.
* The command line parser will now reject invalid command line arguments. Previously, they were silently ignored, which could confuse users who misspelled an option (or relied on an option that was later removed or renamed).
* Mission parser now allows comments in more places. This fixes loading chaos.hog (Github issue #203).
* In multiplayer games, the host can now specify players start with a higher laser level, other primary weapons, or powerups. The host cannot grant additional secondary weapons in this way.
* In multiplayer cooperative games, players can now choose to see the missile camera view of missiles fired by other players. The game will still prefer a player's own missile camera over the camera of an ally.
* Players can now choose to have auto-select be deferred if a weapon is grabbed while firing. Previously, the choices were to skip the auto-select entirely or to perform it immediately (Github issue #97).
* In multiplayer games, the host can now choose respawn invulnerability as a range from 0 to 4 seconds, in 0.5 second increments; previously, it was 0 seconds or 2 seconds, with no other choices (Github issue #99).
* In multiplayer anarchy games, the host can now configure the game to prefer to spawn players at sites farther from the currently live players (Github issue #108).
* In multiplayer games, the host can now choose to duplicate preplaced primary weapons, secondary weapons, or powerups.
* Added experimental support for uncapped ship turning (yawing, pitching, and rolling), popularly known as mouselook. This is runtime-disabled by default. Players who wish to use it must enable it in Options -> Controls under the heading "Uncapped Turning In:". Separate knobs are provided for single player, multiplayer cooperative, and multiplayer anarchy. For multiplayer games, mouselook must also be enabled by the host in "Game Setup" -> "Advanced Netgame Options" -> "Misc. Options" as "Allow coop mouselook" or "Allow anarchy mouselook", depending on game type. For this feature, any multiplayer game other than cooperative is considered anarchy: "Anarchy", "Team Anarchy", "Robo-Anarchy", "Capture the Flag", and "Hoard", and "Bounty" are all grouped as "anarchy" since all those modes are competitive against other players. If the host does not enable mouselook in the game setup menu, no players in that game will be permitted to use mouselook. A host may permit mouselook for guests while keeping its own controls set to non-mouselook mode. Although the feature is popularly known as mouselook, the implementation controls turning for all input types: keyboard, mouse, and joystick.
* Players protected by spawn invulnerability are now able to acquire an invulnerability powerup, which will upgrade their invulnerability time from the 0.5-4.0 seconds of spawn invulnerability to the full 30 seconds of an invulnerability powerup. Previously, a player protected by spawn invulnerability was not allowed to acquire an invulnerability powerup and instead received the error "You already are Invulnerable!"; players protected by an invulnerability powerup are still prohibited from collecting a new one until the old one runs out.
* Drastically improved positional accuracy and less latency in Multiplayer games.
* Revamped powerup management in Multiplayer which properly handles and prevents loss and excess of powerups.
* Important packets in Multiplayer are handled in proper order, fixing a multitude of packet-loss related issues.
* A plethora of new Multiplayer options. [Thanks to the Retro team, A Future Pilot and many more]
* Proper chaff effect for bombs in D2X-Rebirth Multiplayer as intended in the original game but never implemented correctly.
* Headlights on player ships will now properly render according to headlight state of the player.
* "Bright Players" Multiplayer option will now only affect players instead of all polygon models.
* Improved thief bot to (hopefully) work more accurate in Multiplayer.
* New Multiplayer GAME INFO screen that can be toggled ingame, too.
* Proximity Bomb spin variance logic now applies also to Smart Mines and pre-placed mines.
* Hoard mode no longer borrows the Proximity Bomb slot for counting player orbs; Proximity Bomb powerups can now be found and used correctly in Hoard mode.
* Fixed some Multiplayer scoring oddities.
* New SP (Options->Gameplay) / MP (Host Game -> Game Setup -> Advanced) options to remove the thief during level load and to restore the thief energy weapon bug.
* ... and many, many more bugfixes and improvements.
Known issues
------------
* On Windows the mouse is not correctly released if using ALT+TAB to minimize the game. This is not a bug in the program but rather the SDL library. It can be worked around by pausing the game and using ALT+ENTER to get the game to windowed mode. The mosue should not be stuck then anymore.
* Mac builds may suffer from crashes (or other random glitches) when playing MIDI music. This is not a bug in the program but rather an issue in timidity which SDL_mixer uses to play these files. Using a Soundtrack AddOn (which contains OGG files) should fix that problem.