Jump to content
View in the app

A better way to browse. Learn more.

OSBot :: 2007 OSRS Botting

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Malcolm

Global Moderator
  • Joined

  • Last visited

Everything posted by Malcolm

  1. I think I remember you mentioning this on another thread. Quite impressive imo.
  2. Well I would assume that account would have been botted on already and an inevitable ban would happen anyways ?
  3. That’s fair ? I was avoiding it but it’s really not a bad task.
  4. Writing a cannonball script to release to the public but I don't have an account to test the script on. If anyone is willing to let me borrow one PM me here or my discord.
  5. I must admit. I probably write some of the messiest code around ? Good thing I still know whats going on within that mess. Mine too man. Thanks ?
  6. 16 non member accounts you mean ? I do what I can.
  7. I know how badly we all want that 99 cabbage cape. That's why I released it open source ? If you all want I can add a feature to passively trains checking WC exp.
  8. No problem man. I just switched the webWalk to just walk to see if that eliminates it walking south of the Monastery. Seems to work so far. If you want to use it and there is an issue I'll fix it up for you.
  9. Be gentle. This is the very very VERY first thing I ever wrote. It's super simple but it works. Makes about 20k an hour. If anyone wants it they can use it. It picks cabbages at the Edgeville Monastery and banks at Edgeville bank. NOTE: There are two walking instances line by line because for what ever reason walk() wanted to walk south of the Monastery towards Barb and go up to Edgeville that way so I just put another location in so it would walk the other way. Updated: On a suggestion I added in a conditional sleep to this. Updated: Added more conditional sleeps were required. Added a new logo for this bad boy package cabbage_picker; import org.osbot.rs07.script.Script; import org.osbot.rs07.script.ScriptManifest; import org.osbot.rs07.utility.ConditionalSleep; import org.osbot.rs07.api.map.Area; import org.osbot.rs07.api.map.constants.Banks; import org.osbot.rs07.api.model.Entity; import org.osbot.rs07.api.ui.Message; @ScriptManifest(author = "Malcolm", info = "Pick Cabbage", name = "Cabbage Picker", version = 0.2, logo = "https://imgur.com/kDRjP7M.png") public class Main extends Script { int cabbagesBefore = 0; private final Area BANKS[] = { Banks.EDGEVILLE }; private Area cabbagePatch = new Area(3057, 3508, 3046, 3501); public void onStart() { log("Cabbage Picker"); } public void onExit() { log("Enjoy your Cabbages!"); } public int onLoop() throws InterruptedException { if (getInventory().isFull()) { if (!Banks.EDGEVILLE.contains(myPlayer())) { getWalking().walk(new Area(3070, 3520, 3066, 3520).getRandomPosition()); getWalking().walk(new Area(3087, 3518, 3078, 3515).getRandomPosition()); walkToClosestBank(); } else if (!getBank().isOpen()) { getBank().open(); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return bank.isOpen(); } }.sleep(); getBank().depositAll(); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return getInventory().isEmpty(); } }.sleep(); getBank().close(); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return !bank.isOpen(); } }.sleep(); getWalking().walk(new Area(3087, 3518, 3078, 3515).getRandomPosition()); getWalking().walk(cabbagePatch); } else { getBank().depositAll(); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return getInventory().isEmpty(); } }.sleep(); getBank().close(); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return !bank.isOpen(); } }.sleep(); getWalking().walk(new Area(3087, 3518, 3078, 3515).getRandomPosition()); getWalking().walk(cabbagePatch); } } else { if (!cabbagePatch.contains(myPlayer())) { getWalking().walk(cabbagePatch); } else { Entity Cabbage = objects.closest("Cabbage"); cabbagesBefore = (int) getInventory().getAmount("Cabbage"); if (Cabbage != null) { if (!myPlayer().isAnimating()) { if (!myPlayer().isMoving()) { Cabbage.interact("Pick"); new ConditionalSleep(2000) { @Override public boolean condition() throws InterruptedException { return getInventory().getAmount("Cabbage") > cabbagesBefore; } }.sleep(); } } } } } return random(600, 900); } public void walkToClosestBank() { getWalking().webWalk(BANKS); } public void onMessage(Message message) { if (message.getMessage().contains("You pick a cabbage")) cabbagesBefore++; } }

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.