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.

Barbarian Rod Fishing

Featured Replies

Hello, all! This is my first ever script, and I used it for 63-67 fishing. I ran out of feathers so I had to stop, but I am happy with the results I got.

 

Features:

 

Picks up rod if dropped by annoying random

Random sleep times (better anti-ban)

Start at Otto's Grotto by Barbarian Outpost

MUST HAVE BARBARIAN FISHING ROD AND FEATHERS

Barbarian style fishing at Otto's Grotto

Use of feathers only (doesn't work with fishing bait yet)

Powerfishing

 

I just added the very minor paint, don't know if that works or not, so if anyone would like to give me some feedback/results I'd appreciate it.

 

 

Things to add:

 

Fishing bait compatibility

 

Enjoy biggrin.png

import org.osbot.rs07.api.model.GroundItem;
import org.osbot.rs07.api.model.NPC;
import org.osbot.rs07.api.ui.Skill;
import org.osbot.rs07.api.ui.Tab;
import org.osbot.rs07.script.MethodProvider;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;

import java.awt.*;
import java.util.concurrent.TimeUnit;

/**
 * Created by ${igetbanned} on 8/30/2014.
 */
@ScriptManifest(
        author = "igetbanned",
        info = "Powerfishes barbarian style",
        name = "BarbarianFisher",
        version = 0.2,
        logo = "Cool"


)
public class BarbarianFIsher extends Script {

    private double currentLevelXp;
    private int xpPerHour;
    private double nextLevelXp;
    private int currentLevel;
    private int beginningXp;
    private int currentXp;
    private int xpGained;
    private long timeRan;
    private long timeBegan;
    private double xpTillNextLevel;
    private long timeTNL;

    final int[] XP_TABLE =
            {
                    0, 0, 83, 174, 276, 388, 512, 650, 801, 969, 1154,
                    1358, 1584, 1833, 2107, 2411, 2746, 3115, 3523, 3973, 4470, 5018,
                    5624, 6291, 7028, 7842, 8740, 9730, 10824, 12031, 13363, 14833,
                    16456, 18247, 20224, 22406, 24815, 27473, 30408, 33648, 37224,
                    41171, 45529, 50339, 55649, 61512, 67983, 75127, 83014, 91721,
                    101333, 111945, 123660, 136594, 150872, 166636, 184040, 203254,
                    224466, 247886, 273742, 302288, 333804, 368599, 407015, 449428,
                    496254, 547953, 605032, 668051, 737627, 814445, 899257, 992895,
                    1096278, 1210421, 1336443, 1475581, 1629200, 1798808, 1986068,
                    2192818, 2421087, 2673114, 2951373, 3258594, 3597792, 3972294,
                    4385776, 4842295, 5346332, 5902831, 6517253, 7195629, 7944614,
                    8771558, 9684577, 10692629, 11805606, 13034431, 200000000
            };

    private static final int[] FISHING_ID = {1542};

    public void onStart(){
        log("Barbarian Fisher Started!");
        timeTNL = 0;
        timeBegan = System.currentTimeMillis();
        beginningXp = skills.getExperience(Skill.FISHING);
    }

    private enum State {
        FISHING, DROPPING
    }

    private State getState() {
        if (inventory.isFull())
            return State.DROPPING;
        return State.FISHING;
    }

    public int onLoop() throws InterruptedException {
        switch (getState()) {
            case FISHING:
                if (!myPlayer().isAnimating()) {
                    NPC Fishing_spot = npcs.closest(FISHING_ID);
                    if (!inventory.isFull()){
                        Fishing_spot.interact("Use-rod");
                    }
                if (myPlayer().isAnimating()) {
                    sleep(MethodProvider.gRandom(6000, 13000));
                    getTabs().open(Tab.SKILLS);
                    sleep(MethodProvider.gRandom(300, 1200));
                    getSkills().hoverSkill(Skill.FISHING);
                    sleep(MethodProvider.gRandom(3000, 4000));
                    getTabs().open(Tab.INVENTORY);
                        sleep(MethodProvider.gRandom(7000, 12000));
                        getMouse().moveRandomly();
                }
                }
                if (!getInventory().contains(11323)) {
                    GroundItem loot = groundItems.closest(11323);
                    if (!myPlayer().isAnimating()) {
                        loot.interact("Take");
                    }

                }
                break;
            case DROPPING:
                    inventory.dropAllExcept(11323, 314);
                        break;

        }
            return random(100, 300);
    }


    public void onPaint(Graphics g) {
        timeRan = System.currentTimeMillis() - this.timeBegan;
        currentXp = skills.getExperience(Skill.FISHING);
        currentLevel = skills.getStatic(Skill.FISHING);
        currentLevelXp = XP_TABLE[currentLevel];
        nextLevelXp = XP_TABLE[currentLevel + 1];
        xpGained = currentXp - beginningXp;
        xpPerHour = (int)( xpGained / ((System.currentTimeMillis() - this.timeBegan) / 3600000.0D));
        nextLevelXp = XP_TABLE[currentLevel + 1];
        xpTillNextLevel = nextLevelXp - currentXp;
        if (xpGained >= 1) {
            timeTNL = (long) ((xpTillNextLevel / xpPerHour) * 3600000);
        }
        g.drawString(ft(timeRan), 430, 328);
        g.drawString("XP Gained: " + xpGained, 200, 328);
        g.drawString("TNL: " + ft(timeTNL), 300,300);

    }

    private String ft(long duration){
        String res = "";
        long days = TimeUnit.MILLISECONDS.toDays(duration);
        long hours = TimeUnit.MILLISECONDS.toHours(duration)
                - TimeUnit.DAYS.toHours(TimeUnit.MILLISECONDS.toDays(duration));
        long minutes = TimeUnit.MILLISECONDS.toMinutes(duration)
                - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS
                .toHours(duration));
        long seconds = TimeUnit.MILLISECONDS.toSeconds(duration)
                - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS
                .toMinutes(duration));
        if (days == 0) {
            res = (hours + ":" + minutes + ":" + seconds);
        } else {
            res = (days + ":" + hours + ":" + minutes + ":" + seconds);
        }
        return res;
    }

    //code to be executed on exit
    public void onExit(){
        log("Script stopped!");
    }







}

Jar download: http://s000.tinyupload.com/index.php?file_id=05237746024105469619

 

Virus Scan: https://www.virustotal.com/en/file/26df51432a6133b238191d0e09e21d36c54b70e84eb60c39e22bf261878387bd/analysis/1409756838/

 

Version 0.2 - Added random sleep times

                      Picks up rod if dropped by random

 

Edited by igetbanned

  • Author

Hey,

 

Can you please upload jar file?? it would be nice... biggrin.png

Uploaded the jar, won't let me use attachment feature on here sadly :( If that ever gets around to work I'll remove the link. Enjoy! :)

pity :( Would love to use this but as soon as you loose the rod to a random you're screwed :( ah well


                if (myPlayer().isAnimating()) {
                    sleep(6000 - 13000);
                    getTabs().open(Tab.SKILLS);
                    sleep(300 - 1200);
                    getSkills().hoverSkill(Skill.FISHING);
                    sleep(3000 - 4000);
                    getTabs().open(Tab.INVENTORY);
                        sleep(7000 - 12000);
                        getMouse().moveRandomly();
                }

Umm are you assuming that the "-" operator every single one of us has been using since kindergarden somehow means "between"?

  • Author

Umm are you assuming that the "-" operator every single one of us has been using since kindergarden somehow means "between"?

As this was my first script, I ripped that off of another script on pastebin. I now know how to randomize sleep time but because I've written a couple more private scripts since this. I add the rod pickup and change the sleep time when I get home. Thanks!

  • Author

Updated to version 0.2 :) if anyone gets bugs or errors let me know, otherwise enjoy! :D

 

Still need to add fishing bait compatibility.

  • 1 month later...

thanks man, still working!:)

YOU SHOULD REVISE THE CODE? IT STOPS RANDOMLY, SOMETIMES IT STUCKS AT DROPPING FIST, SOMETIMES WHEN IT AHS TO SELECT NEW FISHING SPOT:(

  • 3 months later...

awesome! finally found free working barbarian fishing script! thank u so much!!!!!!!! smile.png

but why is this that jar file on version 0.1? :D

Edited by jonesgabe

  • 2 months later...

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.