{"repo":"LMcAlpine/doom-js","free":true,"listed":false,"github":"https://github.com/LMcAlpine/doom-js","clone":"git clone https://github.com/LMcAlpine/doom-js.git","description":"A Doom Renderer written in JavaScript","language":"JavaScript","stars":16,"topics":["doom","javascript","game-engine","canvas","game-dev","retro"],"license":null,"category":"game-templates","readme_excerpt":"Doom-JS Playable vertical slice; rendering, sprite system, and level loading implemented. Requirements Doom shareware WAD Download link listed under external links at the bottom: https://doomwiki.org/wiki/DOOM1.WAD Also works with the retail DOOM WAD—no support for DOOM 2 (yet). Project Features - Renderer - WAD Parsing - Sprite system - Level loading Immediate Goals - Collision Detection - Enemy AI Controls W, A, S, D for movement, and the left and right arrow keys for rotation. How to play 1. Click Choose File 2. Select DOOM1.WAD or DOOM.WAD 3. Select the desired level in the level select dropdown, or leave it as the default. 4. Click Load Level. 5. Click into the game window. 6. Use the keys W, A, S, D, and the left and right arrows for movement and rotation. 7. Change the level anytime by repeating steps 3 and 4. Screenshots References - The Game Engine Black Book: DOOM https://fabiensanglard.net/gebbdoom/index.html - The Unofficial Doom Specs by Matthew S. Fell https://www.gamers.org/dhs/helpdocs/dmsp1666.html - DIYDoom by Amro Ibrahim https://github.com/amroibrahim/DIYDoom - room4doom https://github.com/flukejones/room4doom - A Brief Summary of DOOM-style Rendering by Robert Forsman and Bernd Kreimeier","default_branch":null,"files":null,"tree":[],"storefront":"/r/LMcAlpine","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/LMcAlpine/doom-js/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}