Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Tutorial basico sobre macros


benner
 Compartilhar

Posts Recomendados

Bom ando vendo por aqui na area do Ragnarok que muitos tem duvidas sobre macros o que eles fazem ou como criar um macro, então resolvi colocar aqui um pequeno tutorial que mi ajudou muito para tambêm ajudar aos jovens Padawans, sem mais delongas vamos começar logo.

 

round_activeperl.jpg

Macros

 

Macros são plugins que permitem executar ações baseados em uma grande variedade de condições/situações, ou seja, torna o bot o mais "humano" possível. Se aprender bem a editar e criar macros pode-se fazer diversas coisas surpreendentes. Macros também são importantes porque com elas podemos fazer ações que geralmente o OpenKore não oferece, como por exemplo, podemos estabelecer condições em uma macro para o personagem completar uma quest, no OpenKore teríamos que configurar parte por parte na hora de pegar os items e entrar no jogo para falar e procurar os npcs, já com a macro poderíamos fazer com que o personagem fizesse absolutamente tudo sem ter que ficar configurando o OpenKore, ele pegaria os items certos na hora certa e falaria com os npc certos na hora certa com os items certos, enfim, com as macros podemos fazer uma variedade de coisas que geralmente com o OpenKore não poderiamos ou até poderiamos, mas teríamos que configurá-lo a cada etapa.

 

Leia e pesquise tudo sobre macros nas sessões dos fóruns: -

É necessário se cadastrar para acessar o conteúdo.
-

ENTENDENDO O QUE É UMA AUTOMACRO E MACRO

Sempre quando as pessoas começam a ler os manuais de macros ficam assustadas porque não entendem nada daquilo e acabam desistindo de aprender. Na verdade macros são mais fáceis do que aparentam, uma vez que você aprende a criar suas próprias macros fica muito fácil, eu diria que a parte mais difícil de se aprender macros é quando se trata de pensar em como ela ira funcionar e o que ela ira fazer, por exemplo, numa situação nosso personagem preciso ir de A até B e passar pelos obstáculos C e D, como fazer para que ele ultrapasse esses obstáculos respeitando as condições E e F ?. Eu diria que essa é a parte difícil das macros, que é simplismente sua aplicação, mas não é nada de impossível basta apenas ter uma maneira criativa para elaborá-las.

 

Existem duas partes importantes para se criar uma macro: Automacro e Macro, respectivamente, a cabeça e o corpo de uma macro. Com a cabeça você iria pensar e o corpo executar, na prática é isso mesmo que acontece com as macros.

Na automacro você definiria as condições para que a macro fosse executada, já na macro você definiria as ações que o personagem iria executar, somente se as condições definidas na automacro fossem preenchidas.

 

Outra parte importante é saber qual é a estrutua de uma macro que seria:

 

automacro [Nome da automacro] {

[condições para a automacro]

call {

[comandos para a macro]

}

}

 

As regiões em vermelho são estruturas padrão que devem estar em sua macro.

A região em azul você deve colocar as condições em que a macro seja executada.

A região em verde você deve colocar os comandos para que o personagem faça sua ação, lembrando que esses comandos serão executados somente quando as condições definidas na automacro sejam totalmente preenchidas.

 

Observem a macro a seguir:

 

automacro storage {

inventory "Gold" >= 200

run-once 1

call {

do c @storage

do storage add Gold

do storage close

release storage

}

}

A macro acima serve para armazenar items, no caso Gold. Observe que para a macro ser executada a condição "inventory "Gold" >= 200" deve ser preenchida, ou seja, a macro só será executada quando o personagem possuir no inventório uma quantidade igual a 200 Gold ou maior. Uma vez preenchida as condições da automacro a macro será iniciada, na linguagem prática, ela irá trigar.

Na região da macro, de acordo com os comandos estabelecidos o personagem iria abrir o armazém e armazenar todo o Gold que ele possui em seu inventário e depois iria fechar o armazém. Depois disso tudo a macro iria ser finalizada e executada novamente quando o personagem tivesse a quantidade em Gold necessária.

 

Para aprender sobre automacro e macro, basta clicar

É necessário se cadastrar para acessar o conteúdo.
e
É necessário se cadastrar para acessar o conteúdo.
, respectivamente, e para ver os comandos de console e chat para colocar na macro basta ver o meu respectivo post e caso não encontre algum comando que você possa estar procurando você pode procurar
É necessário se cadastrar para acessar o conteúdo.
e
É necessário se cadastrar para acessar o conteúdo.
.

 

CONFIGURANDO OPENKORE PARA USO DE MACROS

 

Vamos aprender agora como configurar o OpenKore para rodar macros. Primeiramente faça o download do macro plugin pelo TortoiseSVN, com este link:

 

É necessário se cadastrar para acessar o conteúdo.

 

1- Crie na sua pasta OpenKore uma pasta plugins, caso você já tenha não é necessário criar outra.

2- Após baixar o macro plugin pelo Tortoise você terá essas pastas:

 

22774499.jpg

 

3- Crie uma pasta macro, dentro da pasta plugins, e coloque esse três arquivos dentro dela.

4- Agora abra a pasta control, crie um bloco de notas macros.txt.

5- Abra o arquivo config.txt e adicione esse trecho no final do arquivo:

 

macro_file macros.txt

macro_nowarn 1

macro_orphans reregister

macro_allowDebug 0

macro_debug full

macro_allowDebug 0

 

6- Salve e feche o config.txt, agora você já pode começar a utilizar suas macros. Para utilizá-las cole-as dentro do arquivo macros.txt que você criou.

 

 

EXEMPLOS DE MACROS

 

Vou passar algumas macros que eu fiz até para serem usadas como base para outras. As macros que eu irei postar são para servidores com os comandos @warp e com npc que recupera HP e SP.

 

 

#### MACRO HEAL ####

 

automacro heal {

location prontera <- coloque aqui o ponto de retorno/salvo.

hp <= 80%

run-once 1

call {

do move prontera 156 192 <- coordenada qualquer próximo ao npc.

pause 1

do talknpc 150 192 c <- posição do npc (somente as coordenadas x e y) e sequência de conversa.

pause 2

release ready

}

}

 

automacro ready {

hp > 80%

run-once 1

call {

release heal

}

}

 

Nessa macro quando o personagem morrer ele irá até o local onde se encontra o npc de cura e falará com ele. Caso o npc de cura tenha outra sequência de conversa você deve escrevé-la no trecho:

 

talknpc 150 192 [sequência de conversa]

 

No caso da minha macro a sequência definida é para npcs que você fala e aparece apenas um "quadrinho" de chat, depois ele é fechado e você está curado.

 

#### MACRO TELEPORTE (@WARP) ####

 

automacro warp {

location prontera <- mapa do ponto de retorno/salvo.

hp > 80%

call {

do c @warp gef_fild12 <- mapa para onde deseja que seja teleportado.

release warp

}

}

 

automacro back {

location not prontera <- mapa do ponto de retorno/salvo.

location not gef_fild12 <- mapa para onde deseja que seja teleportado.

run-once 1

call {

do c @warp gef_fild12 <- mapa para onde deseja que seja teleportado

release back}

}

 

Nessa macro toda a vez que você morrer e for para o ponto de retorno, o personagem irá esperar ficar com

uma quantidade maior que 80% do HP, em seguida irá se teleportar usando o @warp até o lockMap definido. Caso ele não esteja no mapa do ponto de retorno e nem no lockMap, ou seja, esteja perdido em qualquer outro mapa, ele irá teleportar mesmo assim até o lockMap.

 

 

EVITANDO ALGUNS ERROS DE MACROS

 

Sempre que for salvar uma macro no arquivo macros.txt, abra o bloco de notas e cole a macro dentro, em seguida faça os seguintes procedimentos:

 

1- Abra o bloco de notas que você acabou de salvar usando o Notepad++, basta clicar com o botão direiro emcima do bloco de notas e ir em "Edit With Notepad++".

 

2- Deixe a primeira linha do arquivo livre, ou seja, pule a primeira linha.

 

3- Agora siga a imagem abaixo:

 

imagem.JPG

 

Clique em "Formatar" > "Converter para UTF-8 (sem BOM)", depois é só salvar normalmente o arquivo e fechar.

 

 

Erros:

Malformed UTF-8 character

 

Você não salvou sua macro no formato UTF-8 (sem BOM).

 

Syntax error at line 1 (when there is no syntax errors)

 

Você não pulou a primeira linha do arquivo.

 

 

Bom pessoal esse é o fim. Leiam os tutorias sobre macro é muito importante saber um pouco sobre macros, ajuda muito. Até a próxima!.

 

 

Créditos: Roberto (OpenkorePROJECT)

Link para o comentário
Compartilhar em outros sites

O tópico esta mais ou menos

Falta centralizar e colocar cores e também o negrito

Ótimo tutorial vai ajudar varias pessoas

Leva meu tanks

Abraços~

 

OK estarei editando seguirei o concelhor.

Link para o comentário
Compartilhar em outros sites

ótimo tópico, realmente vai ajudar muita gente.

o problema agr vai ser descobrir os comandos desse troço.

sabe dizer em que linguagem de programaçao isso ta ou um link com os comandos mais comuns?

 

de qlquer forma levo meu tanks

Link para o comentário
Compartilhar em outros sites

Benner cara me tira uma dúvida aqui, eu tô querendo fazer umas coisas no Rag mas tô querendo saber se pra isso eu vou precisar montar um macro, ou se eu configurar em outro lugar dará certo, olha só:

 

Eu estou em moc_fild03 upando, eu quero que ele faça aquele mesmo processo de quando chegar aos 48% que ele venda os itens e os itens importantes que ele guarde no armazem com a kafra mais próxima possível... porém a kafra mais próxima possivel fica em Payon, pra que meu char saia de moc_fild03 e vá para Payon ele terá que passar por 2 portais:

 

moc_fild03 303 170 pay_fild01 13 152 (e em seguida) pay_fild01 333 356 payon 122 27

 

e após ele chegar em Payon que ele vá em qualquer vendedor e venda os itens, por exemplo: Especialista em Armadilhas payon 123 109 (pq fica mais próximo da entrada da cidade)

e por último que ele vá na kafra e guarde os itens: payon 175 226

 

Depois desse processo todo, quero que ele retorne todo o percurso pra moc_fild03 e reinicie tudo outra vez... deu pra entender??

 

Ai está minha dúvida, eu preciso fazer uma macro pra que ele faça isso tudo?? Ou tenho que configurar em outro local?? Obrigado

P.S.: Estarei colocando esse tópico em outros locais também pra ver se o pessoal também dá uma ajuda.

Link para o comentário
Compartilhar em outros sites

Bom já que você encontro a solução não vou precisar escrever como fazer pois a solução é muito simples bastava você configurar os npcs que o bot usaria e o colocar os itens que deseja no pickupitens uma boa é deixa o pickupitens como ALL 0 no na ultima linha e colocar o item que quer pegar nas linha acima dele tipo assim.

Morango 1

All 0

 

Saco?

 

Bom a explicação do porque ter que saltar uma linha está em negrito você ainda fala que falto explicar.

Cara tem que saltar uma linha porque se não saltar da erro pra mim isso é uma explicação bem explicita agora não me pergunte porque da erro porque eu não sei e também não sou nem um provador de teorema o que pra mim é coisa de fracão e é mesma coisa que perguntar porque 1+1=2.

Link para o comentário
Compartilhar em outros sites

  • 4 semanas atrás...
Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.