Quebrando tabus!

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Quebrando tabus!

Mensagem por TRFN em Qua 24 Abr 2013, 10:21

Ola galerinha.
Eu queria muito quebrar dois tabus para mim pelo menos, que são desenvolver um jogo de luta estilo Mortal Kombat e desenvolver um jogo de corrida no estilo Top Gear 2, ambos com o 2D.
A ideia do jogo de corrida, carros, estaria baseada em um jogo com efeito parallax sincronizado entre objetos de cada elemento na fase, mas ai eu me complico, porque não vejo uma forma dinâmica de fazer isso sem o uso do GM3D.
A ideia do jogo de luta para mim é a mais simples, porque eu tenho uma boa noção de como realizar. Entretanto, seria muito complicado fazer por estar muito extenso. Queria também tornar mais dinâmico ao invés de programar cada condição. Algo como Auto-Detect. Scripts seriam uma saída, mas em senso de organização alguma sugestão é bem vinda.

Então alguem teria alguma sugestão quanto a formulação, ideia de como projetar ? E por favor, o problema não é a programação, é a criatividade que me falta.

___________



TRFN

Ranking : Nota C
Número de Mensagens : 970
Idade : 21
Data de inscrição : 16/01/2012
Notas recebidas : C
Reputação : 33
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 2

http://trfnsite.com

Voltar ao Topo Ir em baixo

Re: Quebrando tabus!

Mensagem por saim em Qua 24 Abr 2013, 10:47

Me dou muito mal com jogos de corrida. Ainda não me arrisquei com jogos de luta, porque o TRABALHO é muito grande, mas a programação não parece tão complicada.

Primeiro, você vai precisar de uma máquina de estados finitos. Isso você já sabe. Mas tenho que mencionar isso por causa do que vem depois.

É o seguinte, você vai precisar de colisões condicionais. Na colisão, você usa um switch.
Código:
if (o adversário não está bloqueando nem invencível){
switch(estado){
case (golpe1):{ with(other) { recebe_golpe1()}};break;
case (golpe2):{ with(other) { recebe_golpe2()}};break;
case (golpe3):{ with(other) { recebe_golpe3()}};break;
}
}
Encha de exceções e condicionantes pra cada golpe e seu jogo fica melhor. Nos scripts de "recebe_golpe", claro que você precisa mudar o estado de quem recebeu. Quando o adversário está caído, ele fica invencível, pra não levar outra lenhada de graça.

Uma IA num jogo bem-feito provavelmente vai avaliar o estado do jogador, escolher uma entre um número de reações e aplicar o comando diretamente no objeto-inimigo. Tipo, os objetos podem ter entrada de dados simples, no begin step, como
Código:
comando[0] = keyboard_check(vk_right) - keyboard_check(vk_left);
e reagir ao valor de "comando[0]", ao invés de reagir diretamente ao comando. Daí, a IA pode usar o mesmo begin step pra definir o valor dessa variável, caso o objeto não esteja sendo controlado pelo jogador.
Não sei se fui claro, aqui.

Bom, são só idéias. Eu tentaria fazer assim, mas não tenho certeza se funciona. Acho que vale a pena arriscar.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum