Centro RPG Maker

Centro de Recursos => Scripts de RPG Maker => Scripts para RPG Maker VX Ace => Tópico iniciado por: Raizen online 01/02/2013 às 14:33

Título: Khas Pathfinder
Enviado por: Raizen online 01/02/2013 às 14:33
Khas Pathfinder
by Khas Arcthunder

- Introdução:
Precisa de ferramentas bacanas? Veja esta, um script de pathfinding! Este script encontra a menor rota entre dois pontos, e move o personagem com esta rota.

- Características:
Caminhos inteligentes
Algorítmo rápido
Fácil de usar
Plug'n'Play
Compatível com objetos da Game_Character
Ferramenta de Log

- Como usar:
Todas as instruções estão na demo.
Leia com atenção antes de usar.

- Links:
Termos de uso: Português – Leia antes de usar (http://arcthunder.site40.net/termos/)
Download: Português – Última versão no final do post (http://arcthunder.site40.net/br-khas-pathfinder/)

- Créditos:
Criado por Khas Arcthunder
Enjoy!
Título: Re: Khas Pathfinder
Enviado por: Geraldo de Rívia online 01/02/2013 às 14:47
É um dos scripts que eu mais gosto, devido à função, e
portanto, acaba sendo o que eu mais uso também.
Como gosto de fazer os sistemas (como as batalhas)
por eventos, ele agiliza, e muitas vezes torna viável
o trabalho...

Muito, muito bom mesmo. E quase não há nada para
ter o que configurar...
  :ok:
Título: Re: Khas Pathfinder
Enviado por: katumblo online 10/08/2014 às 19:27
#of : Eae  raizen, quanto tempo mano :*-*: bom ?

Hey, to com um problemão com esse script :será:
Estou usando um mapa de 500 de altura, e quando coloco para o evento ir de uma ponta a outra, laga tanto mais tanto mais tanto que nem carrega o jogo... ( Eu sei que é lag porque tentei com numeros menores e o jogo carregou super lentamente ) ....
Teria como dar uma arrumada ? \:
Título: Re:  Khas Pathfinder
Enviado por: Raizen online 11/08/2014 às 15:17
Citação de: katumblo online 10/08/2014 às 19:27
#of : Eae  raizen, quanto tempo mano :*-*: bom ?

Hey, to com um problemão com esse script :será:
Estou usando um mapa de 500 de altura, e quando coloco para o evento ir de uma ponta a outra, laga tanto mais tanto mais tanto que nem carrega o jogo... ( Eu sei que é lag porque tentei com numeros menores e o jogo carregou super lentamente ) ....
Teria como dar uma arrumada ? \:
pathfinder é um algoritmo pesado >_>, ele não foi feito para usar com uma distancia tão longa assim xD... Por exemplo o tibia que usa um pathfinder, limita acho que a 60-70 tiles e não 500 .-.

Tipo não tem como eu modificar esse para lagar menos, tem outros pathfinders com algoritmos mais leves, só que não será a menor rota, será simplesmente uma rota que serve.

Você pode quebrar a rota, isso vai reduzir muito o lag, tipo 50 tiles, depois mais 50... enfim.
Título: Re: Khas Pathfinder
Enviado por: katumblo online 11/08/2014 às 19:15
Já tentei diminuir a rota mas o lag só para quando vou de 10 em 10 mais ou menos ... Assim ficarei um ano até chegar no final ;-; rs

Quais outros pathfinder mais leves ? Não achei nenhum :x ( Pode ser a rota que serve mesmo )
Título: Re: Khas Pathfinder
Enviado por: JohnBolton online 11/08/2014 às 19:29
Lehanius PathFinder (http://arenalivre.net/index.php?topic=13225.0)
Título: Re:  Khas Pathfinder
Enviado por: NightWalker online 11/08/2014 às 19:40
Citação de: katumblo online 10/08/2014 às 19:27
#of : Eae  raizen, quanto tempo mano :*-*: bom ?

Hey, to com um problemão com esse script :será:
Estou usando um mapa de 500 de altura, e quando coloco para o evento ir de uma ponta a outra, laga tanto mais tanto mais tanto que nem carrega o jogo... ( Eu sei que é lag porque tentei com numeros menores e o jogo carregou super lentamente ) ....
Teria como dar uma arrumada ? \:

Cara um mapa com 500 de altura? Mesmo sem o pathfinder eu não recomendaria fazer um mapa tão grande no maker, não só por questões técnicas que já teria bastante, mas por não ficar legal também. Tenta diminuir o mapa e não achar um script que seja mais leve porque acho que o problema não ta nisso.
Título: Re: Khas Pathfinder
Enviado por: katumblo online 11/08/2014 às 19:44
Uma pequena duvida que algum de vocês dois poderiam me responder ?

Em instruções do script, está assim :

Spoiler

                                INSTRUÇÕES
                               
  Existem dois modos de funcionamento deste pathfinder:
 
    - mode 0: "ir para" - para ser usado em cenas, em direção a locais estáticos
      (que não se movem), pois o personagem fará o caminho completo até o
      objetivo, sem poder ser interrompido;
     
    - mode 1: "ir para sem esperar" - funciona da mesma forma que o mode 0,
      exceto pelo fato de que o movimento não precisa ser completado para que
      se execute o próximo comando na lista do evento com o comando de script;
     
    - mode 2: "seguir" - para ser usado repetidamente, até mesmo em processos
      paralelos, geralmente em direção a objetivos móveis, pois cada vez que
      um comando neste modo é chamado, o personagem avança um passo em direção
      a seu objetivo, sem interromper as ações do jogador.
     
 
  Para usar o pathfinder, use um comando de chamar script assim:
 
    Script: pf = LET::PathFinder.new(<inteiro>)
          : pf.find_path(<objetivo>, <distância>, <modo>, <alcance>)
         
    Sendo que:
      - <inteiro> pode ser: 0 para o personagem; negativo para um seguidor que
        ocupa a posição '-<inteiro>' na fila; positivo para a ID de um evento.
        Este será o personagem que irá andar até o objetivo especificado.
       
      - <objetivo> pode receber a mesma entrada que <inteiro> além de uma
        entrada da classe LET::Point, que é um ponto com valores de x e y, que
        pode ser definido assim: ponto = LET::Point.new(<x><y>)
       
      - <distância> a distância que o personagem deve manter de seu objetivo;
        se for 0, ele irá pisar sobre o objetivo; se for maior que 0, manterá
        alguma distância de seu objetivo. Padrão: 0
       
      - <modo> 0, 1 ou 2, já explicado anteriormente. Padrão: 0
     
      - <alcance> número máximo de tiles a serem percorridos até o objetivo;
        se a distância for maior que o alcance, o personagem não irá tentar
        seguir o objetivo; o valor padrão desse parâmetro pode ser modificado
        pela variável PF_DEFAULT_RANGE do módulo LET.
   
[close]

No evento, eu pus assim :

pf = LET::PathFinder.new(3)
pf.find_path(13, 0, 0, 2, 600)

O que esta errado? ( Em "objetivo" é para por o x e y certo ? Então, teria que por deste jeito ... não ?

[user]NightWalker[/user]
Spoiler

Citar
Cara um mapa com 500 de altura? Mesmo sem o pathfinder eu não recomendaria fazer um mapa tão grande no maker, não só por questões técnicas que já teria bastante, mas por não ficar legal também. Tenta diminuir o mapa e não achar um script que seja mais leve porque acho que o problema não ta nisso.
[close]

Eu preciso 500 de altura ... E fiz pequeno ainda, levaria mais que 1000 de altura, mas vou dividi-lo em duas partes, melhor ...
Título: Re: Khas Pathfinder
Enviado por: JohnBolton online 11/08/2014 às 20:03
Seu comando de modo correto:
pf = LET::PathFinder.new(0)
ponto = LET::Point.new(13,0)
pf.find_path(p, 2, 0, 600)


Compare com o seu e compreenda.
Título: Re: Khas Pathfinder
Enviado por: katumblo online 11/08/2014 às 20:06
Citação de: JohnBolton online 11/08/2014 às 20:03
Seu comando de modo correto:
pf = LET::PathFinder.new(0)
ponto = LET::Point.new(13,0)
pf.find_path(p, 2, 0, 600)


Compare com o seu e compreenda.

Mas assim da o seguinte erro :

(http://i62.tinypic.com/34sruv9.png)
Título: Re: Khas Pathfinder
Enviado por: JohnBolton online 11/08/2014 às 20:23
Vê assim ó:
pf = LET::PathFinder.new(3)
p = LET::Point.new(13, 0)
pf.find_path(p, 2, 0, 600)
Título: Re: Khas Pathfinder
Enviado por: katumblo online 11/08/2014 às 20:34
Perfeito ! :*-*: Ao iniciar da uma pequena travada mas depois o lag gerado é totalmente nulo.

Muitissmo obrigado.