NetDuke32 - Enhanced Duke3D Netplay!
NetDuke32 is the successor to EDuke32-OldMP. The "OldMP" moniker was incredibly unfitting, and even misleading considering the years of work put into it, and how drastically the netcode has evolved from the old code from 1996.
While the netcode is still lockstep*, it has been overhauled with brand new prediction code, and all kinds of under-the-hood fixes/cleanup, resulting in what I hope to be the smoothest Duke3D Multiplayer experience so far.
* (C/S will be prototyped in a future NetDuke32 release before being merged with mainline EDuke32, unless plans change.)
Most tests since OldMP r33 have shown that most, if not all game-breaking bugs from that release are dead and buried. This took me over a year and a ton of work to get to this point, so I'm praying this release candidate works as well for others!
Here are some defining features of NetDuke32:
- New prediction code - Probably NetDuke32's most defining feature. The aim is to provide a LAN-like experience, even under heavy latency. Nearly all player actions, such as firing and inventory use, will immediately display their visuals and play their sounds without delay- thus making it easier to tell where your shots will end up when the network catches up. This also means a lot of things like stomping shrunken enemies, is much smoother and easier to do. This may require some getting used to for veteran Duke players, but it will feel more familiar for people coming from games like Quake 3 Arena and Unreal Tournament, and hopefully will be a much more enjoyable experience for everyone overall.
- 16 player support - While not exactly new, as OldMP technically supported this for a long time, only now can I say it's stable enough to be playable, and it's a feature no other ports have.
- CO-OP scoreboard - (Shows kills/deaths, health/armor, inventory, ping, etc).
- CO-OP intermission screens. - See stats between levels, like in singleplayer.
- SP-only maps playable in CO-OP - No CO-OP player starts? No problem! All players will start from the default level start if their spawn point is missing, opening up many maps to be playable online.
- New DukeBot AI - DukeBots are far more intelligent than Duke3D Atomic. They can pathfind better, they remember where items are, can swim, use jetpacks, elevators, and steroids! They even retreat when they are out of ammo or low on health. You can also add them to online matches!
- Screenpeek name display - See the name of the person you're spectating in CO-OP spy mode.
- FOV adjustment - Game making you dizzy? Adjust the FOV! (Currently only via console command at the moment. The range is slightly more limited than mainline, capping at 120 to reduce potential advantage in MP. May be reduced further if considered too advantageous.)
- Many, many bugfixes for legacy CO-OP and DM bugs - Fixes for things such as not being able to pick up more than one Tripmine or Pipebomb. Or, the incorrect player being credited for kills in CO-OP.
Future plans involve a lobby system akin to Megaton Edition, further house-cleaning and polishing to Duke3D's mess of a codebase, among a plethora of other things I'm not quite ready to share yet.
Links:
- NetDuke32 Releases & Source Code
- Striker's Projects Trello (To-do list for NetDuke32, StrikerDM, TerminalFury, etc.)
- NetDuke32 / StrikerDM Channels @ Shotspark Studios Discord
Don't have Duke Nukem 3D - Atomic Edition, and still want to get it legally? You can grab it on Zoom Platform