quinta-feira, dezembro 31, 2009

Glug Glug - Remake

Em agosto deste ano eu fiz um remake do jogo Glug Glug (um jogo originalmente lançado na década de 80 para o ZX Spectrum) utilizando o XNA Game Studio. Para quem não conhece, no jogo você controla um mergulhador que deve ir até o fundo do mar resgatar alguns baús com tesouros e trazê-los de volta ao navio. Isto, é claro, evitando ser atacado por piranhas, tubarões e outras criaturas marinhas.

Menu principal do jogo. Clique para ampliar.
O jogo é bastante simples, mas tem uns conceitos legais (como o tubo de oxigênio ser cortado caso seja atingido por um tubarão). Ao invés de repetir as fases originais, eu criei uma forma das fases serem geradas aleatoriamente, onde cada tipo de inimigo tem uma chance diferente de aparecer. Nas últimas fases a porcentagem dos tubarões, por exemplo, é bem maior que nas primeiras. Ao todo foram criadas sete fases, mas é bem fácil adicionar novos níveis.

Eu me preocupei em fazer um jogo simples e rápido. A implementação de todo o jogo levou cerca de duas semanas, em seções esporádicas de programação, já que eu estava a todo vapor com o mestrado e o projeto da Direção Defensiva na época. Por isso mesmo, fora da tela de jogo a interface é bem pobre, ao invés de botões pressionáveis com o mouse, o usuário apenas tem que apertar os números correspondentes às opções. Não há grandes configurações possíveis, apenas se o jogo deve rodar em modo janela ou tela cheia.

Tela de jogo. Clique para ampliar.
Os gráficos foram todos reaproveitados do jogo original, tirados deste link, mas eles foram redimensionados (no Paint mesmo) para permitir trabalhar com uma resolução mais alta. É claro que são gráficos bem pobres, mas eu acho que esses jogos antigos pixelados têm seu charme. Segue um vídeo do jogo, feito durante seu desenvolvimento.



Ficaram faltando alguns detalhes, especialmente uma música e outros efeitos sonoros (atualmente só o tiro faz algum barulho). Também seria interessante colocar algum tipo de ranking, mas eu não cheguei a mexer nessa parte.

O download, para quem se interessar, pode ser feito aqui. O arquivo inclui o executável do jogo e seu código-fonte completo. Qualquer observação que queiram fazer sobre o jogo, sintam-se à vontade.

Importante: para jogar, é preciso ter ao menos o XNA 3.1 Redistributable instalado. Quem não tiver, pode fazer o download aqui.

terça-feira, dezembro 29, 2009

Meme: Os melhores de 2009

Eu fui convidado pelo Bruno Croci para participar deste meme (iniciado pelo Tiago Frossard) sobre os melhores jogos que joguei esse ano. Como no meio do ano eu comprei um PC novo, com uma placa de vídeo decente, pude curtir alguns bons jogos nesse segundo semestre. Também joguei algumas coisas legais no PS2. Vamos à lista:

Mirror's Edge
A jogabilidade do Mirror's Edge realmente é muito inovadora e chega a dar um frio na barriga ao pular entre os prédios e andar em lugares muito altos - melhor nem olhar pra baixo. Os gráficos são muito bonitos e a direção de arte dá um show. Sem falar em "Still Alive", a música do final do jogo que ficou grudada na minha cabeça por mais de mês.

Fallout 3
Infelizmente fui apresentado à série Fallout muito tarde. Eu simplesmente não consigo jogar os jogos antigos, acho limitados demais. Mas o terceiro episódio é fantástico, a ambientação é perfeita (vide as músicas de época, os cartazes instrutivos...) e as possibilidades, os caminhos são os mais diversos. Você pode resolver as missões de várias maneiras (explodir Megaton ou não? Eis a questão!) e tem quests enormes que podem ou não ser feitas. Alto fator replay.

Fallout 3
Mass Effect
Esse eu terminei ontem à tarde, numa maratona desde a última quinta-feira quando ele chegou aqui em casa (o que pra mim é um tempo bem curto pra terminar um jogo, ainda mais um RPG, já que não costumo ter paciência para jogar muito tempo direto). Inicialmente lembra um pouco Star Wars, por causa dos Aliens, das viagens espaciais e tal, mas a falta do sabre de luz e da Força fazem muita diferença. O suficiente pro jogo ter uma cara própria. É um shooter misturado com RPG, mas diferente do Fallout, aqui os combates são bem mais intensos. Que venha o 2.

Call of Duty: Modern Warfare 2
Esse é chover no molhado, mas eu não podia deixar de citar. O primeiro jogo já era demais e as coisas só melhoraram nesse segundo capítulo. Ação cinematográfica do começo ao fim, uma verdadeira mega produção.

Ico
Um dos melhores jogos que joguei no PS2. Ico é legal por ser simples, nada de campanha épica, nada de salvar o mundo. Você é um garotinho com chifres tentando escapar do castelo enquanto protege a mocinha que você conhece no começo. Algumas surpresas e outras decepções no seu caminho dão ao jogo um gosto especial. Podia ter uma continuação... (se bem que The Last Guardian vai ser quase isso).

Bem, eu joguei muitas outras coisas esse ano, alguns jogos eu joguei bastante e outros só um pouquinho, mas esses são os que vieram à cabeça agora pra recomendar. Detalhe: resolvi listar somente jogos que eu terminei esse ano, ou seja, deixei de fora bons jogos que por um motivo ou outro eu não cheguei até o fim.

Como já está tarde e eu estou com preguiça de verificar pra ver que já foi convidado, deixo o convite aberto a quem quiser participar do meme. Postem seus melhores jogos ai!

quarta-feira, dezembro 23, 2009

Jogo - Direção Defensiva

Este ano, ao entrar no mestrado, eu comecei a trabalhar em meu primeiro jogo profissionalmente. Em uma parceria entre a T&T (uma empresa de treinamento em jogos no Rio de Janeiro) e a UFF, nós tivemos financiamento da FAPERJ para a construção de um jogo sobre educação no trânsito, chamado provisoriamente de Direção Defensiva.

O projeto é pequeno, contando com uma equipe de menos de dez pessoas, sendo apenas eu e mais um aluno do mestrado como programadores. Ainda assim, é um projeto importante, não só por seu objetivo (educar motoristas), mas também por ser um jogo financiado por um órgão de fomento, algo não tão comum, infelizmente.

Para o desenvolvimento nós utilizamos o Unity e ficou sob nossa responsabilidade a elaboração de componentes que definem as funcionalidades do jogo, como o controle do carro, verificação se ultrapassou o sinal vermelho e etc. Este paradigma de programação orientada a componentes foi novidade pra mim, mas acho muito interessante. Tudo o que desenvolvemos é reutilizável, tanto em uma eventual continuação do jogo quanto em outros jogos de carro. Este processo foi muito facilitado pelo próprio Unity, que oferece uma maneira bem simples de se trabalhar com componentes.

A idéia central é apresentar uma cidade ao jogador onde ele deve realizar entregas dentro de um determinado limite de tempo. Ao contrário de jogos que seguem esta linha, como Crazy Taxi, aqui o jogador deve seguir as leis de trânsito, andando sempre na mão correta, não ultrapassando sinais vermelhos, respeitando os limites de velocidade, entre outras. O objetivo é oferecer diversão, mas ao mesmo tempo mostrar estas regras que não podem ser desrespeitadas.

É interessante notar como o jogador pode ficar tentando em alguns casos. Às vezes acontece da bússula apontar que o ponto de entrega está logo à sua frente, mas a rua é contra-mão, então o jogador tem que dar a volta por todo quarteirão para entrar no sentido correto. É algo similar ao que ocorre na vida real, embora de vez em quando a gente veja um espertinho entrando na contra-mão em uma rua menos movimentada para cortar caminho.

A medida que o jogo progride, a dificuldade aumenta. O cansaço faz com que o motorista tenha que parar em bares ou padarias para repor as energias e nessas paradas ele pode ser tentado a beber, o que o fará dirigir sob influência do alcóol (com um efeito bem legal de direção bêbada).

Este projeto já apareceu bastante na mídia, incluíndo esta reportagem no Jornal do Brasil: Game da UFF ensina direção defensiva. E este vídeo no G1:


O jogo ainda não tem data de lançamento definida, mas deve sair em algum momento de 2010. A distribuição, através de parceiros, deve ser feita gratuitamente.

Obs.: as imagens do jogo mostradas no vídeo ainda não representam sua versão final. Algumas alterações ainda devem ser feitas.