WIP Doom 64 EX port

Discussion in 'Switch - Emulation, Homebrew & Software Projects' started by fgsfds, Oct 8, 2018.


    7,494

    59
    Front-page WIP
    Doom 64 EX is a reverse-engineering project aimed to recreate Doom64 as close as possible with additional modding features.

    Github repo: /fgsfdsfgs/Doom64EX
    Latest version: 0.1.0 (Oct 8, 2018)
    Download link

    Warning: Spoilers inside!


    Features:
    • hardware accelerated rendering;
    • sound and music;
    • analog controls;
    • all other features of Doom 64 EX probably work (except network games).

    To install and run the game, follow these steps:
    1. Obtain a Doom 64 ROM in either n64, z64 or v64 format. I think region and version do not matter, as long as the ROM is unmodified.
    2. Extract the wadgen folder from doom64ex_nx_v010.zip to somewhere on your PC.
    3. Run wadgen/WadGen.exe and point it to your Doom 64 ROM. This should generate two files inside the wadgen folder: DOOM64.WAD and DOOMSND.SF2.
    4. Extract the switch folder from doom64ex_nx_v010.zip to the root of your SD card.
    5. Copy DOOM64.WAD and DOOMSND.SF2 you got in step 3 to /switch/doom64ex/ on your SD card.
    If you already have Doom 64 EX installed on your PC or something, you can just do steps 4 and 5 right away, using the files from your existing installation.


    Some notes:
    • the framerate is capped at 60 FPS by default, if you want framerates closer to what you would get on an actual N64, set Options -> Setup -> Framerate to Capped;
    • sometimes the music skips a little bit and/or channels go out of sync for a moment, this is most noticeable in the intro;
    • as usual, if you have exFAT, better quit the game using the "Quit Game" option in the menu instead of just killing hbmenu;
    • I have only tested this on a US v1.1 Z64 ROM, not sure if every ROM out there works, but most should.

    Credits:
    • Samuel Villarreal (svkaiser) and others for Doom 64 EX;
    • fincs, Armada651, Subv and probably others for their work on the OpenGL/mesa/libdrm stuff;
    • Midway Games and Nintendo for Doom 64;
    • id Software for Doom.
     
    Discussion (59 replies)
  1. jakkal

    jakkal GBAtemp Addict

    Member
    12
    Apr 27, 2018
    United States
    Thanks man. Gonna give this a go
     
  2. kikongokiller

    kikongokiller GBAtemp Advanced Fan

    Member
    8
    Jan 12, 2017
    Australia
    I was watching the github repo like a hawk and somehow missed the release! Definitely gonna try this out in a few minutes.

    Edit: works pretty much flawlessly from what I've played
     
    Last edited by kikongokiller, Oct 8, 2018
  3. Cubuss

    Cubuss GBAtemp Regular

    Member
    7
    Aug 4, 2017
    Netherlands
    High Quality Shitposter
    Mambila2001, Admiral-Purple and Ty_ like this.
  4. radicalwookie

    radicalwookie GBAtemp Fan

    Member
    4
    Sep 15, 2018
    United States
    You are one crazy dev man.
    Is there any chance to port Half Life too?
     
  5. ole

    ole Advanced Member

    Newcomer
    2
    Apr 12, 2015
    Norway
    Machine!

    Damn this scene is moving fast.
     
  6. Purple_Shyguy

    Purple_Shyguy GBAtemp Advanced Fan

    Member
    6
    Nov 8, 2008
    Republic of Ireland
    Dude. Just.... Wow.

    Your workrate is immense. Im still only on Quake 2 lol working my way through your ports.
     
  7. The0919

    The0919 GBAtemp Regular

    Member
    4
    Oct 29, 2017
    United States
    Behind you
    Yes please. Xash 3d runs very well on android phone.
     
    Admiral-Purple likes this.
  8. fgsfds
    OP

    fgsfds GBAtemp Regular

    Member
    5
    Aug 28, 2018
    Russia
    I have stated numerous times previously that Xash is definitely on my to-do list, but there is at least one major obstacle to porting it that would require actually thinking about a solution, which is why I've been putting it off.
     
  9. radicalwookie

    radicalwookie GBAtemp Fan

    Member
    4
    Sep 15, 2018
    United States
    Sorry I wasnt aware of the other times you stated that. Whats the obstacle thats preventing you to port if I may ask?
     
  10. fgsfds
    OP

    fgsfds GBAtemp Regular

    Member
    5
    Aug 28, 2018
    Russia
    Lack of dynamic linking/shared library support in the devkitA64/libnx toolchain.
    Basically, in games that run on the GoldSrc engine (or Xash3D) game logic is separated from the engine code into a shared library (i.e. a DLL). This allows for mods that change the game logic substantially.
    While this is also the case for Quake 2 and Doom 3, it's not as easy to modify Xash/GoldSrc and the game libraries to allow compiling them into the NRO like I did with Q2 and D3. There are also other problems with this approach, for example, you'd have to have a separate NRO for each mod/game you wanted to run with Xash.
     
    radicalwookie and kikongokiller like this.
  11. subcon959

    subcon959 teh retro

    Member
    12
    Dec 24, 2008
    You are insane. I can't keep up!
     
  12. Billy Acuña

    Billy Acuña GBAtemp Addict

    Member
    10
    Oct 10, 2015
    Mexico
    Now only GZDoom and mobile java emulator (for Doom RPG) are left to playa every DOOM game released on the Switch :D
     
  13. Silent_Gunner

    Silent_Gunner GBAtemp Regular

    Member
    3
    Feb 16, 2017
    United States
    O Brutal Doom, where art thou?
     
    Dutt likes this.
  14. ShadowOne333

    ShadowOne333 GBAtemp Guru

    Member
    18
    Jan 17, 2013
    Mexico
    Holy shit!
    I gotta keep a eye out for everything you do, fgsfds, you just make dreams come true! XD
    With all of the ports you've been doing lately, I will be able to experience the Holy Trinity of FPS games on my Switch!
    Everything from Quake to Doom, damn I love those games and I'll be thrilled to play them again on the Switch thanks to you!
     
    Billy Acuña likes this.
  15. Billy Acuña

    Billy Acuña GBAtemp Addict

    Member
    10
    Oct 10, 2015
    Mexico
    With GZDoom ported you can play Brutal Doom, Brutal Doom 64 and Brutal Wolfenstein :)
     
  16. Silent_Gunner

    Silent_Gunner GBAtemp Regular

    Member
    3
    Feb 16, 2017
    United States
    I know, just figured I'd throw it out there.

    Is there a way to add local multiplayer to the game, though? It'd be awesome to play it with friends on the same screen if the Switch can handle it without the weirdness that is trying to configure controllers and all that on Steam!

    Gyro aiming support would be awesome as well!
     
  17. phreaksho

    phreaksho GBAtemp Regular

    Member
    5
    Oct 27, 2007
    United States
    Post falls, Idaho
    dude... you are awesome!
     
  18. Risteing

    Risteing Newbie

    Newcomer
    2
    Sep 18, 2018
    Argentina
    It's (un)oficial, you can play all the DOOM series on Nintendo Switch
     
    nmkd, ShadowOne333 and Ty_ like this.
  19. phreaksho

    phreaksho GBAtemp Regular

    Member
    5
    Oct 27, 2007
    United States
    Post falls, Idaho
    forgive me if this sounds like i am about to bite the hand that feeds but, if you could get a gzdoom port on the switch, i don't think there would be much more you could do in terms of porting doom. you already exceeded all of my expectations though so Thanks again. :bow:
     
  20. grabman
    This message by grabman has been removed from public view by x65943, Oct 18, 2018, Reason: self promotion.
    Oct 8, 2018