Jump to content

Tommm39

Trade With Caution
  • Posts

    181
  • Joined

  • Last visited

  • Feedback

    80%

Everything posted by Tommm39

  1. account has 55 thieving, 50 agility, has stamina potions in bank if needed
  2. It depends, if they don't add any more gold-sinks in theory it'll keep going down
  3. Yes, there's a lot more gold in the game which has devalued it
  4. I think you have to because it's the only client that doesn't auto rotate the camera
  5. Thanks bro, probably a week or so? Won't take that long to actually code but I have exams atm so don't have loads of free time to figure it out
  6. @Fruity hey bro, love the script one small problem, when I've been babysitting I've noticed a couple of times that in the rare case that the bot only needs to eat 1/2 sharks, it leaves some of the loot on the ground instead of dropping/eating an extra shark to make space for it Otherwise perfection 10/10
  7. Cheers bro, it wasn't from this forum so I probably shouldn't say I don't want to get into trouble ? just search other major botting communities and you'll find one soon enough!
  8. Personally I think it's a good time to come back, with mobile coming out soon there should be an influx of a lot of new players
  9. Yeah you just use .interact() with a widget you don't need to specify the action
  10. It's probably worth more, but the fact is most people would probably only pay the same as if it was 13m Just my opinion though
  11. NPC monsterToAttack = getNPCs().closest("Name 1", "Name 2", "Name 3", "Name 4", "Name 5"); if (monsterToAttack != null && monsterToAttack.interact()) { }
  12. wealth? prospector/angler? quests?
  13. My apologies, had to make a quick update and forgot to update the download link, should work now
  14. Who is The SimpleFisherman? Some say he's part man, part fish. Some say he's an actual real-life fisherman. All we really know is the man loves to fish. What the script does: Fishes Shrimp/Anchovies at Draynor Village until level 20 fishing, then fishes trout/salmon forever Fetches appropriate equipment from the bank if needed Walks to the appropriate fishing area depending on level Fish is dropped to optimise XP/Hour Future update plans: Buy feathers from GE when you run out Start going to fishing trawler at level 15 to get full angler (will take some time to implement!) Please note: This has not been tested on a low combat account - the dark wizard/jail guard near draynor WILL attack you if you have a low combat level so please use with caution! This is the first script that I will upload the source code for, any and all feedback will be greatly appreciated I have only started scripting recently so there may be some errors here and there. Download link: http://www.mediafire.com/file/0s3rq3q67e4363q/SimpleFisherman.jar Source code: import org.osbot.rs07.api.Skills; import org.osbot.rs07.api.map.Area; import org.osbot.rs07.api.map.constants.Banks; import org.osbot.rs07.api.model.NPC; import org.osbot.rs07.api.ui.Skill; import org.osbot.rs07.api.util.ExperienceTracker; import org.osbot.rs07.script.Script; import org.osbot.rs07.script.ScriptManifest; import java.awt.*; import java.util.concurrent.TimeUnit; @ScriptManifest(author = "Tommm39", name = "SimpleFisherman", info = "", version = 1.0, logo = "") public class Main extends Script { private Skills s; private ExperienceTracker track; private String status = ""; private long timeBegan; private long timeRan; private final Area shrimpArea = new Area(3092, 3234, 3081, 3226); private final Area flyFishingArea = new Area(3102, 3422, 3109, 3434); private final Area lumbridgeBankArea = new Area(3208, 3218, 3209, 3219); public void onStart() { this.track = getExperienceTracker(); track.start(Skill.FISHING); this.s = getSkills(); this.timeBegan = System.currentTimeMillis(); } public void onExit() { } public int onLoop() throws InterruptedException { if (getInventory().isFull()) { drop(); } else if (!getInventory().contains("Small fishing net") && !getInventory().contains("Fly fishing rod")) { getFishingEquipment(); } else if ((s.getDynamic(Skill.FISHING) < 20) && (getInventory().contains("Small fishing net"))) { fishShrimp(); } else if ((s.getDynamic(Skill.FISHING) >= 20) && (getInventory().contains("Fly fishing rod"))) { flyFish(); } else if ((s.getDynamic(Skill.FISHING) < 20) && (!getInventory().contains("Small fishing net"))) { getFishingEquipment(); } else if ((s.getDynamic(Skill.FISHING) >= 20) && (!getInventory().contains("Fly fishing rod"))) { getFishingEquipment(); } return random(500, 550); } public void getFishingEquipment() throws InterruptedException { status = "Getting equipment"; Boolean lowLevelEquipment = false; if (s.getDynamic(Skill.FISHING) < 20) { lowLevelEquipment = true; } if (getWalking().webWalk(Banks.LUMBRIDGE_UPPER)) { Timing.waitCondition(() -> lumbridgeBankArea.contains(myPosition()), 5000); sleep(random(100, 500)); } if (getBank().open()) { if (getBank().depositAll()) { Timing.waitCondition(() -> getInventory().isEmpty(), 5000); } if (lowLevelEquipment == false) { if (getBank().withdraw("Fly fishing rod", 1)) ; Timing.waitCondition(() -> getInventory().contains("Fly fishing rod"), 5000); sleep(random(100, 500)); } else { if (getBank().withdraw("Small fishing net", 1)) ; Timing.waitCondition(() -> getInventory().contains("Fly fishing rod"), 5000); sleep(random(100, 500)); } } if (lowLevelEquipment == false) { if (getBank().withdrawAll("Feather")) { Timing.waitCondition(() -> getInventory().contains("Feather"), 5000); sleep(random(100, 500)); } } if (getBank().close()) { Timing.waitCondition(() -> !getBank().isOpen(), 5000); sleep(random(100, 500)); } } public void drop() throws InterruptedException { status = "Dropping inventory"; if (getInventory().dropAllExcept("Small fishing net", "Fly fishing rod", "Feather")) { Timing.waitCondition(() -> getInventory().onlyContains("Small fishing net", "Fly fishing rod", "Feather"), 5000); sleep(random(100, 500)); } } public void fishShrimp() throws InterruptedException { if (!shrimpArea.contains(myPosition())) { status = "Walking to shrimp area"; getWalking().webWalk(shrimpArea); Timing.waitCondition(() -> shrimpArea.contains(myPosition()), 5000); sleep(random(100, 500)); } else { NPC shrimpSpot = getNpcs().closest(1518); status = "Fishing shrimp"; if (myPlayer().getAnimation() == -1) { if (shrimpSpot != null) { if (shrimpSpot.interact()) { Timing.waitCondition(() -> shrimpSpot == null || getDialogues().isPendingContinuation(), 5000); sleep(random(100, 500)); } } } } } public void flyFish() throws InterruptedException { if (!flyFishingArea.contains(myPosition())) { status = "Walking to fly-fishing area"; getWalking().webWalk(flyFishingArea); Timing.waitCondition(() -> flyFishingArea.contains(myPosition()), 5000); sleep(random(100, 500)); } else { NPC flySpot = getNpcs().closest(1526); status = "Fishing trout/salmon"; if (myPlayer().getAnimation() == -1) { if (flySpot != null) { if (flySpot.interact("Lure")) { Timing.waitCondition(() -> flySpot == null || getDialogues().isPendingContinuation(), 5000); sleep(random(100, 500)); } } } } } public void onPaint(Graphics2D g) { Graphics2D gr = g; int fishingExperience = track.getGainedXPPerHour(Skill.FISHING); int levelsGained = track.getGainedLevels(Skill.FISHING); long timeToLevel = track.getTimeToLevel(Skill.FISHING); timeRan = System.currentTimeMillis() - this.timeBegan; g.setBackground(Color.WHITE); g.drawString("Thanks for using SimpleFisherman by Tommm39", 10, 230); g.drawString("Time Running: " + formatTime(timeRan), 10, 250); g.drawString("Fishing XP/HR: " + fishingExperience, 10, 270); g.drawString("Time to Level: " + formatTime(timeToLevel), 10, 290); g.drawString("Levels Gained: " + levelsGained, 10, 310); g.drawString("Status: " + status, 10, 330); } private String formatTime(long duration) { String formattedTime = ""; 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) { formattedTime = (hours + ":" + minutes + ":" + seconds); } else { formattedTime = (days + ":" + hours + ":" + minutes + ":" + seconds); } return formattedTime; } }
  15. Thanks bro getting the angler outfit took a lot longer than I had hoped but we can make some big gains now
  16. Added some content to day 13, re-arranged goals
  17. I don't think randomising the area makes much sense because someone playing legit would just click the same space or maybe a very tiny randomisation
  18. Hey bro, I'm using the software that you've recommended, do you just loop the same file infinitely or do you use a combination of recordings? I can't figure out how to use the task scheduler thingy
  19. I'm pretty sure people just like to meme about Java, half of them have probably never even used it. If you have such a problem with Java as a programming language pls stop playing a game that was built using Java and browsing a forum whose product is build using Java
×
×
  • Create New...