Connexion
FR
games/doom-jumphp / README.md · commit 8e1cb9f
# IRON ABYSSA retro first-person shooter written in PHP with [JumPHP](https://git.jumphp.net/jumphp/jumPhp): it runs on the desktopand in the browser (PHP compiled to WebAssembly).- **Engine**: a PHP port of the software renderer and game logic of the 1993 engine whose C source id Software released  under the GNU GPL (https://github.com/id-Software/DOOM): BSP walk with solid-seg clipping, wall columns, visplanes,  colormap lighting, sprites clipped by silhouettes, 35 Hz tics, thing state machines, monster AI (look / chase /  new chase direction), hitscan with vertical autoaim, sight checks, doors, lifts, lights, sound propagation.  The BSP tree is built at load time by `src/Engine/Map/NodeBuilder.php`.- **Content**: original. Monsters (husk, gnasher, spitter, warden), weapons (wrench, sidearm, scattergun, riveter,  ion launcher), textures, sky and sounds are generated by code (`tools/make-art.php`, `tools/art/`); the three  levels are drawn in text (`assets/maps/*.json`). No file of the original game is used.```bashbin/jumphp run doom-jumphp       # play on the desktopbin/jumphp test doom-jumphp      # lint, phpstan, the game tests, the smoke testbin/jumphp build doom-jumphp     # browser version -> dist/webbin/jumphp php games/doom-jumphp tools/make-art.php preview   # rebuild assets/data/art.pak and assets/sfx```Controls: arrows / W S move and turn, A D (or Q D) strafe, Shift run, Ctrl / F / click fire, Space / E use(doors, switches, lifts), 1-5 weapons, Tab map, Escape menu.License: GNU GPL v2 or later (see LICENSE), as a derived work of the GPL engine source.