Conectar-se

Esqueci minha senha

Últimos assuntos
» colisão de queda após outra colisão dando problema
Ontem à(s) 18:08 por Lighter

» [Duvida] O que aprender
Ontem à(s) 15:32 por Markituh

» BUILD FAILED: Cannot find BUILD.xml
Ontem à(s) 14:50 por ReisBlender

» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Jogo Dengue HTML
Seg 30 Nov 2015, 16:17 por guga

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Ordenar variavel em ordem decrescente
Sex 28 Ago 2015, 21:09 por Kodained

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Problema com Colisão
Qui 27 Ago 2015, 12:30 por The_Game

» Quem quer Uma Engine, e de Quê?
Qui 27 Ago 2015, 09:22 por theguitarmester

» [RESOLV]Como adicionar 2 objetos na mesma posição?
Qua 26 Ago 2015, 11:38 por Bhryenno Kelvyn Carlson

» Sistema de porta!!!
Ter 25 Ago 2015, 21:29 por theguitarmester

» Venda de objetos em Inventário - Multiplicado
Seg 24 Ago 2015, 18:33 por AG Hydra

» Atirar na direção certa
Seg 24 Ago 2015, 09:03 por theguitarmester

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Problemas na compilação android
Dom 23 Ago 2015, 23:43 por Zero.

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Como estabilizar um som
Sab 22 Ago 2015, 19:03 por Isquilo_Roedor

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» Sobre instance Creation Code
Sab 22 Ago 2015, 08:39 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» Como fazer um temporizador
Sex 21 Ago 2015, 19:02 por Isquilo_Roedor

» GMS sempre salva projeto ao compilar?
Sex 21 Ago 2015, 12:32 por Pai véi

Quem está conectado
15 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 15 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36

Tutorial: Lógica em jogos de luta (colisões) Parte 1

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

Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por Anderson3d em Qua 01 Set 2010, 00:21

Olá pessoal tudo bem?

Esse tutorial na verdade é uma aula pra que os iniciantes possam entender como funcionam as colisões nos jogos de luta.

Primeiro devemos analisar o erro mais freqüente nos jogos ou projetos de luta que já vi nesse fórum:
1- Todo o corpo do personagem serve como Mask de impacto tanto de ataque quanto de recebimento.
ex:

Esse ataque pode ser feito por uma única mudança de sprite, ou um novo objeto criado com esse sprite (prefiro usar um novo objeto e usar a opção Parent nas colisões).
ok, vamos raciocinar: Em um jogo de luta que se preze, o único local que poderá acertar o inimigo é a lâmina da espada. E o único lugar que poderá receber impacto do inimigo é o corpo do Ichigo (neste exemplo).
Então qual a solução pra este problema? Pois da forma que está o corpo de Ichigo irá causar dano no inimigo e a espada de Ichigo irá receber dano de um eventual ataque do inimigo.

A solução está em criar sprites externos que irão funcionar como masks (caixas de impacto e colisão).
Fiz a caixa decolisão (vamos chamar assim por enquanto) deste exemplo (caixa rosa- representa área que pode receber impactos do inimigo neste ataque):


Aqui é a caixa de impacto (área que irá causar dano no inimigo durante este ataque):

Perceba que ambas as masks tem o mesmo tamanho da imagem original, afinal, elas irão atuar nas mesmas coordenadas do sprite original (Ichigo)

Agora vcs já devem ter percebido que um jogo de luta é mais complexo em termo de colisões que um jogo normal, pois ele trabalha com duas Masks diferentes, uma de recebimento e outra de ataque. E que o Sprite mostrado é meramente a ilustração do confronto das maskaras dos objetos (personagens).

Mas como então farei pra meu objeto ter duas masks diferentes? calma, se vc acha que está complicado vai piorar hehehe, mas não desista, continue lendo pois esse conhecimento abrirá a sua cabeça em diversas lógicas pra jogos.

O Objeto Ichigo na verdade não terá duas maskaras diferentes, e sim, sempre que fizer um movimento ele criará dois objetos (quando preciso) que farão o papel das maskaras auxiliares. Esses objetos devem ser criados nas mesmas coordenadas do player (Ichigo no caso). na pratica teremos o seguinte:

obs: Diminuí a opacidade das caixas pra que percebam que os 3 objetos trabalham em conjunto.

Os 3 objetos irão aparecer juntos, e sempre que for executado novos movimentos surgirão outros que os substituirão. Resumindo, é extremamente trabalhoso criar jogos de luta no Game Maker, mas não é tão difícil.

Lembrando que a caixa rosa pode passar por cima da vermelha nesse exemplo caso o projetista do jogo queira causar encontro de espadas, então a espada tmb poderá receber dano (mas não é o nosso caso).

Na parte dois deste tutorial irei explicar como coordenar as ações de impactos entre caixas de colisões e de impacto, e com isso fazer o Player mostrar a imagem correta. Razz

Parte 2 aqui!


Última edição por Anderson3d em Sab 16 Abr 2011, 15:24, editado 2 vez(es)
avatar
Anderson3d

Ranking : Nota A
Notas recebidas : A - A
Data de inscrição : 15/02/2009
Número de Mensagens : 1479
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 1
   : 0
   : 1

Ver perfil do usuário http://www.indiegamebr.com

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por kevin sousa em Qua 01 Set 2010, 04:22

vlw vai ajudar no meu projeto de luta
avatar
kevin sousa

Data de inscrição : 21/02/2010
Número de Mensagens : 119
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por Kyuubi em Qua 01 Set 2010, 06:33

nussa cara eu não sabia que dava pra usar masks juntas e diferentes no gmkr,que irado ,seu tuto é nota 10 e to esperando a continuação!!!
flwS!!!
avatar
Kyuubi

Data de inscrição : 28/11/2009
Número de Mensagens : 443
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   :
   :
   :

Ver perfil do usuário http://animeworldmugen.forumeiros.com/forum

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por primz em Qua 01 Set 2010, 06:36

muito bom essse tuto eu nunca consegui fazer isso

vi um tuto do alex Fc mas achei muito complicado esse ta simplecinho

vlw
avatar
primz

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 09/02/2010
Número de Mensagens : 321
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 1

Ver perfil do usuário http://www.primz.weebly.com

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por Luan Maia em Qui 02 Set 2010, 14:49

Esse tutorial pode me ajudar na criação de meu possível próximo projeto, que seria de luta é claro. Aguardo a continuação. xD
flw

Luan Maia

Ranking : Sem avaliações
Notas recebidas : D+C+C+D
Data de inscrição : 01/07/2010
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário http://blogluanmaia.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por Doctor_Gamer em Sex 18 Out 2013, 19:06

n consigo ver as imagens
avatar
Doctor_Gamer

Data de inscrição : 18/10/2013
Número de Mensagens : 5
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


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