Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39
» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
Tutorial: Lógica em jogos de luta (colisões) Parte 1
+2
kevin sousa
Anderson3d
6 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Tutorial: Lógica em jogos de luta (colisões) Parte 1
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.
Parte 2 aqui!
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.
Parte 2 aqui!
Última edição por Anderson3d em Sáb 16 Abr 2011, 15:24, editado 2 vez(es)
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1
vlw vai ajudar no meu projeto de luta
kevin sousa- Data de inscrição : 21/02/2010
Reputação : 0
Número de Mensagens : 119
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 1
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!!!
flwS!!!
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1
muito bom essse tuto eu nunca consegui fazer isso
vi um tuto do alex Fc mas achei muito complicado esse ta simplecinho
vlw
vi um tuto do alex Fc mas achei muito complicado esse ta simplecinho
vlw
Re: Tutorial: Lógica em jogos de luta (colisões) Parte 1
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
Luan Maia- Games Ranking :
Notas recebidas : D+C+C+D
Data de inscrição : 01/07/2010
Reputação : 2
Número de Mensagens : 404
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 1
n consigo ver as imagens
Doctor_Gamer- Data de inscrição : 18/10/2013
Reputação : 0
Número de Mensagens : 5
Prêmios :
x 0 x 0 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 2
» [Tutorial] Criando jogos em gml parte 1
» [TUTORIAL] Jogos Online com PHP e MySql PARTE 1
» [TUTORIAL] Jogos Online com PHP e MySql - PARTE 2
» [TUTORIAL] Jogos Online com PHP e MySql - PARTE 3
» [Tutorial] Criando jogos em gml parte 1
» [TUTORIAL] Jogos Online com PHP e MySql PARTE 1
» [TUTORIAL] Jogos Online com PHP e MySql - PARTE 2
» [TUTORIAL] Jogos Online com PHP e MySql - PARTE 3
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|