Jump to content

OSBot 2 update


Maxi

Recommended Posts

  • Developer

Dear community,

 

We want to give you a heads up on OSBot 2. Over the past couple of weeks we ran into many problems with JavaFX. It turned out that JavaFX isn't mature enough for the job we are trying to pull off with it for OSBot 2. It made us decide to convert the GUI back to Java Swing. With this being worked on and almost being finished, you might be wondering what has been done and what is still left to do.

 

I'll try to make an overview of the features in OSBot 2, both already implemented ones and ones that are still to be finished up. Green is finished, orange is not completed yet but nearly finished and red is not started on but planned.

 

Asynchronous Script Engine (ASE).

 

OSBot 2 has a new script engine. This engine is based on tasks that can be executed after events are being triggered, or tasks within tasks. The scripter has full control whether to keep newly created tasks to be executed within the task it's executed from, or dispatch the event to the engine which will execute the task asynchronously. The engine will take care of several multi-threading issues by itself and won't allow you to execute two tasks asynchronously that both use the keyboard, or the mouse. If not explicitly defined what mode to run tasks in, tasks that are executed from within tasks will be executed sequentially in the same thread. Scripters can however explicitly define to execute tasks from within a task that will be dispatched to the engine to be executed asynchronously. This gives a lot of control to scripters to perform logic on different levels where this is possible, for example mouse and keyboard control at the same time, or a background process listening to events that can be used to interrupt other tasks if necessary.

 

This engine is ready and we have not found any bugs in it so far.

 

OSBot 1 Script Converter (OS1C).

 

OSBot 2 has full capability to transform OSBot 1 scripts to run on the OSBot 2 engine. The engine contains a skeleton for the OSBot 1 logic, which is wrapped into the OSBot 2 classes and adapted to use the OSBot 2 equivalent methods and classes. A transformer transforms the bytecode of the original scripts to match the skeleton, which can then be wrapped into the OSBot 2 logic. The logic of the scripts are then executed as blocking tasks within the ASE, benefiting of the improved power OSBot 2 has to offer.

 

Injection, Wrapper and Callback system.

 

The OSBot 2 injection is far more intelligent than its previous OSBot 1 counterpart. First of all it is designed to be completely undetectable by any sort of classpath check, if this would ever be implemented by Jagex (which would be a very efficient way of detecting bots). Doing this at loader level is much smarter than having to create a work around later which would be far less convenient. The injection system allows for far more efficient wrapping of the client hooks, lowering the amount of CPU and resources being used compared to the system in OSBot 1. Another improvement that was allowed by this new system is the way callbacks work. Callbacks now use significantly less resources and CPU.

 

Client Synchronization.

 

OSBot 2 is synchronized far more with the OSRS client. Where in OSBot 1 some things would be done out of synch with the loop cycle of the OSRS client, in OSBot 2 we have made sure they will communicate at the correct moment for caching or accessing data required by the OSBot 2 client. This means data is precise and accurate.

 

Tab Monitors.

 

You won't have to worry about monitoring your tabs anymore. Each tab is now represented by a miniature of the OSRS client image on the right side of the OSBot 2 client. With it you see information what account is logged in to it. On top of that, you have a screen where you can monitor all your tabs with larger images, approximately half the size of the original client per tab. Another thing we introduce, is rename-able bot tabs.

 

There is still some work needed to complete on the GUI part of this, as we converted back to Java Swing.

 

Separated Tab Consoles.

 

Where is OSBot 1 you had 1 console with output from all your bots and on top of that the output of the OSBot 1 client itself, in OSBot 2 you will be confronted with separated consoles. One for the OSBot 2 client's output and one for each tab you are running. This will simplify tracking down problems or gathering much needed information.

 

There is still some work needed to complete on the GUI part of this, as we converted back to Java Swing.

 

OSBot 1's resemblance in OSBot 2.

 

As you can understand we have kept all features in OSBot 1, but most of them have been rewritten or improved along the lines. The big difference with OSBot 1 is that the old features of OSBot 1 are now available within the ASE of OSBot 2. On top of that, the API presents more ready to go features that you won't have to write yourself anymore. 

 

API.

 

The API has gotten a big overhaul in OSBot 2. Where the OSBot 1 API was written without a proper design in mind, the OSBot 2 API has been designed with great care. There is still work to be done to the API, but in terms of organization it's done. The API, as is the entire OSBot 2 structure, is very generic and very clean. Everything is separated in categories and all features are correctly divided amongst those categories. Besides that, the API contains way more conditional work, improved and new features. The API should be finished after this weekend.

 

Bot Scheduler.

 

OSBot 2 has a plan for a bot scheduler. This basically means you can setup a schedule for an x amount of tabs and schedule scripts in there attached to accounts. You can save this and load this, where all the work of opening the tabs etc will be done for you. You can schedule different accounts on different tabs, breaks etc. This can all be configured dynamically, meaning that if possible the scheduler will move one account to a different tab at randomized timing if preferred, to randomize the schedule. 

 

SDN.

 

For OSBot 2 we have a new webpage for free scripts with SDN integration. You will be able to add and remove free scripts to your collection. For paid scripts, the old systems will still be used, however this might be changed in the future too. Another feature for the future might be paid script trials, where people could try out scripts for an hour.

 

Security Manager.

 

The security manager will be a feature that will block any file writes or reads to files outside the allowed directories, which will be the OSBot folder in your home directory. Further more the manager will block any use of reflection, bytecode analyzation tools (which would also be detected in the SDN verification process anyways) and access to the command line. This will effectively create a near 100% safe solution to prevent any malicious code being executed in scripts, especially when you know all scripts in the SDN are verified anyways.

 

Other things that still have to be done.

 

The OSBot 2 client still needs to get server and SDN integration. This is something that can be copied from the OSBot 1 client for the most part, however we have some changes made to the SDN system as mentioned above where we need to create some new code for.

 

And now, after writing this giant wall of code I'm going back to my editor and pump out more code.

 

Stay tuned,

 

OSBot.org

 

Edit 1:

 

User Behaviour Profiles ANTI-BAN.

 

For OSBot 2 we have been mind mapping what we can do to make two players, running the same script, behave in different ways. We will not openly discuss what aspects we have thought of and how we will implement this. But what we can do, is tell you that we have gathered towards 20 different aspects, that can safely be randomized and stored in a user profile. This means the chances that you will bot in the same way as another user, even though you use the same script, are very small. This system is something we wanted for a very long time but never got started to be written. WIth OSBot 2 being designed a lot more generically, we can implement this system even though most of the code for OSBot 2 is done, without too much extra effort.

 

Bot Proxy Configuration.

 

This will make a lot of people who use multiple accounts very happy. For each bot tab (you will be able to open them in a different way than usual) you can specify a proxy server configuration. This is something that is also going to be implemented in the Bot Scheduler, making your life very easy. Hiding behind proxies can save your accounts if you are running a farm.

  • Like 19
Link to comment
Share on other sites

Good job so far! and i like that idea!

 

 

SDN.

 

 

For OSBot 2 we have a new webpage for free scripts with SDN integration. You will be able to add and remove free scripts to your collection. For paid scripts, the old systems will still be used, however this might be changed in the future too. Another feature for the future might be paid script trials, where people could try out scripts for an hour.

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...