Pygame Studio
ENBaixar
Baixar

Seu primeiro jogo

Crie um jogo de plataforma do zero em uns 15 minutos: chão, jogador, script em Python e teclas. Cada passo diz o que clicar e o que aparece na tela.

Este guia usa só o editor. Cada passo diz o que clicar e o que você deve ver.

1. Criar o projeto

  1. Arquivo > Novo projeto…, nome “Meu Jogo”, escolha uma pasta e o modelo Vazio para começar do zero (ou Plataforma para abrir um jogo pronto e mexer).
  2. Espere o ambiente Python do projeto ser criado (na primeira vez leva alguns segundos). O painel Cena mostra o jogo, o Explorer mostra a árvore de objetos e o Properties mostra as propriedades do objeto selecionado.

2. Mexer na cena com o mouse

  • Clique num objeto na Cena para selecionar; arraste para mover; arraste as alças para redimensionar ou girar.
  • Cmd/Ctrl + roda do mouse dá zoom; botão do meio ou Espaço + arrastar move a câmera.
  • O botão + do Explorer insere objetos: Shape, Sprite, Text, TileMap, StaticBody…
  • Cmd/Ctrl+Z desfaz qualquer edição, inclusive as do mouse. F1 numa propriedade explica o que ela faz.

3. Colocar o chão e o jogador

  1. Insira um StaticBody (o chão): posição 480, 500, tamanho 800, 40.
  2. Insira um KinematicBody (o jogador): posição 480, 100, tamanho 28, 40. Coloque um Shape dentro dele para ver o jogador.
  3. O contorno verde (chão) e azul (jogador) aparece só no editor: é a caixa de colisão.

4. Escrever o script do jogador

  1. Clique com o botão direito no KinematicBody e escolha Anexar script. O arquivo scripts/<nome>.py é criado e aberto.
  2. Substitua o conteúdo por:
from pgstudio import Behavior, KinematicBody, Vec2, export


class Jogador(Behavior[KinematicBody]):
    velocidade: float = export(240.0, min=0)
    pulo: float = export(620.0, min=0)

    def on_ready(self) -> None:
        self.v = Vec2(0, 0)

    def on_update(self, dt: float) -> None:
        self.v.x = self.input.axis("esquerda", "direita") * self.velocidade
        if self.input.pressed("pular") and self.node.on_floor:
            self.v.y = -self.pulo
        self.v.y += 1500 * dt
        self.v = self.node.move_and_slide(self.v, dt)

Ao digitar self.node. o editor sugere o que o nó tem (position, on_floor, move_and_slide…). Os campos export aparecem no Properties do nó e podem ser ajustados sem mexer no código.

5. Dizer quais teclas são cada ação

Arquivo > Mapa de entrada…, depois Nova ação para esquerda, direita e pular. Em cada uma, Gravar tecla/botão e aperte a tecla (ou o botão do mouse, ou do gamepad). Clique em Salvar.

6. Jogar

Executar (F5) salva tudo e abre o jogo. Se um script der erro, o jogo pausa e o erro aparece no Output com o arquivo e a linha: clique nele para ir direto ao código. Corrija, salve (Cmd/Ctrl+S) e o jogo continua sozinho (hot reload).

7. Próximos passos

  • TileMap: ferramenta Pintar (B) com pincel, borracha, balde e retângulo. Importe mapas do Tiled (.tmx com camadas em CSV) pelo menu do painel Arquivos.
  • Animação: Nova animação no painel Arquivos cria um .anim.json; use o AnimatedSprite.
  • UI: Canvas, depois Panel, Label e Button; listas e grades com UIListLayout e UIGridLayout.
  • Som: arraste um .wav ou .ogg para a cena; os volumes por grupo ficam em [audio] do project.toml.
  • Referência de todos os nós: Nós e propriedades. API dos scripts: API de scripts.
  • Distribuir: exportar o jogo.