Partilhar: WhatsApp
aulify
UC UC02637 · T. Multimédia

Ficha 01 · Design, mecânicas, loop

Definição, MDA, verbo, loop de jogo, dt
Versão · Aluno
Tempo · 60 minutos
Cotação · 100 pontos
Aluno(a)
Turma
Data
Objectivos da ficha

Parte I · O que é um jogo

Exercício 1 · 4 ingredientes (10 pts)

Quais são os 4 ingredientes que tornam algo um jogo (segundo a definição prática da sebenta)? Para cada um dá um exemplo de o que falta se esse ingrediente não estiver.

  1. Decisões — sem decisões, é animação interactiva.
  2. Regras — sem regras, é playground caótico (sandbox sem objectivo).
  3. Objectivo — sem objectivo, é brinquedo.
  4. Feedback — sem feedback, é folha de Excel / sistema burocrático.

Exercício 2 · MDA (15 pts)

Para o Pong, indica:

a) 2 mecânicas (regras concretas):

b) 1 dinâmica (comportamento emergente):

c) 1 estética (emoção principal):

a) Mecânicas: - O paddle move-se para cima/baixo conforme o input. - A bola muda de direcção ao bater no paddle ou no topo/fundo do ecrã. - (Também:) Ponto marcado quando a bola passa do paddle adversário.

b) Dinâmica: - Jogadores começam a antecipar a trajectória da bola, gerando um pequeno duelo de previsão. Ou: ao acelerar a bola, surge pressão crescente.

c) Estética principal: - Challenge (desafio) — combinada com sensation (reflexos rápidos) e fellowship se for 2 jogadores.

Exercício 3 · Verbo (10 pts)

Indica o verbo principal de cada jogo e explica numa frase porque é esse e não outro.

a) Tetris ___

b) Super Mario ___

c) Cookie Clicker ___

d) Stardew Valley ___

a) Encaixar — toda a jogabilidade gira à volta de orientar peças para encaixar linhas sem buracos. b) Saltar — apesar de correr e atirar, é o salto que define níveis, perigos e personagem. c) Clicar — o clique é o motor; tudo mais é progressão automática. d) Cultivar — apesar de minar/lutar/casar, a estrutura do tempo é "plantar, regar, colher".

Parte II · Géneros e mecânicas

Exercício 4 · Escolher género (10 pts)

Tens 1 mês para fazer o teu primeiro jogo sozinho. Indica 3 géneros adequados para iniciante e 2 a evitar (com justificação curta).

Iniciar: - Hyper-casual / arcade — uma mecânica, scope mínimo. - Puzzle — sem física complexa, conteúdo escalável. - Plataformas 2D simples — assets prontos abundantes, tutoriais por todo o lado. - Clicker / idle — pode ser feito em texto+JS.

Evitar: - RPG ou MMO — conteúdo enorme (story, NPCs, inventário, balance). - 3D AAA / FPS competitivo — exige tooling, networking, polish enormes. - Estratégia em tempo real — IA, balance, performance.

Parte III · Loop de jogo

Exercício 5 · O loop (10 pts)

Indica as 4 etapas do loop de jogo na ordem correta.

  1. Input — ler teclado/rato/gamepad.
  2. Update — calcular novo estado (física, IA, regras).
  3. Render — desenhar no ecrã.
  4. Esperar próximo frame — sincronizar com o FPS alvo (60 FPS = 16.6 ms).

Exercício 6 · Delta time (10 pts)

Este código move uma personagem:

posicaoX += 5;

a) Por que é problemático em jogos?

b) Reescreve usando delta time, com uma VELOCIDADE em pixels/segundo.

a) Movimento depende do FPS. Num PC potente a 144 FPS a personagem voa; num fraco a 30 FPS arrasta-se. Se o frame demora 16 ms vs 33 ms, a velocidade real varia.

b)

const VELOCIDADE = 300; // pixels por segundo
// dt em segundos desde o último frame
posicaoX += VELOCIDADE * dt;

Resultado: 300 px/s independentemente do FPS.

Exercício 7 · State machine (15 pts)

Desenha em caixas + setas a state machine de um jogo simples com: Menu, Jogar, Pausa, Game over, Vitória.

Indica que eventos causam cada transição.

            [Menu] ───(Play)──→ [Jogar] ←──(Resume)──→ [Pausa]
                                                       
                                  └────(Esc)────────────┘
                                 
                         (perdeu)        (ganhou)
                                                    
              └────(Menu)─── [Game Over]        [Vitória] (Próximo) [Jogar]
                                                      
                                                      └─(Menu) [Menu]

Eventos típicos: - Menu → Jogar: clica "Play". - Jogar → Pausa: tecla Esc. - Pausa → Jogar: Resume / Esc. - Jogar → Game Over: vidas = 0. - Jogar → Vitória: objectivo cumprido. - Game Over/Vitória → Menu: clica "Menu". - Vitória → Jogar (próximo nível): clica "Próximo".

Parte IV · Aplicação

Exercício 8 · Scope (10 pts)

Tens 2 semanas. O teu colega diz: "vamos fazer um RPG 3D online com 50 horas de campanha, sistema de classes, crafting e PvP."

Quais são os 3 problemas com este scope e o que propões em alternativa?

Problemas: 1. Conteúdo — 50h de campanha = story, NPCs, voice-over, ambientes — inviável em 2 semanas com qualquer equipa. 2. Tooling — 3D + multiplayer exige engine pesada (Unity/Unreal), netcode, servidor. 3. Polish — RPG com classes/crafting/PvP precisa balance e testes que excedem o prazo.

Alternativa: dungeon crawler 2D top-down com 1 mecânica principal (atirar/atravessar/empurrar), 3-5 ecrãs e um boss final. 1 personagem, sem multiplayer. Foco em game feel e playtest.

Exercício 9 · Game feel (10 pts)

Vês um vídeo de duas versões do mesmo platformer. A versão B sente-se "viva" e a A morta. Aponta 5 técnicas que provavelmente diferem entre A e B.

  1. Squash & stretch na aterragem (espremer e esticar o sprite).
  2. Screen shake em embates/colisões.
  3. Partículas ao saltar, aterrar, atirar.
  4. Hitstop / freeze frame (1-2 frames congelados ao atingir inimigo).
  5. SFX sincronizado a cada ação (saltar, aterrar, ferido).
  6. Coyote time + jump buffer + salto variável (responsividade).
  7. Cor pisca quando ferido / animação de dano.
  8. Câmara que segue com pequeno delay (não rígida).

(5 quaisquer.) Todas pequenas, somadas mudam tudo.