Jump to content

Alakazizam

Members
  • Posts

    185
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by Alakazizam

  1. I like to use the on message to start the stun because it's ignored by any sleeps that may be taking place on the onLoop. I use the vert count as the sleep condition because the amount of time that's passed before that point will change depending on if the coin pouch needs to be open or if food is being eaten. I also wasn't 100% how different any vert change differences would be between wearing different gear so I didn't want to use that to trigger the stun.
  2. So what I do for this is I have an onMessage set a boolean public void onMessage(Message m) throws InterruptedException { if(m.getMessage().contains("You fail")) { isStunned = true; } } On the top of my onLoop I have this if(isStunned) { log("I am stunned"); int myVertCount = myPlayer().getModel().getVerticesCount(); if (inventory.contains("Coin pouch")) { inventory.getItem("Coin pouch").interact("Open-all"); } else if (needsToEat()) { if (hasFood()) { eatFood(); } } new ConditionalSleep(5_000) {@Override public boolean condition() {return myPlayer().getModel().getVerticesCount() < myVertCount;}}.sleep(); log("I am no longer stunned"); myTarget = null; isStunned = false; } It works really well regardless of what you might be wielding as far as I've been able to tell.
  3. Find an object that will always be there and get its position Then do some math to set the values of the area you need. myTipJarSpace = getObjects().closest("Tip jar space"); if (myTipJarSpace != null) { int larderAreaX1 = myTipJarSpace.getX() + 3; int larderAreaY1 = myTipJarSpace.getY(); int larderAreaX2 = myTipJarSpace.getX() + 4; int larderAreaY2 = myTipJarSpace.getY() - 1; Area buildLarderArea = new Area(larderAreaX1, larderAreaY1, larderAreaX2, larderAreaY2).setPlane(myPosition().getZ()); I do this in a construction script to set the area I want my larder to be when building the kitchen because I have to rotate the room to get the larder where I want it to be.
  4. That's good to know, but I don't think I can stack them up like this in this case because I only want it to go with the mahogany option if there are mahogany logs in inventory, otherwise I'd want it to use the logs the player has in inventory on the butler. This script just takes the highest tear logs from the bank and brings them over for planks to be made, you don't manually set what you'll be making or anything like that so it could finish up teaks and then start on oaks. But like I said, I never knew you could do that, so good to know.
  5. Will it not hang up and throw a null pointer error if I try to set myWid to a widget that might not be there by putting it above that null check? I'll look into those script rules though, I'm still fairly nooby lol
  6. I have an option to select 'Sawmill' for sending logs to the sawmill with the POH butler. But this also selects options like 'Take to sawmill: 12 x Teak planks' because it contains 'sawmill' in the text I pretty much want it to only select that option if it says 'Take to sawmill: 26 x Teak planks' otherwise I'd want it to use the logs on the butler and then tell him to take 26
  7. Yeah that's what I wound up doing. Working on a plank script and sometimes I'm just trying to get the logs to the sawmill so having an option 'Sawmill' will select to send to the sawmill of the amount from the previous trip which would set it to less than a full amount after restocking. if(dialogues.isPendingOption()){ if(widgets.get(219, 1, 1) != null && widgets.get(219, 1, 1).isVisible()){ RS2Widget myWid = widgets.get(219, 1, 1); if(myWid.getMessage().equals("Take to sawmill: 26 x Mahogany logs")){ if(inventory.contains("Mahogany logs")) { if (dialogues.selectOption("Take to sawmill: 26 x Mahogany logs")) {} } else { useLogsOnButler(); } } else if(myWid.getMessage().equals("Take to sawmill: 26 x Teak logs")){ if(inventory.contains("Teak logs")) { if (dialogues.selectOption("Take to sawmill: 26 x Teak logs")) {} } else { useLogsOnButler(); } } } //etc. This is pretty much what I have going on now.
  8. So I typically just do something along the lines of if(dialogues.isPendingOption()){ if(dialogues.selectOption("This")){} else if(dialogues.selectOption("That")){} else if(dialogues.selectOption("The other")){} } I'm running into the issue where there's an option that contains the word "That" but is not only the word "That" but it is still trying to select it even though it's not what I need selected right here. Is there a way to make sure the dialogue option will only be selected if it contains ALL of what is in the string in the code?
  9. Can anyone direct me to these discord servers? yes
  10. Just curious of what the market is like right now if there even still is one, Might be looking to buy soon.
  11. Yeah I woke up to all my bots just standing there lol. Something in the runescape update this morning broke everything, the OSBot 2.7.24 fixed everything for me
  12. if something triggers a conditional sleep with a boolean being true as a wake condition, will an onMessage event be able to change that boolean to stop that conditional sleep? Edit: Answered my own question. Yes the onMessage events will still fire off during a conditional break.
  13. Yeah I got it sorted how I want, I was hoping there'd be a lazy way about it lol
  14. Working on a slayer script, each task sets an array of any needed items for that specific task. I'm trying to check that if(inventory.containsAll("Enchanted gem", myTeleItem, myFood, Arrays.toString(myNeededItemsNames)) && inventory.onlyContains("Enchanted gem", myTeleItem, myFood, Arrays.toString(myNeededItemsNames))){ //do stuff } I get that this isn't working because the Arrays.toString is putting out a single string and its looking for an item named "this, this, and that", but is there a simple way to go about what I'm trying to do here? Edit: as of now I'm just adding the other items to all tasks needed items array, but if someone knows how to go about what I was trying to do, I'd appreciate the information.
  15. Sorry to comment on an older post. Coming back from a long hiatus and trying to wrap my head around what invokes are. I think I get it for the most part, but could they be used to bypass dialogue options for things like buying beer and stuff like that?
  16. I was trying to do something kind of like that a while back and I got some advice that was a bit over my head. Might help you out if you know more about this sort of thing though.
  17. I made 10 accounts late last night and 5 just now. It works the same it always has as far as I can tell?
  18. I use stealth for everything. I'd only use mirror mode if I were to try to bot tutorial island but I've had next to no luck doing that either way. If I'm not doing anything like quests or something I use low cpu mode and disable rendering. I always use 'new mouse'. The reason I say mirror mode for tutorial island is because I've done it by hand on a stealth client only using it to log in and the account was still banned so I think they have some sort of check on that. But I'm not sure why they'd only have it check on tutorial island so that may also just be some tinfoil hat stuff on my end.
  19. Yeah F2P can be hard. I don't really want to give up my personal spots either lol. But look for something that's out of the way. I wouldn't train anywhere that would be considered 'profitable' in f2p unless its for a suicide farm.
  20. What you are botting and how you bot it goes a long way too. I try to avoid being where other players will be as much as possible. I don't have more than 2 accounts logged into the same proxy at one time. I typically go for very short play time and break cycles but that doesn't work with certain things. F2P is supposedly harder to get away with but right now all I'm doing is F2P combat training. I've tried a handful of places and I've found that there are spots I've pretty much run flawlessly 12 hours a day per account and other spots seems like almost an insta-ban with practically the same script just changing up the kill areas and npcs I'm killing.
  21. I've only ever done it with cooking and it was off anchovy pizzas
  22. Yeah I use the proxy I intend to play on when creating the accounts on firefox. I used to use a multibox program that use to work well but now I can't even get it to load for creating the accounts. Most would make it but a handful would get banned and I'd just repeat until I had the amount of bots I was trying to get. But lately I've been using the official client with Sandboxie and Proxifier to make my accounts. There are a couple guides on how to do that on the forums if you just google 'sandboxie proxifier osbot' it should come right up. I use made up emails that look like they would be real.
  23. I've have about 80 accounts training melee in a pretty discrete area in F2p for about a month now and they're all fine but the xp is pretty slow. I found another discrete area with higher xp and made a script similar to my other one and started testing 1 account at a time. 1st was banned in 24 hours, 2nd made it 24 hours, 3rd made it a whole 6 hours lol. Starting to think the amount of xp earned in a given time might be a sort of flag in f2p.
×
×
  • Create New...