1. fgsfds

    OP fgsfds GBAtemp Fan
    Member

    Joined:
    Aug 28, 2018
    Messages:
    362
    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)

    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.
     

    Attached Files:

    Last edited by fgsfds, Jun 6, 2019
    Smoker1, Cubuss, stitchxd and 44 others like this.
  2. Draxzelex

    Draxzelex GBAtemp Legend
    Member

    Joined:
    Aug 6, 2017
    Messages:
    11,585
    Country:
    United States
    The man, the myth, the legend, fgsfds
     
  3. onofrix

    onofrix Advanced Member
    Newcomer

    Joined:
    Jun 29, 2015
    Messages:
    78
    Country:
    Great, man! Thanks a lot!
     
  4. phreaksho

    phreaksho GBAtemp Regular
    Member

    Joined:
    Oct 27, 2007
    Messages:
    143
    Country:
    United States
    Awesome! !
     
  5. jakkal

    jakkal GBAtemp Addict
    Member

    Joined:
    Apr 27, 2018
    Messages:
    2,279
    Country:
    United States
    Wow nice
     
  6. Brunz514

    Brunz514 Member
    Newcomer

    Joined:
    Sep 4, 2018
    Messages:
    45
    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!
     
  7. Dutt

    Dutt Advanced Member
    Newcomer

    Joined:
    Jun 15, 2018
    Messages:
    81
    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?
     
  8. Risteing

    Risteing Member
    Newcomer

    Joined:
    Sep 18, 2018
    Messages:
    38
    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]
     
    Last edited by Risteing, Oct 1, 2018
  9. 2Siralv

    2Siralv GBAtemp Regular
    Member

    Joined:
    May 12, 2018
    Messages:
    110
    Country:
    Canada
    could we maybe see a half life 1 and 2 port?
     
    Switcyswachty likes this.
  10. TimeDevouncer

    TimeDevouncer GBAtemp Regular
    Member

    Joined:
    Jun 7, 2018
    Messages:
    126
    Country:
    Spain
    You're fuck€%g awesome!

    Thanks!!!:bow::shy::grog:
     
  11. fgsfds

    OP fgsfds GBAtemp Fan
    Member

    Joined:
    Aug 28, 2018
    Messages:
    362
    Country:
    Russia
    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.

    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, Oct 1, 2018
    focusonme likes this.
  12. tpax

    tpax GBAtemp Fan
    Member

    Joined:
    Nov 16, 2014
    Messages:
    328
    Country:
    Gambia, The
    Wow, that is kind of impressive. Will give it a try as soon as I'm home.
     
  13. SG911

    SG911 GBAtemp Fan
    Member

    Joined:
    Dec 20, 2017
    Messages:
    364
    Country:
    United States
    This sounds interesting! Sadly, i don't own doom so i can't try this but nice job.
     
  14. Switchtime

    Switchtime Member
    Newcomer

    Joined:
    Jun 25, 2018
    Messages:
    21
    Country:
    Denmark
    Here was just recently a thread where someone asked for a Doom 3 port and everyone laughed at him.
     
    Deathscreton, Voxel and focusonme like this.
  15. Kallus

    Kallus Advanced Member
    Newcomer

    Joined:
    Jun 5, 2017
    Messages:
    62
    Country:
    United States
    Well, that's GBAtemp for ya.
     
    Deathscreton likes this.
  16. sj33

    sj33 GBAtemp Psycho!
    Member

    Joined:
    Oct 22, 2013
    Messages:
    3,971
    Country:
    Japan
    This is insane, amazing work!
     
  17. The0919

    The0919 GBAtemp Regular
    Member

    Joined:
    Oct 29, 2017
    Messages:
    115
    Country:
    United States
    Dude, you are insane!
     
  18. Hodge92

    Hodge92 Member
    Newcomer

    Joined:
    Oct 8, 2013
    Messages:
    42
    Country:
    United Kingdom
    Awesome stuff!
     
  19. focusonme

    focusonme GBAtemp Regular
    Member

    Joined:
    Jun 30, 2016
    Messages:
    223
    Country:
    United States
    Amazing!!!! Thank you for your effort
     
  20. Notex

    Notex Advanced Member
    Newcomer

    Joined:
    Mar 21, 2017
    Messages:
    67
    Country:
    Australia
    Damn, just causes my switch to display an error.
    2011-0301
     
Draft saved Draft deleted