JumPHP, el motor de juegos PHP para juegos retro 2D
Escribe tu juego en PHP una sola vez: funciona en una ventana en Windows, macOS y Linux, y en el navegador, tanto en ordenador como en móvil. Gratuito y de código abierto (licencia MIT).
¿Qué es JumPHP?
JumPHP es un framework para escribir juegos retro 2D en PHP. En el escritorio, el juego funciona con PHP 8.5 y las extensiones SDL2, OpenGL y OpenAL: una ventana de verdad, sonido, mando. En el navegador, son el mismo PHP 8.5 y las mismas extensiones compilados a WebAssembly: OpenGL se convierte en WebGL, OpenAL en Web Audio, y el juego es una simple página web estática.
Todo (PHP, Composer, Emscripten, servidor web, pruebas) funciona en Docker, detrás de un único comando: bin/jumphp.
Lo que ofrece el motor
- Escenas, entidades, sprites animados, cámara y menús listos para usar.
- Mapas de tiles (editor Tiled o líneas de texto), colisiones con pendientes y plataformas atravesables.
- Teclado, mando, ratón y controles táctiles, descritos en un archivo de acciones.
- Sonidos generados o cargados (wav, ogg, mp3), música y sonido posicional.
- 3D y posprocesado con OpenGL / WebGL, por debajo o por encima del 2D.
- Multijugador en línea mediante un servidor de retransmisión, peticiones HTTP, partidas guardadas, traducciones.
- Cálculos pesados en hilos o Web Workers, sin bloquear nunca la imagen.
- Pruebas que juegan de verdad al juego, y capturas de pantalla sin pantalla.
Lo que puedes hacer con él
Juegos de plataformas, arcade, de disparos o de carreras, remakes de juegos de 8 bits a partir de su disquete de Amstrad CPC, y también aplicaciones de escritorio (páginas HTML y PHP, con Tauri), aplicaciones gráficas sin HTML y programas de línea de comandos.
Un juego terminado se convierte en una página web, un único ejecutable para Linux y Windows, un instalador, una aplicación para Android o Apple, o se publica en este playground.
Empezar
composer create-project jumphp/jumphp my-games
cd my-games
bin/jumphp new breakout "BREAKOUT"
bin/jumphp install breakout
bin/jumphp run breakout
El juego nuevo es un pequeño juego de plataformas completo (menú, nivel, jugador, monedas) que puedes convertir en el tuyo; bin/jumphp build lo convierte en una página web. A partir de ahí, basta con Docker: PHP, Composer y Emscripten funcionan en sus contenedores.
O describe tu juego en el estudio: tu Claude lo escribe con JumPHP y lo publica aquí. Crear un juego →
Ir más allá
- Documentación y tutoriales
- JumPHP IDE – el IDE gratuito para tus juegos y aplicaciones PHP
- Extensiones del motor
- Los juegos hechos con JumPHP
- Código fuente · Packagist
Preguntas frecuentes
¿JumPHP es gratuito?
Sí. JumPHP es de código abierto, con licencia MIT, y el playground jumphp.net es gratuito, tanto para jugar como para publicar.
¿Hay que instalar PHP para crear un juego?
No. Todo funciona en Docker detrás del comando bin/jumphp: PHP 8.5, Composer, Emscripten y las pruebas. Los jugadores solo necesitan un navegador, o el ejecutable del juego.
¿El mismo código funciona en el escritorio y en el navegador?
Sí: el navegador ejecuta el mismo PHP 8.5 y las mismas extensiones, compilados a WebAssembly. Bastan unas pocas reglas: no bloquear nunca el fotograma y pasar por el motor para la red y los archivos.
¿Se pueden usar paquetes de Composer?
Sí, siempre que estén escritos en PHP puro: en el navegador no existe ninguna extensión PHP adicional.