dmmslaver Posted April 24, 2017 Share Posted April 24, 2017 (edited) This is something scripters should be looking to prevent, in all of their scripts. If you don't handle the mouse entering the screen in any defined way and just call something like walking.webWalk (which is what the image is) then your mouse will always enter the screen at the top left corner pixel. Personally, this seems like it would HIGHLY detectable, because I doubt a player would ever enter the mouse at the top left corner pixel.. much less every single time before playing hardcore for hours. The perfectly straight slope of the mouse movements is also concerning to me, but that's a topic for another time. How do you guys handle mouse entering the game screen? Screenshot of a popular VIP script, entering the gamescreen at the top left corner pixel Edited April 24, 2017 by dmmslaver Quote Link to comment Share on other sites More sharing options...
Container Posted April 24, 2017 Share Posted April 24, 2017 Just now, dmmslaver said: This is something scripters should be looking to prevent, in all of their scripts. If you don't handle the mouse entering the screen in any defined way and just call something like walking.webWalk (which is what the image is) then your mouse will always enter the screen at (0, 0). Personally, this seems like it would HIGHLY detectable, because I doubt a player would ever enter the mouse at exactly 0, 0.. much less every single time before playing hardcore for hours. The perfectly straight slope of the mouse movements is also concerning to me, but that's a topic for another time. How do you guys handle mouse entering the game screen? How do you know Jagex tracks the mouse? Quote Link to comment Share on other sites More sharing options...
dmmslaver Posted April 24, 2017 Author Share Posted April 24, 2017 (edited) 12 minutes ago, Container said: How do you know Jagex tracks the mouse? Because the anti-idle timer is based on mouse movement? Various other reasons, such as the client recording mouse clicks, and the fact that the OSBot admins incorporated a mouse movement algo instead of simply clicking the mouse at x, y? Do you have information to the contrary? Maybe they don't. But I've fixed this issue in my own scripts, by making it enter at a random position at the edge of the screen. Peace of mind, very few lines of code. If they do track mouse movements, and you have a line all the way across the screen with a consistent slope, I wouldn't doubt if it was detected immediately after the first mouse movement ingame. Edited April 24, 2017 by dmmslaver Quote Link to comment Share on other sites More sharing options...
Final Posted April 24, 2017 Share Posted April 24, 2017 Just now, dmmslaver said: Because the anti-idle timer is based on mouse movement? No it's not. Quote Link to comment Share on other sites More sharing options...
Container Posted April 24, 2017 Share Posted April 24, 2017 (edited) 4 minutes ago, dmmslaver said: If they do track mouse movements, and you have a line all the way across the screen with a consistent slope, I wouldn't doubt if it was detected immediately after the first mouse movement ingame. Then every script, private or not, would get you banned after 30 seconds of use. Edited April 24, 2017 by Container Quote Link to comment Share on other sites More sharing options...
dmmslaver Posted April 24, 2017 Author Share Posted April 24, 2017 (edited) 1 minute ago, Container said: Then every script, private or not, would get you banned after 30 seconds of use. Bans are always delayed to prevent knowing the cause of bans. Besides, my private scripts use touch screen emulation, so no it would not affect all scripts. 5 minutes ago, Final said: No it's not. I have 90 accounts online right now, bypassing the 24H trade restriction. The script does absolutely nothing but move the mouse, and the bots stay logged in for 6H at a time. Explain? Edited April 24, 2017 by dmmslaver Quote Link to comment Share on other sites More sharing options...
Container Posted April 24, 2017 Share Posted April 24, 2017 2 minutes ago, dmmslaver said: Bans are always delayed to prevent knowing the cause of bans. Besides, my private scripts use touch screen emulation, so no it would not affect all scripts. Bans are not always delayed. Scripts that uses webWalk() or whatever you're talking about in your first post.* Quote Link to comment Share on other sites More sharing options...
dmmslaver Posted April 24, 2017 Author Share Posted April 24, 2017 5 minutes ago, Container said: Bans are not always delayed. Scripts that uses webWalk() or whatever you're talking about in your first post.* Can you please give me the code that gets you banned instantly? I wasn't aware it existed. It's possible to use web walking without using osbot mouse ;) but they made it very hard. Quote Link to comment Share on other sites More sharing options...
Juggles Posted April 24, 2017 Share Posted April 24, 2017 What's your snippet to enter screen from random positions Quote Link to comment Share on other sites More sharing options...
Diclonius Posted April 24, 2017 Share Posted April 24, 2017 I'm 90% sure that this isn't an issue. This because the mouse trail painter works by recording the last 5 or so mouse positions and then drawing a line between them. When you move the mouse off screen the position becomes invalid and so it defaults to 0,0. This means when the mouse moved back onto the screen, the painter thinks that the last few positions of the mouse were at 0,0. 1 Quote Link to comment Share on other sites More sharing options...
Jesse Posted April 25, 2017 Share Posted April 25, 2017 (edited) 7 hours ago, Container said: How do you know Jagex tracks the mouse? if (MovedToSort.buttonId != 0) { long l = ((Class89.lastClickTime - MovedToSort.lastlastClickTime) / 50L); int i_31_ = Class33.lastClickX; int i_32_ = Class37_Sub13.lastClickY; if (i_31_ < 0) { i_31_ = 0; } else if (i_31_ > 764) { i_31_ = 764; } if (i_32_ < 0) { i_32_ = 0; } else if (i_32_ > 502) { i_32_ = 502; } if (l > 4095L) { l = 4095L; } MovedToSort.lastlastClickTime = Class89.lastClickTime; final int i_33_ = i_31_ + (i_32_ * 765); int i_34_ = 0; final int i_35_ = (int) l; if (MovedToSort.buttonId == 2) { i_34_ = 1; } outputBuffer.writeOpcode(167); outputBuffer.putLEInt((i_35_ << 20) + (i_34_ << 19) + i_33_); } ^ this is the packet in the deob They do have a packet for mouse clicking which is x,y, right click & delay so i'm pretty sure they don't just use this for nothing int value = buffer.getInt(); long delay = (value >> 20) * 50; boolean rightMouseButton = ((value >> 19) & 0x1) == 1; int cords = (value & 0x3FFFF); int x = cords % 765; int y = cords / 765; if you could probably use a heat map on osbot for mouse clicking on the game client you would probably sooner or later notice that there will be a pattern repeating probably which could be the reason why people get banned but this is just my opinion on this part. in the end there is a packet that they can use for clicking. Edited April 25, 2017 by Jesse 1 Quote Link to comment Share on other sites More sharing options...
dmmslaver Posted April 25, 2017 Author Share Posted April 25, 2017 (edited) On 4/24/2017 at 2:12 PM, Juggles said: What's your snippet to enter screen from random positions Simple. public void enter() { int eX; do { eX = gauss() > 0F ? gaussp(0, w) : w - gaussp(0, w); } while (eX > w || eX < 0); int eY; do { eY = gauss() > 0F ? gaussp(0, h) : h - gaussp(0, h); } while (eY > w || eY < 0); enter(eX, eY); } On 4/24/2017 at 2:30 PM, Diclonius said: I'm 90% sure that this isn't an issue. This because the mouse trail painter works by recording the last 5 or so mouse positions and then drawing a line between them. When you move the mouse off screen the position becomes invalid and so it defaults to 0,0. This means when the mouse moved back onto the screen, the painter thinks that the last few positions of the mouse were at 0,0. AFAIK the painter is painting the exact same positions that are being sent to the mouse events and client. 17 hours ago, Jesse said: 17 hours ago, Jesse said: if you could probably use a heat map on osbot for mouse clicking on the game client you would probably sooner or later notice that there will be a pattern repeating probably which could be the reason why people get banned but this is just my opinion on this part. in the end there is a packet that they can use for clicking. if you look on my thiever sales thread in private scripts, you can see what a good heatmap looks like ;) Edited April 25, 2017 by dmmslaver Quote Link to comment Share on other sites More sharing options...
Alek Posted April 25, 2017 Share Posted April 25, 2017 24 minutes ago, dmmslaver said: Simple. public void enter() { int eX; do { eX = gauss() > 0F ? gaussp(0, w) : w - gaussp(0, w); } while (eX > w || eX < 0); int eY; do { eY = gauss() > 0F ? gaussp(0, h) : h - gaussp(0, h); } while (eY > w || eY < 0); enter(eX, eY); } AFAIK the painter is painting the exact same positions that are being sent to the mouse events and client. 17 hours ago, Jesse said: if you look on my thiever sales thread in private scripts, you can see what a good heatmap looks like ;) Please, no. Edit: This is also not an issue, this topic comes up every day for me. Quote Link to comment Share on other sites More sharing options...
dmmslaver Posted April 25, 2017 Author Share Posted April 25, 2017 1 minute ago, Alek said: Please, no. Edit: This is also not an issue, this topic comes up every day for me. Very well explained. Makes so much sense I will delete this code from my bots! Quote Link to comment Share on other sites More sharing options...
Alek Posted April 25, 2017 Share Posted April 25, 2017 29 minutes ago, dmmslaver said: Very well explained. Makes so much sense I will delete this code from my bots! At this rate both you and paper can team up to make your own bot. Seriously though, you guys are really bad at taking what I say at face value. Just trust me every once in a while, I've been here for 4 years. 3 Quote Link to comment Share on other sites More sharing options...