Forums » RPG MAKER 2K e 2003

[Eventos+DestinyScript][Com DEMO]ABS Like a Boss (Parte 1)

    • 683 posts
    14 de maio de 2015 23:06:57 ART

    Sistema de Batalha em Tempo Real

     

    Sistema Por: Syd Barrett                                            Incompatibilidades: 2k3
    Engine: RM2K                                                                F.A.Q Embutido: Não
    Nível de dificuldade: Fácil(Muito Fácil, Fácil, Médio, Difícil e Like a Boss)




    [o]Introdução


    Bom pessoal, eu fiz esse sistema, com o intuito de facilitar vossas vidas. O ABS sempre é um sistema muito procurado, e eu tinha esse daqui no PC e resolvi compartilhar com vocês. Façam bom proveito. Essa é só a parte um, pois depois de postar esse ABS aqui, eu percebi que um bom ABS precisa de algo a mais.

    [o]Dados Específicos:


    • Número de Switches: 6
    • Número de Condições: 9 (7 normais e 2 de Script)
    • Número de Variáveis: 2
    • Número de Eventos Comuns: 2 (Um para atacar e o outro para correr)
    • Controles: Enter para atacar.

      [o]Tutorial


      Pois é galera, vamos começar.


      Passo 1


      Em primeiro lugar, eu gostaria que vocês criassem as Switches e Variáveis. As Switches são as seguintes:
      Atacando
      Monstro Atacado
      Herói Atacado
      Detecção de Herói
      Start
      ABS ON

      As Variáveis:
      Tecla de Ataque
      HP Monstro


      PS: Quando nos scripts aparecerem as switches em números(Ex: s[3] = true), os valores das switches são:
      Atacando = 5
      Monstro Atacado = 6
      Herói Atacado = 7
      Detecção de Herói = 8
      Start = 9
      ABS ON = 10
      Então, caso você use posições diferentes nas switches, mude os números OK?
      PS²: Nas variáveis não há problema.


      Passo 2


      Feito o passo 1, crie um evento comum chamado Ataque(é bom usar os nomes que eu disser para não haver confusões posteriormente) em Processo Paralelo(Parallel Process), com condição de início a switch ABS ON. Nele, crie uma Condição(Fork) de Switch Herói Atacado OFF (Sem else case). Tudo bem. Agora, dentro dessa Condição, adcione a função Enter Password(Definir Teclas Adcionais) marcada somente a opção de tecla de decisão(valor 5). Abaixo disso(ainda dentro da primeira Fork), crie outra Fork só que com a condição de que a variável Tecla de Ataque seja igual a 5. Agora muito bem, sete a Switch Atacando para ON e adcione um Move Event deixando o Herói em Direção Fixa. Caso o seu herói mude de gráfico(extremamente aconselhável), agora é a hora, adcione um selecionar gráfico de heróis e coloque ele atacando(caso sejam vários gráficos, divida as mudanças dentro dos waits). Depois adcione uns 22 Waits de 0s. Agora mude o gráfico do herói de volta(caso tenha mudado anteriormente) e dê outro Move Event, só que dessa vez cancelando a Direção Fixa. Também sete a switche atacando para OFF. E pra finalizar, um Wait de 0.2(delay de ataque). Nós fizemos o ataque do herói. Quando você apertar a tecla, o gráfico dele irá mudar, e enquanto ele estiver atacando, uma switch estará ON(Atacando). Veremos no próximo paso pra que servirá isso.

      Como vai ficar:

      Spoiler 
       




      Passo 3


      Agora iremos criar um monstrinho. No monstro, existirão três páginas, a primeira é a dos danos gerais(herói-monstro e monstro-herói), a segunda é a de Detecção de Herói, e a terçeira é a do monstro morto.
      Página 1
      Propriedades:
      Gráfico = Monstro(o mesmo do primeiro)
      Condição de Evento = Nenhuma
      Condição de Início = Ao Toque do Herói
      Posição = Mesmo Level do Herói
      Tipo de Movimento = Seguir Herói em Frequência 5
      Animação = Comum/Com Passos(Common/With Stepping)
      Velocidade = 2x mais lento

      Primeiro, um Wait de 0s. Depois, uma Fork de Switch atacando ON com else case. Legal. Agora dentro dessa Fork que nós criamos sete a Switch Monster Atacado ON, adcione um som a sua escolha(som de monstro atacado), depois um flash event nesse evento(this event, no caso o monstro) de uns 0.5s(vermelho). Agora um Move Event em this Event com Start Fix Dir, Start Jump, Escape From Hero, End Jump e Cancel Fix Dir. OK. Agora some 1 à variável HP Monster e sete a switch monstro atacado para OFF. Coloque uns 10 waits de 0s e pronto. Isso que fizemos foi o ataque do cara, caso ele esteja atacando, o monstro sofre dano, mas caso não... vamos para o else case. No else case, vai acontecer algo caso você toque no monstro e não esteja atacando, você pegará dano. Então vamos lá. Primeiro, eu quero que você sete a Switch Hero Atacado para ON. Feito isso, coloque um som a gosto(pode ser do herói gritando, ou uma espada, caso o inimigo tenha uma), dê um flash no hero vermelho de uns 0.5s. OK, agora, a parte mais chata. Crie quatro Forks, uma pra cada direção que o herói está virado(Up, Right, Down e Left, em português, Cima, Direita, Baixo e Esquerda) e entre cada uma delas, um Wait de 0s(evita lag). Dentro delas, coloque um Move Event com Fix Dir e dois passos para a direção oposta a que o herói está virado(por exemplo, se ele estiver virado pra cima, vai ser Fix Dir, Down, Down e Cancel Fix Dir). OK. Depois dessa sessão de Forks, coloque um Take Damage de 5, mude a switch Herói Atacado para OFF, coloque uma porrada de Waits de 0s(uns 10) e mude a Switche Detecção de Herói para ON. Sua aba de dano está pronta.

      Veja como deverá ficar:

      Spoiler 
       




      Passo 4


      Agora, vamos para a página 2.
      Propriedades:
      Gráfico = Monstro(eu usei um slime, mas use o que você quiser)
      Condição de Evento = Switch Detecção de Herói ON
      Condição de Início = Processo Paralelo
      Posição = Mesmo Level do Herói
      Tipo de Movimento = Passos Aleatórios em Frequência 3
      Animação = Comum/Com Passos(Common/With Stepping)
      Velocidade = 8x mais lento

      Para essa página, eu criei um Script bem simples de detecção, que é adaptado para movimento através de pixel(não faço a mínima idéia do porque de eu ter feito algo assim... .-.)

      Spoiler 
       


      Bom, se você aparecer em um quadrado de mais ou menos umas três células(ou 48 pixels) ao redor do monstro, ele vai deixar a switch Detecção de Herói em OFF, e isso fará com que o bicho corra atrás de você. Não se esqueça da observação no Passo 1.

      Resultado:

      Spoiler 
       




      Passo 5 


      Agora nós iremos para a terçeira página, onde o monstro irá morrer. Ela é bem simples, então quero ser rápido. 
      Propriedades:
      Gráfico = Monstro(o mesmo do primeiro)
      Condição de Evento = Variável HP Monstro Maior ou Igual a 5
      Condição de Início = Processo Paralelo
      Posição = Mesmo Level do Herói
      Tipo de Movimento = Ficar Parado(Stay Still)
      Animação = Comum/Com Passos(Common/With Stepping)
      Velocidade = 2x mais lento

      Primeiro, dê um flash em vermelho em this Event(esse evento) de 0.5s. OK, agora coloque algum som a seu gosto(no caso esse é da destruição do monstro, pode ser um grunido dele etc.) e depois dê um move event aumentando a transparência do evento em 5, coloque um wait de 0s e pra finalizar, um Clear Timer.

      Pronto, terminamos o monstro.

      Veja como ficará:

      Spoiler 
       



      Agora, para que seu ABS funcione de maneira correta, precisaremos configurar mais algo. No mapa onde acontecerão os testes, crie um evento qualquer, com propriedades padrão(mude só a condição de início para início automático) e o gráfico transparente. Depois, cole esse Script na primeira página dele:

      Spoiler 
       


      Agora, na segunda página, coloque a condição de início a Switch Start estar ON. Ah e, não se esqueça da observação no Passo 1!

      [o]Bônus


      Bem, fizemos o ABS. Mas como complemento, eu resolvi postar aqui o bônus do Script de Correr, algo que deixa o ABS melhor(ou não).
      Primeiro, crie um evento comum em Processo Paralelo(Parallel Process), sem condição de início. Agora, coloque esse Script lá:

      Spoiler 
       



      Por hoje é só!

      [o]Multimídia:



      Screenshots:

      Spoiler 
       




      [o]Para Baixar:

       

      Imagem Postada
      Clique para baixar~




      [o]Finalizando...


      Pois é galera, não sei se o tutorial ficou bom(na minha opinião, não), mas eu fiz com bastante esforço para tentar ajudar alguém de alguma forma. Sei que um tutorial de ABS é muito comum, mas eu fiz esse aqui mesmo assim. Espero que alguém goste, e em caso de dúvidas ou complicações, é só postar por aqui. Vlw galera, e até a próxima!

      [o]Créditos:


      Quem postou: Syd Barrett
      Quem criou: Syd Barrett