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.

OakCutting Bot Help

Featured Replies


I am using Apaecs guide, but added wood cutting instead of thieving tea from stalls. I am trying to bank the oak logs that I have chopped. Any ideas?

package sixshots2;

import org.osbot.rs07.api.Bank;

import org.osbot.rs07.api.*;

import org.osbot.rs07.api.model.Entity;

import org.osbot.rs07.script.Script;

import org.osbot.rs07.script.ScriptManifest;

import java.awt.*;

@ScriptManifest(author = "CaptWingo", info = "My first script", name = "OakCutting", version = 1.01, logo = "")

public class sixshots extends Script {

@Override

public void onStart() {

}

private enum State {

Chop, Wait, Bank

};

private State getState() {

Entity Oak = objects.closest("Oak");

if (!inventory.isEmpty())

return State.Bank;

if (Oak != null)

return State.Chop;

return State.Wait;

}

@Override

public int onLoop() throws InterruptedException {

switch (getState()) {

case Chop:

Entity Oak = objects.closest("Oak");

if (Oak != null) {

Oak.interact("Chop-down");

}

break;

case Bank:

inventory.store.Deposit(OakLogs);

break;

case Wait:

sleep(random(500, 700));

break;

}

return random(200, 300);

}

@Override

public void onExit() {

}

@Override

public void onPaint(Graphics2D g) {

}

I am using Apaecs guide, but added wood cutting instead of thieving tea from stalls. I am trying to bank the oak logs that I have chopped. Any ideas?



package sixshots2;

import org.osbot.rs07.api.Bank;
import org.osbot.rs07.api.*;
import org.osbot.rs07.api.model.Entity;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;

import java.awt.*;

@ScriptManifest(author = "CaptWingo", info = "My first script", name = "OakCutting", version = 1.01, logo = "")
public class sixshots extends Script {

	@Override
	public void onStart() {
		
	}

	private enum State {
		Chop, Wait, Bank
	};

	private State getState() {
		Entity Oak = objects.closest("Oak");
		if (!inventory.isEmpty())
			return State.Bank;
		if (Oak != null)
			return State.Chop;
		return State.Wait;
	}

	@Override
	public int onLoop() throws InterruptedException {
		switch (getState()) {
		case Chop:
			Entity Oak = objects.closest("Oak");
			if (Oak != null) {
				Oak.interact("Chop-down");
			}
			break;
		case Bank:
			inventory.store.Deposit(OakLogs);
			break;
		case Wait:
			sleep(random(500, 700));
			break;
		}
		return random(200, 300);
	}

	@Override
	public void onExit() {
		
	}

	@Override
	public void onPaint(Graphics2D g) {

	}

} 

 

You need 4 states. Bank, WalkToBank, Chop, and WalkToTrees. They should be as follows

if(inventory.isFull()&&!BANKAREA.contains(myPlayer())
return State.WALKTOBANK;
if(inventory.isFull()&&BANKAREA.CONTAINS(myPlayer())
return State.BANK;
if(!inventory.isFull()&&TREEAREA.contains(myPlayer())
return State.CHOP;
if(!inventory.isFull()&&!TREEAREA.conntains(myPlayer())
return State.WALKTOTREES;

So you're going to need to make paths for walking to the bank, walking to tthe trees, and areas for the bank and the area you want to cut oaks.

 

Then for banking, it should look something like this

if(bank.isOpenn())
{
Entity bankBooth = objects.closest("Bank booth")
bankBooth.interact("Bank");
bank.depositAll("Oak logs");
sleep(random(500,1000));
bank.close;
}
else
bankBooth.interact("Bank");
sleep(random(500,1000));

Edited by Twin

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

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.