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.

Varies ~Antiban~

Featured Replies

Varies Anti-ban

~Still in development~

 

Here's a little antiban scripting code I wrote awhile back before I started focusing on school a little bit more rather than scripting. Basically what this will do is check everything, tabs, stats, ANYTHING, and it's still in development.

 

Right now it's still a work in progress, about 70% done but I'll be adding a ton more into it such as

-  Joining random clan chats

-  Setting the appropriate music based on if it's unlocked or not, I'll be using rectangles to get either a total green or red color values.

-  Dancing, this will be hilarious when not in combat or animating.

- AND MORE

 

Anyways all you have to do is copy and paste the following methods into your program, rename random events to antiban and you are all set!

 

*NOTE: YOU MAY IMPLEMENT BUT THIS DOESN'T GUARANTEE YOUR ACCOUNT NOT BE BANNED, BOT WISELY!"

IT ALSO LIMITS PERFORMANCE IN SOME AREAS, THAT'S WHY I LINK IT TO WHEN IN COMBAT OR ANIMATING!*

    public void randomEvents()
      {
        try
      {
          Random generator = new Random();
          int click = generator.nextInt(10);
          if ((click > 7) && (myPlayer().isMoving())) {
              note = "Antiban, Mouse Right-Click";
            this.mouse.click(true);
          }
          int rand = generator.nextInt(800000);
          if ((rand > 49) && (rand < 100))
          {
              note = "Antiban, Camera Movement";
            this.camera.movePitch(random(0, 360));
            this.camera.moveYaw(random(0, 360));
          }
          if ((rand > 100) && (rand < 400)) {
              note = "Antiban, Camera Movement";
            this.camera.movePitch(random(0, 360));
          }
          if ((rand > 2400) && (rand < 3000)) {
              note = "Antiban, Camera Movement";
            this.camera.moveYaw(random(0, 360));
          }
          if ((rand > 5000) && (rand < 5500)) {
              note = "Antiban, Random Mouse Movement";
            this.mouse.moveRandomly();
          }
          if ((rand > 6000) && (rand < 6200))
          {
              note = "Antiban, Opening Tab";
            this.tabs.open(Tab.ATTACK);
            sleepTime(500, 2000, 200);
            this.tabs.open(Tab.INVENTORY);
          }
          if ((rand > 6500) && (rand < 7000))
          {
              note = "Antiban, Opening Tab + Checking Stats";
            this.tabs.open(Tab.SKILLS);
            sleepTime(500, 1000, 200);
            int stat = generator.nextInt(24);
            if (stat == 0) {
              this.mouse.move(random(568, 588), random(214, 234));
            }
            if (stat == 1) {
              this.mouse.move(random(568, 588), random(244, 264));
            }
            if (stat == 2) {
              this.mouse.move(random(568, 588), random(274, 294));
            }
            if (stat == 3) {
              this.mouse.move(random(568, 588), random(304, 324));
            }
            if (stat == 4) {
              this.mouse.move(random(568, 588), random(334, 354));
            }
            if (stat == 5) {
              this.mouse.move(random(568, 588), random(364, 384));
            }
            if (stat == 6) {
              this.mouse.move(random(568, 588), random(394, 414));
            }
            if (stat == 7) {
              this.mouse.move(random(568, 588), random(424, 444));
            }
            if (stat == 8) {
              this.mouse.move(random(638, 658), random(214, 234));
            }
            if (stat == 9) {
              this.mouse.move(random(638, 658), random(244, 264));
            }
            if (stat == 10) {
              this.mouse.move(random(638, 658), random(274, 294));
            }
            if (stat == 11) {
              this.mouse.move(random(638, 658), random(304, 324));
            }
            if (stat == 12) {
              this.mouse.move(random(638, 658), random(334, 354));
            }
            if (stat == 13) {
              this.mouse.move(random(638, 658), random(364, 384));
            }
            if (stat == 14) {
              this.mouse.move(random(638, 658), random(394, 414));
            }
            if (stat == 15) {
              this.mouse.move(random(638, 658), random(424, 444));
            }
            if (stat == 16) {
              this.mouse.move(random(708, 728), random(214, 234));
            }
            if (stat == 17) {
              this.mouse.move(random(708, 728), random(244, 264));
            }
            if (stat == 18) {
              this.mouse.move(random(708, 728), random(274, 294));
            }
            if (stat == 19) {
              this.mouse.move(random(708, 728), random(304, 324));
            }
            if (stat == 20) {
              this.mouse.move(random(708, 728), random(334, 354));
            }
            if (stat == 21) {
              this.mouse.move(random(708, 728), random(364, 384));
            }
            if (stat == 22) {
              this.mouse.move(random(708, 728), random(394, 414));
            }
            sleepTime(1000, 2000, 200);
            this.tabs.open(Tab.INVENTORY);
          }
          if ((rand > 7000) && (rand < 7200))
          {
              note = "Antiban, Opening Tab";
            this.tabs.open(Tab.SETTINGS);
            sleepTime(500, 2000, 200);
            this.tabs.open(Tab.INVENTORY);
          }
          if ((rand > 10200) && (rand < 10700))
          {
              note = "Antiban, Opening Tab + Playing New Song";
            this.tabs.open(Tab.MUSIC);
            sleepTime(500, 1000, 200);
            stealthMusic();
            this.tabs.open(Tab.INVENTORY);
          }
          if ((rand > 15000) && (rand < 15200)) {
              note = "Antiban, Moving Camera";
            this.camera.movePitch(random(0, 360));
          }
          if ((rand > 16000) && (rand < 16200)) {
              note = "Antiban, Moving Camera";
            this.camera.moveYaw(random(0, 360));
          }
          if((rand > 20000) && (rand < 27000)) {
              List<RS2Object> o = objects.getAll();
              int guess = new Random().nextInt(o.size());
              camera.toEntity(o.get(guess));
          }
          if((rand > 27000) && (rand < 27500)) {
              List<RS2Object> o = objects.getAll();
              int guess = new Random().nextInt(o.size());
              o.get(guess).examine();
          }
          if((rand > 28000) && (rand < 30000)) {
              List<NPC> o = npcs.getAll();
              int guess = new Random().nextInt(o.size());
              camera.toEntity(o.get(guess));
          }
          if((rand > 30000) && (rand < 40000)) {
              List<Player> o = players.getAll();
              int guess = new Random().nextInt(o.size());
              camera.toEntity(o.get(guess));
              sleepTime(500, 1000, 200);
              o.get(guess).hover();
          }
        
      }
      catch (Exception e)
      {
        e.printStackTrace();
      }
   }
    
    private void stealthDance() {
        int startx = 565;
        int starty = 215;
        int row = new Random().nextInt(5);
        int col = new Random().nextInt(4);
        int rowMultiplier = 50;
        int colMultiplier = 45;
        mouse.move(startx + (col + 1) * colMultiplier,
                    starty + (row + 1) * rowMultiplier);
    }
    
    private void stealthMusic() {
        try {
            // randomly picks music for the game
            Random gen = new Random();
            int guess = gen.nextInt(2);
            if(guess == 0) {
                mouse.scrollDown();
                sleep(random(600, 1200));
                mouse.move(random(560,600), random(286,440));
                sleep(random(500, 900));
                mouse.click(false);
            } else {
                // up
                mouse.scrollUp();
                sleep(random(600, 1200));
                mouse.move(random(560,600), random(286,440));
                sleep(random(500, 900));
                mouse.click(false);
            }
        } catch (Exception e) {
            
        }
    }

    // a new version for sleep(random(x,x)); More... random
    private void sleepTime(int low, int high, int buffer) throws InterruptedException {
        boolean add = new Random().nextBoolean();
        if(add)
            sleep(new Random().nextInt(high - low) + low + new Random().nextInt(buffer));
        else
            sleep(new Random().nextInt(high - low) + low - new Random().nextInt(buffer));
    }


Alright here is a new piece for all you scripters out there that need your script lowkey.

 

This will adjust the area for you based on the bounds you give it and the amount of buffer room stored inside, so be careful but in the long run, it should make your script look a tad more like a human due to it's constant offsets.

 

Apply this code to a method that is updated like everytime it would bank, not when it's constantly checking it it's walking or something tedious like that.

public Area adjustArea(int lowx, int lowy, int highx, int highy, int buffer) {
		
		int finalLowX = 0;
		int finalLowY = 0;
		int finalHighX = 0;
		int finalHighY = 0;
		
		boolean add;
		
		add = new Random().nextBoolean();
		if(add) {
			finalLowX = lowx + new Random().nextInt(buffer) + 1;
		} else
			finalLowX = lowx - new Random().nextInt(buffer) + 1;
		
		add = new Random().nextBoolean();
		if(add) {
			finalLowY = lowy + new Random().nextInt(buffer) + 1;
		} else
			finalLowY = lowy - new Random().nextInt(buffer) + 1;
		
		add = new Random().nextBoolean();
		if(add) {
			finalHighX = highx + new Random().nextInt(buffer) + 1;
		} else
			finalHighX = highx - new Random().nextInt(buffer) + 1;
		
		add = new Random().nextBoolean();
		if(add) {
			finalHighY = highy + new Random().nextInt(buffer) + 1;
		} else
			finalHighY = highy - new Random().nextInt(buffer) + 1;
		
		if(finalHighX < finalLowX) {
			int tmp = finalHighX;
			int tmp2 = finalLowX;
			finalHighX = tmp2;
			finalLowX = tmp;
		}
		
		if(finalHighY < finalLowY) {
			int tmp = finalHighY;
			int tmp2 = finalLowY;
			finalHighY = tmp2;
			finalLowY = tmp;
		}
		
		return new Area(finalLowX, finalLowY, finalHighX, finalHighY);
	}

Edited by Varies

Thank you!! do you just create a private variable for "interaction" and then call the method?

 

Thank you!! do you just create a private variable for "interaction" and then call the method?

 

"interaction" in this case looks like a string, so you can do:

private String interaction = "":
  • Author

Thank you!! do you just create a private variable for "interaction" and then call the method?

 

as stated above,

private String interaction = ""; 

will indeed work.

 

You can merely remove this if you don't want your script displaying what the anti-ban is doing, it's always good to know though due to trouble shooting speeds or simple enjoyment.

  • Author

Hey guys, I added sleepTime(int low, int high, int buffer).

This method allows you to sleep a random amount of time and includes a buffer to which either extends or delays the sleep time randomly itself.

For Dummies: More buffer.... More numbers.... More sleep or less sleep

don't runescape read code injection ?blink.png

 

Great Job tongue.png

Edited by ownervs

  • Author

Holy mother of spaghetti code

 

Honestly I code as I go for scripting since most of my personal scripts are well, personal.

The antiban I'm constantly updating until the final product which won't be for awhile since I'm actually watching how I play and I mimic my movement into the script.

 

My next release is going to be looking at stats that have either changed with xp or level since the script has started instead of looking at it as a whole.

  • Author

Just added a new method to where the Area given to walk to may be adjusted every so often just to make it look a tad more human.

no they dont

So they only  detect Mouse Movement ?huh.png

 

don't they know if you press a "Key" or something ? or interact with the client ?

Edited by ownervs

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

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.