Sonic PHP

O Sonic do Master System (1991), refeito em PHP e jogável grátis no navegador: as seis zonas, os chefes, as fases especiais e corridas contra bots.

Computador, celular ou controle · nada para instalar · sem cadastro

Sonic virado bola perto dos anéis de Green Hill, com um caranguejo no caminho

O Sonic de 8 bits, completo

Corra, pule, pegue anéis, quebre os monitores de bônus e chegue à placa no fim de cada ato. Seis zonas de três atos, um chefe no fim de cada zona, fases especiais cheias de anéis e molas, e o final do jogo.

O jogo guarda seus melhores tempos e um fantasma da sua melhor corrida, para você superar na próxima vez. Nas opções: filtro de tela CRT, velocidade PAL ou NTSC, francês ou inglês e um jukebox de músicas.

O mapa da ilha antes de Green Hill, com as vidas do Sonic
O mapa da ilha, entre duas zonas.

As seis zonas

Cada zona tem seus cenários, suas armadilhas e seu chefe. Capturas do jogo como ele roda no navegador.

Green Hill: colinas xadrez, palmeiras e anéis
Green Hill · ato 1
Bridge: penhascos e uma ponte de troncos sobre a água
Bridge · ato 1
Jungle: uma cachoeira no meio da floresta e plataformas
Jungle · ato 1
Labyrinth: blocos verdes esculpidos, debaixo d'água
Labyrinth · ato 1
Scrap Brain: uma fábrica diante de uma cidade ao pôr do sol
Scrap Brain · ato 1
Sky Base: vigas azuis na noite
Sky Base · ato 1
O doutor em sua máquina voadora, acima do Sonic, no fim de Green Hill
O primeiro chefe · Green Hill, ato 3
Uma fase especial: estrelas, anéis e molas
Uma fase especial · anéis e molas
Uma corrida a quatro em Green Hill, com a classificação no alto à direita
Uma corrida a quatro contra três bots.

Contra os bots

Em MULTIPLAYER, enfrente de 1 a 4 corredores controlados pelo computador (até 5 na bandeira), nas zonas do jogo, com quatro regras:

Corrida: o primeiro a chegar à placa. Bandeira: ficar com ela o maior tempo. Anéis: juntar mais que todos. Deathmatch: ser o último de pé.

Quer enfrentar jogadores de verdade? Isso está na versão completa.

A versão completa: sonic.mimichat.fr

Este jogo vem do Sonic PHP, cuja versão original e completa se joga em sonic.mimichat.fr. Ela tem tudo o que há aqui, e mais:

  • multijogador online para até 6 jogadores, em corrida, bandeira, anéis ou deathmatch;
  • salas públicas ou privadas, com código de 4 letras; as vagas livres são ocupadas por bots;
  • bate-papo nas salas e durante a partida;
  • os replays de cada partida;
  • uma versão para computador (PHP nativo) que entra nas mesmas salas que os navegadores.
Jogar online ↗

Controles

Teclado

← → correr
↑ olhar para cima, ↓ virar bola
Espaço pular
Enter menus e pausa
Esc voltar ao título

Controle

Cruz direcional ou analógico para correr, A, B, X ou Y para pular, Start para os menus e a pausa, Select para voltar ao título.

Celular

Uma cruz à esquerda para correr; à direita JUMP para pular e ROLL para a bola, START para pausar e MENU para o título. Segure o celular na horizontal.

▶ Jogar agora

Como foi feito

O Sonic PHP é escrito inteiramente em PHP: a física, os objetos, os inimigos, os chefes, a câmera e os bots. As fases, os gráficos e seus ciclos de cores foram decodificados do cartucho original, e a música foi obtida rodando o programa de som Z80 do jogo em um emulador.

Aqui o jogo é portado para o motor JumPHP: o mesmo código roda em uma janela no computador e no navegador, onde o PHP é compilado para WebAssembly. A lógica do jogo é a original; só a tela, o som, os controles e os saves passam pelo JumPHP.

O código: sonic-jumphp (esta versão) e sonicGamePhp (a versão completa).

A tela de título, com o logotipo e o menu START, MULTIPLAYER, OPTIONS, BEST TIMES
A tela de título e seus menus.

Perguntas

Preciso instalar alguma coisa?

Não: o jogo roda no navegador, no computador ou no celular. O primeiro carregamento baixa cerca de 25 MB (PHP em WebAssembly, as fases, os gráficos e a música); depois tudo fica em cache.

Qual é a diferença para a versão completa?

A versão completa traz o multijogador online para até 6 jogadores, as salas, o bate-papo e os replays. Esta é o mesmo jogo portado para o JumPHP, para jogar sozinho ou contra bots.

Meus tempos ficam salvos?

Sim: os melhores tempos, os fantasmas e as opções ficam no seu navegador.

Dá para jogar fora do navegador?

Sim, com JumPHP e Docker: bin/jumphp run sonic abre o jogo em uma janela, com som. Veja o repositório no GitHub.