Skip 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.

Leaderboard

  1. Alek

    Ex-Staff
    20
    Points
    7878
    Posts
  2. Kim

    Trade With Caution
    17
    Points
    5913
    Posts
  3. Czar

    Global Moderator
    14
    Points
    23415
    Posts
  4. Chris

    Scripter II
    10
    Points
    8365
    Posts

Popular Content

Showing content with the highest reputation on 11/21/17 in all areas

  1. 17 points
    @avid * Winner will be announced 2017-12-01 * How to win: 1. Like this thread 2. Make 1 or more posts (this thread) 3.
  2. By popular request I added two highly requested features: 1. Human input is now controlled by a ready-to-access button, instead of going to Settings->Toggle Human Input. Now it's a three input button. When you start a script, by default you can't use your mouse but keyboard is enabled. A second click will disable both, a third click enables all; cycling back. For Scripters: isHumanInputEnabled() returns true if both mouse and keyboard are available. 2. Screenshots through Settings->Take Screenshot (and through the Utilities method) now takes a screenshot with painters (aka script paints).
  3. ๐Ÿ‘‘CzarScripts #1 Bots ๐Ÿ‘‘ ๐Ÿ‘‘ LATEST BOTS ๐Ÿ‘‘ If you want a trial - just post below with the script name, you can choose multiple too. ๐Ÿ‘‘ Requirements ๐Ÿ‘‘ Hit 'like' ๐Ÿ‘ on this thread
  4. 1 post 6 mins no profile pic seems legit
  5. I'll see what I can do with coming up with a list.
  6. Do you have any other ram lying around to test them out? If it's the ram issue, new ram will solve it. If not, then the issue is with the mobo and that'll need to be replaced to fix the issue. Also make sure there is no dust or otherwise inside the slots.
  7. I would get away with robbing as much money as I could from a bank, then help myself and as much people as I could on some Robin Hood shit.
  8. โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ PREMIUM SUITE โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ FREE / VIP+ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โŒ  Sand crabs - $4,99 | Rooftop Agility - $5,99 | AIO Smither - $4,99 | AIO Cooker - $3,99 | Unicow Killer - ยฃ3,99 | Chest Thiever - ยฃ2,99 | Rock crabs - $4,99 | Rune Sudoku - $9,99 โŒก โŒ  AIO Herblore - FREE & OPEN-SOURCE | Auto Alcher - FREE | Den Cooker - FREE | Gilded Altar - FREE | AIO Miner - VIP+ โŒก โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ What is a trial? A trial is a chance for you to give any of my scripts a test run. After following the instructions below, you will receive unrestricted access to the respective script for 24 hours starting when the trial is assigned. Your trial request will be processed when I log in. The trial lasts for 24 hours to cater for time zones, such that no matter when I start the trial, you should still get a chance to use the script. Rules: Only 1 trial per user per script. How to get a trial: 'Like' this thread AND the corresponding script thread using the button at the bottom right of the original post. Reply to this thread with the name of the script you would like a trial for. Your request will be processed as soon as I log in. If i'm taking a while, i'm probably asleep! Check back in the morning Once I process your request, you will have the script in your collection (just like any other SDN script) for 24 hours. Private scripts: Unfortunately I do not currently offer private scripts. ________________________________________ Thanks in advance and enjoy your trial! -Apaec.
  9. Want to buy with OSGP? Contact me on Discord! Detailed feature list: - Supports every altar - Supports every rune Air, Mind, Water, Earth, Fire, Body runes (Just walk back and forth) Fire runes (Ring of dueling to Castle wars) Mind runes (Ring of dueling to Castle wars + Mind altar teleport) Nature runes (Unnote at shop and walk to altar) Nature runes (Ring of dueling to Castle wars + Necklace of passage to Fairy ring) Nature runes (Ring of dueling to Castle wars + Ardougne cape to Fairy ring) Nature runes (Ring of dueling to Castle wars + Quest cape to Fairy ring) Nature runes (Ring of dueling to Castle wars + POH teleport to Fairy ring) Cosmic runes (Walks back and forth - Uses obstacles based on agility level) Cosmic runes (Ring of dueling to Castle wars + Necklace of passage to Fairy ring) Cosmic runes (Ring of dueling to Castle wars + Quest cape to Fairy ring) Law altar (Ring of dueling to Castle wars + Balloon method to Entrana) Astral altar (Teleports back to bank) Lava runes (Ring of dueling to Castle wars) Stream runes (Ring of dueling to Castle wars) Smoke runes (Ring of dueling to Castle wars) Mud runes (Walks back and forth in varrock) Mud runes (Digsite teleport) Blood runes (Arceuus) Blood runes (Ring of dueling to Castle wars + POH teleport to Fairy ring) (93 agility req) Soul runes (Arceuus) Wrath runes (Ring of dueling to Castle wars + Mythical cape ) - Pouches support - Menu invokes - Daeyalt essence support - Pouch repair - Energy/Stamina potions support - Food support - Combination rune support - Binding necklaces + Magic imbue - Abyss support (Edgeville / Ferox enclave banking) Death handler, will grab your stuff and continue (Abyss only) Abyssal bracelets/Ring of life support Pouches repair at zamorak mage - ZMI altar support Walks short unsafe path OR walks long safe path Quick prayer support Full bank mode (Add fillers so all runes get deposited, but not the pouches/Rune pouch) - Mining daeyalt essence - Master/Runners setup Setup a bunch of runners for your main account who stands at an altar Either play your main yourself or use the master mode Combination runes, magic imbue + binding necklaces available Runners can bring binding necklaces, talismans to the master Stamina potion support for runners Custom Breakmanager: - Setup Bot and break times - Randomize your break times - Stop script on certain conditions (Stop on first break, Stop after X amount of minutes, Stop when skill level is reached) - Worldhopping - Crucial part to botting in 2023! Script queueing: - Support queueing multiple script in a row - All Khal scripts support flawless transitions in between scripts - Start creating your acc in a few clicks from scratch to multiple 99's - Flawless CLI support - Learn more here: How to use CLI parameters: - Example Usage: -script 482:ScriptFile.BreakFile.DiscordFile SAVEFILE = Saved Filename BREAKFILE = Breakmanager Filename - SAVEFILE: Save file can be created in the GUI. Navigate to the tab you want to run and press "Save As CLI file". Please choose your filename wisely (No special characters) - BREAKFILE (Optional): Breakfile can also be create in the GUI, set the breaksettings you wish to use and press "Save new CLI BreakFile". Please choose your filename wisely (No special characters) - Final form (Note that with some bot managers you do not need to specify -script 482): -script 482:TaskList1.4515breaks (With breaks) -script 482:TaskList1.4515breaks.discord1 (With breaks & discord) -script 482:TaskList1..discord1 (NO breaks & discord) Proggies:
  10. Want to buy with OSGP? Contact me on Discord! Detailed feature list: - Kills and picks up armour for tokens (Pick Black/mithril for optimal results) - Kills cyclops when enough tokens - Food support - Potion support - Possible to camp certain cuclops for more defenders - Basic looting options - Special attack weapon support Custom Breakmanager: - Setup Bot and break times - Randomize your break times - Stop script on certain conditions (Stop on first break, Stop after X amount of minutes, Stop when skill level is reached) - Worldhopping - Crucial part to botting in 2023!
  11. Results Instructions There are no instructions. We do the all the work for you. CzarScriptingโ„ข Tips Make sure to set food in your setup window! Don't bot more than 12 hours a day! It's not humanlike! Features - All locations supported, including Crab Claw Isle - Banking support - All combat types supported (ranged, all ammo + ranging types, including looting) - Activity Slider -- choose 4 different activity settings from: (Afk my position, Afk any generated position, Attack visible/active crabs only, Full activity/attack all) - Aggression Slider -- choose from 4 different aggression settings: (Only retaliate to crabs, Attack people's crabs when none are found, Attack all crabs, ONLY attack other people's crabs) - Tasked levelling - allows you to set level goals and switch attack styles to raise different skills, e.g. set goals to 50 70 70, from current stats 44 51 55, it will reach the goal stats. - Skill Priority: you can choose in which order to raise the stats, e.g. lowest first, nearest to goal first, top->bottom, bottom->top, level-up evenly, etc. - Customized Stop Conditions: stop script when a certain condition is met, e.g. reached goal stats, killed X crabs, time passed, ran out of equipment, items, etc. - Simple (on user's side) inventory layout chooser consistent with all my scripts -> 1 button copies inventory layout and saves it - World hop support, with player count chooser -- World hop customization: allows you to choose which tile to hop worlds from -- Break tile chooser: allows you to choose which tile to break on, ~3 minutes before breaks trigger - 'Non-botting' mode (very popular): allows you to afk the script and technically not bot at all: the script will display jframe popups (and beep) when crabs are no longer aggressive which will prompt the user to manually refresh the crabs by walking up - Item looting, including rare drop table option - Potion support (all potion types) - Crab refreshing by walking out of the region Gallery
  12. import org.osbot.rs07.api.ui.RS2Widget; import org.osbot.rs07.event.Event; import org.osbot.rs07.input.mouse.RectangleDestination; import org.osbot.rs07.listener.LoginResponseCodeListener; import org.osbot.rs07.utility.ConditionalSleep; import java.awt.*; import java.util.HashMap; import java.util.Map; import java.util.concurrent.TimeUnit; public final class LoginEvent extends Event implements LoginResponseCodeListener { public enum LoginEventResult { UNEXPECTED_SERVER_ERROR(1, "Unexpected server error"), LOG_IN(2, "Log in"), INVALID_CREDENTIALS(3, "Invalid username or password"), BANNED(4, "Username is banned"), ACCOUNT_ALREADY_LOGGED_IN(5, "Account is already logged in try again in 60 seconds"), RUNESCAPE_UPDATED(6, "Runescape has been updated! Please reload this page."), WORLD_IS_FULL(7, "This world is full. Please use a different world."), LOGIN_SERVER_OFFLINE(8, "Unable to connect. login server offline."), TOO_MANY_CONNECTIONS_FROM_ADDRESS(9, "Login limit exceeded. Too many connections from you address."), BAD_SESSION_ID(10, "Unable to connect. Bad session id."), PASSWORD_CHANGE_REQUIRED(11, "We suspect someone knows your password. Press 'change your password' on the front page."), MEMBERS_ACCOUNT_REQUIRED(12, "You need a members account to login to this world. Please subscribe, or use a different world."), TRY_DIFFERENT_WORLD(13, "Could not complete login. Please try using a different world."), TRY_AGAIN(14, "The server is being updated. Please wait 1 minute and try again."), SERVER_UPDATE(15, "The server is being updated. Please wait 1 minute and try again."), TOO_MANY_INCORRECT_LOGINS(16, "Too many incorrect longs from your address. Please wait 5 minutes before trying again."), STANDING_IN_MEMBERS_ONLY_AREA(17, "You are standing in a members-only area. To play on this world move to a free area first."), ACCOUNT_LOCKED(18, "Account locked as we suspect it has been stolen. Press 'recover a locked account' on front page."), CLOSED_BETA(19, "This world is running a closed beta. sorry invited players only. please use a different world."), INVALID_LOGIN_SERVER(20, "Invalid loginserver requested please try using a different world."), PROFILE_WILL_BE_TRANSFERRED(21, "You have only just left another world. your profile will be transferred in 4seconds."), MALFORMED_LOGIN_PACKET(22, "Malformed login packet. Please try again"), NO_REPLY_FROM_LOGIN_SERVER(23, "No reply from loginserver. Please wait 1 minute and try again."), ERROR_LOADING_PROFILE(24, "Error loading your profile. please contact customer support."), UNEXPECTED_LOGIN_SERVER_RESPONSE(25, "Unexepected loginserver response"), COMPUTER_ADDRESS_BANNED(26, "This computers address has been blocked as it was used to break our rules."), SERVICE_UNAVAILABLE(27, "Service unavailable."); int code; String message; LoginEventResult(int code, String message) { this.code = code; this.message = message; } } private static final Map<Integer, LoginEventResult> responseCodeLoginResultMap = new HashMap<>(); static { for (LoginEventResult result : LoginEventResult.values()) { responseCodeLoginResultMap.put(result.code, result); } } private static final Rectangle TRY_AGAIN_BUTTON = new Rectangle(318, 262, 130, 26); private static final Rectangle LOGIN_BUTTON = new Rectangle(240, 310, 120, 20); private static final Rectangle EXISTING_USER_BUTTON = new Rectangle(400, 280, 120, 20); private static final Rectangle CANCEL_LOGIN_BUTTON = new Rectangle(398, 308, 126, 27); private static final Rectangle CANCEL_WORLD_SELECTOR_BUTTON = new Rectangle(712, 8, 42, 8); private final String username, password; private int maxRetries = 5; private LoginEventResult loginEventResult; private int retryNumber = 0; public LoginEvent(final String username, final String password) { this.username = username; this.password = password; setAsync(); } public LoginEvent(final String username, final String password, final int maxRetries) { this(username, password); this.maxRetries = maxRetries; } @Override public final int execute() throws InterruptedException { if (loginEventResult != null) { handleLoginResponse(); } if (retryNumber >= maxRetries) { setFailed(); } if (hasFailed()) { return 0; } if (!getBot().isLoaded()) { return 1000; } else if (getClient().isLoggedIn() && getLobbyButton() == null) { setFinished(); return 0; } if (getLobbyButton() != null) { clickLobbyButton(); } else if (isOnWorldSelectorScreen()) { cancelWorldSelection(); } else if (!isPasswordEmpty()) { clickButton(CANCEL_LOGIN_BUTTON); } else { login(); } return random(100, 150); } public LoginEventResult getLoginEventResult() { return loginEventResult; } private void handleLoginResponse() throws InterruptedException { switch (loginEventResult) { case BANNED: case PASSWORD_CHANGE_REQUIRED: case ACCOUNT_LOCKED: case COMPUTER_ADDRESS_BANNED: case UNEXPECTED_SERVER_ERROR: case INVALID_CREDENTIALS: case RUNESCAPE_UPDATED: case LOGIN_SERVER_OFFLINE: case TOO_MANY_CONNECTIONS_FROM_ADDRESS: case BAD_SESSION_ID: case UNEXPECTED_LOGIN_SERVER_RESPONSE: case SERVICE_UNAVAILABLE: case TOO_MANY_INCORRECT_LOGINS: case ERROR_LOADING_PROFILE: setFailed(); break; case ACCOUNT_ALREADY_LOGGED_IN: case TRY_AGAIN: case SERVER_UPDATE: case NO_REPLY_FROM_LOGIN_SERVER: case MALFORMED_LOGIN_PACKET: sleep(random((int)TimeUnit.MINUTES.toMillis(1), (int)TimeUnit.MINUTES.toMillis(2))); retryNumber++; break; case PROFILE_WILL_BE_TRANSFERRED: sleep(random((int)TimeUnit.SECONDS.toMillis(5),(int)TimeUnit.SECONDS.toMillis(10))); retryNumber++; break; case WORLD_IS_FULL: case TRY_DIFFERENT_WORLD: case CLOSED_BETA: case INVALID_LOGIN_SERVER: case MEMBERS_ACCOUNT_REQUIRED: case STANDING_IN_MEMBERS_ONLY_AREA: // Should hop to a different world here setFailed(); break; } } private boolean isOnWorldSelectorScreen() { return getColorPicker().isColorAt(50, 50, Color.BLACK); } private void cancelWorldSelection() { if (clickButton(CANCEL_WORLD_SELECTOR_BUTTON)) { new ConditionalSleep(3000) { @Override public boolean condition() throws InterruptedException { return !isOnWorldSelectorScreen(); } }.sleep(); } } private boolean isPasswordEmpty() { return !getColorPicker().isColorAt(350, 260, Color.WHITE); } private void login() { switch (getClient().getLoginUIState()) { case 0: clickButton(EXISTING_USER_BUTTON); break; case 1: clickButton(LOGIN_BUTTON); break; case 2: enterUserDetails(); break; case 3: clickButton(TRY_AGAIN_BUTTON); break; } } private void enterUserDetails() { if (!getKeyboard().typeString(username)) { return; } if (!getKeyboard().typeString(password)) { return; } new ConditionalSleep(30_000) { @Override public boolean condition() throws InterruptedException { return getLobbyButton() != null || getClient().isLoggedIn() || getClient().getLoginUIState() == 3 || loginEventResult == LoginEventResult.BANNED || loginEventResult == LoginEventResult.ACCOUNT_LOCKED; } }.sleep(); } private void clickLobbyButton() { if (getLobbyButton() != null && getLobbyButton().interact()) { new ConditionalSleep(10_000) { @Override public boolean condition() throws InterruptedException { return getLobbyButton() == null; } }.sleep(); } } private RS2Widget getLobbyButton() { try { return getWidgets().getWidgetContainingText("CLICK HERE TO PLAY"); } catch (NullPointerException e) { return null; } } private boolean clickButton(final Rectangle rectangle) { return getMouse().click(new RectangleDestination(getBot(), rectangle)); } @Override public final void onResponseCode(final int responseCode) { if (!responseCodeLoginResultMap.containsKey(responseCode)) { log("Got unknown login response code " + responseCode); setFailed(); return; } this.loginEventResult = responseCodeLoginResultMap.get(responseCode); log(String.format("Got login response: %d '%s'", responseCode, loginEventResult.message)); } } Usage example: import org.osbot.rs07.script.Script; import org.osbot.rs07.script.ScriptManifest; @ScriptManifest(author = "Explv", name = "Login Test", version = 0.1, logo = "", info = "") public class TestScript extends Script { private LoginEvent loginEvent; @Override public void onStart() { if (getClient().isLoggedIn()) { getLogoutTab().logOut(); } loginToAccount("username", "password"); } @Override public int onLoop() throws InterruptedException { if (loginEvent != null ) { if (loginEvent.isQueued() || loginEvent.isWorking()) { log("LoginEvent is running, script is idle"); return 2000; } if (loginEvent.hasFailed()) { stop(); } getBot().removeLoginListener(loginEvent); loginEvent = null; } log("Script is doing scripty things"); return 2000; } private void loginToAccount(String username, String password) { loginEvent = new LoginEvent(username, password); getBot().addLoginListener(loginEvent); execute(loginEvent); } } OSBot must be run with random events disabled, for example: java -jar "OSBot 2.5.59.jar" -allow norandoms
  13. Just download GNU RuneScape from google play and GNU Debian, let it install for 30 - Hour, tada xx
  14. I can script if you run them 50/50 profits, gonna need a safety deposit tho due to ur shit reputation
  15. i want trial plz
  16. Alek, without you osbot is nothing. for real, we love you leader!.
  17. 1 point
    Hmm, that's odd... This never used to be the case! I have no idea why that would happen, especially since from what you've said, it doesn't seem to happen consistently. Interactions are handled by OSBot so I would assume the problem resides there, perhaps with the latest client update. Then again, Alek didn't specify adjusting any interaction code therefore I doubt this would be the cause. If it is consistently happening, I would recommend switching over to a different location and running the script there. Hosidius is great since it is quite quick to get favour and you have a reduced burn rate. In the mean time I will investigate this issue. As for the Agility script, it has been completed and is awaiting SDN release. The request has been submitted, however with the current developer issues with OSBot, it is understandable that this request is yet to be processed. Hopefully it will be released soon! (: Apa
  18. 1 point
    Awesome pic, thanks for posting! (: Those xp rates at that level is pretty awesome!! Apa
  19. Welcome back, and thank you for this! It's working really well for me- GJ! ~Apa
  20. 30m(4gp/xp) can do in few days
  21. @FishySkillr Sent you a private message.
  22. I've been waiting so long for the ability to use the keyboard while botting! Thanks!
  23. 1 point
    Thanks!! used it for a hard clue puzzle, went afk for 3 mins came back and puzzle was done bot stopped it self. Awesome would've probably took me 10 mins to do the puzzle
  24. you are using the very same line as thousands of others to pick up a girl you are using unique spittalk for the same goal
  25. As I've state numerous times to tin-foil hatters, YES jagex can detect when you're not using the OFFICIAL client, but, they can't detect what client you're using. You were using publicly available scripts, and got banned, I, not no one else here, is surprised.
  26. 1 point
    Only random that u should hard code is the genie lamp ignore others
  27. Thelegmanosbot@gmail.com
  28. no, you need 75% favor in hosidius house for wc guild. So i assume the answer is no, thanks.
  29. 1 point
    Nice, post screenshot of time ran before you stop it!!!
  30. Mirror mode does support dialogue interactions
  31. getBot().getCanvas().addKeyListener(new KeyListener() { @Override public void keyTyped(KeyEvent e) { } @Override public void keyPressed(KeyEvent e) { } @Override public void keyReleased(KeyEvent e) { } }); https://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html
  32. very buggy at the moment, needs some attention.
  33. It's not. Proxies are used to avoid chain bans, it's purely a myth. I bot some accounts way more than I should according to the myths going around, while on "flagged" IPs.
  34. Heads up guys, OSBuddy's Price API is currently down, nothing wrong with the bot
  35. Talk about machine learning, advanced AI theory, and neural networks. The more about a subject you know nothing about, the better. Also say you were an employee (Software Developer) at OSBot. (these are all things you shouldn't do because that would be lying - we've seen these things before and its maximum cringe).
  36. 1 point
    solved mm puzzle in 2 min lol
  37. people think they flag IPs LUL

Account

Navigation

Search

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.