PDA

Ir para Versão Original : [REVISÃO] [CONTRIB] - Macro para Forgers (Blacksmith) - by HerrSchafer



levelbot
11/03/2006, 22:21:12
MACRO AGUARDANDO REVISÃO OPENKORE 2.0.7 / MACRO PLUGIN 2.0.2

Amigos:

Depois de algum tempo quebrando a cabeça com a versão 093, resolvi migrar para a versão CVS e qual foi minha surpresa ao me identificar e conseguir soluções muito mais facilmente.
Eu postei uma macro nesta antiga versão, com o propósito de refinar automaticamente os minérios e pedras obtidos, mas após algumas atualizações do Kore, o próprio plugin "forge.pl" acabou gerando incompatibilidades. Mas isto é passado.
Apresento aqui minha primeira experiência relevante com a nova versão do Macro Plugin:

O que ela faz?
Forja ferro, aço, fragmento estelar e os quatro elementais. Além disso, ela verifica se há fornalhas suficientes, comprando o necessário se não houver;

Como ela faz isso?
Usando o plugin forge.pl que vem junto com outros no "pacote" de plugins disponível no link atualizado. Porém, meu colegas alquimistas queiram me desculpar: o plugin serve também a vocês, mas minha macro só atende a Ferreiros; devo confessar que não entendo e nem teria como testar a versão para Alquimistas, mas creio que poucas alterações sejam necessárias;

Quais as limitações?
* A macro é bem específica: Pure Forgers! Pensando nas características destes personagens, eu desenvolvi a macro visando o uso do carrinho e não do inventário, pois sobrecarregaria o personagem muito facilmente.
* Como foi feita, ela dispara quando estiver em Geffen com mais de 50 minérios de ferro e mais de 5 carvões ou algum elemntal a ser forjado. Então ele larga o que estiver fazendo e vai para a refinaria Geffen, onde ele poderá comprar as fornalhas.

Como usar?
1) Altere seu items_control de forma que todos os materiais envolvidos sejam mandados para o carrinho, não permanecendo nenhum no inventário. Os itens são:
*Iron Ore
*Iron
*Coal
*Red Blood
*Crystal Blue
*Green Live
*Wind of Verdure
*Mini Furnace

1a) Se nada for mudado no items_control, os itens forjados serão todos armazenados na Kafra quando ele for visitá-la; este é o meu caso. A macro só move os ferros para o carrinho, para o processo de fabricação dos aços, mas todos os outros itens permanecem no inventário.

2) Novamente entra-se na questão pessoal: eu tenho determinados equips que aumentam as chances de sucesso na forja; na minha versão, eu equipo estes itens antes de começar a forjar, assim como peço buffs para o Slave Sacer. Os "Equips pra Forja" (como eu os chamo) são muito diferentes dos equips que uso para upar;
observação: não foram inclusas no código estas partes

3) Largue o bot refinando aquela 1 Tonelada de minérios e pronto!


Vou explicar o que a macro faz passo-a-passo:

a) vai até a refinaria de geffen;
b) checa pelos elementos e forja se houver, nesta ordem: ferro, aço, fragmento, Coração Flamejante, Gelo Místico, Natureza Grandiosa e Vento Bruto; caso não haja minério de um tipo, ele passa ao próximo.
observação: no caso específico do aço, dependemos de uma certa quantidade de ferro; ele só refinará o que for possível com os ferros existentes.
c) checa se há fornálhas suficientes; primeiro usa as que possam existir no carrinho, depois compra lotes de 20 fornalhas cada vez que elas acabarem durante o processo.
d) exibe o relatório do que há no inventário e encerra a macro.

Eis o código:

#================================================= ========================
#
# Forja Ferro, Aço, Fragmento e Elementais,
# Compra lotes de 20 fornalhas e usa o cart
# Não executa se o saldo for menor que 20k.
# by Klaus Schäfer
#================================================= ========================

automacro smith {
location geffen
zeny > 20000
cart "Iron Ore" > 50
cart "Coal" > 5, "Red Blood" > 10, "Green Live" > 10, "Star Dust" > 10, "Wind of Verdure" > 10, "Crystal Blue" > 10
call forge
}


macro forge {
do move 102 166 geffen_in
do sit
do p bless
pause 1
if (@cartamount (Iron Ore) = 0) goto steel
while (@cartamount (Iron Ore) > 0) as frgirn
if (@cartamount (Mini Furnace) > 1) goto ironloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Iron Ore)
:ironloop
do cart get @cart (Iron Ore) 1
do cart get @cart (Mini Furnace) 1
do forge 0
pause 1
end frgirn
do cart add @inventory (Iron)
:steel
if (@cartamount (Coal) = 0) goto crumb
while (@cartamount (Coal) > 0) as frgstl
if (@cartamount (Iron) < 5) goto crumb
if (@cartamount (Mini Furnace) > 1) goto steelloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Iron)
do cart add @inventory (Coal)
:steelloop
do cart get @cart (Iron) 5
do cart get @cart (Coal) 1
do cart get @cart (Mini Furnace) 1
do forge 1
pause 1
end frgstl
:crumb
if (@cartamount (Star Dust) < 10) goto heart
while (@cartamount (Star Dust) > 9) as frgcrb
if (@cartamount (Mini Furnace) > 0) goto crumbloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Star Dust)
:crumbloop
do cart get @cart (Mini Furnace) 1
do cart get @cart (Star Dust) 10
do forge 2
pause 2
end frgcrb
:heart
if (@cartamount (Red Blood) < 10) goto frozen
while (@cartamount (Red Blood) > 9) as frghrt
if (@cartamount (Mini Furnace) > 0) goto heartloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Red Blood)
:heartloop
do cart get @cart (Mini Furnace) 1
do cart get @cart (Red Blood) 10
do forge 3
pause 1
end frghrt
:frozen
if (@cartamount (Crystal Blue) < 10) goto nature
while (@cartamount (Crystal Blue) > 9) as frgnat
if (@cartamount (Mini Furnace) > 0) goto frozenloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Crystal Blue)
:frozenloop
do cart get @cart (Mini Furnace) 1
do cart get @cart (Crystal Blue) 10
do forge 4
pause 1
end frgnat
:nature
if (@cartamount (Green Live) < 10) goto wind
while (@cartamount (Green Live) > 9) as frgnat
if (@cartamount (Mini Furnace) > 0) goto natloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Green Live)
:natloop
do cart get @cart (Mini Furnace) 1
do cart get @cart (Green Live) 10
do forge 5
pause 1
end frgnat
:wind
if (@cartamount (Wind of Verdure) < 10) goto endforge
while (@cartamount (Wind of Verdure) > 9) as frgwnd
if (@cartamount (Mini Furnace) > 0) goto windloop
do talk @npc (110 172)
pause 2
do talk resp 1
pause 2
do talk resp 0
pause 2
do talk num 20
pause 1
do cart add @inventory (Mini Furnace)
do cart add @inventory (Wind of Verdure)
:windloop
do cart get @cart (Mini Furnace) 1
do cart get @cart (Wind of Verdure) 10
do forge 6
pause 1
end frgwnd
:endforge
do stand
log ===============================================
log Forge Finished
log ===============================================
log Iron: @cartamount (Iron)
log Steel: @invamount (Steel)
log Star Crumb: @invamount (Star Crumb)
log Flame Heart: @invamount (Flame Heart)
log Mystic Frozen: @invamount (Mystic Frozen)
log Great Nature: @invamount (Great Nature)
log Rough Wind: @invamount (Rough Wind)
log Mini Furnace: @cartamount (Mini Furnace)
log ===============================================
}


Eu gastei hoje cerca de 700k de minérios e elementais para testar esta macro; eu ia até Prontera, comprava o que precisava e disparava a macro. Funcionou perfeitamente.

Não se preocupem sobre o problema da super-velocidade que o plugin apresenta se digitarmos: forge 0 all por exemplo. Eu programei eventos entre uma forja e outra e a velociade é exatamente a mesma de um player normal "spammando" fornalhas com o /bm.

Espero que ajude!
Aguardo comentários!

--Edit--
* Corrigida a parte do relatório.
* Corrigido pequeno bug existente onde ele ficava parado após terminar a forja.
* Pode-se usar o cart até 7500 de peso que ainda assim ele conseguirá forjar os itens.


version
*** OpenKore 1.9.1 (SVN version) - Custom Ragnarok Online client ***
version
*** Macro plugin - Versão CVS 10.1 ou Superior ***

joamil1
15/01/2010, 13:16:11
Macro interessante, mas está desatualizada. Se alguém quiser testar nas versões atuais do kore e macro plugin, à vontade.

williamokano
15/01/2010, 17:32:47
:S, não tenho forger senão testava, mas aparenta ser uma macro muito boa!! pena que o macro plugin mudou tanto assim, acabamos perdendo algumas macros antigas mas realmente muito boas!!

joamil1
15/01/2010, 17:45:10
Sim. Tenho cada preciosidade aqui que merecia um livro, mas que não funcionam mais e precisam ser ajustadas pras versões mais novas do plugin.

laurianofilho
30/01/2010, 22:39:48
eu procurei procurei e nao encontrei nada mais falando sobre essa macro...alguem saberia dizer como executa-la? meu forger nao faz nada, só fica sentado...

joamil1
30/01/2010, 23:58:41
Macro EM REVISÃO, significa que nenhum moderador testou ainda.

Experimenta obedecer as condições da automacro:


location geffen
zeny > 20000
cart "Iron Ore" > 50
cart "Coal" > 5, "Red Blood" > 10, "Green Live" > 10, "Star Dust" > 10, "Wind of Verdure" > 10, "Crystal Blue" > 10


Se testar e reportar o funcionamento, a comunidade agradece.

laurianofilho
15/02/2010, 18:54:44
entao joamil1 desculpe a demora pra responder, testei a macro e ela da um erro parece q ele usa a fornalha mas nao faz o ferro =/ to lendo aqui sobre macro p ver se entendo o que ta acontecendo. mas se puder ajudar agradeço XD
2327

joamil1
15/02/2010, 21:27:05
Olhei rapidamente aqui e a macro usa um comando que não existe, o forge.

Não tenho blacksmith com essas características de forger pra testar, se quiser fazer uns testes, como usar fornalha, ver as opções que aparecem, dá pra tentar arrumar alguma coisa. Ela é bem antiga mesmo. Poste os logs de console dos testes em sequência por favor.

laurianofilho
18/02/2010, 15:35:27
entao joamil1, eu quero, mas de macro sou mt ruim, ja li mts posts sobre macros e nao entendi muita coisa, sobre config.txt eu ate que me saio bem mas de macro...xééééééééééé
se vc puder me dar umas dicas vou seguindo o que vc disser, ai ja aprendo ^^
mas é claro que estou aqui tentando no meu possivel... [;)]
obrigado desde já
obs: acho q falta só mesmo corrigir esse detalhe do forge...

joamil1
18/02/2010, 16:03:31
Não tenho blacksmith com essas características de forger pra testar, se quiser fazer uns testes, como usar fornalha, ver as opções que aparecem, dá pra tentar arrumar alguma coisa. Ela é bem antiga mesmo. Poste os logs de console dos testes em sequência por favor.

Fez o que pedi ?

laurianofilho
20/02/2010, 17:29:44
joamil1, nao sei se fiz o que vc pediu, pois como disse nao entendo de macro, nao sei utilizar a mini-fornalha sozinha pra testar, testei varios nomes nessa macro, como (forger,BS_IRON,smith, forge, entre outros) e nao consegui resultados sempre da esta mesma mensagem...BS_IRON é o nome da skill no skill.txt, mas tbm nao deu certo...tentei ler sobre macros nos tutooriais do forum mas parece q eu fico cada vez mais perdido, parece q nao tem ponto de referencia...(deve ser pq macro nao é tao simples assim né :P ).
bom se vc nao sabe como ajudar, nao vou perturbar mais com isso, talvez alguem saiba e ajude um dia, eu vou continuar lendo e tentando (um dia eu consigo!!!)
obrigado desde já

joamil1
20/02/2010, 20:13:26
OK, pelo client normal, esquece openkore por enquanto, me explique como são forjadas cada um dos itens (ferro,aço,armas). Sei que pra armas eu preciso ter martelos, e é clicando neles que aparece o menu de seleção de qual arma posso fazer. Mas e pros minérios ? Não é dando duplo-clique nas fornalhas?

O que pedi era que fizesse isso via console, sem macro, na mão mesmo, e postasse os logs para que eu pudesse ver em detalhes como é o processo. Provavelmente haverá uso do comando "is" .

is Mini-furnace (não sei o nome correto)
is Oridecon Hammer (não sei o nome correto).

laurianofilho
21/02/2010, 11:05:24
opa...entao joamil1, é dando duplo clique nas fornalhas sim, ai aparece a opçao em uma janelinha (ferro,coraçao flamajante,gelo mistico, natureza grandiosa, fragmento estelar...) essas opçoes sao as de refinar minerios que nao precisam de carvao, nem de nenhum outro componente, só a mini fornalha (Mini Furnace) e os materiais necessarios, min. de ferro, sangue escarlate,cristal azul etc etc etc, agora o que eu nao entendi é se vc quer SS do ragnarok aberto ou do bot? pq p usar a mini fornalha pelo bot devo digitar (is 5) sendo 5 o numero da mini fornalha no inventario, que ficaria assim das duas maneiras:
2369237123702366
espero que ajude...

joamil1
21/02/2010, 11:13:20
Era do console do bot.

laurianofilho
21/02/2010, 11:58:49
entao...nao sei o que seria esse console do bot, saberia me explicar? achei q seria algumas dessas SS q enviei...se souber me dizer como chegar no console do bot envio as SS .
vlw ;)

joamil1
21/02/2010, 14:02:09
Aquilo que você vê quando inicia o start/wxstart .

Tire screenshots (até eu explicar log de console vai demorar muito) e poste-as.

eu+eu
23/02/2010, 14:19:04
boa tarde, bem sou novo aqui e não entendo quase nada de macros, mas estou tentando fazer essa aqui rodar, então joamil1 o que aparece no console é isso aqui, pode nos ajudar2378

obrigado pela ajuda e por favor continue o excelente trabalho

Ps: dentro do rag depois de clicar duas vezes na mini-fornalha aparece uma primeira janela para escolher o que quer forjar após selecionar o item aparece mais uma para confirmar

joamil1
23/02/2010, 17:46:55
Aparentemente é igual pot, provavelmente pra cada item de forja eu vou ter que mandar um pacote diferente.. Tenho uma boa e uma má notícia. Eu sei como pegar os packets, é via WPE com client hexed pro bRO, mas não tenho BS com forja. Não vou arriscar também em privates por que não to com nenhum instalado e nem pretendo.

Então duas opções:

Pesquisem no google ou no fórum internacional do kore sobre 'forging packets', 'using forging skills' e termos do tipo.

Ou quem tiver BS forger adicione o MSN do broguard pra falar comigo, que eu oriento passo a passo.