Nouvelle version de ZDoom:
2.1.3
Changes
- Sounds can be specified by full path now in SNDINFO and S_SKIN.
- Decorate replacement is more universal.
- Added NecroMage's submission for bitwise/shift assignment operators for ACS. (Requires ACC 1.42.)
- Changed PlayAttacking2 to always use the melee state instead of different implementations per player and hard coding it to MissileState+1. Also changed PlayAttacking for the HereticPlayer to use the same animation as PlayAttacking2. Now the special handling for Heretic in the FireWeapon functions can be removed.
Fixes
- Due to the player class inclusion A_NoBlocking never called NoBlockingSet for monsters.
- PlayerStartItem created a duplicate of the item's class name before converting it into an FName.
- When a non-player tried to play a player sound it tried to access the actor object as a PlayerPawn.
- The check for no skill menu was incorrect when a custom player class menu was present so instead of starting the game specific skill menu it always started Hexen's.
- S_ClearSoundData cleared PlayerClasses instead of PlayerClassLookups.
2.1.2
New
- Added Grubber's custom player class support.
- The IWAD dialog now remembers the last IWAD you picked and automatically highlights it the next time you run the game. This also applies if you check "Don't ask me this again": The IWAD selected will be the one that gets automatically loaded, not the one located first. (Using the -iwad parameter will not change the default IWAD.) In addition, you can now bring the dialog up even if you disable it by holding down SHIFT during startup.
- Added actor replacement for DECORATE. This works at a higher level than using duplicate DoomEdNums and will affect many more attempts to spawn the replaced actor. For example, if you want to use a modified imp, you can use this DECORATE:
- Code:
actor MyImp : DoomImp replaces DoomImp
{
// Put changed properties here
}
Replacements are considered for the following situations:
- Line specials that spawn things (Thing_Spawn and related)
- ACS spawning commands (SpawnSpot and the like)
- Spawning mapthings at level load time in P_SpawnMapThing()
- Spawning items off of dead dudes in P_DropItem()
- The A_SpawnItem decorate function
- The summon and summonfriend console commands
- Attempting to use ThingCount to count original actor types will count both the original actors and their replacements as the same things. (But counting the replacement actors will not count the originals as well.)
Changes
- Improved feedback for network game initialization with the console ticker.
- Changed masses of ice chunks and glass shards to make small splashes.
- Added a 'default' setting to all color selection menu items that leaves the font untranslated.
- Added A_RadiusThrust code pointer for DECORATE and adjusted the radius attack functions accordingly.
- Changed the special radius damage handling for the barrel and boss brain into an actor flag.
- Removed -maxdemo and -heapsize parameters.
- Blends created with the ACS fade commands now degrade to transparent overlays when the console is visible, just as they do for the menu.
- Added ThingCountName ACS function which is the same as ThingCount but it takes an actor's type name instead of a spawn ID.
- Added SpawnSpotFacing ACS function which is the same as SpawnSpot but it uses the map spot's angle.
- Changed the additive scrollers option into a compatibility flag so that it can be changed from the menu.
- Streamlined zip file loading by delaying the processing of the local file header until it is actually needed.
Fixes
- P_UndoPlayerMorph didn't properly transfer the inventory.
- Bouncing projectiles should not bounce off horizon lines.
- Heretic's monsters were missing the MF2_MCROSS flag.
- PlayerIsGone() should set the gone player's camera to NULL in case the player who left was player 0.
- PacketGet can receive ECONNRESET from nodes that aren't in the game. It should be safe to just ignore these packets.
- EAX settings are global and not per-application.
- DDrawFB::PaintToWindow() should simulate proper unlocking behavior and set Buffer to NULL.
- APlayerPawn::AddInventory() should also check for a NULL player->mo in case the player left but somebody still has a reference to their actor.
- PlayerIsGone() needs to stop any scripts that belong to the player who left, in addition to executing disconnect scripts.
- Earthquakes were unreliable in multiplayer games and only worked for players.
- Stopping demo recording in multiplayer games should not abruptly drop the recorder out of the game without notifying the other players.
- When playing back demos, DoAddBot() can be called without an associated call to SpawnBot().
- Crash reporting for stack overflows crashed again if debughlp.dll was available to make the minidump.
- KeyRead() should handle DIERR_NOTACQUIRED errors the same way it handles DIERR_INPUTLOST errors.
- In multiplayer games, when trying to change targets, A_Chase forgot to check whether the new target was the same as the old one and treated this case as a real target change.
- The status bar tried to access CPlayer->camera without checking its validity. In spy mode there is a possibility that it is NULL.
- A_Beacon was missing a NULL pointer check for the beacon's owner.
- Weapons could be picked up for ammo even if they gave none.
- Changed parsing of actor names back to not use C-mode.
- Changed initialization of Weapon.Kickback so that it is only done for direct descendants of AWeapon and not for every weapon being defined.
- maxstepheight and maxdropoffheight were stored as ints instead of fixed_t's by the DECORATE parser.
- Specifying 'strifefallingdamage' in MAPINFO cleared all other flags.
- If the sector behind a seg was closed, but it was closed between the ceiling and floor of the front sector, the renderer did not add it to the solid clip list.
- The defaultbind command still treated the bindings as char pointers and as a result didn't work.
- G_DoAutosave could divide by 0 if autosavecount was 0.
- R_ClearPlanes() did not clear skybox planes for a full clear.
- FreeKeySections() was called before M_SaveDefaults() during shutdown, so all custom keys would go to a "(null)" section instead of their intended section.
- Forcefully removing a weapon from a player's inventory would not reset the player's refire counter.
- The game would crash after informing you of a duplicate class registration because PClass::CreateDerivedClass() did not initialize everything before calling InsertIntoHash().
- Any kill in multiplayer games that could not be credited to a player didn't count at all - not even toward the global level statistics.
- Makefile.mgw was mysteriously missing some targets.
A télécharger dans sa section.
Site officiel |