Anti-Invaders – um projeto didático.

AntiInvadersUmProjetoDidatico

Este post é o primeiro de uma série que vai documentar a evolução de um projeto inteiro, desde o game design até o produto final. O projeto tem o objetivo de ser didático e por isso foi escolhido um jogo de navinha (shooter) e será desenvolvido utilizando a tecnologia Java. Neste post conheceremos a primeira versão do GDD e a história de fundo do jogo.

O nome do jogo é Anti-Invaders. É um jogo de tiro espacial como vários outros que apareceram ao longo do tempo. É um gênero bem conhecido e de implementação relativamente simples, por isso mesmo uma boa escolha para um projeto didático.

A idéia é mostrar umprojeto simples porém completo, desenvolvido com protótipos e releases e comentando cada evolução em posts semanais. Serão decisões de game design, de arquitetura de software e de implementação que, no final, darão uma visão completa do processo.

Acredito que será útil principalmente para quem está iniciando e não tem, ainda, noção clara do processo como um todo.

Iniciaremos, então, com a primeira versão do GDD (Game Design Document), criado com base neste post do Everton, embora bem simplificado. Algumas seções não foram preenchidas – nelas está anotado o que deveria ser colocado alí. O foco deste documento é na história de base, fases (tamanho do jogo) e controles. Clique no link abaixo para baixar o PDF.

GDD_Anti_Invaders

Semana que vem teremos um protótipo do jogo para ter idéia do que querermos fazer.

Autor: Luiz Nörnberg Ver todos os posts de
Sou Bacharel em Ciência da Computação pela Universidade Católica de Pelotas (UCPel), onde também atuei como professor. Desde a época da faculdade (mais de quinze anos atrás) a paixão por jogos tem sido importante no meu direcionamento profissional. Sou sócio-fundador do Izyplay Game Studio, onde exerço o cargo de Diretor de Tecnologia. Sempre tive grande foco em desenvolvimento em Java, embora tenha migrando para a tecnologia Adobe AIR em função de sua portabilidade. Ah, e é claro, dou meus palpites no game design.

6 Comentários em "Anti-Invaders – um projeto didático."

  1. Henrique Vilela 30/06/2010 at 22:18 - Reply

    Vou salvar pra usar como meu trabalho na aula de modelagem e documentação de jogos. :D

  2. GABRIEL 11/03/2011 at 18:36 - Reply

    Gostei bastante da documentação, vai me ajudar estou desenvolvendo uma especie de simulador de zumbi, mas ainda estou na duvida se faço em flash ou java para celular. Gostaria de ver a continuação dessa materia, mesmo ja tendo passado 6 meses.

  3. Bárbara Bueno 12/02/2013 at 15:54 - Reply

    Olá!

    Eu estava dando uma olhada em alguns projetos de jogo e comparando várias coisas (já descobri que na verdade não existe padrão, mesmo para jogos do mesmo gênero), daí, dentre outras coisas, fiz um paralelo entre o Anti Invaders e o modelo apresentado naquele artigo sobre ter sorte no desenvolvimento de games (http://blog.abrindoojogo.com.br/trabalhar-com-jogos-e-uma-questao-de-sorte-parte-final) e fiquei com dúvidas:
    O Projeto de Níveis do artigo da sorte é a mesma coisa que a Progressão no Jogo do Anti-Invaders?
    E em relação aos Diagramas de Progresso? Eles são apenas para histórias não lineares? Ou neles descrevo o aumento de dificuldade ao longo dos níveis e o que é necessário para passar?
    Na Progressão no Jogo de Anti Invaders, são descritos os contextos e os aspectos visuais das fases. Num jogo abstrato, estilo Tetris, funcionaria apenas descrever as coisas que estou atribuindo aos diagramas de progresso?

    Mais uma vez, agradeço as orientações!

    • Luiz Nörnberg 13/02/2013 at 12:13 - Reply

      Olá Barbará! Vamos às suas dúvidas. Vou ser um pouco extenso, mas é uma dúvida comum a relação entre progressão e level design, merece o detalhamento.

      A progressão do jogo tem relação com as fases do jogo, mas não é level design. A progressão registra o que vai ocorrer com relação à evolução do jogador, onde ele ganha tal poder, onde morre o coadjuvante, onde o jogador precisa decidir qual caminho tomar, etc. De certa forma ele indica as modificações que ocorrem no jogo ao passar de fase, ao progredir no jogo. Em geral, usamos o diagrama para projetos não lineares mesmo. No Anti-Invaders não temos uma bifurcação/decisão sequer. Por isso foi substituído pelas lista textual (seção “progressão no jogo”).

      Já o level design, que no Anti-Invader é chamado de “projeto de níveis”, consiste no projeto detalhado de casa fase. Mostra o posicionamento de cada plataforma, de cada nave, de cada NPC de forma a criar o desafio e a experiência desejados. Ele indica o que ocorre dentro de cada fase, o mapa dela, por assim dizer.

      Em um jogo estilo Tetris, precisamos definir o que ocorre quando o jogador “passa de fase”, mas não projetamos cada fase em sí. Então usamos a progressão do jogo para especificar como a dificuldade evolui. Podemos dizer, por exemplo, que a velocidade das peças aumenta 2 pontos por nível e que a partir do nível 10 começam a aparecer powerups.

      Em um jogo estilo breakout (arkanoid), temos tanto a progressão quanto o level design. A progressão poderia ser assim: teremos 5 fases visualmente diferentes e inimigo final; depois as fases repetem com inimigos dentro (além dos blocos), etc. O level design consiste no posicionamento de cada bloco que forma cada fase, de quantos inimigos terão dentro delas e qual sua posição inicial.

      No processo de criação do projeto, a progressão vem antes, porque dela podemos tirar quantas fases vamos ter no jogo e qual nível de dificuldade cada uma vai ter. Isso é trabalho do game designer. Só depois disso definido é que os level designers vão trabalhar no conteúdo de cada fase especificamente.

  4. Bárbara Bueno 14/02/2013 at 15:49 - Reply

    Muito Obrigada, Luiz Alessandro!

    Vc não tem ideia do tamanho do nó que desfez na minha cabeça!

Deixar um Comentário