- Reverted back to the older JFDuke3D-based netcode (mmulti.c), the RancidMeat netcode wasn't as reliable as I had hoped.
- Made adjustments to mmulti.c to make it possible for the host to see when players connect.
- Made adjustments to the "waiting for players" code to prevent "not responding" while waiting for everyone to connect.
- The console prints when someone changes their name, this makes it easier to track who's who if they change their name a lot.
- Fixed jittering in sprites moving on a SE31 floor.
- Fixed sounds not playing when you teleport, if you teleported in from far away.
- Backported support for EVENT_SOUND. This allows replacing sounds on the fly, useful for overriding hardcoded sound effects.
EDIT: Had to release a hotfix for floating corpses. Fixed now.
- Different Netcode! Uses the rancidmeat networking code, like duke3d_w32/xDuke/hDuke/nDuke, and late EDuke32 before it was removed. This netcode is much more reliable and responsive than the one from older versions, at least as far as I can tell so far.
- Fixed a missing map sync check in sync.c, this should let players know if there's a discrepancy between maps when playing different versions of the same map.
- Fixed food tray props (FOODOBJECT3), and a few other floor-aligned sprites from floating up into the air infinitely. (Thanks Fox for finding the culprit code)
- Backported EVENT_SOUND from modern EDuke32. This is useful for sound randomization, adding custom menu sounds/overriding any hardcoded sounds. This is an unsynched event, so you muse use displayrandom in your CON code to prevent de-syncs.
- Backported "rendmode" gamevar from modern EDuke32. This is useful for checking in display code what renderer is being used. This is in preparation for supporting the Duke64 TC later down the road. (If I ever get there).
Discord Launcher changes:
- Added the ability to force a manual connection with EDuke32 itself, if it failed to connect or launch for some reason.
- Fixes access violation in hitscan trail code. Fixes railgun crash in StrikerDM.
NOTE: Added version 2 of the Discord launcher. Redownload if you downloaded prior to Sept 2nd, 2018. NOTE2: I accidentally missed a DLL. Re-download again if you got it prior to Sept 3rd, 2018.
- Various stability improvements.
- A proper fix for MIDI music volume issues.
- Added ebacktrace1.dll so I can get detailed logs if EDuke32-OldMP crashes.
NOTE: If you're on Windows and get a crash, and wish for the problem to be solved, please post in the issue tracker here, with the "crash.log" produced by EDuke32-OldMP. Thanks.
- Fixed sync issues between linux x64 and windows builds.
- Fixed an issue with MIDI playback that resulted in some songs ignoring your music volume setting and starting insanely loud.
- Added some additional information for when a game desynchronizes, which is helpful for debugging.
- Added more information when using the -? command line parameter, useful for setting up netgames manually. (This was in release 13 fix3, but worth mentioning again.)
- Set OpenGL to be the default renderer, as it's the most stable.
- Added support for sprite cstat 2048. (No Shade. N key in mapster32.)
- Added support for the "actorsound" CON command.
- Added instructions for the -net command in the help menu. (-? command line parameter)
- Fixed being unable to fire the shotgun in some cases, like when autoswitching from a shrinker.
- Fixed sprites disappearing prematurely behind masked walls.
- Fixed some sounds restarting by movement after being stopped.
- Fixed rendering seam in the scuba gear HUD element.
- Fixed not being able to toggle music in multiplayer.
- Fixed a hang relating to Tripmines.
- Fixed a hang relating to the Polymost renderer.
- Fixed "Not responding" when the game window is out of focus.
- Fixed keys being stuck when returning to the game after alt-tabbing out.
NOTE: If you're having issues with the Discord Matchmaker on Windows 7, try Discord Canary. Also, make absolutely sure "Display currently running game as a status message" is enabled.
NOTE 2: If you downloaded this before 3:35PM on March 18th, please re-download it! Since I'm a fucking worthless idiot, I fucked up the discord launcher, and it needed fixing.
NOTE 3: If you downloaded before 4:07AM on March 9th, re-download. Turned off optimizations in 64-bit Linux Builds for now, fixing sync issues.
- 64-bit Linux support! (The binary is the extensionless "eduke32-oldmp" file)
- Fixed ANGRANGE/ZRANGE behavior with non-power-of-two angle values.
- Fixed friendly fire immunity behavior with friendly fire off. Blocked friendly damage does not stack onto the next enemy attack, and you can self-damage with friendly fire off now.
- Made it so Duke will not auto-stomp shrunken teammates in Cooperative and Team Dukematch.
- Included a matchmaker for Discord. See the included readme.txt file.
Video demonstration of the matchmaker: https://www.youtube.com/watch?v=ZaW9XBBTC7s
- If you have an issue with the Discord matchmaker, post about it here: https://gitlab.com/mossj32/discord_matchmaker_for_eduke32-oldmp/issues
- The matchmaker ONLY works with the DESKTOP versions of Discord. Not browser-based, mobile, or betterdiscord versions.
- You MUST have "Display currently running game as a status message" enabled in Discord, or else you cannot host matches!
Known issue: Sometimes you can't join games on windows 7, but can host without issue, and vice/versa. This is a bug with the Discord RPC. If you have the bug, post here: https://github.com/discordapp/discord-rpc/issues/93
- Can compile on VS2015 now. (The build in the zip is still compiled with MinGW however)
- Tiled skies render properly in Polymost now. (Thanks Fox!)
- Fixed multiple random, unpredictable crashes.
- Fixed wonky automap lines.
- Fixed laggy ANM playback.
- Fixed massive font when using 1280x1024 resolution.
- Backported the "return" CON command.
- Backported the ability to manipulate sector animations. (floorzgoal/ceilingzgoal & floorzvel/ceilingzvel)
- Backported the swinging door fix from r6253. (No more inside-out maps!)
- Added raw input support for mouse and keyboard. Joystick support removed since it was already mostly broken.
- Fixed the r_screenaspect cvar check
- Made the OpenGL driver check only print to console instead of bring up an annoying popup if the OpenGL driver isn't valid.
- Default texture compression to OFF to avoid white boxes in place of hightiles on some hardware.
- If the screen aspect check fails, assume square pixels.
- Got widescreen-aware rotatesprite to work in Software, along with it's associated fixes.
- Fixed the dreaded hang that occurs if someone presses "ESC" between matches. (And about fucking time, too.)
- Backported proper widescreen support from mainline EDuke32. (Widescreen aware rotatesprite & r_usenewaspect.)
- Backported "screentext" CON command from mainline EDuke32. (More flexible font display for mods.)
- Got rid of an outdated Intel driver check. (Means this will work with Intel cards without BUILD_FORCEGL now.)
- Defaulted the crosshair color to yellow like vanilla Duke3D.
- Fixed the broken fraglimit in Team Dukematch.
- Fixed a bad define in polymer.c (Even though it's pointless).
- Backported EVENT_PREGAME.
- Added (Maintenance Build) to the window title, so people know which build they're running.
Note for people who seem to be blind: The download links are right next to the paper clip icons in each release!
- Fixed hanging/race condition/crashes when a map ends via Frag Limit.
- Fixed losing frags when dying after the fraglimit is hit.
- Fixed some bugs with BROKEHYDROPLANT, REACTOR2, and FRAMEEFFECT1.
- Raised episode limit to 14
- Raised level limit per episode to 64
- Backported some Voxel-related fixes, including some fixes of my own.
- Made sprites still animate even when hidden by Parental Lock, in case a mod unhides those tiles. (Needed for StrikerDM)
- Fixed weapons being carried over between maps in fake multiplayer.
- Fixed the music volume slider changing sound volume instead of music volume.
- Fixed sound rolloff and position updates, due to missing call to S_Update(); (Fixes the last of the sound issues, AFAIK.)
- Fixed an issue with Get/SetPlayerVar not working when a player left, similar to the issue with Get/SetPlayer(Input).
- Fixed 32-bit and interlaced PNGs loading as corrupt by updating to a newer version of kplib.c.
- Backported "texture" keyword for TileFromTexture in DEF, for the sake of convenience and compatibility with a couple mods.
- Statically linked libraries so external DLLs are no longer required.
- Default texture filtering to GL_NEAREST instead of GL_NEAREST_MIPMAP_NEAREST.
- Fixed projectiles not moving through water.
- Added fraglimits. (Can be set by using the "fraglimit" cvar, or the -y## command line parameter.)
- Added .connected player struct member to allow checking if a player is still online in CON.
- Fixed a major bug with Get/SetPlayer that was causing it to break when a player left the game.