Latest version: Release 3.1 (23 Oct 2020)
Github repo: link
This is a Vita port of Chocolate Doom, which is a Doom source port. It supports the original Doom games, as well as Heretic, Hexen and Strife, and adds some extra features while staying as close to the vanilla game(s) as possible.
- supports Doom, Doom II, Final Doom, FreeDoom, Chex Quest, Heretic, Hexen and Strife;
- sound and music, including OPL3 and PC Speaker emulation, as well as OGG music support (see this post for setup guide);
- supports LAN and online multiplayer (no server browser yet);
- single integrated launcher for all supported games that allows setting most configuration options;
- supports custom files (PWADs, LMPs, DEHs, demos, etc.);
- supports almost all features of Chocolate Doom (WAD file merging, built-in DeHackEd, etc.).
Download (latest release):
VPK (~5.6 MB)
data.zip (~3.7 MB)
- Install the VPK.
- Extract data.zip to ux0:/ (root of memory card).
- Copy your IWAD files (see table below) to ux0:/data/chocolate/iwads.
- LTrigger/RTrigger: select tab;
- Up/Down: select option;
- Left/Right: adjust option;
- Cross: activate option (runs selected game when in Game tab);
- Start: save settings and launch the game you have selected in the Game tab;
- Circle: save settings and exit launcher; cancel selection when in file select dialog.
- LStick: move/strafe;
- RStick: turn/look;
- RTrigger: fire;
- LTrigger: run;
- Square: use;
- Triangle and/or Circle: change weapons;
- Front touch: toggle map.
Supported games / IWADs
To be able to run a particular game from this list, copy the corresponding file(s) to ux0:/data/chocolate/iwads.
Code: Select all
| Game | File(s) | |----------------------------------------|----------------| | Shareware Doom * | `doom1.wad` | | Doom / Ultimate Doom | `doom.wad` | | Doom II | `doom2.wad` | | Final Doom: TNT Evilution | `tnt.wad` | | Final Doom: The Plutonia Experiment | `plutonia.wad` | | Chex Quest | `chex.wad`, | | | `chex.deh` | | FreeDoom: Phase 1 | `freedoom.wad` | | FreeDoom: Phase 2 | `freedoom2.wad`| | FreeDM | `freedm.wad` | | Shareware Heretic * | `heretic1.wad` | | Heretic / Shadow of the Serpent Riders | `heretic.wad` | | Hexen | `hexen.wad` | | Strife | `strife1.wad`, | | | `voices.wad` | |----------------------------------------|----------------|
chex.deh can be found here and is required for Chex to work correctly.
FreeDoom is a free and open source recreation of the original Doom 1 & 2 IWADs. It can be found here, but it is not 100% compatible with Chocolate Doom.
Loading PWADs and other custom game files
Put all custom files for a given game into ux0:/data/chocolate/pwads/<gamedir>, where <gamedir> is doom for all Doom games, heretic for Heretic and Shareware Heretic, hexen for Hexen and strife for Strife, then use the Custom tab in the launcher to select any custom content you want. Currently the launcher allows to select 1 DEH file and up to 4 PWADs/LMPs.
After recording a demo it will be saved to ux0:/data/chocolate/tmp/mydemo.lmp. Don't forget to copy it before recording another one.
Saves for a particular game/IWAD are stored in ux0:/data/chocolate/savegames/<iwad>.
If the game closes without producing a crash dump, a file named ux0:/data/chocolate/i_error.log should be generated, which contains error messages.
The IP address that appears in the `Game address` field of the `Net` tab of the launcher when you run it is your Vita's LAN IP. You can use this if autojoin doesn't work properly.
To join a game by IP, select `Game address`, enter the address, then hit `Connect to address`.
Netgames will only work correctly if all players have selected the same game and set of custom files (stuff in the `Files` tab). PWAD order does matter. The game will complain upon connecting if you did something wrong.
The `Merge file` option is the launcher version of the `-merge` command line option. See the Chocolate Doom wiki for more details.
You can specify custom command line parameters in a response file, then load it using the `Override response file` option. Don't forget to select the correct game.
Some static render limits are slightly raised in the Vita port to (hopefully) allow SIGIL to run. The port is still by no means "limit-removing", so you should use SIGIL_COMPAT*.wad.
See the README, the Github issues list and the Chocolate Doom wiki for more information.
- these people for Chocolate Doom itself;
- Vita SDK Team for the Vita SDK;
- rsn8887 and cpasjuste for the SDL2 port;
- rsn8887 for some graphics code and the SDL_net port;
- frangarcj for the Vita2D fork and Vita Shader Collection;
- maken/tiduscrying for LiveArea assets;
- KINGGOLDrus for some launcher graphics;
- everyone on the #henkaku and #vitasdk IRC channels for help and/or testing.