Note

This is a community plugin, an external project maintained by its respective author. Community plugins are not part of FiftyOne core and may change independently. Please review each plugin’s documentation and license before use.

GitHub Repo

     FiftyOne, it runs Doom

Play DOOM inside a FiftyOne panel - right in your browser, powered by WebAssembly.

FiftyOne Doom

Overview#

This is a free and non-commercial FiftyOne plugin that embeds the DOOM engine as a playable panel inside the FiftyOne App. The game runs entirely locally in your browser - no remote servers. The engine is Dwasm, a WebAssembly port of PrBoom+ compiled with Emscripten. It provides native Web Audio output for full sound support (music and sound effects).

Game Files (WAD)#

No WAD file is bundled with this plugin. You must provide your own WAD file when launching the game. The WAD is cached in your browser after the first upload, so you only need to select it once.

The shareware version of DOOM (doom1.wad) is freely available and can be obtained from:

Please only use legal copies and ensure you comply with the licences. The shareware licence only permits duplication of the original archive; its contents cannot be distributed or embedded separately. Do not host commercial titles on a public server without permission from the copyright holder.

Compatible WAD files#

  • DOOM1.WAD - Doom shareware (freely distributable)

  • DOOM.WAD - Doom registered (full game)

  • DOOM2.WAD - Doom II

  • The Ultimate DOOM, Final DOOM (TNT: Evilution, The Plutonia Experiment)

  • HACX, Chex Quest

  • FreeDoom - Free, open-source WADs compatible with the Doom engine

Any total conversion mods based on these variants should also work.

Requirements#

  • FiftyOne >= 1.13.0 (install)

  • A modern browser (tested on Firefox and Chrome)

  • A compatible WAD file (see above)

Platform Compatibility#

This plugin was built and tested on Linux. It is unclear whether it will run correctly on other operating systems (macOS, Windows). If you encounter issues on another OS, please open an issue.

Installation#

Install directly from GitHub using the FiftyOne CLI:

fiftyone plugins download https://github.com/Burhan-Q/doom

Or using the Python SDK:

import fiftyone.plugins as fop

fop.download_plugin("https://github.com/Burhan-Q/doom")

Then restart your FiftyOne server. See the FiftyOne plugins documentation for more details on managing plugins.

Usage#

  1. Launch the FiftyOne App

  2. Open the command palette (press ` or + icon to add a new panel)

  3. Search for “Play Doom” and execute it

  4. The DOOM panel opens with a WAD file selection screen

  5. Click SELECT WAD FILE and choose your WAD

  6. The game loads and starts automatically

Your WAD file is cached in the browser. On subsequent launches, the game loads automatically from the cache - no need to re-select the file. Use the “Clear cached WAD” link to switch to a different WAD.

Credits#

Disclaimer#

This project is not affiliated with, endorsed by, or in any way connected to id Software, Bethesda Softworks, or ZeniMax Media. All trademarks and copyrights are the property of their respective owners.