Jump to content
Frequently Asked Questions
  • Are you not able to open the client? Try following our getting started guide
  • Still not working? Try downloading and running JarFix
  • Help! My bot doesn't do anything! Enable fresh start in client settings and restart the client
  • How to purchase with PayPal/OSRS/Crypto gold? You can purchase vouchers from other users
  • Pickpocket Pro (Unfinished)


    boosterboy

    Recommended Posts

    here was a project I worked on a while ago that I recently wanted to update, however it got me banned for "macroing" so I will release it now so people can look at it make it better, and do whatever with it remember this is to learn from or take and modify... really shouldn't use this in production its not ready and is flawed also keep in mind this is my hobby I'm not a professional so this has much room for improvement this was one of the first scripts that I created (recently updated)

    main.java

    import org.dreambot.api.Client;
    import org.dreambot.api.methods.Calculations;
    import org.dreambot.api.methods.container.impl.Inventory;
    import org.dreambot.api.methods.container.impl.bank.Bank;
    import org.dreambot.api.methods.interactive.NPCs;
    import org.dreambot.api.methods.skills.Skill;
    import org.dreambot.api.methods.skills.SkillTracker;
    import org.dreambot.api.methods.world.World;
    import org.dreambot.api.methods.world.Worlds;
    import org.dreambot.api.methods.worldhopper.WorldHopper;
    import org.dreambot.api.script.AbstractScript;
    import org.dreambot.api.script.ScriptManifest;
    import org.dreambot.api.wrappers.interactive.NPC;
    import org.dreambot.api.script.Category;
    
    import java.awt.*;
    
    @ScriptManifest(author = "BoosterBoy", name = "Pickpocket Pro", version = 1.0, description = "Simple Pickpocket engine", category = Category.THIEVING)
    
    public class main extends AbstractScript{
    
        public void onStart() {
            log("Welcome to Pick Pocket Pro created by boosterboy");
            log("any problems with this script please report them to me on the forums");
            log("now lets go get those sweet pickpocket points!");
    
            //start tracking of the skill ( for xp tracking )
            SkillTracker.start(Skill.THIEVING);
    
    
        }
        private enum State {
            STEAL, BANK, WAIT
        };
    
        private State getState() {
            NPC man = NPCs.closest("Man");
    
            //log("Found a world that is members only, no pvp, and min level 0");
            //World world = Worlds.getRandomWorld(w -> w.isMembers() && !w.isPVP() && w.getMinimumLevel() == 0);
    
            //log("Changing worlds...please wait");
            //WorldHopper.hopWorld(world);
    
            if	(Inventory.isFull())
                return State.BANK;
            if (man != null)
                return State.STEAL;
            return State.WAIT;
        }
    
        public void onExit() {
            log("Thank you for using Pick Pocket Pro keep stealing!");
        }
    
        @Override
        public int onLoop() {
            int rnd = Calculations.random(1000,2000);
    
            switch (getState()) {
    
                case STEAL:
                    NPC man = NPCs.closest("Man");
    
                    if(man != null && !getLocalPlayer().isAnimating()) {
                        log("Pickpocketing the man...");
                        sleep(rnd);
                        log("BB Anti-ban: sleeping for " + rnd +"ms");
                        man.interact("Pickpocket");
                        sleep(rnd);
                    }
                    break;
    
                case BANK:
                    log("Heading to the bank....");
                    if (Bank.open()){
                        Bank.depositAllItems();
                    } else {
    
                        return 500;
                    }
                    break;
    
                case WAIT:
                    log("Waiting 300ms.");
                    sleep(300);
                    break;
    
            }
    
            return Calculations.random(500, 600);
        }
    
        public void onPaint(Graphics g2) {
            Graphics2D g = (Graphics2D) g2;
            g.setRenderingHints(new RenderingHints(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON));
            g.setColor(new Color(5, 227, 135, 100));
            g.fillRect(3,20,215,50);
            g.setColor(new Color(0, 0, 0));
            g.setFont(new Font("Bitstream Vera Sans", Font.BOLD, 13));
            g.drawString("PickPocket Pro", 5, 35);
            g.drawString("Thieving XP: " + SkillTracker.getGainedExperience(Skill.THIEVING) + "  Per Hour: (" + SkillTracker.	getGainedExperiencePerHour(Skill.THIEVING)+ ")", 5, 50);
            }
        }
    Link to comment
    Share on other sites

    I can see why it would have got you banned - you're doing the exact same activity over and over with 0% variation. Account gets stunned, pickpocket after 3 sec, account pickpockets, pickpocket again after 3 sec. your rnd value is only called once per loop so every RND value is exactly the same!

    Link to comment
    Share on other sites

    35 minutes ago, RSMasterGuard said:

    I can see why it would have got you banned - you're doing the exact same activity over and over with 0% variation. Account gets stunned, pickpocket after 3 sec, account pickpockets, pickpocket again after 3 sec. your rnd value is only called once per loop so every RND value is exactly the same!

    yea... mistakes were made with it lol just thought id give this to the community maybe someone wanted to modify it or do something with it.... I made a much better one now

    Link to comment
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    ×
    ×
    • Create New...

    Important Information

    We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.