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.

Hobroski

Members
  • Joined

  • Last visited

Everything posted by Hobroski

  1. Odd, any thing more specific you can tell me?
  2. This is really cool man, I've actually been making my own miner for a while now. It's currently in beta and I've been testing it's limits with a friend. I don't have any screenies of long proggies but to prove I'm no lying. Anyways good luck with your script
  3. Fixed in 1.1
  4. RELEASE 1.1 Spins flax in Lumbridge castle. Average rate is 40-50k gp / hour. Will stay updated. This script has had very limited testing. If you decide to use it please be aware that it may still have bugs. Please report an issues with details. DOWNLOAD Virus Check https://www.virustotal.com/en/file/7cf7b0cbe556d93f2f29d98121bd51746995f660af2b573c9a950cdd7adcf10c/analysis/ TO ADD: Better Paint GUI KNOWN BUGS:
  5. Hobroski replied to Kronos's topic in Archive
    Have to agree with Sponsor, text logo is appealing enough for me.
  6. I have been coding a couple of basic scripts to get me used to writing, and if you're looking for bots, you usually find them spinning flax non-stop. So I figured I'd give writing a Flax-spinner a shot I'm looking for advice on how to improve, so please be critical. package spinner; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import org.osbot.script.Script; import org.osbot.script.ScriptManifest; import org.osbot.script.rs2.map.Position; import org.osbot.script.rs2.model.Entity; import org.osbot.script.rs2.model.Player; import org.osbot.script.rs2.skill.Skill; import org.osbot.script.rs2.ui.Bank; import org.osbot.script.rs2.ui.Inventory; import org.osbot.script.rs2.utility.Area; @ScriptManifest(author = "Hobroski", info = "Spins flax at Lumbridge", name = "Spinner", version = 1.0D) public class Spinner extends Script { final Area SPIN_AREA = new Area(3208, 3212, 3210, 3213); final Area BANK_AREA = new Area(2307, 3218, 3210, 3220); final Area NFLAT_AREA = new Area(3205, 3209, 3205, 3209); final Area DFLAT_AREA = new Area(3206, 3208, 3206, 3208); final Area ODOOR_AREA = new Area(3207, 3214, 3207, 3214); final Position NSTAIR_POS = new Position(3205, 3208, 2); final Position DSTAIR_POS = new Position(3204, 3207, 1); int NSTAIR_ID = 1316; int DSTAIR_ID = 2718; int CDOOR_ID = 20857; static Timer runtime; int sEXP; int sLVL; int flaxSpun = 0; boolean init = true; private int experienceToNextLevel(Skill skill) { int[] xpForLevels = new int[] { 0, 83, 174, 276, 388, 512, 650, 801, 969, 1154, 1358, 1584, 1833, 2107, 2411, 2746, 3115, 3523, 3973, 4470, 5018, 5624, 6291, 7028, 7842, 8740, 9730, 10824, 12031, 13363, 14833, 16456, 18247, 20224, 22406, 24815, 27473, 30408, 33648, 37224, 41171, 45529, 50339, 55649, 61512, 67983, 75127, 83014, 91721, 101333, 111945, 123660, 136594, 150872, 166636, 184040, 203254, 224466, 247886, 273742, 302288, 333804, 368599, 407015, 449428, 496254, 547953, 605032, 668051, 737627, 814445, 899257, 992895, 1096278, 1210421, 1336443, 1475581, 1629200, 1798808, 1986068, 2192818, 2421087, 2673114, 2951373, 3258594, 3597792, 3972294, 4385776, 4842295, 5346332, 5902831, 6517253, 7195629, 7944614, 8771558, 9684577, 10692629, 11805606, 13034431 }; int xp = client.getSkills().getExperience(skill); for (int i = 0; i < 99; i++) { if (xp < xpForLevels[i]) { return (xpForLevels[i] - xp); } } return (200000000 - xp); } public void onStart() { runtime = new Timer(0); } private void init() { if (client.getLoginState() == 30 && init) { sEXP = client.getSkills().getExperience(Skill.CRAFTING); sLVL = client.getSkills().getLevel(Skill.CRAFTING); try { client.rotateCameraPitch(random(25, 32)); } catch (InterruptedException e) { } init = false; } } public int onLoop() { Player player = client.getMyPlayer(); Bank bank = client.getBank(); Inventory inven = client.getInventory(); try { init(); if (inven.contains("Flax") && !player.isMoving()) { if (BANK_AREA.contains(player)) { client.moveCameraToPosition(NSTAIR_POS); if (NSTAIR_POS.isVisible(bot) && BANK_AREA.contains(player)) { NSTAIR_POS.interact(bot, "Climb-down"); sleep(random(400, 800)); } } if (DFLAT_AREA.contains(player) || SPIN_AREA.contains(player) || ODOOR_AREA.contains(player) && !player.isMoving()) { Entity spinningWheel = closestObjectForName("Spinning wheel"); client.moveCameraToEntity(spinningWheel); if (spinningWheel.isVisible()) { if (spinningWheel.interact("Spin")) { sleep(random(2000,3000)); } else { Entity closedDoor = closestObject(CDOOR_ID); closedDoor.interact("Open"); } } } if (this.client.getInterface(459).getChild(89).isVisible()) { sleep(random(900, 2000)); this.selectInterfaceOption(459, 89, "Make X"); sleep(random(900, 2000)); client.typeString("28"); } } else { if (SPIN_AREA.contains(player) && !player.isMoving()) { if (DSTAIR_POS.isVisible(bot)) { DSTAIR_POS.interact(bot, "Climb-up"); } else { client.moveCameraToPosition(DSTAIR_POS); } } if (NFLAT_AREA.contains(player) && !player.isMoving()) { Entity bankBooth = closestObjectForName("Bank booth"); if (bankBooth.isVisible()) { bankBooth.interact("Bank"); } else { client.moveCameraToEntity(bankBooth); } } if (BANK_AREA.contains(player) && !player.isMoving()) { if (!bank.isOpen()) { Entity bankBooth = closestObjectForName("Bank Booth"); bankBooth.interact("Bank"); sleep(1000); } if (inven.isEmpty()) { bank.withdrawAll(1779); bank.close(); } if (inven.contains("Bow string")) { bank.depositAll(); } } } } catch (Exception e) { } return 50; } public void onExit() { } public void onPaint(Graphics g) { int gLVL = client.getSkills().getCurrentLevel(Skill.CRAFTING) - sLVL; int cLVL = client.getSkills().getCurrentLevel(Skill.CRAFTING); int cEXP = client.getSkills().getExperience(Skill.CRAFTING); flaxSpun = (cEXP - sEXP) / 15; Graphics2D gr = (Graphics2D) g; gr.setColor(Color.WHITE); gr.setFont(new Font("Arial", Font.PLAIN, 10)); gr.drawString("Time ran : " + Timer.format(runtime.getElapsed()), 25, 50); gr.drawString("Flax spun : " + flaxSpun, 25, 65); gr.drawString("Flax spun per hour : " + getPerHour(flaxSpun), 25, 80); gr.drawString("Profit gained : " + flaxSpun * 45, 25, 95); gr.drawString("Profit per hour : " + getPerHour(flaxSpun * 45), 25, 110); gr.drawString("Experience gained : " + (cEXP - sEXP), 25, 125); gr.drawString("Experience per hour : " + getPerHour(cEXP - sEXP), 25, 140); gr.drawString( "Starting Level / Current level : " + sLVL + " / " + cLVL, 25, 155); gr.drawString("Levels gained : " + gLVL, 25, 170); gr.drawString("Experience to next level : " + experienceToNextLevel(Skill.CRAFTING), 25, 185); } public static int getPerHour(int value) { if (runtime != null && runtime.getElapsed() > 0) { return (int) (value * 3600000d / runtime.getElapsed()); } else { return 0; } } public static long getPerHour(long value) { if (runtime != null && runtime.getElapsed() > 0) { return (long) (value * 3600000d / runtime.getElapsed()); } else { return 0; } } }
  7. “Early to bed and early to rise," Mazer intoned, "makes a man stupid and blind in the eyes.” ― Orson Scott Card
  8. Hello anyone who takes the time to read the introductions on this forum. I plan on learning the API and creating scripts with whatever resources are available. I've already made a basic chopper and am in the progress of making a personal miner. If I ever get good enough I will make scripts public. I'm currently looking for a teacher or adviser since I only know the basics of java. I plan on being an active stalker of the forums, but I don't see myself posting much on here. I'm young and ambitious and I can't wait to get to the point where I can turn ideas into virtual reality Thanks for taking the time to read ~Hobroski

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.