Doom Project

Doom Project

Medio motor reinventado, medio motor original: el render, el audio y el video de la música son nuestros; la lógica de juego es el código de id Software. Corre con tu propio WAD en Linux, Windows y macOS.

C + SDL2código de juego originalmúsica CTTS 8 bits--video-musicGPL v3

Descargar Cómo jugar Código fuente

Qué es

Un Doom híbrido hecho en C, listo para compilar o para usar ya compilado.

Código original

Física, IA de monstruos, armas, menú, intermisión, final y partidas guardadas vienen del código de linuxdoom-1.10 de id Software.

Render propio

Columnas + BSP, luz de Doom, sprites, texturas con transparencia y escalado limpio a 640×480.

Ventana y mando

Ventana redimensionable, pantalla completa con Alt+Enter, opciones que se guardan solas y soporte de mando.

16:9 y depuración

--scale 16:9 ensancha la vista (Alt+W en juego). Ctrl+P guarda una captura PNG y Ctrl+D abre un menú para comprobar el render, el jugador y el sonido.

Música CTTS

La música del WAD pasa de MUS a MIDI y al motor CTTS, con instrumentos de 8 bits. Los efectos suenan encima por el mismo mezclador.

Video de la música

Con --video-music el juego graba un video del osciloscopio y el espectro de la música, con la ventana del juego en una esquina.

Descargas

Versión 1.0.4. No incluyen DOOM.WAD: usa el tuyo (ver WAD).

Windows x86-64

.exe + SDL2.dll. El ffmpeg va aparte (solo hace falta para --video-music). Zip normal, no pide programas extra. Si no tienes Python, jugar.bat lo descarga e instala solo para armar la música.

Windows x86 · 32 bits

Para PC viejas de 32 bits. El ffmpeg de 32 bits va aparte (solo hace falta para --video-music): descomprime su zip dentro de la misma carpeta.

Linux x86-64, glibc ≥ 2.39

Necesita libSDL2 y ffmpeg del sistema. Si tu distro es más vieja, compila con ./builder.sh.

Linux · AppImage 64 y 32 bits

Un solo archivo: chmod +x, pon tu DOOM.WAD al lado y ejecútalo. Si faltan python3 o ffmpeg los instala con el gestor de tu distro (apt, dnf, pacman, zypper, apk, xbps…) pidiendo permiso.

macOS Intel y Apple Silicon

Se compila en tu Mac con ./builderm.sh (Xcode CLT + Homebrew). Todavía no hay binario precompilado.

Niveles propios BUNKER.WAD · PWAD para Doom 1

Dos niveles nuevos hechos para este motor (reemplazan E1M1 y E1M2; los enemigos cambian con la dificultad) con final propio. No lleva arte de id: necesita tu DOOM.WAD. Úsalo con jugar bunker, o ./doom_game DOOM.WAD -file BUNKER.WAD; también abre en GZDoom (gzdoom -iwad DOOM.WAD -file BUNKER.WAD).

Sumas SHA-256 (verifica tus descargas)
Cargando…

Versión portable (carpeta que corre desde una USB): ejecuta builderp.bat (Windows) o ./builderp.sh (Linux y macOS) dentro del paquete.

Cómo jugar

  1. Descarga el paquete de tu sistema y descomprímelo.
  2. Pon tu DOOM.WAD en la misma carpeta.
  3. Opcional: genera la música CTTS (necesita Python 3) — la hacen los scripts builder. Sin ella suena el sintetizador de respaldo.
  4. Ejecuta jugar.bat (Windows) o ./jugar.sh (Linux).
./doom_game DOOM.WAD                    # pantalla de título y menú original
./doom_game DOOM.WAD --map E1M1         # directo a un nivel
./doom_game DOOM.WAD --video-music      # además graba la música en Video_Music/

Controles: WASD o flechas · Ctrl o clic = fuego · Espacio o E = usar · Shift = correr · 1–7 = armas · Tab = mapa · Pausa = pausa · Esc = menú.

Conseguir un WAD

El juego necesita un archivo WAD. Este sitio no distribuye ninguno.

  • Freedoom — datos libres y legales; funciona con el motor.
  • Doom shareware (episodio 1, redistribuible): Doom (v1.9) (Demo) en la colección de abajo.
  • archive.org/download/doom-wads — colección de preservación de WADs de Doom y derivados. Los .zip traen el .wad; extráelo y llámalo DOOM.WAD.
Ojo: los WAD comerciales (Doom, Doom II, Final Doom) siguen teniendo copyright de id Software/ZeniMax. Úsalos solo si tienes derecho a ello.

Licencia

El código propio (port/, src/, tools/ y los scripts) es GPL v3. La carpeta orig/ es el código de linuxdoom-1.10 de id Software bajo su GPL; el archivo NOTICE del código fuente explica los detalles de compatibilidad entre versiones. El ffmpeg incluido es un build estático GPL; SDL2 usa licencia zlib.