Jump to content

Ardougne Nature Chest

Salty as fuck

Recommended Posts



Requires 28 thieving.

60k gp an hour.

5k exp an hour.


Start here, beside the north chest.


import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;

import org.osbot.rs07.api.map.Position;
import org.osbot.rs07.api.ui.Skill;
import org.osbot.rs07.api.ui.Tab;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;

@ScriptManifest(name = "Chest Thief", author = "Reminiscence", version = 1.0, info = "Steals nature runes.", logo = "") 
public class chestThief extends Script {

	String state;
	long startTime;

	public void onStart() {
		state = "initializing";
		startTime = System.currentTimeMillis();

	public void AntiBan() throws InterruptedException {
		switch (random(1, 50)) {
		case 1:
			camera.movePitch(100 + (random(1, 70)));
		case 2:
			camera.movePitch(100 + (random(1, 70)));
		case 3:
			mouse.getMouse().move(random(682, 730), random(304, 322));
			sleep(random(200, 450));
		case 4:
		case 5:
		case 6:
			camera.movePitch(50 + random(1, 70));
		case 7:
			camera.moveYaw(150 + (random(30, 70)));
		case 8:
			mouse.getMouse().move(random(682, 730), random(304, 322));
			sleep(random(200, 450));
		case 9:
			mouse.getMouse().move(random(682, 730), random(304, 322));
			sleep(random(200, 450));

		case 10:
			sleep(random(5000, 10000));
		sleep(random(700, 1800));

	public void onExit() {
		log("exp gained: "+ experienceTracker.getGainedXP(Skill.THIEVING));

	public int onLoop() throws InterruptedException {

		if (players.myPlayer().getX() != 2672 || players.myPlayer().getY() != 3301){
			state = "Walking to spot";
			walking.webWalk(new Position(2672, 3301, 1), new Position(2672, 3301, 1));
		if (objects.closest("Chest") != null && !inventory.isFull()) {
			state = "checking for traps";
			objects.closest("Chest").interact("Search for traps");
			sleep(random(13000, 15500));
			state = "Sleeping";

		return 600; 

	public String format(long time) {
		StringBuilder string = new StringBuilder();

		long totalSeconds = time / 1000L;
		long totalMinutes = totalSeconds / 60L;
		long totalHours = totalMinutes / 60L;

		int seconds = (int)totalSeconds % 60;
		int minutes = (int)totalMinutes % 60;
		int hours = (int)totalHours % 24;

		if (hours > 0) {
			string.append(hours + "h ");
		if (minutes > 0) {
			string.append(minutes + "m ");
		string.append(seconds +"s");

		return string.toString();

	public void onPaint(Graphics2D g) {
		final Font font1 = new Font("Arial", 0, 12);
		final Color color1 = new Color(255, 255, 255, 255);


		g.drawString("State: " + state, 8, 260);
		g.drawString("EXP Gained: " + experienceTracker.getGainedXP(Skill.THIEVING), 8, 275);
		g.drawString("EXP/Hour: " + experienceTracker.getGainedXPPerHour(Skill.THIEVING), 8, 290);
		g.drawString("Levels gained: " + experienceTracker.getGainedLevels(Skill.THIEVING), 8, 305);
		g.drawString("EXP to lvl: " + skills.experienceToLevel(Skill.THIEVING) , 8, 320);
		g.drawString("Runtime: " + format((System.currentTimeMillis()-startTime)), 8, 335);

  • Like 1
Link to comment
Share on other sites

Nice idea mate wink.png

thank you

was going through the rs wiki for money making methods and figured i'd make something really quick to test the exp/hour and profit/hour lol


I guess it could certainly be a different place to train thieving.

tbh 60k gp/hour and 5,200 exp/hour isn't all that great lol

definitely doesn't seem to be a well known spot though, so the ban rate is likely to be low

Link to comment
Share on other sites

I'm not sure if this is the case with that specific building which contains the chest but if you check for and x and y coordinates but not z and your player ends up standing on those exact coordinates but on ground floor the bot will get stuck. I generally compare the whole position of an object as that's 100% accurate and will not produce such bugs. The following code should work:

if (myPosition() != new Position(2672, 3301, 1)) {
	state = "Walking to spot";
	walking.webWalk(new Position(2672, 3301, 1));
Link to comment
Share on other sites

cool bro

i'm beyond out of things to do other than toy with loudpacks



MFW checking quest tab, attack tab + random skills

MFW those long sleeps

MFW no 1 game tick loops and checks for animation







Apart from that good job

people bitch about a lack of antiban, even tho it's practically placebo

because you have to wait about 8 seconds for the chest items to respawn as well as clicking on it and disarming trap

it is one game tick loop tho, and there really isn't a reason to check for animations

ty tho



@token, there are two chests near eachother, one doesn't work and one does

making sure i'm positioned right beside the proper one

also, there's no way to be in that position even if on a different height level, so it isn't necessary to check z

Edited by Reminiscence
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...