O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Acertar a tecla para esquivar do inimigo no mapa

Iniciado por Crixus, 24/03/2021 às 21:31

24/03/2021 às 21:31 Última edição: 11/09/2023 às 20:51 por Crixus

Download:
https://drive.google.com/file/d/1s2jhu_qQ7hMa3B3jea_utK8H17_y51A_/view?usp=sharing
O que tem nesse Download:

  • Um tipo de inimigo que morre simples
  • Um tipo de inimigo que ressuscita após 10 segundos no mesmo lugar onde morreu
  • Uma Switch para restaurar todos os inimigos do mapa atual
  • Uma mapa de teste do uso exagerado de inimigos num mesmo mapa
  • Um exemplo de como restringir que os inimigos acessem uma determinada área

Como funciona:
O sistema funciona assim, ao encostar no inimigo você tem que acertar um número determinado de vezes seguidas para vencer, se errar começa a sequencia atual novamente.
Os inimigos devem ser configurados para não ficarem muito próximos uns dos outros para evitar que travem o jogador, isso acontece principalmente com o sistema de "Respawn".

Como testar:
Você deve criar um novo projeto simples, então mova os arquivos de dentro da pasta RpgMV-ABS - Follow the keystroke sequence para este novo projeto, agora inicie o Game.rpgproject para poder testar ou estudar o sistema.

Tutorial e instruções:

Antes de qualquer coisa, eu peço desculpas, os eventos, variáveis e Switches ficaram em inglês pois eu fiz para ajudar uma pessoa na comunidade oficial da engine, a RpgMakerWeb.

Evento Comum: Iniciar Batalha (StarBattle)
Neste evento deve ser configurado o inicio de qualquer batalha, seja um inimigo comum ou um Chefão, o padrão por enquanto é forçar o jogador olhar para a direção do inimigo e ativar a Switch Local do mesmo evento.

Evento Comum: Cria o Turno (Pre-Turn)
Neste evento deve ser configurado coisas básicas, como a HUD ou animação antes do jogador poder selecionar a tecla, apenas de ser um evento que roda em menos de um segundo é importante para deixar o ABS/CBS interessante.
Outra função desse evento é sortear a tecla e reiniciar as variaveis de contagem.

Evento Comum: Tecla de Evasão (Evasion-Key)
Este é um evento de looping que verifica se o jogador está pressionando uma tecla e dispara o contador do limite para o inimigo atacar.

Evento Comum: Fim do Turno (End-Turn)
A função deste é verificar se o jogador conseguiu escapar do ataque, assim contando +1 à sequencia de evasão, a animação não precisa ser feita aqui, mas usar este evento ajuda muito pra evitar ter que repetir o processo à cada inimigo no mapa.

Evento Comum: Finaliza Reset de inimigos (End-AllRespawn)
Este evento é ativado pela Switch "Renascer todos inimigos", ele serve apenas para que a Switch seja desativada após um curto tempo de uso, dando tempo o suficiente para recriar todos os inimigos após um "transporte" de mapa.


Como criar um novo inimigo:

Como é feito o uso de Self Switches (A,B,C...) não é necessário configurar cada inimigo, basta configurar apenas um e copiar varias vezes no mapa, neste evento teremos um página pra cada função.

Agora vamos ao inimigo, como é usado as Switches local (A,B,C...) não é necessário configurar cada inimigo, basta configurar apenas um e copiar varias vezes no mapa, neste evento teremos um página pra cada função.

Página 1: Chama o evento comum Iniciar Batalha, se quiser colocar uma animação especifica para cada tipo de monstro deve ser feito aqui.

Página 2: Nesta página eu use o gráfico "foguinho azul" apenas para ilustrar que este inimigo não poderá entrar em batalha pois o jogador já está em outra.
Na "rota" eu coloquei para que ele "fuja 1 passo do jogador" para evitar entrar em batalhas consecutivas desgastando o jogador.

Página 3: Aqui é onde realmente acontece a batalha, chamando o evento comum Cria o Turno e disparando o tempo para o jogador pressionar a tecla, após o loop terá a animação do jogador levando dano ou escapando do ataque, se preferir também poderá fazer aqui para o monstro levar um ataque.
No final de tudo é chamado o evento comum Fim do Turno.

Aqui a variável "Tempo tecla" é usada para confirmar se o jogador apertou a tecla no tempo mínimo, no próprio inimigo você altera o tempo aumentando o valor na IF.

Ao final deste evento existe uma IF que usando a variável "Conta-Acertos" você determina quantas sequencias o jogador deve acertar para derrotar o inimigo.

Página 4: Aqui é definido a animação ou evento caso o monstro seja derrotado, e reabre a possibilidade de entrar em outra batalha.
Se o inimigo for um "chefão" você deve criar a cena final e mudança de Switches e Itens.

Página 5: Essa é uma página sem nada, ele acontece quando o monstro "deixa de existir" no mapa.
Aqui se o usuário quiser fazer um sistema de "Respawn", basta modificar o evento para iniciar em "Processo paralelo" e criar o temporizador e condições para que isso aconteça.
Essa página pode ser removida caso este seja um "chefão" ou usar para que o mesmo evento não se repita.

Página 6: Essa página serve apenas para desligar todas as Switches local do evento com o auxilio da Switch "Renascer todos inimigos".
Essa página deve ser deletada se por acaso for um chefão, no lugar dela crie uma página ativar por uma Switch comum que vai afetar a campanha do jogador.

Ficou legal, se colocar algumas animações nos personagens entre as teclas (ataques, por exemplo) dá um efeito excelente. Vai usar em algum projeto?

A ideia é essa, digamos que esse sistema seria baseado nos sistemas de "CBS" que eu montei:
- Player vs Evento de mapa com "Choice"
- Picture vs Picture com Choice
- PvP online que mandava comandos via Variáveis e Switches por um servidor.

Mas neste caso eu aproveitei algo que o Rm2k/2k3 e possivelmente não funcionava, "This Event" dentro do Evento Comum.

Por enquanto nenhum projeto em mente, a ideia veio do pedido de um usuário da RpgMakerWeb, resolvi colocar em prática.