Forums » RPG MAKER 2K e 2003

(RE-ORGANIZADO)Correr que nem no RE4

    • 683 posts
    28 de maio de 2015 11:44:42 ART

    SISTEMA DE CORRIDA ESTILO RESIDENT EVIL 4

        POR: HAGRIFIELD

    DEMO ANTIGA SEM AS CORREÇÕES

    Bem, para quem já jogou este SURVIVAL HORROR, concerteza sabe do que estou falando, caso você
    não entendeu, eis aqui um vídeo para entender este tutorial(VÍDEO DE MÁ QUALIDADE MAS COM O
    QUE EU QUERO MOSTRAR)

          7kzNZI8rN10

            INTRODUZINDO

    Vamos supor que:

    "UMA PEDRA DE 15 METROS CAI DE UM PENHASCO, VOCÊ ESTÁ ABAIXO DESTE PENHASCO
    E IRÁ CORRER DAPEDRA, MAS NÃO VAI CONTROLAR O CARA NAS DIRECIONAIS, E SIM,
    PRESSIONAR "Z" QUE NEM UM DOIDO."

    Mas não terá pedras neste tutorial, apenas irá aprender exatamente a corrida, breve
    irei postar 1 tutorial diferente  para este aqui :wink: 


      FERRAMENTAS QUE IRÁ USAR:

    -3 variáveis
    -3 Eventos Comuns
    -4 Eventos pro sistema
    -Alguns Eventos pra direcionar o movimento!


      PRIMEIRA PARTE

    Primeiro crie os eventos de Direções:

    Crie 1 variável chamada DIREÇÕES, agora, crie 4 forks, sem ELSE:

    Se DIREÇÕES = 1
    Heroí mover pra baixo
    Se DIREÇÕES = 2
    Heroí mover pra cima
    Se DIREÇÕES = 3
    Heroí mover pra direita
    Se DIREÇÕES = 4
    Heroí mover pra esquerda

    "TODOS COM A OPÇÃO DE IGNORAR O MOVIMENTO MARCADA E VALOR TIPO IGUAL!"

    Como irá ficar:

    Citar

    <>IF Var.Op[XXXX][DIREÇÕES]-1
      <>Set Chara Movement.Hero-Down
    End Case
    <>
      <>IF Var.Op[XXXX][DIREÇÕES]-2
      <>Set Chara Movement.Hero-Up
    End Case
    <>
    <>IF Var.Op[XXXX][DIREÇÕES]-3
      <>Set Chara Movement.Hero-Right
    End Case
    <>
    <>IF Var.Op[XXXX][DIREÇÕES]-4
      <>Set Chara Movement.Hero-Left
    End Case
    <>


    Dê OK e volte para o mapa para a...

      SEGUNDA PARTE:

    Vamos agora para a parte de pressionar o botão, vamos agora fazer os seguintes passos:

    1º Passo - Crie 2 Variáveis chamadas CORRER e PRESSIONAR Z e 1 Switch chamada ATIVAR CORRIDA

      -Após criados, vá no mapa e crie 1 evento nomeando-o de PRESSIONAR-Z, agora defina a tecla
        "Z" em ENTER PASSWORD para a variável PRESSIONAR Z.Após isso, adicione +1 valor para a
        variável CORRER.

      -Crie outro evento com o nome de VELOCIDADE, dentro dele, subtraia em 1 valor na
      variável CORRER, e dê um wait de 0.2, logo após isso, ative a switch que criamos nesta parte.

      -Agora iremos fazer com que os valores não ultrapassem, crie 2 eventos, 1 com a fork de CORRER
      menor que 0, setar 0 o valor CORRER.No outro evento, criar a fork com o valor acima de 4, setar 4
      (usando a mesma variável), ambos eventos, nomeá-los para ULTRAPASSAR CANCEL.

    2º Passo -Coloque1 evento em branco em qualquer lugar, deixe-o como AUTO START,
          para não ter o bug de mover o herói com as setas direcionais.

    Pronto, após seguir isto tudo, como ficará os eventos:

    PÁGINA PRESSIONAR-Z

    Citar

    Enter Password[XXXX][PRESSIONAR Z]-5 < 5 é o valor da tecla Z
    Add Var.[XXXX][CORRER]+1
    <>


    PÁGINA VELOCIDADE

    NOTA:Crie a segunda página no evento com a Switch ATIVAR CORRIDA como condição
    de início

    Citar

    SUB Var.[XXXX][CORRER]-1
    Wait 0.2
    Change Swi.[XXXX][ATIVAR CORRIDA]-ON
    <>


    PÁGINA REDUTOR(1)

    Citar

    <>IF Optn.Var[XXXX][CORRER]-4Over
    Set Var.[XXXX][CORRER]-4
    <>


    PÁGINA REDUTOR(2)

    Citar

    <>IF Optn.Var[XXXX][CORRER]-0Smaller
    Set Var.[XXXX][CORRER]-0
    <>


    Pronto, segunda parte concluída.Vamos para a.......

      TERCEIRA PARTE:

    Certo, após estes eventos, vamos voltar nos EVENTOS COMUNS, agora que criamos tudo o
    que precisavamos, vamos criar o evento chamado +/- Velocidade, com a condição de início
    da Switch ATIVAR CORRIDA estar ligada.

    Dentro do evento:

    -Criar a FORK com a ELSE CASE marcada, e a condição será da variável CORRER está com o
    valor 4 ou maior(Maior ou igual/ABOVE).

    -Dentro da condição, coloque pra velocidade do herói aumentar, se quiser colocar algo como som,
    pode colocar normalmente que não precisará de WAIT.

    -Na ELSE CASE, coloque pra velocidade do herói diminuír.

    -E na END CASE, coloque a switch ATIVAR CORRIDA desligada.

    Página estará assim:

    Citar

    <>IF Var.Opr[XXXX][CORRER]-4Over
      <>Set Chara Movement, Hero, Move Speed Up
      <>
    ELSE case
      <>Set Chara Movement, Hero, Move Speed Down
      <>
    END case
      <>Change Switch[XXXX][ATIVAR CORRIDA]-OFF
    <>


    Pronto, agora rode e veja se está tudo de acordo.

      QUARTA PARTE:

    Se rodou tudo legal até aqui, tá na hora de testarmos algo, troca de direções, eu tentei criar obstáculos,
    mas vi que terá de ser feito com um WAIT cronômetrado, veja quanto tempo irá demorar para cada
    curva, ou algo do tipo, pois as colisões (que são apenas para o personagem virar), reduzem a velocidade
    drasticamente.

    Por exemplo, suponhamos que o herói demore 3 segundos para virar à esquerda, MAS O QUE
    SIGNIFICA? daí tem mais 1 curva pela frente para à direita que leva 4 segundos.

    Para executarmos esta operação, deveriamos:

    -Cronometrar por wait a curva
    -Setar o valor da direção que criamos na primeira parte.

    A página ficaria assim:

    Citar

    Wait X.XX
    Set Var[XXXX][DIREÇÕES]-X
    <>


    LEMBRANDO QUE: Sempre coloque em PROCESSO PARALELO, e se quer colocar mais direções ou mais
    curvas, terá de fazer a sua escolha.

      CONCLUSÃO DO QUE APRENDEMOS AQUI

    Aprendemos a fazer um mini-game de que o herói corra bastante, seja como as armadilhas dos filmes
    de Indiana Jones e companhia, que pode ser usado facilmente, podendo até mesmo criar coisas novas
    para o sistema.

      COISAS OPCIONAIS

    -Caso queira colocar um DODGE(Como você viu no vídeo), crie 1 evento chamado DESVIAR, nele,
    crie 2 variáveis com o nome BOTÃO Z e BOTÃO X.(O EVENTO DEVERÁ SER FEITO NO MAPA!), e coloque
    1 switch que nomearemos de DESVIO ON como condição para esta página.

    Agora faça 2 variáveis com o nome de HERÓI X e HERÓI Y, marque a coordenada de acordo com que
    deseje que o dodge apareça.Crie 1 Picture ou Battle Animation mesmo, com botões do tipo Z e X, e
    coloque sem WAIT UNTIL DONE ou algo que faça o jogador esperar.

    Faça mais 2 para as posições da pedra que irá vir, coloque 1 PICTURE ou 1 BATTLE ANIMATION NO
    EVENTO, POIS ASSIM, ficará mais realista por exemplo, e faça-a com animação de rolagem.

    Caso não chegue até o dogde, a pedra lhe esmagará, só criar 1 evento com uma fork de se X de herói
    igual a X da pedra, e Y de herói igual ao Y da pedra, mas é evento único!Movimento da pedra constante,
    pode ir aumentando o movimento dela se quiser, basta apenas criar waits em um evento único.

    Para dar origem ao dodge, coloque da seguinte maneira:

    1-Crie 1 Wait com a switch DESVIO ON como condição de início
    2-Coloque um wait de 0.2
    3-Crie uma fork com as condições das variáveis BOTÃO Z = 5 e BOTÃO X = 6
    4-MARQUE A ELSE CASE
    5-Coloque o que ocorrerá dentro do dogde
    6-Processo paralelo
    7-Se conseguir, fazer algo parecido com um rolamento, do contrário, irá morrer por exemplo.

    Bem, não irei montar páginas aqui, isto é opcional.

    Espero que tenham gostado da organização e correções que eu fiz, aproveitem bem este sistema  :mrgreen: 

    VOU NESSA!ATÉ O PRÓXIMO TUTORIAL  :cool:

    (P.S:Debug ou alguém que possa me ajudar, apaguem o tutorial antigo  :wink: )