I'm working on a faithful ROTT port to GZDoom and Zandronum to as best as the engines can handle.
Already got most actors coded in, got a WIP map conversion script and all assets are reimported from darkwar.wad (need to write a script for that though).
It's all currently private on Dropbox, so there's no repo for it right now.
Some methods are unorthodox to conform to vanilla methods, like:
- Using special path arrows for moving objects.
- Have moving walls follow an actor to try and keep them in sync as GZDoom and Zandronum can't have solid polyobjects that pass through unkillable blocking actors.
- Alternatively but WIP, moving walls will be done via fixed paths in ACS. This may cause some incorrect behaviour with some custom maps that require some walls colliding for puzzles.
- Catwalks and walls with variable heights (catwalk marker) use 3d floors instead of 3d midtext.
Some things I still need to figure out is:
- Make the enemies not shoot if their LOS is blocked by windows and other actors (may have a non damaging hitscan checker).
- Make the GAD's more reliable. They currently use Warp to attach players to them and it works well, however faster speeds may make players fall off.
- Have enemies move using velocities rather than A_Chase to help them use jump pads more reliably.
- Make Split Missile behave like in vanilla ROTT.
- Make Crushers work properly and try and squish the player view height.
- Make pit traps work that also lowers the player view height.
- Make the dog weapon cause the player to jump when pressing use.
- Have variable pitches for the charge up of the dog howl.
- Completely remove player Pain states but allow their sound to still play. (Currently pain keeps resetting their animations)
- Add the intro and slideshow screens.
- Make it so the player can only hold one large weapon.
- Shrooms and Elasto powerdowns.
Other WIP things:
- Have the map conversion script add timed events, fog, line properties like switches and make elevators work. Also spread out some coop starts from the single player starting point.
- Put the exported TEXTMAP into a WAD file.
- All bosses.
- Multiplayer stuff like Collector items and other gamemodes.
- Finishing the reworked HUD.
- Score system, which is also scoreboard friendly in Zandronum.
- Redo the font system myself rather than using Return of the Triad's fonts.
- Make GZDoom not treat the mod as Doom
- Excalibat's offsets are adjusted for widescreen.
- Excalibat can be swung from the left side right after a right side swing (no gameplay change, just visual)
- HUD reworked from vanilla. Mostly due to chat area messages overlapping the top bar, and also it was ugly overall.
- Lives system has been removed. Instead, 1-up and 3-up items give full or super health respectively. This however may change for Zandronum's Survival hamemode.
- Max life is increaseable by 1 when collecting 100 life points.
- Knife is now useable as a weapon in slot 1.
- Pistol changed to the Dual Pistols right hand sprite.
- Dual Pistols use the regular Pistol firing sound.
- Getting Dual Pistols will remove the single pistol.
- Single pistol slot changed to 2.
- Female and Darker (for Doug Wendt) skin tones for the knife and god hand.
- Various dog colours based on gender or race (Male: Brown, Female: White, Doug Wendt: Black).
- Dynamic Lights.
- GLDEFS based brightmaps.
- All HuntBegin, Darkwar and most additional levels will be added as all in one. HuntBegin starts as E0Ax to not conflict with Darkwar's maps, All non single/coop maps will use a different naming style.
- Smoother muzzle flash animations.
- Add some various gameplay options, like what the ROTT 2012 mod changes, and the ROTT 2013 game changes.
- Strife style brightmaps rather than using GLDEFS textures. I may be able to do this easily by fixing the COLORMAP to work with ZDoom properly.
- Complete support for Return of the Triad's maps.
- Support for playing through Doom/Heretic/Hexen maps using ROTT actors (if loaded with respective IWAD and patch).
- Support for playing through ROTT maps using Doom/Heretic/Hexen actors (if loaded with respective IWAD and patch).