Jump to content

Teamwork

Members
  • Posts

    17
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by Teamwork

  1. This part could be because you checked "Stop after break" maybe.
  2. We're checkmate, close forums and start self destruct sequence please. Just kidding, it shouldn't change anything for mirror mode because it sends input through the regular client. If it changes anything for Osbot it's probably in a good way since they are making it harder for the competition. I hope Jagex keeps doing this kind of stuff.
  3. I'm running mirror mode, that's why I really want to make sure Osrs is running on the proxy. I'll take a look at wire shark, it might actually help. Thanks!
  4. I don't know a lot about networking but I seem to be getting closer. At first I wanted to see if I could get a quick fix without getting into the technical network stuff, but it seems like I'm going to have to dive a bit deeper. Honestly I was reading the documentations for the commands I'm using and I understand like 10% of what I'm reading. After searching for a while online I've given up on that and I've picked a book on TCP/IP protocol since it seems like Osrs uses TCP and not UDP. Now I just need to understand what I'm typing in the shell when I start Redsocks and the bash script for the iptables setup. Once that's done it'll probably mean I'll also understand what's happening, hopefully. We'll have to see how it goes. Thanks for asking.
  5. I've set up a VM using Virtual Box and Ubuntu 20.04 to try and bot with the new mouse hardware. I've got Osrs installed and tried using Redsocks and Iptables to reroute all apps data through a socks proxy, like I used to with Proxifier on Windows. Unfortunately I'm not sure if it's working because I have no clue how to check. I did an IP test on google and it prints the proxy's IP so I'm pretty sure https/http rerouting is working. None of the proxies I bought have a dashboard that would let me know if the proxy has data passing through, so I can't check there. There also don't seem to be any options in game to find the last IP I logged in with. Right now my plan is to learn what the commands ss and iptables do to track where the packets go/come from. I've used ss | grep 4359 while logged in, with and without the Redsocks enabled, to see if it changed anything and both gave pretty much the same result, which is that there's a connection, but no info if the proxy is used in the route. I used 4359 because I saw a post on reddit that said Osrs used port 43594 and 43595 and this seem to be correct. I'll update when/if I find a solution but if someone has any idea to try, I'll try anything. Thanks Also I'm not sure if this is the right section for this post, but I couldn't think of a better one.
  6. Well it looks like I won't bother spending more time on this then since you two already did the research. I'll work on something else that'll be more efficient. Thanks guys.
  7. Damn I didn't know that. I'll have to check it out and do some testing. Exactly what I'm thinking. I'm game theorizing here but I'm guessing that from all the data jagex can possibly gather, they can't keep it all otherwise they would need massive datacenters just for that. So that means they might target certain accounts with more scrutiny. It might just be me also, I can't imagine using classic fixed layout for extended periods of time as a real player.
  8. Hello. If we all use fixed classic layout, aren't we making it easier for jagex to detect bots? I know it's not the most important factor, but surely they use this information in their anti cheat system. What do you guys think?
  9. Thanks I'll keep that in mind, it could be a potential fix for some things later on haha.
  10. Wow I didn't know that debugger existed thanks a lot. I tried 23 also and it only printed "test", but the debugger listed the action as "Make Gold necklace" and not just "Make" like I initially thought so changing this fixed it. I'll figure something so I don't have to hard code all the values though. Thanks
  11. Hello guys, I'm currently trying to code a script to craft gold necklace at a furnace and need some help. The problem is that my script can't seem to get a hold of the gold necklace widget. Here's the code. private int goldBarID = 2357; private int goldNecklaceID = 1654; RS2Widget furnaceCraftWidget = getWidgets().singleFilter(446 , rs2Widget -> rs2Widget != null && rs2Widget.getItemId() == goldNecklaceID); if (furnaceCraftWidget != null) { log("test"); } if (furnaceCraftWidget != null && furnaceCraftWidget.interact("Make")) { log("it works"); new ConditionalSleep(90000) { @Override public boolean condition() { return !inventory.contains(goldBarID) || getDialogues().isPendingContinuation(); } }.sleep(); } At first I thought it might be the interact method that didn't work so I added the first test to check if I could get a hold of any widget at all but still nothing prints to the logger. The other thing I tried is using this instead of the singleFilter function RS2Widget furnaceCraftWidget = getWidgets().get(446, 22); But even by using childID i couldn't get a hold of the right widget. Only "test" printed in the logger, but the script didn't interact to craft gold necklaces. When I tried this I also got this error with many more all related to awt and swing which I am not using. Unless it's the in game interface that is using awt and swing? ERROR][06/02 05:19:55 PM]: Uncaught exception! java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location I tried searching on the forum and couldn't find anything to understand what I'm doing wrong. Thanks for the help guys.
  12. Wow that's very good stuff thanks for the info, it took me quite a while to understand it all but it makes a whole lot of sense. I didn't know that the Config instance we retrieved with method provider contained both Varplayer and Varbits. I was looking at this post and the last answer talked about how he got his info from the cache so I'll try to get the lsb, msb and config id from there.
  13. I've been wanting to create a questing script recently so I spent some time looking at the Configs class from the api to understand how I can get access to quest state and such. This led me down a rabbit hole of Varbits and Varplayers and I can't seem to understand how we can access a Varbit from the API. If I use configs.get(29) then this should return an int with the state of the quest cook's assistant because 29 is the Varplayer for cook's assistant's current state. But some quests use a Varbit instead of Varplayer, for example if I look at runelite's github or the wiki they both list Varbit 217 as the state of the quest Ghosts Ahoy. So does that mean that using configs.get(217) should return the state of Ghosts Ahoy or it just won't work because the get method only works for Varplayer IDs?(I haven't tested this) If none of the Varplayer and Varbit had the same ID I wouldn't be confused but it turns out Varbit 29 stores the type of rune in the rune pouch and some other IDs overlap as well. So I guess my question is, how do i access Varbit? Also I didn't post link to the github or the wiki because I wasn't sure if it was against forum rules. But i can add them if it helps. Thanks for the help
  14. Yeah I thought about looping through the array and getting a minX, maxX, minY, maxY and creating 2 Positions to use the constructor you pointed out. It was better than letting it wander off for sure, but It was a sort of last resort solution. That's so much more efficient and clean thanks. I always forget that a lot of methods return true when they are able to successfully execute. Ahhh makes sense, so since I'm creating the fires in a row from east to west and then going south or north and doing the same thing again it probably ends up looking like a snake shape that doesn't have most of the positions I thought it did. I'll use the method you made, it looks really good. Thanks a lot I'm not that good of a programmer but I'm trying to understand what's happening in your code, correct me if I'm wrong. The method signature you're using is the one with Filter<E> and then you pass an anonymous function to filter through the results right? I'm looking at the Filter interface in the API right now and honestly I don't understand much hahaha.
  15. Hello first post on the forum! I've started writing a firemaking/woodcutting script where I chop wood, then light the logs and pick up the ashes. Whenever I light a log I add my current position to an arraylist of positions called positionsOfFiresMade so that I can track where I should look for ashes instead of wandering everywhere or waiting indefinitely for other players fires to burn. Here's the part of the code where I'm in the firemaking state and I don't have any more logs to burn. if (inventory.isFull()) { switchToBanking(); } else { //transform the arraylist into an array final Position[] firePositionsAsArray = positionsOfFiresMade.toArray(new Position[positionsOfFiresMade.size()]); //look for ashes where we lit fires up GroundItem ashes = getGroundItems().closest(new Area(firePositionsAsArray), "Ashes"); if (ashes != null) { ashes.interact("Take"); new ConditionalSleep(3000) { @Override public boolean condition() { return (!ashes.exists()); } }.sleep(); } //not currently any ashes to pick up but check for any fires left else if (objects.closest(new Area(firePositionsAsArray), "Fire") != null) { new ConditionalSleep(5000) { @Override public boolean condition() { return (getGroundItems().closest(new Area(firePositionsAsArray),"Ashes") != null); } }.sleep(); } //if no fires close else { //bank the ashes if (inventory.contains("Ashes")) { switchToBanking(); } else { switchToWoodCutting(); } } } Sometimes there are ashes on the ground and the script doesn't seem to notice because he doesn't pick them up. When I change getGroundItems().closest(new Area(firePositionsAsArray), "Ashes") to getGroundItems().closest("Ashes") then it ends up picking the ashes except that the script wanders off since it doesn't have a restricted area to look for ashes. I'm guessing the problem comes from the way I'm using an array of position to create an area. But in the API documentation it says public Area(Position[] positions) Constructs a polygonal area using each position as a point in the polygon. so I'm not certain of what it is that I'm doing wrong. If you have any advice on how I can fix this or improve in general don't hesitate. Thanks
×
×
  • Create New...