Pular para o conteúdo

Download e Instalação

Versão estável · documentação 2.1

Download e instalação

Baixe a engine, instale o Pygame e coloque uma janela na tela. Do zero ao primeiro programa rodando são três passos e cinco linhas de código.

1. Baixe a engine

Power PPlay

A versão mais recente da engine, direto do repositório oficial. Cerca de 2 MB, sem dependências além do Pygame.

Também disponívelPara quê
PPlay 1.1 Versão didática original, usada nas turmas anteriores. A 2.x roda o código dela sem alteração — veja a ponte de retrocompatibilidade. Baixar .zip
Recursos gratuitos Sprites, folhas de animação, efeitos sonoros, trilhas e tilesets para usar nos seus jogos. Ver acervo

2. Pré-requisitos

  • Python 3.8 ou superior. Recomendado 3.10 ou mais novo.
  • Pygame-CE (Community Edition) ou Pygame padrão.
pip install pygame-ce
💡 Dica do Sênior: qual Pygame instalar

Prefira o pygame-ce. É o mesmo projeto, mantido pela comunidade, com correções e recursos mais recentes. Se você já tem o pygame clássico instalado, desinstale-o antes — os dois usam o mesmo nome de módulo e brigam entre si:

pip uninstall pygame

3. Onde a engine fica

A PPlay não é instalada pelo pip. Depois de extrair o .zip, copie a pasta PPlay/ para dentro do seu projeto, no mesmo nível do main.py.

meu_jogo/ |– PPlay/ <- a engine (copie a pasta inteira aqui) | |– __init__.py | |– window.py | |– gameobject.py | |– gameimage.py | |– animation.py | |– sprite.py | |– physics.py | +– … (24 modulos ao todo) |– assets/ <- suas imagens, sons e mapas | |– heroi.png | +– fase1.txt +– main.py <- seu jogo
🐞 Armadilha: o erro número um

ModuleNotFoundError: No module named 'PPlay' significa, quase sempre, que a pasta PPlay/ não está no mesmo nível do main.py. Ao extrair o .zip é comum acabar com meu_jogo/Power-PPlay-main/PPlay/ — uma pasta a mais no caminho. Suba a pasta PPlay/ um nível e o erro desaparece.

4. A verificação automática de integridade

Ao importar qualquer módulo da engine, o PPlay/__init__.py confere se os componentes vitais existem e avisa no terminal se algum estiver faltando:

COMPONENTES_VITAIS = [“window.py”, “sprite.py”, “physics.py”, “gameimage.py”, “camera.py”, “collision.py”, “animation.py”]

Se aparecer ERRO DE INTEGRIDADE: Faltando [...], a cópia da engine está incompleta — baixe de novo e copie a pasta inteira.

Em seguida, o mesmo arquivo ativa a ponte de retrocompatibilidade (retro_bridge.py), que injeta na engine 2.x os nomes de método da PPlay 1.0. É o que permite que trabalhos antigos rodem no motor novo sem alteração nenhuma.

5. O primeiro programa

from PPlay.window import Window janela = Window(800, 600, “Meu Primeiro Jogo”) while True: janela.set_background_color(“darkblue”) janela.update()

São cinco linhas úteis. O que cada uma faz:

LinhaO que acontece
from PPlay.window import Window Traz a classe Window. Não é preciso chamar pygame.init(): o construtor da janela faz isso se ainda não tiver sido feito.
Window(800, 600, ...) Cria a janela real e, dentro dela, o buffer virtual de 800×600 onde todo o desenho acontece. Também instancia janela.keyboard e janela.mouse.
while True: É o game loop. Roda até o programa terminar.
set_background_color(...) Define a cor com que o buffer será limpo ao fim do frame. Aceita nome ("darkblue") ou tupla RGB ((20, 24, 40)).
janela.update() Fecha o frame: projeta o buffer na tela, limpa, e processa a fila de eventos — incluindo o botão de fechar e o F11.
💡 Dica do Sênior: experimente agora

Antes de seguir, mexa neste código: troque "darkblue" por (255, 0, 255); mude a janela para Window(400, 300, ...) e note que tudo continua proporcional; aperte F11; arraste a borda da janela e observe as barras pretas aparecerem.

6. O que você ganhou de graça

RecursoSem a engine, você teria que
Inicialização do motorchamar pygame.init() e configurar o modo de vídeo
Fila de eventosescrever o laço for event in pygame.event.get()
Botão de fechartratar pygame.QUIT e chamar sys.exit()
Tela cheia (F11)detectar a tecla e alternar o modo de vídeo
Delta timecriar um Clock e converter milissegundos para segundos
Buffer virtualcriar uma Surface e calcular a escala e as barras a cada frame
Cache de imagensmanter um dicionário e checar antes de cada image.load

Próximo passo

Com a janela abrindo, vá para os tutoriais e construa um jogo de plataforma completo — personagem com física de verdade, cenário desenhado em arquivo de texto, câmera, moedas, inimigo e telas de menu.