[Release] Doom RPG (Reverse Engineered) for 3DS — Stereoscopic 3D, Touch HUD & CIA Build

indionicarao

Member
Newcomer
Joined
Mar 19, 2015
Messages
22
Reaction score
21
Trophies
1
Age
44
Location
Portland, Oregon
XP
216
Country
United States
Hey everyone,


Like many of you who remember playing mobile games in the mid-2000s, I’ve always had a soft spot for Doom RPG. When the GEC team reverse-engineered the BREW version for PC and Efim Andreev started an initial 3DS port, I was thrilled to see it running on handheld hardware.

The early port was fairly barebones and strictly a .3dsx. Over the past few weeks, I’ve been working on turning this into a native-feeling 3DS experience that takes full advantage of the console’s hardware—complete with autostereoscopic 3D, a usable bottom-screen touch interface, and a custom HOME menu banner.

We’re now up to v1.0.7, and I wanted to share the build here with the community.

A special shoutout and huge thank you to @CrashMidnick for testing and detailed feedback on the install process and controls. This is actually the second port he has helped me test and refine (thank you again for your awesome feedback on the Descent 1 3DS port as well!).

──────

### What’s in this port:

Native Home Menu CIA & Standalone 3DSX: Custom 3D rotating plaque banner, custom icon, and shotgun audio stinger.

Autostereoscopic 3D: Full hardware stereoscopic 3D using the physical slider on both O3DS and N3DS.

Motion Damping: To prevent the harsh eye strain of stepping forward in grid-based 3D, depth dynamically eases during movement and recovers smoothly when you land.

Stereo Particles: Blood splatters, sparks, and explosion particles render to both eye buffers with depth matching so there's zero retinal flicker.

In-game 3D Multiplier: Adjust stereo strength in the pause menu (Low, Normal, High, Max) to suit your comfort.

Bottom Screen Touch HUD & Automap:

• Real-time tracking automap on the lower screen.

• Touch-and-drag map panning with [+] zoom, [-] zoom out, and [CTR] to snap back to the player.

SELECT Button Repurposed: Since the map is always visible on the touch screen, pressing SELECT now recenters the map on your character ([CTR]). If already centered, pressing it cycles zoom levels (1x → 2x → 3x) with audio feedback.

• Quick-access hotbar for medkits, armor, and dog collars (grayed out when empty, with tactile feedback).

• On-screen touch keypad for entering door codes.
Combat Turbo toggle: Tap [ TURBO ] next to the map controls to speed up enemy turn pauses and missile animations for snappy battles.

Native 3DS In-Game Prompts (New in v1.0.7):

• In-game dialogue, computer logs, tutorials, and the Help screen have been adapted away from old keypad prompts (* and 7, 0 key, # key, 9 button, press OK) to reference native 3DS buttons (ZL / ZR, START, bottom-screen automap, B button, A button).

Visual & Audio Polish:

• Story cutscenes and teaser screens are scaled 2x so they fill the top screen cleanly.

• Textured floors and ceilings enabled out-of-the-box.

• In-game video toggle between Crisp (nearest-neighbor pixel art) and Smooth (linear filtering).

• Background music streams as MP3 with minimal memory usage.
• Clam-shell closure immediately pauses audio and enters sleep mode.

──────

### Recent Fixes (v1.0.7):

Circle Pad Down: Fixed a signed 32-bit keycode bug where pulling backward on the Circle Pad was ignored. Full 4-way Circle Pad exploration and menu navigation now works properly.


Automatic Save Folder: The game now auto-creates sdmc:/3ds/doomrpg/saves/ on first launch. If you run strictly via .3dsx, you no longer need to manually create folders or pre-install the CIA.

SELECT Map Recenter & Zoom: Added hardware button control to recenter and cycle zoom on the automap.

In-Game Text Overhaul: Replaced mobile keypad references with native 3DS controls across dialogue, terminals, end-of-level summaries, and the in-game Help menu.

──────

### How to Install:

Because Doom RPG is copyrighted by id Software / Bethesda, no game assets or audio files are included in the download. You must supply your own extracted game data.

1. Download DoomRPG-1.0.7.cia (or DoomRPG.3dsx) from the release links below or from the attached ZIP.
2. Install the .cia via FBI, or copy DoomRPG.3dsx into sdmc:/3ds/DoomRPG/.
3. Extract your original BREW game assets (from doomrpg.bar using tools like BarToZip).
4. Copy the extracted loose files directly into:
sdmc:/3ds/doomrpg/


Make sure you include:

• entities.db and help.txt

• Maps: *.bsp

• Graphics: *.bmp

• Tables: wtexels.bin, stexels.bin, bitshapes.bin, palettes.bin, mappings.bin, sintable.bin
5. Copy your audio files into that same folder (sdmc:/3ds/doomrpg/):

• Sound effects as numbered .wav files (5042.wav through 5138.wav).
• Music tracks as numbered .mp3 files: 5039.mp3, 5040.mp3, and 5043.mp3.
(Note: Original BREW rips provide music as .mid. You will need to convert those 3 MIDI tracks to .mp3 before copying).

6. Launch from the HOME Menu or Homebrew Menu! Save files will automatically be saved to sdmc:/3ds/doomrpg/saves/.

──────


### Download & Source:

Attached File: DoomRPG-3DS-v1.0.7.zip (includes CIA, 3DSX, and release notes)
GitHub Release: Doom RPG RE — 3DS v1.0.7 https://github.com/iNdioNicarao/DoomRPG-RE-3DS/releases/tag/v1.0.7
Source Repository: https://github.com/iNdioNicarao/DoomRPG-RE-3DS
──────

### Community Feedback Wanted!

I’d love to hear your thoughts! Whether you're playing on an original 3DS/2DS or a "New" model, please let me know:

• How the stereoscopic 3D and motion damping feel on your eyes.
• How the combat turbo speed feels during longer dungeons.

• Any bugs, missing audio cues, or quirks with the controls.

──────

### Credits:


id Software / Fountainhead Entertainment: For creating the original mobile masterpiece.
GEC Team (Erick194 & contributors): Incredible reverse-engineering work on the BREW binary.
Efim Andreev (efimandreev0): The initial 3DS port base.
Dennis Isaac Gutierrez Zeledon: 3DS CIA build, autostereoscopic 3D, motion damping, touch HUD, automap navigation, and v1.0.1–v1.0.7 enhancements.

Gemini Antigravity (Google DeepMind): AI pair programmer helping with stereoscopic math, touch UI implementation, audio pipeline, and engine debugging.

CrashMidnick: Invaluable community testing, file checklist verification, and input bug reporting (for both this and Descent 1!).
 

Attachments

Last edited by indionicarao,
It’s so cool to see Doom RPG gaining more recognition, I never thought I’d see another console running the game besides the Zeebo. (The game was never actually officially released for the Zeebo, but since the Zeebo uses a customized version of Qualcomm BREW 4.0.2, it can actually run some mobile games made for BREW and at a higher resolution, too and Doom RPG was released for both BREW and Java.)

 
  • Like
Reactions: indionicarao
Hey everyone,


Like many of you who remember playing mobile games in the mid-2000s, I’ve always had a soft spot for Doom RPG. When the GEC team managed to reverse-engineer it for PC and Efim Andreev started an initial 3DS port last year, I was thrilled to see it running on handheld hardware.

However, the original port was fairly barebones and primarily aimed at running as a .3dsx. I wanted to turn this into a native-feeling 3DS experience that takes genuine advantage of the console’s hardware—complete with autostereoscopic 3D, a usable bottom-screen touch interface, and a proper HOME menu banner.

Over the last few weeks, I’ve put together several updates (now up to v1.0.6), and I wanted to share the build here with the community.


──────


### What’s in this build:


Native Home Menu CIA & 3DSX: Comes with a custom 3D rotating banner (this part needs the most work if anyone wants to contribute), custom icon, and a proper audio stinger.


Autostereoscopic 3D: Full hardware stereoscopic 3D using the physical slider on both the original and New 3DS.

Motion Damping: One problem with turn-based grid movement in 3D is that stepping forward causes harsh visual shearing. Depth is dynamically eased during steps and recovers when you land, keeping eye strain to a minimum.

Stereo Particles: Blood splatters, sparks, and explosion particles render to both eye buffers with proper depth separation so they don't flicker.

In-game Multiplier: You can adjust stereo intensity in the pause menu (Low, Normal, High, Max) to match your comfort level.

Bottom Screen Touch HUD & Automap:

• The automap tracks the player in real time.

• You can touch-and-drag the map with your stylus or finger to look around the level, with [+] zoom in, [-] zoom out, and [O] / player-arrow tap to snap back.

• Quick-access hotbar slots for medkits, armor, and dog collars (grayed out when empty, with tactile feedback if tapped).

• On-screen keypad for typing door passcodes without cycling buttons.

Combat Turbo toggle: Tapping [ TURBO ] next to the map controls speeds up enemy turn pauses and projectile animations if you want faster battles.


Visual & Audio Polish:

• Cutscenes, story pages, and splash screens are scaled 2x so they don’t look like tiny postage stamps on the top screen.

• Textured floors and ceilings are on by default.

• In-game toggle between Crisp (nearest neighbor pixel art) and Smooth (linear filtering).

• Background music streams as MP3 via libmad with low memory overhead.

• Closing the 3DS clam-shell immediately suspends audio and puts the console into low-power sleep.



──────
### How to Install:


Because Doom RPG is copyrighted by id Software / Bethesda, no game assets or audio files are included in the download. You will need to provide your own extracted game data.


1. Download DoomRPG-1.0.6.cia (or DoomRPG.3dsx) from the GitHub release page.

2. Install the .cia using FBI (or drop .3dsx in /3ds/DoomRPG/).

3. Obtain your copy of the original mobile game files (from the BREW doomrpg.bar container; tools like BarToZip or similar will extract the loose files).

4. Put the extracted assets directly into the following folder on your SD card:

sdmc:/3ds/doomrpg/


(Files should sit loose inside that folder: *.bmp, *.bsp, wtexels.bin, stexels.bin, etc.)


5. Place audio files alongside them in the same folder:

• Sound effects as numbered .wav files (5042.wav through 5138.wav).

• Music tracks as numbered .mp3 files (5039.mp3, 5040.mp3, 5043.mp3).

6. Launch from the HOME Menu! Save files will automatically be stored under sdmc:/3ds/doomrpg/saves/.


──────


### Download & Source Code:


GitHub Repository: https://github.com/iNdioNicarao/DoomRPG-RE-3DS

Latest Release (v1.0.6): GitHub Releases https://github.com/iNdioNicarao/DoomRPG-RE-3DS/releases/tag/v1.0.6


──────


### Credits:


id Software / Fountainhead Entertainment: The original game.

GEC Team (Erick194 & contributors): Incredible work reverse-engineering the BREW binary.

Efim Andreev (efimandreev0): The initial 3DS port base.

Dennis Isaac Gutierrez Zeledon: 1.0.1–v1.0.6 enhancements.

Gemini Antigravity (Google DeepMind): AI coding partner for the stereoscopic 3D implementation, Touch HUD / automap controls, 3D banner, and engine enhancements across v1.0.3–v1.0.6.


Give it a spin if you have a 3DS lying around! If you run into any weird crashes or glitches, please let me know here or open an issue on GitHub.
Many Thanks for this new port ! It seems to work great.

Please note that your install instructions are missing the following info :

- needed files (on top of those already listed) : entities.db and help.txt
- music files come as .mid. You need to convert them to mp3.
- the 3dsx file cannot create the sdmc:/3ds/doomrpg/Saves folder. Only the CIA can. So for those who want to use only the 3dsx, you need to install and launch the CIA first and then delete it.
"6. Launch from the HOME Menu! Save files will automatically be stored under sdmc:/3ds/doomrpg/saves/." Maybe add the info here (3dsx will not create this folder and files).

EDIT : backward with the circle pad does not work on my side (with Dpad it is OK).
 
Last edited by CrashMidnick,
  • Like
Reactions: indionicarao
It’s so cool to see Doom RPG gaining more recognition, I never thought I’d see another console running the game besides the Zeebo. (The game was never actually officially released for the Zeebo, but since the Zeebo uses a customized version of Qualcomm BREW 4.0.2, it can actually run some mobile games made for BREW and at a higher resolution, too and Doom RPG was released for both BREW and Java.)


Dont think I've heard of the Zeebo! Thanks for sharig this!
 

Site & Scene News

Popular threads in this forum