Vi muitos pedidos para fazer macro de vender isso e aquilo, com home assim e assado, daí surgiu a ideia de fazer essa macro.
Pois bem, essa macro foi feita para vender os mais diversos tipos de itens, na warp vip ou warp loja, você precisará informar algumas coisas ao iniciar a macro, são elas:
Ativar Sistema de aviso e denuncia?
Caso queira ativar esse sistema digite
sim caso contrário digite
nao, ao tentar vender o item se tiver algum player na frente da placa o impedindo de vender, a macro irá avisar o player no local ou mandando tell, pedindo para sair da frente. Será salvo uma log na pasta logs dentro da pasta macro, um arquivo chamado trolls.txt com o nome do player horário e data que esteve lhe impedindo de vender.
Também será tirado um print caso queira fazer uma denuncia. O problema ao ativar esse sistema é que ao tirar a print pode dar lag ou dar uma travada no mine, além de que você perderá uns segundos tirando print. (Mas caso tenha alguém que fica lhe atrapalhando, esse sistema pode ser muito útil, isso se a staff aceitar diversas prints para a denuncia.)
Quantos baus?
Você deve informar o total de baús que deverá ser vendido. Esse número pode ser infinito desde que a home permaneça a mesma.
Exemplo, você tem 100 homes com nome bau1 até bau100
Digite
100 para vender os 100 baús.
Qual nome da home dos baus?
Você poderá utilizar qualquer nome de home.
Exemplo, você quer vender disco e tem os disco guardados nas
/home disco1 ao
/home disco100
Digite que sua home se chama "
disco" sem as aspas e sem números que indica quantia de homes.
Se sua home chama
bau1 ou
peixe1, digite somente o nome "
bau" ou "
peixe".
Qual número do item que vai vender?
Na versão
VIP você escolhe qual item quer vender, apenas digitando seu respectivo
número, veja abaixo a lista de itens possíveis para vender:
18 - peixe
19 - fungo
20 - osso
21 - carne
22 - cana
23 - cacto
24 - disco
Se for vender por exemplo carne podre, digite apenas "
21" sem aspas, que é o número correspondente a carne podre..
Quanto tempo no teleporte? (Versão não VIP)
Essa pergunta é feita somente na versão não VIP caso seu PC tenha lag ou dê alguma travada, você pode aumentar o tempo em segundos, sendo o recomendado
6 segundos para ser mais rápido, caso de algum bug aumente esse tempo.
Qual o nome da home de venda na Warp loja? (Versão não VIP)
Aqui você deverá informar qual a home setada na warp loja para vender seus itens. Você pode usar qualquer nome, do mesmo jeito quando você informa o nome da home dos baús você deve informar o nome da home da warp loja. Se você setou uma home chamada
/home vendadisco, digite apenas
vendadisco.
Funcionamento:
Ao iniciar a macro, será percorrida todas as homes que foi informado e será vendido seus itens, mas deixe nesses baus apenas os itens que irá vender.
Caso tenha algum player na frente da placa a macro irá mudar de posição 2 vezes, uma vez para esquerda e outra para direita para tentar vender seus itens, isso mesmo tendo ativado ou não o sistema de denuncia.
A macro vende nas placas de baixo para vender 9 packs por vez e com isso dá apenas 4 hits rápidos que é o necessário para vender todo seu inventário.
Na venda de disco ela tenta vender todos os discos e utiliza sprint para correr até chegar na placa.
A macro serve tanto para versão
1.7 quanto
1.5 e tem na versão
VIP e
não VIP.
Na versão não VIP você deverá setar a home na qual quer vender seu item, faça isso olhando para a placa de venda na Warp loja.
Da mesma forma as homes dos baús deverá ser setado olhando para os mesmos.
Vídeos demonstrativos:
Pegando itens no baú e indo vender Warp VIP:
Obs.: Tive que pegar fungos e vender na placa de osso, pois devido os vários testes feitos, vender na placa de fungo estava atrapalhando outros players.
[youtube]https://www.youtube.com/watch?v=taTs6TFjx1k[/youtube]
Esse outro vídeo mostra a macro tentando vender em mais de 2 tentativas, quando tem algum jogador atrapalhando.
[youtube]https://www.youtube.com/watch?v=_mTnA7gxgL8[/youtube]
O vídeo abaixo é demonstração do código não VIP, é mais completo pois mostra pegando itens em 3 baús e vendendo de verdade.
https://www.youtube.com/watch?v=27MNVLif4sc
Código VIP: (versão Region 2.0)
$${
if(dark);
log("&3[MACRO] &4Vende tudo desativado.");
unset(dark);
stop();
else;
log("&3[MACRO] &aVende tudo ativado.");
set(dark);
ACHIEVEMENTGET("13darkfire13",56);
#n=1;
#tipo=0;
prompt(&pergunta,$$?,"Ativar sistema de denuncia? responda sim / nao");
prompt(#chests,$$?,"Quantos baus?");
prompt(&home,$$?,"Qual nome da home dos baus? (se for bau1, digite apenas 'bau')");
prompt(#tipo,$$?,"Qual número do item que vai vender? /peixe 18 /fungo 19 /osso 20 /carne 21 /cana 22 /cacto 23 /disco 24");
INC(#chests);
do();
do();
gui(chat);
wait(500ms);
type(/home %&home%%#n%);
press(return);
wait(3);
key(use);
wait(2);
for(#i,0,53);
slotclick(%#i%,l,true);
wait(75ms);
if(%#id%>349);
getslotitem(%#i%,#id,#stack);
endif;
next;
gui();
gui(inventory);
getslotitem(9,#idi,#stacki);
gui();
if(%#stacki%=0);
INC(#n, 1);
if(%#n%=%#chests%);
log("&3[MACRO] &4Vende tudo desativado.");
stop();
endif;
endif;
wait(1);
until(%#stacki%!=0);
log("&3[MACRO] &fBau esvaziado.");
wait(100ms);
}$$/warp vip$${
wait(2);
if((%#tipo%=18)|(%#tipo%=19)|(%#tipo%=20)|(%#tipo%=21)|(%#tipo%=22)|(%#tipo%=23));
look(SOUTH);
wait(1);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
do;
sprint();
wait(10ms);
until((%XPOS%=%#posx%+9)|(%XPOS%=%#posx%-9)|(%ZPOS%=%#posz%+9)|(%ZPOS%=%#posz%-9));
wait(100ms);
keyup(FORWARD);
look(-90,);
wait(100ms);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
do;
wait(10ms);
until((%XPOS%=%#posx%+%#tipo%)|(%XPOS%=%#posx%-%#tipo%)|(%ZPOS%=%#posz%+%#tipo%)|(%ZPOS%=%#posz%-%#tipo%));
wait(150ms);
keyup(FORWARD);
look(+90,);
look(,75);
wait(100ms);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
wait(200ms);
do;
keydown(JUMP);
wait(100ms);
keyup(JUMP);
while((HITNAME="Lã")|(%HITID%=35));
look(,38);
if(%#tipo%=18);
look(,325);
endif;
do;
#posx=%XPOS%;
#posz=%ZPOS%;
wait(10ms);
until(%ZPOS%=672);
keyup(FORWARD);
wait(300ms);
ifmatches(%HIT%,PLAYER);
SET(&jogador, %HITNAME%, );
LOGTO("[%DATE%][%SERVER%] trolls.txt","[%TIME%] O player %&jogador% o impediu de vender seus itens as %TIME% do dia %DATE%");
IFBEGINSWITH(%&pergunta%,sim);
wait(1500ms);
press(F2);
wait(1500ms);
echo(/tell %&jogador% sai da frente da placa, já tenho print aqui, se continuar vou denuncia-lo);
endif;
#posx=%XPOS%;
#posz=%ZPOS%;
do;
keydown(left);
until((%XPOS%=%#posx%+1)|(%XPOS%=%#posx%-1)|(%ZPOS%=%#posz%+1)|(%ZPOS%=%#posz%-1));
keyup(left);
look(+20,35);
wait(1);
ifmatches(%HIT%,PLAYER);
do;
look(SOUTH);
keydown(right);
until((%XPOS%=%#posx%-2)|(%XPOS%=%#posx%+2)|(%ZPOS%=%#posz%-2)|(%ZPOS%=%#posz%+2));
keyup(right);
look(+314,29);
endif;
endif;
do(13);
key(ATTACK);
wait(1t);
loop;
elseif(%#tipo%=24);
do;
sprint();
look(NORTH);
keydown(right);
until(%XPOS%=712);
keyup(right);
do;
sprint();
look(WEST);
keydown(right);
until(%ZPOS%=650);
keyup(right);
unsprint();
look(-40,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+6,17);
do(4);
gui();
key(attack);
wait(300ms);
loop;
do;
sprint();
look(EAST);
keydown(FORWARD);
until(%XPOS%=732);
keyup(FORWARD);
look(-55,17);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,22);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,25);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,24);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+18,23);
do(4);
gui();
key(attack);
wait(300ms);
loop;
endif;
}$$
$${
loop;
endif;
}$$
Código VIP: (versão todos servidores)
$${
if(dark);
log("&3[MACRO] &4Vende tudo desativado.");
unset(dark);
stop();
else;
log("&3[MACRO] &aVende tudo ativado.");
set(dark);
ACHIEVEMENTGET("13darkfire13",56);
#n=1;
#tipo=0;
prompt(&pergunta,$$?,"Ativar sistema de denuncia? responda sim / nao");
prompt(#chests,$$?,"Quantos baus?");
prompt(&home,$$?,"Qual nome da home dos baus? (se for bau1, digite apenas 'bau')");
prompt(#tipo,$$?,"Qual número do item que vai vender? /peixe 18 /fungo 19 /osso 20 /carne 21 /cana 22 /cacto 23 /disco 24");
INC(#chests);
do();
do();
gui(chat);
wait(500ms);
type(/home %&home%%#n%);
press(return);
wait(3);
key(use);
wait(2);
for(#i,0,53);
slotclick(%#i%,l,true);
wait(75ms);
if(%#id%>349);
getslotitem(%#i%,#id,#stack);
endif;
next;
gui();
gui(inventory);
getslotitem(9,#idi,#stacki);
gui();
if(%#stacki%=0);
INC(#n, 1);
if(%#n%=%#chests%);
log("&3[MACRO] &4Vende tudo desativado.");
stop();
endif;
endif;
wait(1);
until(%#stacki%!=0);
log("&3[MACRO] &fBau esvaziado.");
wait(100ms);
}$$/warp vip$${
wait(2);
if((%#tipo%=18)|(%#tipo%=19)|(%#tipo%=20)|(%#tipo%=21)|(%#tipo%=22)|(%#tipo%=23));
look(SOUTH);
wait(1);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
do;
sprint();
wait(10ms);
until((%XPOS%=%#posx%+9)|(%XPOS%=%#posx%-9)|(%ZPOS%=%#posz%+9)|(%ZPOS%=%#posz%-9));
wait(100ms);
keyup(FORWARD);
look(-90,);
wait(100ms);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
do;
wait(10ms);
until((%XPOS%=%#posx%+%#tipo%)|(%XPOS%=%#posx%-%#tipo%)|(%ZPOS%=%#posz%+%#tipo%)|(%ZPOS%=%#posz%-%#tipo%));
wait(150ms);
keyup(FORWARD);
look(+90,);
look(,75);
wait(100ms);
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(FORWARD);
wait(200ms);
do;
keydown(JUMP);
wait(100ms);
keyup(JUMP);
while((HITNAME="Lã")|(%HITID%=35));
look(,38);
if(%#tipo%=18);
look(,325);
endif;
do;
#posx=%XPOS%;
#posz=%ZPOS%;
wait(10ms);
until(%ZPOS%=672);
keyup(FORWARD);
wait(300ms);
ifmatches(%HIT%,PLAYER);
SET(&jogador, %HITNAME%, );
LOGTO("[%DATE%][%SERVER%] trolls.txt","[%TIME%] O player %&jogador% o impediu de vender seus itens as %TIME% do dia %DATE%");
IFBEGINSWITH(%&pergunta%,sim);
wait(1500ms);
press(F2);
wait(1500ms);
}$$
por favor sai da frente da placa, já tenho print aqui, se continuar vou denuncia-lo
$${
endif;
#posx=%XPOS%;
#posz=%ZPOS%;
do;
keydown(left);
until((%XPOS%=%#posx%+1)|(%XPOS%=%#posx%-1)|(%ZPOS%=%#posz%+1)|(%ZPOS%=%#posz%-1));
keyup(left);
look(+20,35);
wait(1);
ifmatches(%HIT%,PLAYER);
do;
look(SOUTH);
keydown(right);
until((%XPOS%=%#posx%-2)|(%XPOS%=%#posx%+2)|(%ZPOS%=%#posz%-2)|(%ZPOS%=%#posz%+2));
keyup(right);
look(+314,29);
endif;
endif;
do(13);
key(ATTACK);
wait(1t);
loop;
elseif(%#tipo%=24);
do;
sprint();
look(NORTH);
keydown(right);
until(%XPOS%=712);
keyup(right);
do;
sprint();
look(WEST);
keydown(right);
until(%ZPOS%=650);
keyup(right);
unsprint();
look(-40,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+6,17);
do(4);
gui();
key(attack);
wait(300ms);
loop;
do;
sprint();
look(EAST);
keydown(FORWARD);
until(%XPOS%=732);
keyup(FORWARD);
look(-55,17);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,20);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,22);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,25);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+20,24);
do(4);
gui();
key(attack);
wait(300ms);
loop;
look(+18,23);
do(4);
gui();
key(attack);
wait(300ms);
loop;
endif;
}$$
$${
loop;
endif;
}$$
Código não VIP: (versão todos servidores)
$${
if(dark);
log("&3[MACRO] &4Vende tudo desativado.");
unset(dark);
stop();
else;
log("&3[MACRO] &aVende tudo ativado.");
set(dark);
ACHIEVEMENTGET("13darkfire13",56);
#n=1;
#tipo=0;
prompt(&pergunta,$$?,"Ativar sistema de denuncia? sim / nao");
prompt(#tempo,$$?,"Quantos segundos no teleporte?? 6 = mais rapido / 7 ou mais para qdo tiver lag");
prompt(#chests,$$?,"Quantos baus para vender?");
prompt(&home,$$?,"Qual nome da home dos baus? (se for bau1, digite apenas 'bau')");
prompt(&item,$$?,"Qual o nome da home de venda? (ex: '/home peixe' digite apenas 'peixe') ");
INC(#chests);
do();
do();
gui(chat);
wait(500ms);
type(/home %&home%%#n%);
press(return);
wait(%#tempo%);
key(use);
wait(2);
for(#i,0,53);
slotclick(%#i%,l,true);
wait(75ms);
if(%#id%>349);
getslotitem(%#i%,#id,#stack);
endif;
next;
gui();
gui(inventory);
getslotitem(9,#idi,#stacki);
gui();
if(%#stacki%=0);
INC(#n, 1);
if(%#n%=%#chests%);
log("&3[MACRO] &4Vende tudo desativado.");
stop();
endif;
endif;
wait(1);
until(%#stacki%!=0);
log("&3[MACRO] &fBau esvaziado.");
gui(chat);
wait(500ms);
type(/home %&item%);
press(return);
wait(%#tempo%);
ifmatches(%HIT%,PLAYER);
SET(&jogador, %HITNAME%, );
LOGTO("[%DATE%][%SERVER%] trolls.txt","[%TIME%] O player %&jogador% impediu você de vender seus itens as [%TIME%] do dia [%DATE%]");
IFBEGINSWITH(%&pergunta%,sim);
wait(1500ms);
press(F2);
wait(1500ms);
}$$
por favor sai da frente da placa, já tenho print aqui, se continuar vou denuncia-lo
$${
endif;
do;
#posx=%XPOS%;
#posz=%ZPOS%;
keydown(left);
until((%XPOS%=%#posx%+1)|(%XPOS%=%#posx%-1)|(%ZPOS%=%#posz%+1)|(%ZPOS%=%#posz%-1));
keyup(left);
look(205,40);
wait(1);
ifmatches(%HIT%,PLAYER);
do;
look(SOUTH);
keydown(right);
until((%XPOS%=%#posx%+1)|(%XPOS%=%#posx%-1)|(%ZPOS%=%#posz%+1)|(%ZPOS%=%#posz%-1));
keyup(right);
look(155,40);
endif;
endif;
do(13);
key(ATTACK);
wait(1t);
loop;
}$$
$${
loop;
endif;
}$$
Changelog:
19/05/14 - Corrigido erro ao vender peixes - Reportado por [member=ShOz]
Créditos e agradecimentos:
[member=Badcock] Desenvolvedor
dessa macro, peguei a parte de ir nos baus e vender.
[member=Inglad] Por
essa macro, peguei a parte de desviar do player na placa.
[member=Shibusen] Pelo ACHIEVEMENTGET
[member=JVFC11] Por
essa macro, peguei a idéia de tirar print.
[member=Punisherz] Por me dizer sobre a macro de salvar log
[member=jimmyfilips] Pelos tutoriais de como fazer macro =)
[member=AquaTerrano] Por ajudar na
atualização de macros para versão 1.7
[member=iKillerx] Pelo sistema de andares
dessa macro
E aos outros programadores que de alguma forma ajudaram apenas pelo fato de postarem suas macros, assim eu pude analisar seus códigos.
E ao [member=Pedro Rules] Por testar na versao 1.5.2 no servidor Aurora.
E ao [member=MrCreeper15] Pela paciencia em testar por vários dias e por ficar na frente da placa da warp vip fingindo que estava vendo fungo só pra testar o sistema de denuncias da macro =)
Caso ocorra algum bug, me informe que tentarei arrumar, fiz vários testes mas ainda sim a macro está sujeita a imprevistos.
Alguns bugs que podem acontecer esporadicamente:
Deixar de pegar 1 ou 2 item / pack no bau;
Na hora de desviar do player, errar a placa de venda;Clique para expandir...