Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Tutorial: Lógica em jogos de luta (colisões) Parte 2
5 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Tutorial: Lógica em jogos de luta (colisões) Parte 2
Resumindo o tutorial passado (Parte 1), existem duas caixas (de colisão e impacto) que funcionam como Masks nos jogos de luta, e ainda existe um objeto que mostra os sprites do personagem.
As prioridades nas colisões são:
1) Colisão (rosa) x impacto (vermelha) = vencedor > impacto vermelha.
2) Impacto (vermelha) x impacto (vermelha) = vencedor > ambas perdem.
obs: Não preciso falar que colisão x colisão não dá em nada, afinal, não são ataques.
Vamos a prática:
cena1: Dhalsim em pé frente a athena. Ambos não estão atacado então devem ter somente caixas de colisão (rosa).
cena2: Dhalsim ataca athena. Dhalsim tem caixas de colisão por todo o corpo (rosa: ele tem ate nos braços pois mesmo atacando a athena pode contra-atacar e dar double KO) e tmb caixas de impacto (vermelha) nos braços. Já athena só tem caixas de colisão. Como ocorre a colisão entre as caixas de impacto nos braços do dhalsim, e as de colisão da athena, ela perde o evento e é mostrada a cena dela apanhando. (¬¬)
Ok, então como o objeto principal que representa Dhalsim e o objeto que representa Athena se comportarão no momento do impacto?
Simples, as caixas de colisão de Athena devem "avisar" ao objeto Athena (obj que mostra os sprites dela), que a mesma perdeu a colisão, e que deve ser mostrado o sprite dela apanhando ou pode ser outro objeto, que é como eu prefiro fazer pra simplificar.
Tipos de Fall (apanhando):
Existem várias formas de mostrar o personagem apanhando, e isso depende do tipo de hit que o personagem levou e do jogo em si. Exemplo:
a) tapa na cara
b) soco na barriga
Você deve padronizar esses tipos de impactos e criar objetos com esses sprites, e, a cada tipo de impacto surge um objeto "apanhando" diferente. Lembrando que, é o ataque quem determinará que tipo de objeto "apanhando" irá aparecer. obs: nos jogos de luta esses objetos ou animações dos personagens apanhando se chamam "fall".
Existem falls para golpes, fortes, golpes fracos, rasteiras fracas, rasteiras fortes etc.
Resumindo o tutorial parte 2:
Vc deve criar objetos com os sprites fall diferentes:
a) recebendo golpe fraco em pé
b) recebendo golpe forte em pé
c)recebendo golpe fraco abaixado
d)recebendo golpe forte abaixado
e) recebendo rasteira e caindo para traz (fall completo).
De posse desses objetos ficará fácil fazer os eventos de colisão.
Na próxima e última aula trarei um engine com um exemplo com dois personagens parados, um ataca o outro com caixas de colisão e de impacto, o outro recebendo impacto e um caso de double KO (dos dois se acertando ao mesmo tempo).
As prioridades nas colisões são:
1) Colisão (rosa) x impacto (vermelha) = vencedor > impacto vermelha.
2) Impacto (vermelha) x impacto (vermelha) = vencedor > ambas perdem.
obs: Não preciso falar que colisão x colisão não dá em nada, afinal, não são ataques.
Vamos a prática:
cena1: Dhalsim em pé frente a athena. Ambos não estão atacado então devem ter somente caixas de colisão (rosa).
cena2: Dhalsim ataca athena. Dhalsim tem caixas de colisão por todo o corpo (rosa: ele tem ate nos braços pois mesmo atacando a athena pode contra-atacar e dar double KO) e tmb caixas de impacto (vermelha) nos braços. Já athena só tem caixas de colisão. Como ocorre a colisão entre as caixas de impacto nos braços do dhalsim, e as de colisão da athena, ela perde o evento e é mostrada a cena dela apanhando. (¬¬)
Ok, então como o objeto principal que representa Dhalsim e o objeto que representa Athena se comportarão no momento do impacto?
Simples, as caixas de colisão de Athena devem "avisar" ao objeto Athena (obj que mostra os sprites dela), que a mesma perdeu a colisão, e que deve ser mostrado o sprite dela apanhando ou pode ser outro objeto, que é como eu prefiro fazer pra simplificar.
Tipos de Fall (apanhando):
Existem várias formas de mostrar o personagem apanhando, e isso depende do tipo de hit que o personagem levou e do jogo em si. Exemplo:
a) tapa na cara
b) soco na barriga
Você deve padronizar esses tipos de impactos e criar objetos com esses sprites, e, a cada tipo de impacto surge um objeto "apanhando" diferente. Lembrando que, é o ataque quem determinará que tipo de objeto "apanhando" irá aparecer. obs: nos jogos de luta esses objetos ou animações dos personagens apanhando se chamam "fall".
Existem falls para golpes, fortes, golpes fracos, rasteiras fracas, rasteiras fortes etc.
Resumindo o tutorial parte 2:
Vc deve criar objetos com os sprites fall diferentes:
a) recebendo golpe fraco em pé
b) recebendo golpe forte em pé
c)recebendo golpe fraco abaixado
d)recebendo golpe forte abaixado
e) recebendo rasteira e caindo para traz (fall completo).
De posse desses objetos ficará fácil fazer os eventos de colisão.
Na próxima e última aula trarei um engine com um exemplo com dois personagens parados, um ataca o outro com caixas de colisão e de impacto, o outro recebendo impacto e um caso de double KO (dos dois se acertando ao mesmo tempo).
Última edição por Anderson3d em Sáb 16 Abr 2011, 15:23, editado 1 vez(es)
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 2
intendi nada ae :--':
00kutles00- Data de inscrição : 27/08/2010
Reputação : -1
Número de Mensagens : 31
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 2
Ótimo tutorial, mostra que jogos de luta não é para qualquer um, é uma pena que muitos vão apenas baixar sua engine e dizer que fizeram um jogo completo.
Essas técnicas vão me ajudar num (futuro) jogo de plataforma.
Parabéns.
Off tópico:
Seus sprites estão cada vez melhores, estou ansioso para ver seu jogo do concurso Halloween.
Essas técnicas vão me ajudar num (futuro) jogo de plataforma.
Parabéns.
Off tópico:
Seus sprites estão cada vez melhores, estou ansioso para ver seu jogo do concurso Halloween.
CRP-Max- Games Ranking :
Notas recebidas : C
Data de inscrição : 28/10/2008
Reputação : 29
Número de Mensagens : 822
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 2
vai ter outra aula ainda ou ja acabou? pq não entendi como posso juntar as duas partes do ataque
manobrother- Data de inscrição : 31/10/2013
Reputação : 10
Número de Mensagens : 206
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 2
Creio que não rapaz, o Anderson não entra no fórum desde novembro do ano passado. Respondendo a sua dúvida, a caixa de colisão que ele fala pode ser tanto algo determinado por você, ou usando as "bounding boxes" ou masks do GM, delimitando que parte da sprite é tangível e assim reagindo. Ao gênero de luta em si, tinha uma ótima engine que é a GM Fighters, sendo que infelizmente o membro não é mais ativo (até porque é bem antigo aquele tópico) e o link quebrou.manobrother escreveu:vai ter outra aula ainda ou ja acabou? pq não entendi como posso juntar as duas partes do ataque
Mas, você ainda pode extrair algo das aulas do Alex FC. Tem uma parte sobre colisões lá, bem legal. Abraços o/
Markituh- Games Ranking :
Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Tutorial: Lógica em jogos de luta (colisões) Parte 1
» Oi Galerinha, aqui um tutorial básico de um jogo de luta que eu fiz! [TUTORIAL]
» Movimentos e colisões em jogos de plataforma
» [Tutorial]I.A Básica – Movimentação de Inimigo com colisões
» [Carlos - Tutorial] Lógica Booleana.
» Oi Galerinha, aqui um tutorial básico de um jogo de luta que eu fiz! [TUTORIAL]
» Movimentos e colisões em jogos de plataforma
» [Tutorial]I.A Básica – Movimentação de Inimigo com colisões
» [Carlos - Tutorial] Lógica Booleana.
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos