Macro reparação 1.8

Bem-vindo!

Ao se registrar conosco, você poderá discutir, compartilhar e enviar mensagens privadas com outros membros da nossa comunidade.

Registrar agora!


RupColf

Neutro
Entrou
Jan 21, 2026
Mensagens
3
Pontuação de reação
1
Idade
23
Localização
Brasil
Cubos
4
Gente, sou novo aqui, mas eu estava querendo upar reparação, me deparei com o macro do Arteon e ela é realmente boa, mas decidi dar uma melhorada para minha situação.
As principais mudanças foram na compra de pedra e no meu caso de usar esqueleto no armazenamento dos arcos, isso provavelmente deixou mais lento o up, porem pensando que precisarei dos arcos na red para upar depois pensei ser uma boa opção.
Eu mantive o padrão de baus padrão, sendo o muro de baus voltado para o norte, precisa setar um /home baus
Também precisa setar um /home pedras de frente para a placa, ele compra dois packs de pedra e verifica o inventario a cada 800 hits para guardas os arcos e comprar mais pedras.
Para voltar para o farm precisa setar o /home mob


Código:
$${
IF(espada);
    LOG("&f&l>>> &8&lMacro Reparação RupColf &4&l[OFF] &f&l<<<");
    UNSET(espada); UNSET(@lock); STOP();
ELSE;
    #combate_yaw = 359; #combate_pitch = 10;
    GUI(); WAIT(5t);
    #validado = 0;
    WHILE(#validado == 0);
        PROMPT(&selecao,"$$?","Modo: drop ou bau?");
        IF(&selecao == "bau"); SET(@bau); #validado = 1; LOG("&6&l[!] MODO: BAÚ");
        ELSEIF(&selecao == "drop"); UNSET(@bau); #validado = 1; LOG("&d&l[!] MODO: DROP");
        ELSE; LOG("&4&l[!] Digite 'drop' ou 'bau'."); WAIT(1); ENDIF;
    ENDWHILE;

    SET(espada); UNSET(@lock); #timer_sync = 0;
    LOG("&f&l>>> &8&lMacro v124.0 &a&l[ON] &f&l<<<");

    LOG("&e&l[!] Analisando inventário slot por slot...");
    #p = 0; #lixo = 0; #arcos = 0;
    GUI(inventory); #w = 0;
    WHILE((%GUI% != "INVENTORY") && (#w < 40)); WAIT(1t); INC(#w); ENDWHILE;
    WAIT(30t);
    
    FOR(#i,0,44);
        &id = "none"; #stk = 0;
        GETSLOTITEM(%#i%,&id,#stk);
        #is_item = 0;

        IFMATCHES(%&id%,"stone|pedra|1$|4$");
            #p = #p + %#stk%; #is_item = 1;
        ENDIF;

        IFMATCHES(%&id%,"bow|arco|261$");
            INC(#arcos); #is_item = 1;
        ENDIF;

        IFMATCHES(%&id%,"sword|espada|272$|^$|air|none|null|item\.air");
            #is_item = 1;
        ENDIF;

        IF((#is_item == 0) && (#i < 36 || #i > 39));
            INC(#lixo);
        ENDIF;
    NEXT;
    GUI();
    LOG("&b[!] Scan Final: %#p% Pedras | %#lixo% Trash | %#arcos% Arcos.");

    IF((#lixo > 5) || (#p < 65) || (#arcos > 0));
        SET(@lock); #moveu = 0;
        IF((#arcos > 0) && (@bau));
            LOG("&6[!] Indo para /home baus...");
            ECHO("/home baus"); #moveu = 1; WAIT(220t);
            LOOK(SOUTH); WAIT(20t);
            GUI(inventory); WAIT(5t);
            FOR(#i,0,44);
                GETSLOTITEM(%#i%,&id_t);
                IFMATCHES(%&id_t%,"arrow|flecha|bone|osso");
                    SLOTCLICK(%#i%,"left",false); WAIT(100ms); SLOTCLICK(-999,-1,false); WAIT(100ms);
                ENDIF;
            NEXT;
            GUI(); WAIT(10t);
            LOOK(NORTH); WAIT(15t);
            #limpo = 0;
            FOR(#col,1,5);
              IF(#limpo == 0);
                FOR(#idx,1,4);
                  IF(#limpo == 0);
                    IF(#idx == 1); #p_v = "-0";  ENDIF;
                    IF(#idx == 2); #p_v = "30";  ENDIF;
                    IF(#idx == 3); #p_v = "-25"; ENDIF;
                    IF(#idx == 4); #p_v = "-50"; ENDIF;
                    LOOK(NORTH); WAIT(2t); LOOK(,%#p_v%); WAIT(20t);
                    KEY(use); WAIT(30t);
                    IF(%GUI% == "NONE"); KEY(use); WAIT(30t); ENDIF;
                    #t = 0; WHILE((%GUI% == "NONE") && (#t < 40)); WAIT(1t); INC(#t); ENDWHILE;
                    IFMATCHES(%GUI%,"(?i)CHEST|CONTAINER|DOUBLE|10");
                        WAIT(25t);
                        #v = 0; FOR(#s,0,53); GETSLOTITEM(%#s%,&ids); IFMATCHES(%&ids%,"^$|air|none|null|item\.air"); #v = 1; BREAK; ENDIF; NEXT;
                        IF(#v == 1);
                            FOR(#slot,54,89); GETSLOTITEM(%#slot%,&idb);
                            IFMATCHES(%&idb%,"bow|arco"); SLOTCLICK(%#slot%,l,true); WAIT(200ms); ENDIF; NEXT;
                        ENDIF;
                        #resta = 0; FOR(#c,54,89); GETSLOTITEM(%#c%,&idc); IFMATCHES(%&idc%,"bow|arco"); #resta = 1; BREAK; ENDIF; NEXT;
                        IF(#resta == 0); #limpo = 1; ENDIF;
                        GUI(); WAIT(15t);
                    ENDIF;
                  ENDIF;
                NEXT;
                IF(#limpo == 0); KEYDOWN(RIGHT); WAIT(5t); KEYUP(RIGHT); WAIT(30t); LOOK(NORTH); WAIT(5t); ENDIF;
              ENDIF;
            NEXT;
        ELSEIF(#lixo > 5);
            LOG("&d[!] Descartando lixo no WEST...");
            LOOK(WEST); WAIT(20t);
            GUI(inventory); WAIT(5t);
            FOR(#i,0,44);
                GETSLOTITEM(%#i%,&id_inv);
                IFMATCHES(%&id_inv%,"stone|pedra|sword|espada|272|1|^$|air|none|null|item\.air");
                ELSEIF((#i < 36) || (#i > 39));
                    SLOTCLICK(%#i%,"left",false); WAIT(150ms); SLOTCLICK(-999,"left",false); WAIT(150ms);
                ENDIF;
            NEXT;
            GUI();
        ENDIF;
        IF(#p < 65);
            LOG("&e[!] Comprando pedras...");
            ECHO("/home pedras"); #moveu = 1; WAIT(200t);
            KEYDOWN(SNEAK); WAIT(25t);
            KEY(use); WAIT(45t); KEY(use); WAIT(25t);
            KEYUP(SNEAK); WAIT(100t);
        ENDIF;
        IF(#moveu); ECHO("/home mob"); WAIT(140t); ENDIF;
        UNSET(@lock);
    ENDIF;

    DO;
        LOOK(%#combate_yaw%,%#combate_pitch%);
        
        IF(%DURABILITY% < 30);
            LOOK(0,90); WAIT(500ms);
            KEY(use); WAIT(500ms);
            LOOK(%#combate_yaw%,%#combate_pitch%);
        ENDIF;

        IFMATCHES(%ITEM%,"sword|espada|272");
            KEY(attack); WAIT(150ms);
        ELSE;
            PICK(stone_sword); WAIT(2t);
        ENDIF;
        
        INC(#timer_sync);

        IF((#timer_sync > 800) && (!@lock));
            #timer_sync = 0;
            LOG("&e&l[!] Manutenção de Ciclo (800 hits)...");
            
            #p = 0; #lixo = 0; #arcos = 0;
            GUI(inventory); #w = 0;
            WHILE((%GUI% != "INVENTORY") && (#w < 40)); WAIT(1t); INC(#w); ENDWHILE;
            WAIT(30t);
            FOR(#i,0,44);
                &id = "none"; #stk = 0;
                GETSLOTITEM(%#i%,&id,#stk); #is_item = 0;
                IFMATCHES(%&id%,"stone|pedra|1$|4$"); #p = #p + %#stk%; #is_item = 1; ENDIF;
                IFMATCHES(%&id%,"bow|arco|261$"); INC(#arcos); #is_item = 1; ENDIF;
                IFMATCHES(%&id%,"sword|espada|272$|^$|air|none|null|item\.air"); #is_item = 1; ENDIF;
                IF((#is_item == 0) && (#i < 36 || #i > 39)); INC(#lixo); ENDIF;
            NEXT;
            GUI();
            
            IF((#lixo > 5) || (#p < 65) || (#arcos > 0));
                SET(@lock); #moveu = 0;
                IF((#arcos > 0) && (@bau));
                    LOG("&6[!] Indo para /home baus...");
                    ECHO("/home baus"); #moveu = 1; WAIT(220t);
                    LOOK(SOUTH); WAIT(20t); GUI(inventory); WAIT(5t);
                    FOR(#i,0,44);
                        GETSLOTITEM(%#i%,&id_t);
                        IFMATCHES(%&id_t%,"arrow|flecha|bone|osso");
                            SLOTCLICK(%#i%,"left",false); WAIT(100ms); SLOTCLICK(-999,-1,false); WAIT(100ms);
                        ENDIF;
                    NEXT;
                    GUI(); WAIT(10t); LOOK(NORTH); WAIT(15t); #limpo = 0;
                    FOR(#col,1,5);
                      IF(#limpo == 0);
                        FOR(#idx,1,4);
                          IF(#limpo == 0);
                            IF(#idx == 1); #p_v = "-0"; ENDIF; IF(#idx == 2); #p_v = "30"; ENDIF;
                            IF(#idx == 3); #p_v = "-25"; ENDIF; IF(#idx == 4); #p_v = "-50"; ENDIF;
                            LOOK(NORTH); WAIT(2t); LOOK(,%#p_v%); WAIT(20t); KEY(use); WAIT(30t);
                            IF(%GUI% == "NONE"); KEY(use); WAIT(30t); ENDIF;
                            #t = 0; WHILE((%GUI% == "NONE") && (#t < 40)); WAIT(1t); INC(#t); ENDWHILE;
                            IFMATCHES(%GUI%,"(?i)CHEST|CONTAINER|DOUBLE|10");
                                WAIT(25t); #v = 0; FOR(#s,0,53); GETSLOTITEM(%#s%,&ids); IFMATCHES(%&ids%,"^$|air|none|null|item\.air"); #v = 1; BREAK; ENDIF; NEXT;
                                IF(#v == 1); FOR(#slot,54,89); GETSLOTITEM(%#slot%,&idb); IFMATCHES(%&idb%,"bow|arco"); SLOTCLICK(%#slot%,l,true); WAIT(200ms); ENDIF; NEXT; ENDIF;
                                #resta = 0; FOR(#c,54,89); GETSLOTITEM(%#c%,&idc); IFMATCHES(%&idc%,"bow|arco"); #resta = 1; BREAK; ENDIF; NEXT;
                                IF(#resta == 0); #limpo = 1; ENDIF; GUI(); WAIT(15t);
                            ENDIF;
                          ENDIF;
                        NEXT;
                        IF(#limpo == 0); KEYDOWN(RIGHT); WAIT(5t); KEYUP(RIGHT); WAIT(30t); LOOK(NORTH); WAIT(5t); ENDIF;
                      ENDIF;
                    NEXT;
                ELSEIF(#lixo > 5);
                    LOG("&d[!] Descartando no WEST..."); LOOK(WEST); WAIT(20t); GUI(inventory); WAIT(5t);
                    FOR(#i,0,44);
                        GETSLOTITEM(%#i%,&id_inv);
                        IFMATCHES(%&id_inv%,"stone|pedra|sword|espada|272|1|^$|air|none|null|item\.air");
                        ELSEIF((#i < 36) || (#i > 39)); SLOTCLICK(%#i%,"left",false); WAIT(150ms); SLOTCLICK(-999,"left",false); WAIT(150ms); ENDIF;
                    NEXT;
                    GUI();
                ENDIF;
                IF(#p < 65);
                    LOG("&e[!] Comprando pedras..."); ECHO("/home pedras"); #moveu = 1; WAIT(200t);
                    KEYDOWN(SNEAK); WAIT(25t); KEY(use); WAIT(45t); KEY(use); WAIT(25t); KEYUP(SNEAK); WAIT(100t);
                ENDIF;
                IF(#moveu); ECHO("/home mob"); WAIT(140t); ENDIF;
                UNSET(@lock);
            ENDIF;
        ENDIF;
    LOOP;
ENDIF;
}$$
 

Usuários que estão visualizando este tópico

Voltar
Topo