Jump to content

thelegacy0

Members
  • Posts

    52
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by thelegacy0

  1. Works perfectly after this update. I've done probably 4k alchs since it was updated, my lastest being a 2 hour stretch and it stopped after running out of alchs. Next time I'll try to get a screeny, but I'm not rich enough to stack up 10k alchs ;P
  2. Strip it to the very basics and see if that works, then work on adding if visible and attackable and stuff. Like, this is all my fighter has: int fighting() { if(!myPlayer().isUnderAttack()) { NPC npc = getNpcs().closest("Guard"); if(npc.exists()) //add loop for finding attackable ones npc.interact("Attack"); else this.stop(); } return 1000; } Start with just attacking, then work on finding out if they're attackable and stuff. Use enums, don't having everything running in your onLoop(). My fighter has eating, teleporting, and attacking and is 75 lines long, finished
  3. thelegacy0

    OSBot 1.8.1-6

    I know, right? I even added a TL;DR :P
  4. thelegacy0

    OSBot 1.8.1-6

    Just say "I use a third-party client to track my xp/hour. I am a hardcore skiller (or if you're doing combat, just say you like to know how long to the next level, etc), and physically seeing my numbers is such motivation for me. If this is a problem, I will receive punishment but don't be too harsh on me, as I am just ambitious!" If they come at you with physical evidence of botting, oops! Otherwise, how're they to tell you're lying? Jagex is pretty lenient if you're "honest". One day I noticed my membership renewed when I didn't want to. I was over 24 hours into my "next month" of my subscription. I messaged them, said this isn't what I wanted, and they cancelled my membership and refunded the monthly fee. They're nice to their honest, dedicated player, because they don't want to lose your business. TL;DR - My client is for XP tracking, not botting, release your own tracker or leave me alone
  5. thelegacy0

    OSBot 1.8.1-6

    Have you guys considered adding a timer for being stuck in a random, so you log out and close the script?
  6. I was looking on the SDN, I guess I should clarify why there aren't any there. Yeah local scripts are probably a dime a dozen with these. Is OSBot just not pushing them or something?
  7. Auto clicker would definitely get you banned due to the camera never moving, and never having random delays. The sleep you use depends on a few other things, and the time I'm using seems universally perfect. It might skip here and there, which is good, because that's what you want. But anyway, alching stuff is really easy to write because it's just left click. The antiban just needs to include: camera movement, random clicks, sometimes skip an alch (like wait 5 seconds), and sometimes look away from the screen, so anywhere from 10 to 120 seconds of inactivity. Not the best exp/hr (I'm getting over 1k alchs/hr with random 3-14 second pauses maybe once per couple minutes) but it's still good for if you don't want to do it. To me, it just seems too easy to not have. That's why I want feedback, to see if I'm overlooking something.
  8. On the SDN, Why don't we have one? I understand that left clicking with subtle camera movements probably has a high ban rate, but seriously, it's not hard to write something up for human attention span... Does anyone have any legitimate reasons for it? I've alched 1k of 4k rune arrows with a script I whipped up... I'll keep toying with the human-like left-clicking powers every now and again, but I don't see why we don't have such a simple script.
  9. if(client.getMyPlayer().isAnimating()) { if(smokingRock()) { //avoid that rock } } ^ In your loop public boolean smokingRock() { RS2Object rock1 = closestObject(15); if(rock1.getModel().getHeight() > 75) { //I THINK they start at 77... Change to 80 if you want if(client.getMyPlayer().isFacing((Character<?>) rock1)) { return true; } } return false; } P.S. in your code you'd want to check for the rock while animating... You have to rewrite your if statements, so that it's if(not animating) click rock, else if(is animating) check for smoking rock. Know what I mean? Edit: if a cast doesn't work, you could try the interactWith boolean. Ents are easier cause they're npcs
  10. There's a tutorial on it http://osbot.org/forum/topic/44536-smoking-rock-detection/?hl=smoking+rock Edit: tutorial is for while you're selecting what to mine. Might wanna change that/add that for when you're already mining.
  11. Did you check the script's forum post and make sure it's up to date? I haven't died anywhere from 30/30/1 to 67/63/40
  12. thelegacy0

    OSBot 1.8.1-6

    Twice now I've gotten stuck in the pillar random.. It picks all 10 correctly, but doesn't leave unless I move the camera to the exit.
  13. thelegacy0

    v1.7.98

    This, please. I'm going to start adding things like this to my scripts that I want running for long periods of time. I think this got me killed yesterday =\ I noticed myself in Lumbridge, but the log showed several SUCCESSFUL randoms, so a not-recognized would do the trick.
  14. thelegacy0

    v1.7.98

    1) 1.7.98 2) [ERROR][04/06/14 12:48:45 AM]: Error on executing script worker! java.lang.NullPointerException at org.osbot.script.rs2.ui.Bank.getItems(bi:38) at org.osbot.script.rs2.ui.Bank.getAmount(bi:83) 3) When checking bank for item, script crashes. Take out the getBank.getAmount(int) line and the script runs fine. This is all I took out - if(client.getBank().getAmount(#)> #) { And no, client.getBank().getItemForName(String).getAmount(int) does not work.
  15. If you're saying it's an object that doesn't change, then checking the object name/ID would be rather useless. However, in the case of mining, I believe you receive a message saying the ore has run out? It's kinda nooby, but using onMessage(String message) can cover you until you figure this out, so you don't stagnate in your script.
  16. Thank you guys, adding (this) to my main class and this.s = s; plus s.client did the trick! Divinity, how do you get your pictures that size? Mine come up microscopic
  17. I'm using multiple classes and I'm struggle with every class using the client and player. Things like client.getMyPlayer() Return null in anything besides my one class. How can I make it so both classes after access to stuff like client.getMyPlayer() and client.moveCameraToEntinty() Without having to write method(Player p) p.getInfo(); Both classes import and extend script. I just want both classes to be able to use client.getMyPlayer(); Answer: see below TWO posts
  18. You're very welcome, keep us posted on your script!
  19. I meant System.out.println(i) literally prints out "1", "2", "3", or "4"
  20. Bank booths are objects. RS2Object bankBooth = closestObjectForName("Bank Booth"); client.moveCameraToEntity(bankBooth); sleep(random(300,600)); bankBooth.interact("Bank"); sleep(random(500,800)); If you want to use an NPC banker, just do NPC and closestNPCForName("Banker"); ALSO When you write a switch statement case FISHING: case WALKING_TO_FISH_AREA: case DOING_NOTHING: Will all do the same thing, it's the same as saying case FISHING && WALKING etc, so if you're trying to switch states, make sure you have break; in there so you define what state does what. Also, in your onLoop(), you want to outline when you're in what state: if(fullInventory()) { if(inBank()) { state = bank } else { state = walking; } } else { if(inFishingArea()) { state = fishing; } else { state = walking; } } I'm so noob, keep editing my post.. case WALKING_TO_BANK: return walkToBank(); break; int walkToBank() { if(BANK_AREA.contains(player)){ NPC bankbooth = closestNPC(BANK_BOOTH_ID); if(bank.isOpen()){ bank.depositAllExcept(303); whatAmIDoing = I_AM.DOING_NOTHING; }else{ if(bankbooth != null){ if(bankbooth.isVisible()){ bankbooth.interact("Bank"); sleep(random(700,800)); }else{ client.moveCameraToEntity(bankbooth); } } } } return 1000; }
  21. Back in 07/08, I used willow longs to get me into the 80s, and I simply sold them to counteract the costs. Back then, you could get willows for 20 ea (like now, but they also sometimes dropped to 10ea) and the shop buys them for a minimum of 16 each, so I sold them to minimize my defecit. You can put them in the bottom row, and hover over "Sell 10" (sell 50 came out around 08 era, best thing ever) and so you just right/left click without moving the mouse, easily sell thousands per minute. So in all I'd say it's pretty worth it, for the few minutes it takes!
  22. Hello everyone. I'm interested in making a script that gets two things done at once, with great exp/hr and even some profit. This is my first script, but my goal is to make something that flawlessly cuts willows, then fletches them into longbows (u), and then sells them to a general store, all while tracking your exp and gold. My idea is to have the script go a little like this: You select when you want to switch. Ex: Cut ~1k willows, fletch for ~30 minutes, sell the longbows (~500 willows/hr on a slow day, ~1500 longbows per hour, so this scenario has the rest being saved for whatever) and then head back to Draynor to start over You select 'Use best axe' or 'Use best axe for level', 'equip axe' if you want/can You select if you want, to teleport to lumbridge general or just walk there (time saver) And finally, when to end. Ex: after 5 hours, after 3 cycles, after you've made 16k (1k bows), or even if you run out of teleports What I have so far: A cutter/banker that I've run for up to four hours consecutively, no problems A fletcher that consistently gets 1500 per hour, and I've fletched over 5k bows with it A script that trades a shop keeper, sells the bows, and leaves Both skilling scripts have some antiban (camera movements, random varations in between clicking/walking/etc, and a random skill hover) but I hope to implement a LOT more, as I wish to run this until I get 99 What I need help with: Weaving the scripts together. I'm going to get some practice on multiple classes soon, but any help is very welcome. NotoriousPP's tutorial showed me packages, Divinity/Pandemic helped me make them all use the current client instance Making things neat, efficient, easy to read/update I'm constantly going over things, making sure there's no redundancy Switching between tasks. I haven't attempted it yet, so maybe I'll figure it out myself. Probably after I learn multiple classes. I've got a pretty good idea on it - woodcutting works, tonight I will attempt to switch over to fletching. The skeleton is set up already. Walking long distances. Is there an easier way than making rectangles from Draynor to Lumbridge? Closing the script on logout. So far, it logs out then logs back in because of the randomEventHandler in the client... Then this process loops until I stop the script, even though my code is 'logoutTab.logout(); stop();' A better paint. I can do simple stuff... Like colored/bordered squares A UI on start. I never got into using straight Java to make pop up boxes and stuff, so I'll need to learn how OSBot handles those. Adding up the gold. I could easily just get the total of the gold when I leave the shop, after the bows are all gone, but is that the most efficient way to do it? Hide/show paint, for client-releated breaks I think that's all.. I will constantly update this page with things I've done, and with anything else I need. Let me know what you guys think, what I'm stupid for doing, or what can be expanded on! As the days go by, I'll post some pictures of what my current scripts are capable of. I fletched what I had, but I'm going to try to get a proggy of each with 2-3k+ for proof of consistency This includes 2 15-20 minute breaks Took a picture with my phone, forgot to take a screenshot *facedesk* numbers were: XP (HR): 238410 36078 Logs (HR): 3517 532 Time: 6:36:29 Level: 74 (+3) I'll try to get another 6+ hour one in soon, but 2 days in a row is sketchy. I do have 5k bows to fletch though
  23. I can't help much but think this should work... Go into your client settings, and turn on Object Info. This will tell you that your set trap is an object (so closestObjectForName, since you want text handled) and if the trap fails, you'll see that it's also an object. I noticed that while 'laying' the trap, the trap is an item until fully set, so a failed trap might be the same thing, but that's something you'll find out. For dropping unwanted items, create an array with the items you want to drop (ints or names) and after you collect a trap, or whenever, cycle through this array. If an item is in the array, then: String dropMe = itemsToDrop[i]; client.getInventory().interactWithName(dropMe, "Drop"); sleep(random(500, 1000); Hope this helps! Would love to see a low level hunter script that supports multiple traps
  24. System.out.println(i); Should just print out 1-4 (0-3?)... I'm not all to familiar with Position, but look at this - String[] Salutations = {"Hi", "Hello", "Hey"}; public void onMyCommand() { Random r = newRandom(); int pickMe = r.random(Salutations.size()-1); //Whatever the random integer method is, ranging from 0 to 1 less than the max array value //Arrays start at 0 System.out.println(Salutations[pickMe]+" there, digdig18."); } You take a random number, that wouldn't exceed the value of your array, and then select that position in the array.
  25. I do believe that is what I'm looking for, thank you!
×
×
  • Create New...