Homebrew WIP dhewm3-nx - a Doom 3 port

fgsfds

Well-Known Member
OP
Member
Joined
Aug 28, 2018
Messages
445
Trophies
0
Age
123
XP
3,331
Country
Russia
I ported dhewm3 (a Doom 3 source port) to the Switch.
Right now this is more of a proof of concept kind of thing rather than a fully playable port, as performance is pretty abysmal (20-30 FPS on average with shadows disabled, less with shadows enabled).

Github repo: /fgsfdsfgs/dhewm3
Latest version: 0.1.0 (Sep 30, 2018)
Download link
Test build (06/06/2019, includes RoE binary)
https://github.com/fgsfdsfgs/dhewm3/releases/tag/v0.1.0_nx
2018092419514600-DA63280140B1530CD17755515D814CFE.jpg


2018092419503100-DA63280140B1530CD17755515D814CFE.jpg


2018092321280400-DA63280140B1530CD17755515D814CFE.jpg

Features:
  • hardware accelerated rendering;
  • sound/music through OpenAL-Soft ("EAX4.0" effects are also supported);
  • half-assed analog controls.
To install, unzip dhewm3nx_v010.zip to SD card root, then copy over pak000.pk4 through pak008.pk4 from the base folder of your PC Doom 3 installation to /switch/dhewm3/base/.
Your Doom 3 installation should be patched to v1.3.1. The Steam version is already patched, the files are in Steam/steamapps/common/Doom 3.
If you're using data files from a non-English version of the game and your base folder has additional zpak###.pk4 files in it, also copy those over to /switch/dhewm3/base/.
Doom 3 BFG files are not supported, someone would need to port RBDoom3BFG for that.
For more information read the README and this FAQ.

Some notes:
  • this will only run correctly through NSP hbmenu or if you make a standalone NSP out of it or if you use a game/demo as a donor title on Atmosphere (i.e. as a regular app), if you run it through Album hbmenu (i.e. as an applet), it will run out of memory and crash as soon as you try to load any map;
  • in the main menu you can control the cursor with the Right Analog, triggers act as mouse buttons;
  • you can also use the touchscreen to control the main menu;
  • left analog is a little wonky in game after loading, jiggle it for a second and it'll work;
  • multiplayer is borked, selecting it will crash the game;
  • loading and saving times are pretty long;
  • by default, Video Quality (which is essentially texture detail) is set to Medium and shadows are disabled, but you can tweak any settings (except resolution) to your liking, some of which may require a restart;
  • currently only 720p is supported;
  • sometimes after loading a map your gun viewmodel will disappear, this is fixed by going into Options -> Game Options and toggling Show Gun Model off and back on, I have no idea why this happens at all;
  • if you want massive amounts of "atmospheric" reverb on most in-game sounds, you can turn on "EAX4.0 HD" in Options -> System (not sure if it's even supposed to sound like this);
  • Resurrection of Evil is not currently supported by the release NRO, you can use this separate build that can only run RoE if you want to play it;
  • if the game crashes for no apparent reason on startup, probably with a 2011-0301 error, try disabling any extra sysmodules you have loaded (sys-ftpd, xorplay, etc);
  • if you're using data files from a non-English version of the game, you can change the game language by changing the values for in_kbd and sys_lang in dhewm.cfg from "english" to e.g. "spanish";
  • as usual, if you have exFAT, better quit the game using the "Exit" option in the menu instead of just killing hbmenu.
Credits:
  • dhewg and Daniel Gibson for dhewm3;
  • fincs, Armada651, Subv and probably others for their work on the OpenGL/mesa/libdrm stuff;
  • some nice people in the ReiSwitched Discord and #switchdev for help and testing;
  • id Software for Doom 3.
 

Attachments

  • dhewm3nx_v010.zip
    6.4 MB · Views: 599
Last edited by fgsfds,

Brunz514

Well-Known Member
Newcomer
Joined
Sep 4, 2018
Messages
45
Trophies
0
Age
38
XP
300
Country
Canada
Cant wait to try this man, loving all these classic shooters on the switch! Hopefully you can get it running at a solid 30 fps or maybe 60 in the future! Good job!
 

Dutt

Well-Known Member
Newcomer
Joined
Jun 15, 2018
Messages
93
Trophies
0
Age
43
XP
2,175
Country
Australia
Awesome work man. But this does the same thing as ioquake3 for me.. Just crashes my system (Power off job) no matter what iv tried..
Can anyone confirm this or ioquake3 working on 4.1fw?
 

Risteing

Active Member
Newcomer
Joined
Sep 18, 2018
Messages
43
Trophies
0
Age
33
XP
703
Country
Argentina
Now I can play the DooM series on my nintendo Switch. Working on RajNX-Atmosphere 7.5.1, but only if you dont enable LayeredFS, otherwise the app crashes on boot (and that's mean load the payload one more time)
IMG_20181001_015457.jpg
 
Last edited by Risteing,

fgsfds

Well-Known Member
OP
Member
Joined
Aug 28, 2018
Messages
445
Trophies
0
Age
123
XP
3,331
Country
Russia
could we maybe see a half life 1 and 2 port?
Porting Xash3D (basically Half-Life 1) is on my todo list, but it more or less requires a dynamic linker. I have statically linked it for Vita before, but that was not a fun thing to do.
Half-Life 2 is pretty much impossible to port because we have no up to date source code for the Source engine.

Awesome work man. But this does the same thing as ioquake3 for me.. Just crashes my system (Power off job) no matter what iv tried..
Can anyone confirm this or ioquake3 working on 4.1fw?
I don't actually know what could cause this. The "power off" effect you're experiencing might be a GPU crash (assuming you have AutoRCM enabled).
Do the Quake 1 and 2 ports work for you? You could also create an issue on Github for both ioquake3nx and dhewm3nx so others could report there if they have the same problem.
 
Last edited by fgsfds,
  • Like
Reactions: focusonme

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    The Real Jdbye @ The Real Jdbye: sure, it can be hands free