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.

Mort Myre Fungi Script

Featured Replies

Hello! Just this morning I wake up to all my accounts being permanantely banned, probably due to botting in catherby yesterday :p But I'm definentally done botting for good now and I'd like to give my scripts away so that people here can benefit (if people still bot). So this is very high reqs script, you need to have a house with a kharyll teleport. Also you need to have lobsters in your bank. If requested enough times I will simply release the source code for this script. I myself have made 50m with this script this past week on my main account, however I really started to care less and less for playing.

 

 

 

Since I cannot upload a .jar I will simply post the source code, enjoy :)

import java.awt.Color;
import java.awt.Graphics2D;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;
import org.osbot.rs07.api.map.Position;
import org.osbot.rs07.api.model.RS2Object;
import org.osbot.rs07.api.ui.Skill;
import org.osbot.rs07.api.ui.Tab;

@ScriptManifest(author = "Pildurass", info = "Collects mort myre fungus", name ="Shrooms", version = 1.0, logo = "http://i.imgur.com/xI60cq3.png")
public class Shrooms extends Script {
	public int trips, shroomholder, shroomcount;
	private long startTime;
    private Color bg;
    String state;
    @SuppressWarnings("unused")
	private Color box;
    public int statsX;
    public int statsY;
	public void onStart() {
		trips = (int) getInventory().getAmount(563);
		startTime = System.currentTimeMillis();
        bg = new Color(69, 53, 15, 125);
        box = new Color(0, 0, 0);
        statsX = 313;
        statsY = 344;
	}
	public void onPaint(Graphics2D g1) {
        long millis = System.currentTimeMillis() - startTime;
        Graphics2D g = g1;
        g.setColor(bg);
        g.fillRect(statsX, statsY, 184, 115);
        g.setColor(Color.green);
        g.drawRect(statsX, statsY, 184, 115);
        g.setColor(Color.white);
        g.drawString((new StringBuilder("Fungi Picker v")).append("0.1 | Author : Pildurass").toString(), statsX + 5, statsY + 15);
        g.drawString((new StringBuilder("State: ")).append(status).toString(), statsX + 5, statsY + 30);
        g.drawString((new StringBuilder("Time ran: ")).append(timeToString((int)millis)).toString(), statsX + 5, statsY + 45);
        g.drawString((new StringBuilder("Fungi Gained: ")).append(shroomcount).toString(), statsX + 5, statsY + 60);
        g.drawString((new StringBuilder("Fungi/Hour: ")).append(perHour((int)(shroomcount), System.currentTimeMillis() - millis)).toString(), statsX + 5, statsY + 75);
	}
	public static String perHour(int gained, long startTime)
	{
	    int i = (int)(((double)gained * 3600000D) / (double)(System.currentTimeMillis() - startTime));
	    return (new StringBuilder()).append(i).toString();
	}
	public static String timeToString(long time)
	{
	    int seconds = (int)(time / 1000L) % 60;
	    int minutes = (int)((time / 60000L) % 60L);
	    int hours = (int)((time / 0x36ee80L));
	    return (new StringBuilder(String.valueOf(hours))).append(":").append(minutes).append(":").append(seconds).toString();
	}
    public final Position toGate[] = {
            new Position(3497, 3482, 0), new Position(3481, 3476, 0), new Position(3466, 3473, 0), new Position(3453, 3465, 0), new Position(3444, 3458, 0)
        };
    public final Position toShroomArea[] = {
            new Position(3433, 3450, 0), new Position(3424, 3441, 0), new Position(3466, 3473, 0), new Position(3421, 3439, 0)
        };
    public final Position toBank[] = {
    		new Position(3494, 3479, 0), new Position(3502, 3489, 0), new Position(3511, 3480, 0)    		
    };
    public final Position toSpot[] = {
    		new Position(3421, 3439, 0)    		
    };
    public void walkPath(Position path[]) {
    	for (int i = 0; i < path.length; i++) {
    		localWalker.walk(path[i]);
    	}
    }
    public void walkBank() {
    	status = "Walking to Bank";
        walkPath(toBank);
        while(myPlayer().isMoving()) {
        }
    }
    public void bank() {
    	status="Banking";
        RS2Object banks = objects.closest(new String[] {"Bank booth"});
        localWalker.walk(banks.getPosition());
        while(myPlayer().isMoving()) {
        }
        banks.interact("Bank");        
    }
    public void storeitems() {
      	status = "Storing Items";
      	shroomholder += 25;
      	getInventory().getItem(2970).interact("Deposit-All");
      	if (skills.getDynamic(Skill.HITPOINTS) <= 60) {
      		getBank().withdraw(379, 3);
      	}
    }
    public void openDoor() {
    	status = "Opening Door";
        RS2Object portal = objects.closest(new String[] {"Portal"});
      	getTabs().open(Tab.INVENTORY);
      	new Position(portal.getPosition().getX() - 3, portal.getPosition().getY(), portal.getPosition().getZ()).interact(getBot(), "Walk here");
      	getDoorHandler().handleNextObstacle(new Position(portal.getPosition().getX() - 4, portal.getPosition().getY(), portal.getPosition().getZ()));
    }
    public void rechargingPrayer() {
    	status = "Recharging Prayer";
        RS2Object altar = objects.closest(new String[] {"Altar"});
      	altar.interact("Pray");
      	if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER)) {
          	altar.interact("Pray");
      	}
    }
    public void exiting() {
    	status = "Exiting House";
        RS2Object tpFocus = objects.closest(new String[] {"Teleportation focus"});
        RS2Object portal = objects.closest(new String[] {"Kharyrll Portal"});
      	localWalker.walk(tpFocus.getPosition());
      	portal.interact("Enter");
    }
    public void picking() {
     	status = "Picking Fungi";
     	shroomcount = (int) getInventory().getAmount(2970) + shroomholder;
        RS2Object fungi = objects.closest(new String[] {"Fungi on log"});
        fungi.interact("Pick");
    }
    public void walktologs() {
     	status = "Walking to logs";
     	walkPath(toShroomArea);
     	while(myPlayer().isMoving()) {
     	}
    }
    public void opengate() {
     	status = "Opening Gate";
        RS2Object gate = objects.closest(new String[] {"Gate"});
     	localWalker.walk(gate.getPosition());
     	while (myPlayer().isMoving()){
     	}
     	gate.interact("Open");
    }
    public void walktobank() {
     	status = "Walking to bank";
     	walkPath(toBank);
    }
    public void teleporttohouse() {
      	status = "Teleporting to house";
      	getTabs().open(Tab.MAGIC);
      	getInterfaces().getChild(192, 23).interact("Cast");
    }
    public void returntospot() {
     	status = "Getting Situated";
     	shroomcount = (int) getInventory().getAmount(2970) + shroomholder;
     	new Position(3421, 3439, 0).interact(getBot(), "Walk here");
    }
    public void castbloom(){
     	status = "Casting bloom";
      	getTabs().open(Tab.INVENTORY);
     	getInventory().getItem(2963).interact("Cast Bloom");
    }
    public void walktogate() {
     	status = "Walking to gate"; 
     	walkPath(toGate);
     	while (myPlayer().isMoving()) {
     	}
    }
    public void eat() {
    	status = "Eating";
    	getBank().close();
      	getTabs().open(Tab.INVENTORY);
    	getInventory().interact("Eat", 379);
    }
    public String status = "Initializing...";
	public int onLoop() {
        RS2Object bankss = objects.closest(new String[] {"Bank booth"});
        RS2Object gate = objects.closest(new String[] {"Gate"});
        RS2Object logs = objects.closest(new String[] {"Rotting log"});
        RS2Object fungi = objects.closest(new String[] {"Fungi on log"});
        RS2Object portal = objects.closest(new String[] {"Portal"});
        RS2Object door = objects.closest(13103);
        if (getColorPicker().isColorAt(573, 133, new Color(175, 176, 162))) {
        	status = "Toggling Run";
        	interfaces.getChild(548, 94).interact("Toggle Run");
        	return 500;
        }
        if (getInventory().contains(379)) {
        	eat();
        	return 500;
        }
		if (bankss != null) {
			if (bankss.isVisible() && getInventory().getAmount(2970) != 0 && !bank.isOpen() && myPosition().getY() > 3473) {
				bank();
				return 2000;
			}
		}
		if (myPosition().getY() < 3457 && myPosition().getY() > 3430 && getInventory().isFull() && skills.getDynamic(Skill.PRAYER) == skills.getStatic(Skill.PRAYER) || myPosition().getY() >= 3625 && myPosition().getY() <= 3640) {
			teleporttohouse();
			return 500;
		}
		if (myPosition().getY() > 3471 && myPosition().getY() <= 3479 && myPosition().getY() >= 3489 && myPosition().getY() <= 3503) {
			walkBank();
			return 500;
		}
		if (getInventory().isFull()) {
				if (portal != null) {
					if (skills.getDynamic(Skill.PRAYER) == skills.getStatic(Skill.PRAYER) && door != null) {
						exiting();
						return 500;
					}
					if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER) && door != null && (portal.getPosition().getX() - 3) == myPlayer().getPosition().getX()) {
						rechargingPrayer();
						return 500;
					}
					if (skills.getDynamic(Skill.PRAYER) != skills.getStatic(Skill.PRAYER) && door != null) {
						rechargingPrayer();
						return 500;
					}
					if (getDoorHandler().canReachOrOpen(new Position(portal.getPosition().getX() - 4, portal.getPosition().getY(), portal.getPosition().getZ()))) {
						openDoor();
						return 500;
					}
				}
				if (bankss != null && myPosition().getY() > 3473) {
					if (!getBank().isOpen()) {
						bank();
						return 2000;
					}
					if (getBank().isOpen()) {
						storeitems();
						return 500;
					}	
				}
		}
		if (fungi != null && !getInventory().isFull() && skills.getDynamic(Skill.PRAYER) != 0 && fungi.getPosition().getX() <= 3423) {
			picking();
			return 500;
		}
		if (myPosition().getY() <= 3457 && myPosition().getY() >= 3443) {
			walktologs();
			return 500;
		}
		if (myPosition().getX() >= 3489 && myPosition().getX() <= 3504 && myPosition().getY() >= 3471 && myPosition().getY() <= 3477) {
			walktobank();
			return 500;
		}
		if (getInventory().isFull() && myPosition().getY() < 3480) {
			teleporttohouse();
			return 500;
		}
		if (gate != null && myPosition().getY() > 3457 && myPosition().getY() <= 3465) {
				opengate();		
				return 500;
		}
		if (logs != null && myPosition().getY() <= 3457) {
			if (myPosition().getY() == 3439 && myPosition().getX() == 3421) {
				castbloom();
				return 1000;
			} else {
				returntospot();
				return 500;
			}
		}
		if (!getInventory().isFull() && skills.getDynamic(Skill.PRAYER) != 0) {
			walktogate();
			return 500;
		}
		if (bank.isOpen()) {
			storeitems();
			return 500;
		}
		return 500;
	}
	public void onExit() {
		
	}
}

osbot 2 support? i also got banned on all accs gotta restart lol

haven't beign online for like half a year

  • 3 weeks later...
  • 2 weeks later...
  • 3 weeks later...

doesn't work..

 

I saved it as .jar

 

.jar isnt the file to save it as, you need to save it as .java

  • 4 weeks later...

i have tried Changing it .java and .jar not showing it says that it cant be executed

Edited by champrocks

Ill sell 2 mort myre fungus accounts, 10m ea. message me on skype :iamspex:   i will be using a MM

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.