Accedi
IT

JumPHP, il motore di gioco PHP per giochi retrò 2D

Scrivi il tuo gioco in PHP una volta sola: gira in una finestra su Windows, macOS e Linux, e nel browser, su computer come su smartphone. Gratuito e open source (licenza MIT).

Che cos'è JumPHP?

JumPHP è un framework per scrivere giochi retrò 2D in PHP. Sul desktop il gioco gira con PHP 8.5 e le estensioni SDL2, OpenGL e OpenAL: una vera finestra, l'audio, il gamepad. Nel browser sono lo stesso PHP 8.5 e le stesse estensioni compilati in WebAssembly: OpenGL diventa WebGL, OpenAL diventa Web Audio, e il gioco è una semplice pagina web statica.

Tutto (PHP, Composer, Emscripten, server web, test) gira in Docker, dietro un unico comando: bin/jumphp.

Cosa offre il motore

  • Scene, entità, sprite animati, telecamera e menu pronti all'uso.
  • Mappe a tile (editor Tiled o righe di testo), collisioni con pendenze e piattaforme attraversabili.
  • Tastiera, gamepad, mouse e controlli touch, descritti in un file di azioni.
  • Suoni generati o caricati (wav, ogg, mp3), musica e audio posizionale.
  • 3D e post-processing con OpenGL / WebGL, sotto o sopra il 2D.
  • Multiplayer online tramite un server relay, richieste HTTP, salvataggi, traduzioni.
  • Calcoli pesanti in thread o Web Worker, senza mai bloccare il frame.
  • Test che giocano davvero al gioco, e screenshot senza schermo.

Cosa puoi farci

Platform, giochi arcade, sparatutto o di corse, remake di giochi a 8 bit a partire dal loro dischetto Amstrad CPC, ma anche applicazioni desktop (pagine HTML e PHP, con Tauri), applicazioni grafiche senza HTML e programmi a riga di comando.

Un gioco finito diventa una pagina web, un unico eseguibile per Linux e Windows, un installer, un'app Android o Apple, oppure viene pubblicato su questo playground.

Inizia

composer create-project jumphp/jumphp my-games
cd my-games
bin/jumphp new breakout "BREAKOUT"
bin/jumphp install breakout
bin/jumphp run breakout

Il nuovo gioco è un piccolo platform completo (menu, livello, giocatore, monete) da trasformare nel tuo; bin/jumphp build lo trasforma in una pagina web. Da lì in poi basta Docker: PHP, Composer ed Emscripten girano nei suoi container.

Oppure descrivi il tuo gioco nello studio: il tuo Claude lo scrive con JumPHP e lo pubblica qui. Crea un gioco →

Per approfondire

Domande frequenti

JumPHP è gratuito?

Sì. JumPHP è open source, con licenza MIT, e il playground jumphp.net è gratuito, sia per giocare sia per pubblicare.

Bisogna installare PHP per creare un gioco?

No. Tutto gira in Docker dietro il comando bin/jumphp: PHP 8.5, Composer, Emscripten e i test. Ai giocatori basta un browser, oppure l'eseguibile del gioco.

Lo stesso codice funziona sul desktop e nel browser?

Sì: il browser esegue lo stesso PHP 8.5 e le stesse estensioni, compilati in WebAssembly. Bastano poche regole: non bloccare mai il frame e passare dal motore per la rete e i file.

Si possono usare pacchetti Composer?

Sì, purché siano scritti in PHP puro: nel browser non esiste alcuna estensione PHP aggiuntiva.