Giter VIP home page Giter VIP logo

rsbot's Introduction

Disclaimer: This is NOT a bot for the official Runescape game, this is a bot that Runescape private server developers can connect to their servers and manipulate for testing and debugging purposes.

jBot

An open source API that enables developers to create and manage their own local Runescape bots. It's designed to be easy-to-use and to allow the player to have as much control over the functionality of the bots as possible. All of the code is extensively documented so the user can fully understand what's going on behind the scenes.

jBot currently runs on Java 8, so users will need to be developing using Java 8 in order to use this API.

Table of contents

Bots


The two main classes that the user will be utilizing are JBot and JBotGroup. A JBot instance holds all information related to a bot (io, credentials, bot group, state, etc.) and every JBot belongs to a JBotGroup instance. A JBotGroup instance holds all information related to how messages and exceptions will be handled, and allocates the resources required for bots to be able to login and perform actions. Those specific resources will be elaborated on in later sections.


A new bot and bot group with default settings should be started like so
JBotGroup mainGroup = new JBotGroupBuilder().build();

...

JBot myBot = mainGroup.add("myusername", "mypassword");

Alternatively, one may need to configure a bot and bot group with personalized settings

JBotGroup mainGroup = new JBotGroupBuilder().exceptionHandler(new MyCustomExceptionHandler())
.rsaKey(new JBotRsaKey(...)).build();

...

JBot myBot = mainGroup.add("myusername", "mypassword");

IO


All IO for bots is done using asynchronous NIO. In other words, all IO functions will return instantly instead of blocking until completion. All IO events are handled by the JBotReactor. If for some reason the reactor's thread is interrupted it will throw an IllegalStateException, log out all bots, and then release all resources that it had previously acquired when it was active. This renders the underyling JBotGroup attached to this reactor, useless.


Outgoing messages are controlled by the ```JBotMessageWriter```. If a custom message not already supplied needs to be written then users should extend that class. Outgoing messages are sent like so
JBot myBot = ...;

myBot.write(new Write317TalkMessage("I'm talking!"));
myBot.write(new Write317ButtonMessage(4553));

myBot.write(new WriteMyCustomMessage(arg1, arg2, "my own impl of JBotMessageWriter!"));

Incoming messages are controlled by the ```JBotMessageReader``` ...

Exception Handling


stuff here

Providers


stuff here

Task Management


stuff here

Releases


The current stable version is (x.x.x).

(downloads of all previous .JARs with sources)

rsbot's People

Contributors

lare96 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

rsbot's Issues

Util folder missing

The Util folder is missing for this project, also if you stil do services readd me on skype/reply on r-s

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.