Skip to content

DoomUltra64 v0.4

Choose a tag to compare

@thinkelastic thinkelastic released this 18 Aug 02:30
· 10 commits to main since this release

Doom and Doom II on the Nintendo 64, rendered by the RDP.

What's new

  • Sixteen dynamic lights instead of eight, and they cost what they actually illuminate rather than what happens to be in the frame.
  • Doom's real light curve. Dim sectors floor at black instead of tapering, so darkness reads as darkness; contrast and overall brightness are separate knobs on top.
  • Polished metal on doors and wall plates — twenty-five textures now, where it used to be a handful of doors.
  • Glowing powerup spheres, each haloed in the measured average colour of its own sprite.
  • Barrels sit on the floor. Doom's art hangs a few rows below a thing's origin, and a billboard drawn at one depth lost exactly those rows to the floor. The quad now follows the floor plane in z.
  • Music streams from cartridge RAM. A whole track is preloaded into SDRAM at level load, so playback stops costing an SD read every frame.
  • Saves name themselves after the level you are in, on overwrite as well as on a fresh slot.
  • A controller sensitivity slider in Options, and a slower default — half to 1.4x, defaulting to four fifths of the old rate.

Installing

Extract to the root of your SD card. It creates one Doom folder:

sd:/Doom/
  DoomUltra64.z64            the Doom ROM
  Doom2Ultra64.z64           the Doom II ROM
  saves/                     savegames, six slots per game

Add your own IWADs — they are not included and are not redistributable:

sd:/Doom/DOOM.WAD            for DoomUltra64.z64
sd:/Doom/DOOM2.WAD           for Doom2Ultra64.z64

Boot a ROM from the flashcart menu, then set Options → Graphic Detail to High — the metal sheen, the pool reflections and the 320x480 mode are all gated on it.

Music is optional and ships separately; see the README for tools/mkmuswad.py.

Requires the Expansion Pak. Developed and tested on a SummerCart64.