Jump to content

Hawk

Lifetime Sponsor
  • Posts

    28
  • Joined

  • Last visited

  • Feedback

    0%

About Hawk

Profile Information

  • Gender
    Male

Recent Profile Visitors

1087 profile views

Hawk's Achievements

Bronze Poster

Bronze Poster (2/10)

8

Reputation

  1. The proper way to compare strings is with .equals() if(!"LOADING".equals(state) && !"HOPPING".equals(state)) { You could also just compare directly to the enum Client.GameState state = getClient().getGameState(); if(!Client.GameState.LOADING.equals(state) && !Client.GameState.HOPPING.equals(state)) { There is a conditional sleep class: https://osbot.org/api/org/osbot/rs07/utility/ConditionalSleep2.html
  2. This is actually not human-like behavior. I was doing testing recently on this, and a human does occasionally move the mouse up to a few pixels if they're clicking on the same spot.
  3. I think the only way botting is ever going to be successful again is to leave no stone unturned. Mouse movement is a very easy way to detect a human from a bot, so it's better to assume they do consider it to some extent, rather than not. Even all parts of a mouse click event should be considered. What's the average ms it takes to enter the target area and press down the mouse? To release the mouse? What's the chance of dragging the mouse after a mouse press before the release? What's the mean pixel distance of a click-drag? Are human clicks actually normally distributed within rectangle bounds? These are parts of human nuance that are easy to detect for that I'd bet nobody implements. The mouse is just one part though. The biggest factor is bot behavior. Like you said though, there's just no incentive for anyone who puts in the time and money to solve these problems to give them to the public. The only way it would get into the public is if they need something from the public, such as their human data. One way to test scripts for detectability would be to run it through some of the bot detection methods from research papers, but that's obviously not going to be exactly like RS's detection methods. It would give you an idea though. Injection mode is 100% detectable. You can test this yourself making F2P accounts that only ever login through injection mode and not even botting. I don't think this is really news, but rarely ever anyone talks about it.
  4. It's not. You can test this yourself by making a new account during jagex hours and only ever logging in using stealth injection. Make the account, do tutorial island, go kill chickens for 15 min, and then log out. You'll be banned. Edit: everything is done legit by hand and not using a proxy
  5. It's possible chat interaction is a metric they use for bot classification, but definitely not not the only metric they're looking at. If it is one, I would probably say it's one of the least important metrics since plenty of legit players go hours or days without ever talking to anyone. It entirely depends on what activity you're doing to train magic too. Are you splashing which involves very few clicks? Alching? Killing a certain monster in an area repeatedly? Or some other method that requires a high APM? Also, just because it's a free script doesn't necessarily mean you will get banned faster. I'd imagine there are some free scripts out there that are decent and never used.
  6. How long does it take for the api site to reflect these changes or is it just infrequently updated? Also, it would be nice to have a dedicated thread for cli options. The one from 2017 is obviously outdated and the only way to figure out what's new is to go through every client release thread.
  7. If I understand your problem correctly you want to do something like blabla someStringVariable in one drawString call? I don't think it's possible to do it in one drawString call, but this works, taken from https://stackoverflow.com/questions/23591034/how-to-use-multiple-colors-when-using-drawstring-in-java-awt-graphics public class Test extends Script { private static final String s = "<html>all your <font color=\"#ffd700\">base</font> belong to us</html>"; private JLabel renderer = new JLabel(s); private CellRendererPane crp = new CellRendererPane(); private Dimension dim = renderer.getPreferredSize(); @Override public int onLoop() throws InterruptedException { return 10000; } @Override public void onPaint(Graphics2D g) { renderer.setForeground(Color.BLUE); crp.paintComponent(g, renderer, bot.getBotPanel(), 10, 10, dim.width, dim.height); } }
  8. I would recommend starting with a Java book to learn the basics of Java first. The method formatTime takes one argument of type long. The method getTimeToLevel() returns a long value. So to get the output that you're wanting, you need to pass the long value to the format method. formatTime(getExperienceTracker().getTimeToLevel(Skill.DEFENCE)) formatTime returns a String value which is a required argument of the drawString() method in the Graphics2D class.
  9. You need to pass getExperienceTracker().getTimeToLevel(Skill.DEFENCE) to the formatTime method.
  10. What is an example of your input? It prints 02:00:00 for an input of 7_200_000 which is what you want, right?
  11. The new UI looks nice, but can there please be a cli option added to start the client with the side bar toggled to collapsed, or even better, if the client just starts in the same state as a previously run client? The logger being at the bottom is also kind of annoying and just takes up screen real estate, although I can see its purpose of being there in regard to script users being able to easily identify it to save the logger info to send to the scripter. With respect to the scripter, it would be nice to be able to pop out the logger to be able to see more than 7 lines of text at runtime. Great work though.
  12. I don't really know the full context of your botting habits, so it's hard to say what a good solution is; I don't even fully understand yet what a "good" solution is. But I'm 99% sure sleeps like that are bad if you wanted to create something more than an assistance tool. From my own experience with assistance tools, I've been banned for simply clicking a widget with a delay interval upon it appearing. This was on multiple accounts though, not just one. If you're only going to be botting for a total of 10-20 hours total over the course of a few weeks, the botting is paused frequently to perform manual actions such as opening the pouches, and you also do other stuff manually in the game, then you're probably fine without any sleeps. However, if you were to add a sleep like that and you were to bot for 50+ hours in a row, you're 100% going to get banned. Especially if you wanted to bot thieving on multiple accounts. With a 26/300 chance for a 3 second sleep, you're only modifying the average clicks per minute from 240 to 228(?). There are a lot of nuances to human behavior. You aren't doing anything beyond that to create a unique behavior profile. Every time you go to thieve you're using the exact same profile. I guess a question that needs to be answered is how similar does a human behave between different sessions? Is it sufficient to create a model of multiple sessions from the same human and use a deviation of that mean for each account? I suppose that would work for a few accounts, but if you're botting 10+ accounts, they're still going to have the same behavior clusters based off of that one human's data. I think the actual challenge is in generating a unique human-like profile for each account, you ideally wouldn't want it based off of one. I think that may be what the OSB team is trying to do with their AI implementations coming sometime next year, but I'm not entirely sure what their approach entails.
  13. It's because the closed trapdoor is not the same object as the open trapdoor. After you open the trapdoor and try to call "Climb-down" it does nothing because the only action that trapdoor object has is "Open".
  14. When you were grading papers did you tap exactly every 100-400ms? Did you ever not tap for a few seconds from time to time, for example, when putting down one paper and picking up another? Have you ever been distracted and end up afking for 5 min and logging out? Clicking at a random interval of 100-400ms consistently over a long period of time with no deviation is not human-like behavior.
  15. This seems fake and just an advertisement for your other thread.
×
×
  • Create New...