Imthabawse Posted April 21, 2019 Share Posted April 21, 2019 (edited) Made a simple Pickpocket script for Ardy Knights. I made this script based around Knight being trapped in Ardy southern bank so must run it there to work efficiently (Hop around populated worlds till you find one). Posting code below so you can make this script you're own or run it as is :). Currently script has gotten me from 55-57 thieving so it gets the job done. I highly recommend taking breaks quite frequently with scripts like this to avoid bans (No-one sits there and clicks knights for hours..) * @LeBron proved me wrong haha.. still take breaks.. Added Features * Added better eating method * Added basic timeran and exp gained paint * More to be added as I'm actively using this for gains right now and script practice * Equips Dodgy necklace's if you have them in the inventory * 55-61 Achieved Updated 4/23/19 Features - Human like spam click "Pickpocket" - Opens coin pouches - Banks for food (Sharks at the moment you can change yourself) - Eats food when below certain health % - Climbs down ladder if miss-clicked - Equips Dodgy necklace's! (Must have in your inventory already for now) To run efficiently - Turn camera zoom settings all the way left Turn NPC attack options to "Hidden" - Make sure "Fixed mode" is selected - Enter you're PIN prior to running script so you can bank for food Code Spoiler import org.osbot.rs07.api.model.Entity; import org.osbot.rs07.api.model.NPC; import org.osbot.rs07.api.ui.EquipmentSlot; import org.osbot.rs07.api.ui.Skill; import org.osbot.rs07.script.Script; import org.osbot.rs07.script.ScriptManifest; import org.osbot.rs07.utility.ConditionalSleep; import java.awt.*; import java.util.concurrent.TimeUnit; @ScriptManifest(author = "Imthabawse", info = "Pickpockets Ardy Knights", logo = "", name = "ArdyKnights", version = 1) public class ArdyKnights extends Script { private long timeBegan; private long timeRan; private int beginningXp; private int currentXp; private int xpGained; private void pickPocket() throws InterruptedException { NPC ardyKnight = getNpcs().closest("Knight of Ardougne"); if(!myPlayer().isHitBarVisible() && myPlayer().getHealthPercent() >=50 && ardyKnight != null && getInventory().contains("Shark") && getInventory().getAmount("Coin pouch") < 28) { sleep(random(200,400)); log("Pickpocketing Knight.."); ardyKnight.interact("Pickpocket"); new ConditionalSleep(5500) { @Override public boolean condition() { return myPlayer().isAnimating(); } }.sleep(); } } private void eat() throws InterruptedException { if(myPlayer().getHealthPercent() < 50 && getInventory().contains("Shark")) { sleep(random(500,750)); log("Eating food.."); getInventory().interact("Eat","Shark"); new ConditionalSleep(3500) { @Override public boolean condition() { return myPlayer().getHealthPercent() >= 50; } }.sleep(); } } private void bank() throws InterruptedException { if(!getInventory().contains("Shark") && !getInventory().isFull()) { log("Banking.."); getBank().open(); sleep(random(300,600)); getBank().withdraw("Shark",5); sleep(random(400,700)); getBank().close(); } } private void openPouch() throws InterruptedException { if(getInventory().getAmount("Coin pouch") > 27) { sleep(random(850,1000)); log("Opening coin pouches.."); getInventory().interact("Open-all","Coin pouch"); new ConditionalSleep(5000) { @Override public boolean condition() { return !getInventory().contains("Coin pouch"); } }.sleep(); } } private void missClicked() throws InterruptedException { Entity ladder = getObjects().closestThatContains("Climb-down","Ladder"); if(myPlayer().getZ() == 1 && ladder != null) { sleep(random(750,1000)); log("Oops.. miss-clicked.. Climbing down."); ladder.interact("Climb-down"); } } private void equipDodgy() throws InterruptedException { if(!getEquipment().isWearingItem(EquipmentSlot.AMULET,"Dodgy necklace") && getInventory().contains("Dodgy necklace")) { sleep(random(1250,2500)); log("Putting on another Dodgy ;)"); getInventory().interact("Wear","Dodgy necklace"); } } private void antiBan() throws InterruptedException { if(myPlayer().isHitBarVisible()) { log("Anti-Ban..? "); sleep(random(545,855)); getMouse().moveOutsideScreen(); new ConditionalSleep(5500) { @Override public boolean condition() { return !myPlayer().isHitBarVisible(); } }.sleep(); } } @Override public void onStart() { getCamera().toTop(); log("Welcome to Ardy Knights.. let's get some gains!"); timeBegan = System.currentTimeMillis(); beginningXp = skills.getExperience(Skill.THIEVING); } @Override public void onExit() { log("Thanks for using Ardy Knights!"); } @Override public void onPaint(Graphics2D g) { g.setColor(Color.green); timeRan = System.currentTimeMillis() - this.timeBegan; g.drawString(ft(timeRan), 16, 59); currentXp = skills.getExperience(Skill.THIEVING); xpGained = currentXp - beginningXp; g.drawString("Exp: " + xpGained, 16, 79); } private String ft(long duration) { String res = ""; long days = TimeUnit.MILLISECONDS.toDays(duration); long hours = TimeUnit.MILLISECONDS.toHours(duration) - TimeUnit.DAYS.toHours(TimeUnit.MILLISECONDS.toDays(duration)); long minutes = TimeUnit.MILLISECONDS.toMinutes(duration) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS .toHours(duration)); long seconds = TimeUnit.MILLISECONDS.toSeconds(duration) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS .toMinutes(duration)); if (days == 0) { res = (hours + ":" + minutes + ":" + seconds); } else { res = (days + ":" + hours + ":" + minutes + ":" + seconds); } return res; } @Override public int onLoop() throws InterruptedException { pickPocket(); openPouch(); eat(); bank(); missClicked(); equipDodgy(); antiBan(); return random(500,1000); } } Download: ArdyKnights.jar If anyone uses this please comment below proggies/comments you have about script. Thank you Edited April 24, 2019 by Imthabawse Quote Link to comment Share on other sites More sharing options...
LeBron Posted April 21, 2019 Share Posted April 21, 2019 7 minutes ago, Imthabawse said: (No-one sits there and clicks knights for hours..) You underestimate this community. https://www.reddit.com/r/2007scape/comments/bf9cor/rank_23_overall_shits_his_pants_for_a_smithing/ 1 Quote Link to comment Share on other sites More sharing options...
Imthabawse Posted April 21, 2019 Author Share Posted April 21, 2019 (edited) 2 hours ago, LeBron said: You underestimate this community. https://www.reddit.com/r/2007scape/comments/bf9cor/rank_23_overall_shits_his_pants_for_a_smithing/ LMFAO bro that's dedication. I guess it depends on how dedicated you are Edited April 21, 2019 by Imthabawse Quote Link to comment Share on other sites More sharing options...
Imthabawse Posted April 25, 2019 Author Share Posted April 25, 2019 Going to totally re-vamp this script when I get the time so keep a look out! Quote Link to comment Share on other sites More sharing options...