quinta-feira, janeiro 07, 2010

XNA Freeway - Remake

Quem acompanha o blog já deve ter percebido que eu gosto de fazer remakes. Que eu me lembre, já foi o Frogger, Pong, Breakout, Space Invaders (mais de um, na verdade), Pacman e Glug Glug. O motivo é bem simples: os remakes me permitem focar o estudo em uma linguagem, ferramenta ou técnica sem ter que passar por toda a parte de planejamento e game design. Como o meu foco sempre foi muito mais no desenvolvimento do que na criação, essa é uma boa maneira de aprender.

[Ainda assim a área de criação me atrai, com o tempo eu gostaria de criar mais jogos originais (como é o caso do Gosmotrix, feito em parceria com amigos da faculdade, e do Paraquedismo).]

Nos últimos dias eu criei um remake do jogo Freeway, do Atari, utilizando o XNA. A idéia foi recriar o jogo original e fazer somente algumas modificações menores que eu achei necessárias (como o menu na parte de baixo da tela para configuração do jogo). Se bem me lembro, comecei o projeto no último sábado e na terça-feira ele já estava praticamente concluído. De lá pra cá fiz apenas correções de uns bugs e a documentação do código.


Bem, para o desenvolvimento eu usei como base o original (jogado no emulador Stella), e o manual e o FAQ do jogo, que me ajudaram bastante a entender alguns de seus detalhes (especialmente o FAQ, que detalha a velocidade dos veículos, seu espaçamento, direção...).

Foram feitas somente as quatro primeiras fases. Segundo o FAQ, as fases seguintes são repetições das primeiras, apenas com diferença na velocidade dos veículos, portanto eu não cheguei a desenvolver esta parte.

Neste projeto deu pra brincar com algumas coisas legais do XNA, como o uso de GamePads, a utilização de GameComponentCollection e seus eventos, e alguns detalhes legais sobre como tirar screenshots usando Threads e o método EndDraw, baseado no código de Nick Gravelyn. Por isso só já vale a pena ter perdido umas horinhas no seu desenvolvimento.

Pra quem tiver interesse, eu estou disponibilizando juntamente com o jogo seu código-fonte completo. As instruções de como jogar estão em um arquivo de texto dentro do zip. O download pode ser feito aqui e comentários são sempre bem-vindos.

Por fim, uma questão filosófica: Por que mesmo a galinha atravessou a rua?! Talvez pra ganhar uns pontos...

Nenhum comentário: