Jump to content
View in the app

A better way to browse. Learn more.

OSBot :: 2007 OSRS Botting

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Reaction Times and Normal Distributions

Featured Replies

I'm back to OSRS and OSBot after a long hiatus. When I left, I was planning a rather ambitious script that would auto mule, set up new accounts automatically, etc. 

I have another slightly less ambitious and more realistic plan this time around, but I'll spare the details for another post. The point is, I want to make a script with a low banrate. So, I put a lot of thought into how to make a script more human-like in relevant ways. One question that came to mind was "If you plot human reaction times in RuneScape on a graph, does it look like a normal distribution?" So, I wrote a small Java application to track the milliseconds between clicks when I spam clicked for a particular activity in game. Lo and behold, the time between clicks appears to be a normal-ish distribution. 

The x axis represents milliseconds, and the y axis represents the number of times that particular delay happened. So, if the black dot in the middle is, say, 125 ms, then that was the most frequent delay length (mode). 

normal.thumb.png.803c991246d11c713a615ee3e5630792.png

Edit: More data
img1.png.f26c0e4c47204deb0c8784f4095e5ccc.png

Because I'm paranoid, I adjusted the the default size of this graph and hid the axis tick marks, but my experiment confirmed my suspicions that human reaction times would follow a normal distribution. 

My motivation for this scripts behave in a way that too consistent and too perfect. They make zero mistakes (when well written), their reaction times are predictable (typically following an even distribution), take the same path over and over again, etc.

My aim here is to create an API built on top of OSBot that allows for more human-like behavior in areas that other MMOs typically use to catch bots. I know for a fact that other titles have used reaction times and analysis of player pathing to catch bots, and so I'm starting there first. I'll be gathering more data and updating this post, or creating a new one with more information that I uncover.

Edited by SqueezeTheorem

There exists a bot client that gives you complete control over reaction times. It will probably make what you want to accomplish a lot easier, but I can't mention the name or I will be ban.

Edited by MonkeyLion

You can use gaussian sleeps to try and achieve a normal distributions. I think ultimately, you will find out that it doesn't make a difference.

  • Author

I should clarify that I don't expect control of reaction times by itself to be the best anti ban technique there is. I have a few other techniques in mind I've not seen widely implemented that I'd like to try.

 

As far as I know from the research into other games I've done, reaction times, pathing, session length, and a few other things bots perform in very rigid fashion are the biggest giveaway to bot detection systems. 

 

Reaction times are just one piece of that puzzle. OSBot's API supports predefined paths and the A* pathfinding algorithm, which is great, but over many trips back and forth, a bot ends up revealing itself. 

 

A low-ban script that involves movement would need some kind of pathing that's more dynamic than A* or predefined paths, and that's what I'd like to attempt working on next.

 

The end goal is to emulate human behavior extremely well for one particular task, and not tasks in general. 

Edited by SqueezeTheorem

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.