Tutorial Detecção Stealth

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

Tutorial Detecção Stealth

Mensagem por Frozen em Qui 06 Jun 2013, 12:37

Nome : Tutorial de Detecção Stealth
Versões do Game Maker : Game Maker Studio
Dificuldade : Pequena
Créditos : Feito por Hszm (eu)

Introdução
Basicamente aqui vou ensinar como fazer uma área que detectará o player para funcionalidade em jogos no estilo stealth.
Peço que mesmo se usarem o tutorial escrito deêm like no tutorial em video e se inscrevam no canal, se for possível ajudará bastante a divulgar.Obrigado desde já.

Tutorial em Video

Spoiler:



Tutorial Escrito
Spoiler:

Primeiramente precisaremos de um objeto para ser o inimigo do player, o "vigia" que ficará com a área de detecção na sua frente como mostram os prints.



Esse objeto inimigo no seu evento create terá que criar outro objeto, no caso o objeto que detectará o player.É melhor que usem a função relative se estiverem usando D&D pois assim você poderá usar muito mais aquele objeto ao invez de ficar fazendo vários descartáveis que serão usados uma única vez.
Em sprites 32x32 que estiverem com a colisão centralizada esse código vai servir, do contrário é só ajustar os números.

Código:

instance_create(object_vigia.x+16,object_vigia.y,object_deteccao) Para mostrar a detecção na direita.
instance_create(object_vigia.x-16,object_vigia.y,object_deteccao) Para mostrar a detecção na esquerda.
instance_create(object_vigia.x,object_vigia.y+16,object_deteccao) Para mostrar a detecção em cima.
instance_create(object_vigia.x,object_vigia.y-16,object_deteccao) Para mostrar a detecção em baixo
Vale lembrar que dependerá tanto do código quanto da sprite para o efeito ficar bom.


Agora vamos ao Objeto de detecção.Nele precisaremos de algo para mostrar onde está o vigia,de modo que dependendo da posição do vigia em relação ao objeto detecção a sprite dele mude.
Logo no evento Create do objeto de detecção vamos botar em D&D as seguintes Actions :
Código:

If there is an object at position
Object_vigia
-16
0
Relative
---------------------------------------Start of a block---------------------------------------
Change sprite into - Sprite para detecção a direita.
----------------------------------------End of a block---------------------------------------
If there is an object at position
Object_vigia
16
0
Relative
---------------------------------------Start of a block---------------------------------------
Change sprite into - Sprite para detecção a esquerda.
----------------------------------------End of a block---------------------------------------
If there is an object at position
Object_vigia
0
-16
Relative
---------------------------------------Start of a block---------------------------------------
Change sprite into - Sprite para detecção a cima
----------------------------------------End of a block---------------------------------------
If there is an object at position
Object_vigia
0
16
Relative
---------------------------------------Start of a block---------------------------------------
Change sprite into - Sprite para detecção a baixo
----------------------------------------End of a block---------------------------------------
Agora adicionamos o evento de Colisão com o Objeto player.
Dentro dele adicionaremos o efeito que nós queremos que aconteça ao sermos detectados dentro desse jogo.Isso varia desde reiniciar a fase até a perder uma vida ou disparar um alarme que faria os inimigos atirarem em você, mas agora só irei ensinar o básico ,o resto ficará para imaginação de vocês.
Nesse evento de colisão faremos algo parecido com o do evento create, com as mesmas posições só que ao invés de mudar a sprite para uma normal, botaremos outra sprite mudando a cor ou chamando atenção para indicar que fomos detectados.
Uma boa dica é que as sprites normais da área de detecção sejam verdes e quando detectadas, mudem para sprites iguais só que vermelhas.

Sei que tanto o tutorial em video quanto o escrito ficaram meio falhos, mas a intenção é ensinar somente o básico dessa técnica.Por favor quero que deixem criticas construtivas nas respostas, irei ler todas assim que possível e modificarei o tutorial conforme as críticas sempre em visão de melhorá-lo.
Link para download da engine : http://migre.me/eT1V2

Frozen

Ranking : Nota C
Número de Mensagens : 45
Data de inscrição : 23/10/2011
Notas recebidas : C
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Tutorial Detecção Stealth

Mensagem por fredcobain em Sex 14 Jun 2013, 16:36

Parabéns pelo tutorial, bem organizado.

fredcobain

Ranking : Sem avaliações
Número de Mensagens : 691
Idade : 35
Data de inscrição : 14/04/2011
Reputação : 162
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

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