PROJ. IA368 1S2008 Proposta inicial: projeto de um jogo utilizando Java ME Roger Larico Chavez RA: 022693 Março 2008 PROJ. IA368 1S2008 Proposta inicial: projeto de um jogo utilizando Java ME Com as linguagens de script ganhando popularidade no lado cliente e servidor, é lógico levar os princípios que está por trás dessas linguagens para os dispositivos móviles de utilização em massa como celulares, PDA, etc. Esse é o propósito Java ME. Como proposta inicial de um projeto JavaME para um processo de aprendizado temos que escolher uma aplicação, especificamente um jogo para algum dispositivo portátil. Tendo em contas requerimentos tanto do jogo assim como recursos desses dispositivos. Esta proposta se deriva de um jogo muito simples que foi evoluindo e tornando-se muito complexo para computadores pessoais (Batalha Mortal). Este jogo foi conhecido como jogo da mioca, guerra de botes, etc. A idéia é basicamente a seguinte. Idéia Básica - - - E um jogo de ação e estratégia. O jogador principal esta em um campo de batalha junto a um ou mais jogadores ‘maquina’. Cada jogador guerreiro conta com o auxílio de um mobilie, uma espécie de máquina de batalha. Cada mobilie tem uma arma para atirar um projétil, uma vida finita e movimentação. O campo de batalha é um solo, simula um ambiente com campo gravitacional uniforme. Para o torneio, diversos mobilies estão disponíveis para escolha. Cada jogador atira um projétil, um por vez. Podendo escolher atirar duas vezes seguidas e deixar de jogar uma vez. Para cada vez que ele atira, faz com um ângulo e uma força determinada pelo jogador. Basicamente é fazer um calculo matemático de movimento, tendo em conta a posição inicial o ângulo para atirar e a força como se descreve a seguir: Velocidade do vento vv g , , P1 P2 P3 A - Onde o projétil é disparado com uma velocidade inicial (depende da velocidade do projétil e a velocidade do vento somado), formando um ângulo com o solo, em um local com gravidade constante . A partir das fórmulas de movimento da cinemática, é possível construir fórmulas diretas, nas quais é o alcance do projétil e é o tempo que o projétil leva para atingir o solo. Idéia a desenvolver Temos uma idéia básica talvez muito simples que como foi dito pode evoluir muito para deixar o jogo divertido. No entanto para um software para um dispositivo portátil devemos tirar as características de este tipo de jogo evoluído (um jogo para desktop chamado gunbound), onde requer recursos gráficos e de processamento elevado, assim começamos a evoluir da idéia básica para alcançar algumas características mais atraentes para o usuário final. A idéia a desenvolver é: - Adicionar tipos de projétil para cada mobílie. - Adicionar um avatar para os jogadores que aumentam características da forma de jogar. Como por exemplo um avatar poderá permitir ter algum tempo a mais para executar o lançamento, aumentar um pouco a vida,empurrar ao adversário com o projétil, etc. - Uma característica do jogador maquina é fazer níveis de dificuldade. Dado que não seria interessante se o jogador maquina sempre ganhar. Damos uma pequena gama de erros aleatórios. - O vento deve mudar severamente para adicionar incerteza do usuário. - Fazer um jogo multiusuário no mesmo aparelho. Jogador A e B - Queda de objetos aleatórios como raios, vida extra, etc. - Uma plataforma deformável, se for possível e interessante sera desenvolvido (avaliar a quantidade de memória e processamento extra) - O ângulo do mobilie depende do solo. - Wallpapers de tela de acordo com o jogador Características detalhadas (ainda a definir) Pré-jogo - Tela de entrada sera uma avatar e um mobílie mais elaborado. - Menu principal o Login do jogador Novo Jogo o Ajuda (regras e controles) o Configuração (áudio, mobílie, avatar, etc) o Ranking dos usuários o Sair Jogo - Sera permitido parar, sair e continuar, mas a tela sera coberta para evitarem jogadas desleais. Criaram-se um nível de incerteza nos jogadores maquina, difícil, normal, fácil Sera apresentado informação de estado do tempo o ângulo somente do jogador que esteja jogando, a vida do jogador usuário sempre sera visível. Gerara-se uma tela com as regras e as teclas a utilizar para movimenta o ângulo (acima, abaixo), a movimentação do móvel (esquerda e direita) e outras informações. Finalmente o ganhador sera quem fique com vida e se mostra os pontos ganhados nessa partida. Esses pontos dependem da vida restante, e pontos adicionais para ângulos “difíceis” e serão acumulados mesmo ganhando ou perdendo o que gerara um ranking.