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.

Importing INodeRouteFinder

Featured Replies

I'm unable to import this, am i doing something wrong? I think i need to use this for webwalkevent, Can someone please teach me how to import this. Thanks

  • Author

Why do you need this for webwalkevent?

I need it to set a break condition so i can exit out of my webwalk, to make it less bot like i guess. Any ideas how?

 

Such as 

webwalk(bank)

if bank.isVisible

    interact with bank.

I need it to set a break condition so i can exit out of my webwalk, to make it less bot like i guess. Any ideas how?

 

Such as 

webwalk(bank)

if bank.isVisible

    interact with bank.

Yes, you don't need the inoderoutefinder to set a break condition, all you have to use is the setbreakcondition method

  • Author

Yes, you don't need the inoderoutefinder to set a break condition, all you have to use is the setbreakcondition method

Any example snippets u can give me? 

Any example snippets u can give me? 

Look at the api docs, it's quite a simple method

	protected abstract static class WebWalk {

		private static WebWalkEvent e = null;
		private static boolean teleports = true;
		private static boolean skills = false;
		private static boolean quests = false;

		public static void allowTeleports(boolean b) {
			teleports = b;
		}

		public static void allowSkillLinked(boolean b) {
			skills = !b;
		}

		public static void allowQuestLinked(boolean b) {
			quests = !b;
		}

		public static void walk(Area bounds, Area walkArea, int thresh) {
			if (e == null || e.hasFailed() || e.hasFinished()) {
				e = new WebWalkEvent(walkArea);
				PathPreferenceProfile profile = new PathPreferenceProfile();
				profile.setAllowTeleports(teleports);
				profile.ignoreAllSkillLinks(skills);
				profile.ignoreAllQuestLinks(quests);
				e.setPathPreferenceProfile(profile);
				e.setBreakCondition(new Condition() {
					@Override
					public boolean evaluate() {
						if (bounds.contains(s.myPlayer().getPosition()) && s.myPlayer().getPosition().distance(e.getDestination()) <= thresh) {
							return true;
						}
						return false;
					}
				});
				s.execute(e);
			}
		}

		public static void walk(Position pos) {
			if (e == null || e.hasFailed() || e.hasFinished()) {
				e = new WebWalkEvent(pos);
				PathPreferenceProfile profile = new PathPreferenceProfile();
				profile.setAllowTeleports(teleports);
				profile.ignoreAllSkillLinks(skills);
				profile.ignoreAllQuestLinks(quests);
				e.setPathPreferenceProfile(profile);
				e.setBreakCondition(new Condition() {
					@Override
					public boolean evaluate() {
						if (s.myPlayer().getPosition().equals(pos)) {
							return true;
						}
						return false;
					}
				});
				s.execute(e);
			}
		}
	}

I have static instances like this for various classes and helper methods so then I can just do WebWalk.walk(area, area, int); You can make them nonstatic / protected / abstract but I have this in an abstract class that all my tasks extend

Edited by LoudPacks

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.