quarta-feira, 15 de abril de 2009

Ressucitando o Blog

De volta à ativa!

Bom gente, após um bom tempo sem postar o que está acontecendo no projeto, o grupo vai atualizar tudo o que aconteceu até agora. Basicamente como muitos já devem saber essa terça ocorreu a entrega do PDP. Essa foi uma etapa super importante do trabalho, rediscutimos grande parte da mecânica e finalmente visualizamos um jogo que suprisse nossos objetivos. Agora, com o jogo prontinho no papel, é hora de colocar as mãos na massa e tornar esse projeto em algo real! Bom, aqui eu vou falar um pouquinho sobre a mecânica e a adaptação do conto para o jogo.

Mecânica e Adaptação

Já discutimos muito sobre os elementos do conto que deveríamos preservar em nossa adaptação e a resposta foi: quase tudo. Seria praticamente um sacrilégio descartar todo o universo e características das personagens que Isaac Asimov colocou no conto Razão e em todo o livro "Eu, robô". Por isso decidimos manter o mesmo universo, protagonistas e antagonistas. A essência do conto, que gira em torno do suspense narrativo. O que a nossa adaptação fez foi simplesmente pegar a história original, dar uma "apimentada" nela e fazer o roteiro do jogo em acontecimentos posteriores aos do conto original. Para isso criamos 2 personagens novas, Chuck Bauer e sua parceira Claire Bow Tox, as personagens principais do jogo.

Quanto a mecânica, para quem testou o nosso modelo funcional, deve se chocar com as mudanças que ocorreram nela. O grupo discutiu e decidimos que não seria possível, ou melhor dizendo, satisfatório, encaixar a adaptação em um jogo de plataforma 2d. E realmente, o ambiente era super limitado e não fazia muito sentido continuar com a velha mecânica. Com tudo jogado no lixo, o modelo adotado foi a simulação de 3d em um modelo isométrico e a mecânica sendo voltada mais para a estratégia e menos para ação, preservando a essência do suspense no jogo.

Conflitos com a nova proposta

A partir disto tudo definido, apresentamos nossa proposta para nossos orientadores do projeto, Igor e Hamide, junto ao walkthrough do jogo. A resposta deles deixou o grupo preocupado: o projeto está muito extenso. Isso gerou um pouco de controvérsia sobre a possibilidade de baixar dratiscamente a qualidade do projeto (que gira em torno da narrativa, que era o fator que deixava o jogo longo) ou arriscar este projeto e correr o risco de não terminá-lo. Decidimos pegar o caminho mais difícil, embora o professor Igor tenha desaconselhado muito segui-lo, o grupo não tem medo de aceitar um grande desafio e conhece muito bem suas própria capacidade, logo sabemos que é possível.

Divisão de Tarefas e Cronograma

Acho que posso dizer que tudo ficou mais tranquilo após montarmos a divisão de tarefas e um pequeno conograma do desenvolvimento do projeto. Ficou decidido o seguinte:

Divisão de tarefas:
Programação Geral do Jogo: Bruno
Animação e Design de Personagens: Luana e Renato
Design de Cenários: Rafael e Victor
Design de Som: Dhiego
Efeitos e Finalização de Visual: Caio

Cronograma:
13/04
-Entrega do Projeto de Desenvolvimento Projetual(PDP)
- Reunião do grupo para discussão do desenvolvimento do Projeto
14/04
-Início do desenvolvimento da Engine do Jogo
-Início da Animação das Personagens
-Início do Design fos Cenários
16/04
-Término do desenvolvimento da Engine do jogo
30/04
-Finalização da versão Alpha do jogo e início do primeiro estágio de testes com usuário
07/05
-Término do primeiro estágio de testes com usuários, análise dos resultados e início da correção dos erros do jogo.
15/05
- Finalização da versão Beta do jogo, início do estágio final de testes com usuário.

Assim como previsto na divisão de tarefas, a minha parte é toda a programação do jogo, por isto vou fazer uma breve explicação deste assunto.

Estratégia de Programação

AS3 e POO

Assim como qualquer programador que se depara com o flash, quando se começa a trabalhar com o ActionScript 2.0, a primeira coisa que se passa pela sua cabeça é: "Mas que porcaria é essa?!". O AS 2.0 se diferencia um pouco das linguagens básicas de programação e foca muito mais na parte do Design do projeto do que no Design do código, e isso, embora permita uma grande facilidade para as pessoas que não se aprofundam muito na área da programação, dificulta o desenvolvimento de projetos maiores e mais complexos.

Foi por este motivo que o AS 3.0 foi criado. É uma linguagem mais limpa e sotisficada, e segue um conceito muito cobrado atualmente: segue a linha de Programação Orientada ao Objeto (POO). Embora ainda esteja um pouco longe da sotisficação de linguagens POO, como c# e java, o AS 3.0 trouxe ao flash a liberdade do programador independente do artista (código e arte completamente separados, ao contrário do que acontecia no AS 2.0), permitindo o desenvolvimento do código sem a necessidade de uma arte fixa e muito mais permutável.

Comecei o desenvolvimento da engine hoje. Descobri a grande dificuldade de desenvolver jogos isométricos: Como tratar um sistema de coordenadas 3d em um sistema 2d como o flash, que nem mesmo segue o plano cartesiano normal. E não só isso, a documentação na web e em livros é escassa e de pouca qualidade, logo foi inevitável fugir das velhas contas de álgebra e geometria para o desenvolvimento da engine. Mais para frente colocarei um tutorial que explique a lógica do código utilizado para a nossa engine, quem sabe deixando mais rica a documentação da web sobre este assunto.

Outra coisa que também pesou para o desenvolvimento da engine foi o fato de nosso jogo não ser dividido cenário/fase (a cada mudança de cenário, uma fase nova) e ele preza dar liberdade ao jogador para seguir o caminho com suas próprias tentativas e falhas. O grande problema disto é que é preciso manter um enorme banco de dados contendo informações de todos os objetos do jogo (o que inclui as 5 personagens, cerca de 30 inimigos e 50 objetos). O banco de dados foi desenvolvido já com o intuito de criar senhas que gravem a exata posição do jogo. Como nosso jogo é um pouco longo, foi sensata a decisão de desenvolver um sistema onde o jogador possa continuar o jogo de algum modo.

Bom, basicamente é isto o resumão desta parte do projeto. Mais para frente o resto do grupo virá falar um pouco sobre o Visual, Sons e mais detalhes da adaptação!

Por: Bruno Tachinardi.

Nenhum comentário:

Postar um comentário