---> Rly Recommended Wcer <---

Discussion in 'RuneScape 3 Cheating' started by I B0t 4 Phun, Nov 23, 2008.

---> Rly Recommended Wcer <---
  1. Unread #1 - Nov 23, 2008 at 10:06 AM
  2. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    For the ones who does not know, the best ever willow p2p wcer i've ever used (i have all the scripts for rsbot) is the Barb 'Outpost Willow Depositer by Slayer'
    I turned it on friday night about 7pm (19:00) i had 54wc, now Sunday 2:20pm(14:20) i achieved my goal of 70wc, yes i know its easy&fast but i might be the only person who hates wc :noworry:


    There have been mayby a total botting of 12hours. Its a brilliant script! The reason Iäm posting this is becouse i dont realy see many people using it therefor i thought maybe not so many people is aware of it, iw ould say 20x better then any draynor chopper.

    script:
    Code:
    import java.awt.*;
    import java.util.Map;
    
    import com.speljohan.rsbot.bot.Bot;
    import com.speljohan.rsbot.script.Skills;
    import com.speljohan.rsbot.script.wrappers.RSPlayer;
    import com.speljohan.rsbot.script.Bank;
    import com.speljohan.rsbot.script.*;
    import com.speljohan.rsbot.script.wrappers.*;
    import com.speljohan.rsbot.event.listeners.PaintListener;
    
    public class barbWillow extends Script implements PaintListener {
    
        public void onRepaint(Graphics g) 
        {    
            if(isLoggedIn()) {
                int Xbox = 227;
                int Ybox = 345;
                int Xprint = Xbox + 5;
                int Yprint = Ybox + 15;
                long millis = System.currentTimeMillis() - startTime1;
                long hours = millis / (1000 * 60 * 60);
                millis -= hours * (1000 * 60 * 60);
                long minutes = millis / (1000 * 60);
                millis -= minutes * (1000 * 60);
                long seconds = millis / 1000; 
                int XPChange = skills.getCurrentSkillExp(8) - startXP;
                int LevelChange = skills.getCurrentSkillLevel(8) - startLevel;
                float XPperSec = 0;
                float XPperMin = XPperSec*60;
                float XPperHour = XPperMin*60;
                if ((minutes > 0 || hours > 0 || seconds > 0) && XPChange > 0) {
                    XPperSec = ((float) XPChange)/(float)(seconds + (minutes*60) + (hours*60*60));
                }            
                g.setColor(Color.red);
                g.drawRoundRect(Xbox, Ybox, 270 - 1, 95 - 1,20,20);
                g.setColor(new Color(255, 255, 255, 100));
                g.fillRoundRect(Xbox + 1, Ybox + 1, 270 - 2, 95 - 2,20,20);
    
    
                g.setColor(Color.black);
                g.drawString("Banked " + Integer.toString(logsBanked) + " Willow Logs", Xprint, Yprint);
                g.drawString("Runtime: " + hours + " hours " + minutes + " minutes " + seconds + " seconds.",
                        Xprint, Yprint+15);
                g.drawString("Current: " + skills.getCurrentSkillLevel(8) + " levels and " + skills.getCurrentSkillExp(8) + " exp.", Xprint, Yprint+30);
                g.drawString("Gained: " + LevelChange + " levels and " + XPChange + " exp.",
                        Xprint, Yprint+45);
                g.drawString("Found: " + nestsFound + " nests",    Xprint, Yprint+60);
    
                g.drawString(skills.getXPToNextLevel(8) + " XP to next level, we are " + skills.getPercentToNextLevel(8) + "% to next level.",    Xprint, Yprint+75);
            
            }
            }
        public static final int WOODCUTTING_STAT = Skills.getStatIndex("Woodcutting");
    
        public boolean FullInv = false;
        public int DepoBox = 20228;
        private final int[] nestIds = { 5075, 5074, 5073, 5072, 5071, 5070, 7413 };
        private final int[] axeIDs = { 1349, 1351, 1353, 1355, 1357, 1359, 1361,
                6739 };
        public static int[] willowTrees = { 1308, 5551, 5552, 5553, 8481, 8482,
                8483, 8484, 8485, 8486, 8487, 8488 };
        public static int willowLogs = 1519;
        public int logcount;
        int startLevel = 0;
        int startXP = 0;
        public int logsBanked = 0;
        int State = 0;
        int Door = 20195;
        int nestsFound = 0;
        int    randomRun = random(20, 65);
        int checkTime;
        long startTime;
        long lastCheck;
        long startTime1 = System.currentTimeMillis();
    
        public String getName() {
            return "Barb Outpost Willow Depositer";
        }
    
        public double getVersion() {
            return 1.2;
        }
        
        @Override
        public String getScriptCategory() {
            return "WoodCutting";
        }
    
        public String getAuthor() {
            return "Slayer";
        }
        
        public String getScriptDescription() {
            return "<html>\n" +
                    "<head></head>\n" +
                    "<body>\n" +
                        "<center>" +
                            "<h2>" + getName() + "</h2>" +
                        "</center>\n" +
                        "<b>Author:</b> " + getAuthor() + "<br />" +
                        "<b>Version:</b> " + getVersion() + "<br />" +
                        
                        "<b>Features:</b>" +
                        "<ul><li>Start at Willows.</li></ul>" +
                        "<ul><li>No Args!</li></ul>" +
                            
                    "</body>\n" +
                    "</html>";
        }
    
        public boolean onStart(String[] s) {
            logcount = 0;
            logsBanked = 0;
            startTime1 = System.currentTimeMillis();
            if(isLoggedIn()){ 
                startLevel = skills.getCurrentSkillLevel(8);
                startXP = skills.getCurrentSkillExp(8);
            }
                Bot.getEventManager().addListener(PaintListener.class, this);
                log("Started Slayer's Outpost Chopper");
                return true;
        }
        
        public void onFinish() {
            Bot.getEventManager().removeListener(PaintListener.class, this);
        }
    
        public int loop() {
            //log("State: " + State);
        try{
            switch(State)
        {
        case 0: 
    
            if (ent()) {
            walkTileMM(new RSTile(2520 + (random( -1, 2)), 3580 + (random(-1, 2))));
            return chop();
            }
        
            if (busy()) {
                RSItemTile nest = getGroundItemByID(nestIds);
                if (nest != null) {
                    log("Found nest");
                    atTile(nest, "Take");
                    nestsFound++;
                    }
                antiBan();
                return random(800, 1000);
            }
                    
                    if(distanceTo(new RSTile(2535 + (random( -1, 1)), 3574 + (random(-1, 1)))) < 3) {
                        State = 2;
                        return random(750,1000);    
                    }
                    
                    
                    if (isInventoryFull()){ 
                        State = 1;
                        return random(750,1500);
                    }
                    
                    if(distanceTo(new RSTile(2520 + (random( -1, 2)), 3580 + (random(-1, 2)))) > 7) {
                        State = 3;
                        return random(750,1000);    
                    }
    
                    return chop(); 
            case 1:
                    return walkToBank();
            case 2:
                RSObject depositBox = findObject(DepoBox);
            if(distanceTo(depositBox.getLocation()) > 5)
            {
                walkTileMM(depositBox.getLocation());
                return random(500,750);
            }
            if (findObject(DepoBox) != null) {
                if (!RSInterface.getInterface(INTERFACE_DEPOSITBOX).isValid()) {
                        atObject(findObject(DepoBox),"Deposit");
                        return random(1000, 1250);
                        }
            }
            if (RSInterface.getInterface(INTERFACE_DEPOSITBOX).isValid()) {
                logsBanked += getInventoryCount(willowLogs);
                depositAllDepositBoxExcept(axeIDs);
                State++;
                }            
                if(inventoryContains(willowLogs)) { // if your full.
                    return random(1000, 1250);
                }
            case 3:            
                    return walkToCuttingSpot();
        
                }
            }catch(Exception e){ 
                e.printStackTrace(); 
            }
            return random(500, 1000);
    
        }
    
    
        public int chop() {
            RSObject Tree = findClosestObjectInRange(willowTrees, 8);
            setCameraAltitude(true);
            setCameraRotation(170);
            try {
                // System.out.println("Tree Location:" + Tree.getLocation().getX() +
                // " - " + Tree.getLocation().getY());
                // System.out.println("My Location:" +
                // getMyPlayer().getLocation().getX() + " - " +
                // getMyPlayer().getLocation().getY());
                // atObject(Tree, "Chop down");
    
                        int treeX, treeY;
        treeX = (int) Calculations.tileToScreen(Tree.getLocation()).getX();
                treeY = (int) Calculations.tileToScreen(Tree.getLocation()).getY();
                treeX = treeX + random(10, 20);
                treeY = treeY - random(5, 10);
                Point t = new Point(treeX, treeY);
                moveMouse(t);
                clickMouse(true);
                State = 0;
    
            } catch (NullPointerException NPE) {
                NPE.printStackTrace();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
            return(random(1000,2000));
        }
    
        public int walkToBank() {
            if(getMyPlayer().isMoving()) return random(1500,2000);
            if (distanceTo(new RSTile(2535 + (random( -1, 1)), 3574 + (random(-1, 1)))) < 7){
                wait(random(750,1500));
                State++;
                return random(750,1500);
            
        }    else if (distanceTo(findObject(Door)) <= 30){
                    walkTileMM(new RSTile(2520 + random(-1,2), 3571 + random(-1,2)));
                    wait(random(4000,4500));
                        setCameraRotation(271);
                        atDoor(findObject(Door), "e", "Open");
                        wait(random(1500,2000));
                        } else {
                    walkTileMM(new RSTile(2535 + (random( -1, 1)), 3574 + (random(-1, 1))));
                    wait(random(750,1500));
                    }
                    return random(500,1500);
        }
    
        public int walkToCuttingSpot() {
            if(getMyPlayer().isMoving()) return random(1500,2000);
            if (distanceTo(new RSTile(2520 + (random( -1, 2)), 3580 + (random(-1, 2)))) < 7){
                wait(random(750,1500));
                State = 0;
                return random(750,1500);
            
            } else if (distanceTo(findObject(Door)) <= 30){
                    walkTileMM(new RSTile(2523 + random(-1,2), 3571 + random(-1,1)));
                    wait(random(3000,4000));
                        setCameraRotation(271);
                        atDoor(findObject(Door), "e", "Open");
                        wait(random(1500,2000));
                        } else {
                    walkTileMM(new RSTile(2523 + random(-1,2), 3571 + random(-1,1)));
                    wait(random(750,1250));
                    walkTileMM(new RSTile(2520 + (random( -1, 2)), 3580 + (random(-1, 2))));
                    wait(random(750,1500));
                    }
                    return random(500,1500);
        }
    
        public RSObject findClosestObjectInRange(int IDs[], int range) {
            try {
                int myX, myY, minX, minY, maxX, maxY, objX, objY;
                RSObject temp;
                RSObject output = null;
                myX = getMyPlayer().getLocation().getX();
                myY = getMyPlayer().getLocation().getY();
                minX = range * -1;
                minY = range * -1;
                maxX = range;
                maxY = range;
                for (int x = minX; x < maxX; x++) {
                    for (int y = minY; y < maxY; y++) {
                        objX = myX + x;
                        objY = myY + y;
                        temp = getObjectAt(objX, objY);
                        if (temp == null) {
                            continue;
                        }
                        for (int ID : IDs) {
                            if (temp.getID() == ID) {
                                if (output == null) {
                                    output = temp;
                                } else {
                                    if (distanceTo(temp.getLocation()) < distanceTo(output
                                            .getLocation())) {
                                        output = temp;
                                    }
                                }
                            }
                        }
    
                    }
                }
                return output;
            }
    
            catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    
        public boolean busy() {
            if (getMyPlayer().isInCombat()) {
                runAway();
                return true;
            }
            if (getMyPlayer().getAnimation() == 879
                    || getMyPlayer().getAnimation() == 875
                    || getMyPlayer().getAnimation() == 867
                    || getMyPlayer().getAnimation() == 2846) {
                return true;
            }
            if (getMyPlayer().isMoving()) {
                return true;
            }
    
            return false;
        }
            
        public Point getDepositInventoryItemPoint(int invIndex) {
            int col = (invIndex % 7);
            int row = (invIndex / 7);
            int x = 121 + (col * 48);
            int y = 85 + (row * 50);
            return new Point(x, y);
        }
        
        public boolean depositAllDepositBoxExcept(int...items) {
            int inventoryCount = getInventoryCount();
            for (int off = 0; off < getInventoryArray().length; off++) {
                if (getInventoryArray()[off] == -1) {
                    continue;
                }
                boolean skip = false;
                for (int item: items)  {
                    if (getInventoryArray()[off] == item) {
                        skip = true;
                        break;
                    }
                }
                if (skip) {
                    continue;
                }
                
                for (int tries = 0; tries < 5; tries++) {
                    atDepositInventoryItem(getInventoryArray()[off], "Deposit-All");
                    wait(random(1000, 1500));
                    if(getInventoryCount() < inventoryCount) {
                        break;
                    }
                }
                if (getInventoryCount() >= inventoryCount) {
                    // equally, otherwise
                    // something realy weird
                    // happend :P
                    return false;
                }
                inventoryCount = getInventoryCount();            
            }
            return true;
        }
        
        public boolean atDepositInventoryItem(int itemID, String txt) {
            if (!interfaceExists(INTERFACE_DEPOSITBOX) || !isLoggedIn()) {
                return false;
            }
            for (int off = 0; off < getInventoryArray().length; off++) {
                if (getInventoryArray()[off] == itemID) {
                    clickMouse(getDepositInventoryItemPoint(off), 3, 3, false);
                    wait(random(200,300));
                    return atMenu(txt);
                }
            }
            return false;
        }
        
        public boolean runAway() {
            RSTile a, b;
            a = getMyPlayer().getLocation();
            b = new RSTile(a.getX() + 10, a.getY() + 10);
            walkTileMM(b);
            wait(random(10000, 20000));
            walkTileMM(a);
            return true;
        }
        
        int antiBan() {
                int p = Math.round(random(1, 11));
                switch (p) {
            case 1:
                wait(random(1000, 1500));
                return( random(500, 750) );
                
            case 2:
                int x = random(0, 750);
                int y = random(0, 500);
                moveMouse(0, 0, x, y);
                return( random(1000, 1500) );
            
            case 3:
                // Is the current tab the inventory?
                if ( getCurrentTab( ) != TAB_INVENTORY ) {
                    // No, so switch to the inventory tab.
                    openTab( TAB_INVENTORY );
                    return( random(500, 750) );
                }
                else {
                    // No, so return
                    return( random(500, 750) );
                }
    
            case 4:
                int x1 = random(0, 750);
                int y1 = random(0, 500);
                moveMouse(0, 0, x1, y1);
                return( random(1000, 1500) );
                
            case 5:
                if ( random(1, 8) == 2  ){
                    int angle = (getCameraAngle( ) + random(-90, 90));
                    if ( angle < 0) angle = 0;
                    if ( angle > 359) angle = 0;
                    
                    setCameraRotation( angle );
                }
                return( random(500, 750) );
                
            case 6:
                int x2 = random(0, 750);
                int y2 = random(0, 500);
                moveMouse(0, 0, x2, y2);
                return( random(1000, 1500) );
                }
                    return (random(500, 700));
        }
    
        public boolean ent() {
            RSNPC ent = getNearestNPCByName("Willow");
            if (distanceTo(ent) <= 2) {
                log("Found Ent changing Tree");
                return true;
            }
            return false;
        }
    }
    54-70wc in 12h (1.5days) no bans, brilliant script :)
     
  3. Unread #2 - Nov 23, 2008 at 11:48 AM
  4. SideShow Tom
    Joined:
    Nov 15, 2008
    Posts:
    295
    Referrals:
    0
    Sythe Gold:
    0

    SideShow Tom Forum Addict
    Banned

    ---> Rly Recommended Wcer <---

    Yup I use that it really does own
     
  5. Unread #3 - Nov 23, 2008 at 2:49 PM
  6. l337_fr00b_pwn3r
    Joined:
    Nov 17, 2007
    Posts:
    201
    Referrals:
    0
    Sythe Gold:
    0

    l337_fr00b_pwn3r Active Member

    ---> Rly Recommended Wcer <---

    thanks so much man :D
     
  7. Unread #4 - Nov 23, 2008 at 7:02 PM
  8. tutudragon3
    Joined:
    Jul 13, 2008
    Posts:
    8
    Referrals:
    0
    Sythe Gold:
    0

    tutudragon3 Newcomer

    ---> Rly Recommended Wcer <---

    TY man i was using another wcer but it wasn't as good as this one...tyvm...btw u aren't the only one who hates WC!!! :p
     
  9. Unread #5 - Nov 23, 2008 at 7:05 PM
  10. smallsniper
    Joined:
    Nov 6, 2008
    Posts:
    83
    Referrals:
    0
    Sythe Gold:
    0

    smallsniper Member
    Banned

    ---> Rly Recommended Wcer <---

    tyvm looking for a good wcer!!
     
  11. Unread #6 - Nov 23, 2008 at 7:08 PM
  12. Cyberform
    Joined:
    Oct 5, 2008
    Posts:
    619
    Referrals:
    0
    Sythe Gold:
    0

    Cyberform Forum Addict
    Banned

    ---> Rly Recommended Wcer <---

    Thanks! It actually is good. But you sure you wont be ban for botting 12 hours? (With breaks of course)
     
  13. Unread #7 - Nov 23, 2008 at 7:53 PM
  14. Tylobedo
    Joined:
    Jun 23, 2008
    Posts:
    123
    Referrals:
    2
    Sythe Gold:
    0

    Tylobedo Active Member
    Banned

    ---> Rly Recommended Wcer <---

    well he did it over a 32 hour period. i wouldnt recomend botting for over 8 hours a day, and he botted for an average of 8 a day so he should be fine
     
  15. Unread #8 - Nov 24, 2008 at 2:03 AM
  16. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    No problems :) Yea its a safe bot but you should never bot for 8h+ becouse just being logged in getting a skill up without brakes for 8h in a row is suspicous, Yea i did 12h with breaks ;)
     
  17. Unread #9 - Nov 24, 2008 at 2:30 AM
  18. kamakazy_kid
    Joined:
    Sep 20, 2007
    Posts:
    2,647
    Referrals:
    12
    Sythe Gold:
    0

    kamakazy_kid Grand Master
    Banned

    ---> Rly Recommended Wcer <---

    Seems to work well, Thanks.:)
     
  19. Unread #10 - Nov 24, 2008 at 7:08 AM
  20. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    hehe no problems, btw grats on 2,000 posts ;)
     
  21. Unread #11 - Nov 24, 2008 at 7:20 AM
  22. Noctis
    Joined:
    Nov 1, 2008
    Posts:
    300
    Referrals:
    2
    Sythe Gold:
    0

    Noctis Forum Addict
    Banned

    ---> Rly Recommended Wcer <---

    I bot 4 phun, u still got acc. for sale? hehe,

    btw nice guide! ^_^
     
  23. Unread #12 - Nov 24, 2008 at 7:31 AM
  24. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    Yea still selling that other account :)

    HEYA btw i've got 1.2m on the acc i bought from you, how much have you made? ;)
     
  25. Unread #13 - Nov 24, 2008 at 12:27 PM
  26. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    DID SOMEONE SAY CHEESE!?
     
  27. Unread #14 - Nov 24, 2008 at 2:17 PM
  28. darksoul9125
    Referrals:
    0

    darksoul9125 Guest

    ---> Rly Recommended Wcer <---

    hmmmm where can i get this rsbot?
     
  29. Unread #15 - Nov 24, 2008 at 2:26 PM
  30. I B0t 4 Phun
    Joined:
    Nov 18, 2008
    Posts:
    181
    Referrals:
    0
    Sythe Gold:
    0

    I B0t 4 Phun Active Member
    Banned

    ---> Rly Recommended Wcer <---

    Google
    This forum
     
< [RSBOT] 400+ Scripts | Need a autofighter scripts for rsbot >

Users viewing this thread
1 guest


 
 
Adblock breaks this site