PT

O seu jogo em um executável

Para dar o seu jogo a alguém que não tem nada instalado (nem PHP, nem Docker): o JumPHP o transforma em um único arquivo que a pessoa baixa e executa, para Linux e para Windows. PHP, SDL, OpenGL e OpenAL estão dentro dele.

Você precisa de um projeto JumPHP no seu computador (no seu computador) e de Docker. O seu Claude pode fazer isso por você: peça a ele “faça um executável do meu jogo”.

bin/jumphp export:standalone meu-jogo              # Linux: games/meu-jogo/dist/standalone/meu-jogo-linux-x86_64
bin/jumphp export:standalone meu-jogo --windows    # Windows: meu-jogo-windows-x86_64.exe
bin/jumphp export:standalone meu-jogo --linux --windows

Como é feito

  • O PHP é o do StaticPHP (micro): PHP 8.5 em um executável, com as extensões do JumPHP (SDL e seus módulos de imagem, som e fonte, OpenGL, OpenAL, gd, zip…), todas compiladas dentro dele.
  • O seu jogo (o código, as imagens, os sons, o motor) é adicionado ao final, na forma de um arquivo PHAR.

Esse PHP é o mesmo para todos os jogos: ele é fabricado uma vez (~15 minutos no Linux) ou baixado das versões publicadas do JumPHP e depois guardado em ~/.jumphp/standalone. Depois disso, um executável sai em alguns segundos.

Na máquina do jogador

A primeira execução desempacota o jogo no cache dele (um segundo); as seguintes iniciam na hora. Os saves e as opções vão para a pasta de dados dele:

Linux Windows
o jogo ~/.cache/jumphp/ %LOCALAPPDATA%\JumPHP\
os saves ~/.local/share/<id do jogo>/ %APPDATA%\<id do jogo>\

No Linux, ele funciona em qualquer distribuição desde 2013 (glibc 2.17) e usa a tela (X11 ou XWayland), o OpenGL e o som (PulseAudio, PipeWire, ALSA) do computador, como qualquer jogo de Linux. No Windows (10 ou superior), não há nada para instalar.

Bom saber

  • O arquivo não é assinado: o Windows exibe “O Windows protegeu o seu computador”; é preciso clicar em Mais informações e depois em Executar assim mesmo. No Linux, depois de baixar: chmod +x meu-jogo-linux-x86_64.
  • O PHP para Windows só pode ser fabricado no Windows: ele é fabricado pelo GitHub (o workflow standalone do repositório JumPHP) e baixado pelo comando.
  • Apenas processadores x86_64 (ainda não há Mac nem ARM).

Os detalhes técnicos: docs/standalone.md no seu projeto.