sini 32 Share Posted August 28, 2015 I'm writing an API separate from the DreamBot API that provides more functionality while establishing a clear set of expectations for scripts. A lot of the eveAPI will either directly wrap and service as a buffer between the DreamBot API or will replace entire pieces of functionality to be more reliable. Part of the API will also include a library which people may use to connect to a RESTful service I will be hosting that will give access to a wide array of data. All of my scripts will include anonymous logging of various information if the user opts into the program. It'd be nice if people would also do some anonymous data logging with the users permission The main reason for me wanting to write my own API was the lack of predictability of some API functions. A lot of functions in the dream bot API seize control from the script to complete a task, sometimes not even completing it correctly, and a lot of time cause an issue with the script not being able to manage timing in an effective manner. With the API it's not possible to use both the mouse and keyboard at the same time, which I think is a critical flaw. I went to the drawing board, obviously the bot has realistically two inputs which are the peripherals of the computer, keyboard and mouse. Those are the two only inputs, besides the mouse wheel. I made it so that you could only do one peripheral action at a time, such as move the mouse, click the mouse, type a string to the keyboard, however for each input the task is ran on a separate thread allowing for it to be done asynchronously. When submitting a task a future is provided which gives scripts more functionality to test if the specified action has been completed and to return its result. Repository How do I use it? Wait until it's in a usable state. Examples Basic script Basic lua script Support Planned - *Fill in your imagination because there's a lot of planned support I may not have mentioned but will mention when its important.* - Lua scripts Implemented - Camera - Mouse - Actions REST Service Endpoints Planned - Web based walking : Get key that allows for you to stream points of a web based route on the fly. - Exception monitoring Link to comment Share on other sites More sharing options...
Pandemic 2802 Share Posted August 28, 2015 Looks good, can't wait to see how it ends up Link to comment Share on other sites More sharing options...
sini 32 Author Share Posted August 28, 2015 Added a basic Lua script example. print('Hello Im my meeseeks!') script:onStart(function() print('I am starting up') end) script:onPulse(function() --print('bloop') end) Heres a more advanced example, action building example. --- @author sini <[email protected]> local alwaysCondition = function() return true end local first = function(ctx) print('Hello') end local second = function(ctx) print('Moto') end script:onStart(function() local builder = script:createActionBuilder() builder:when(first, alwaysCondition) builder:when(second, alwaysCondition) script:fork(builder) end) script:onPulse(function() end) Link to comment Share on other sites More sharing options...
QuakedM8 58 Share Posted August 28, 2015 Sounds cool, gl with this mate Link to comment Share on other sites More sharing options...
Nuclear Nezz 2061 Share Posted August 28, 2015 Why lua? ._. Link to comment Share on other sites More sharing options...
Dogerina 330 Share Posted August 28, 2015 Why lua? ._.probably because java is a pretty bad language for scripts Link to comment Share on other sites More sharing options...
sini 32 Author Share Posted August 28, 2015 Why lua? ._. Easy to deploy. Web walking is pretty fun to design. These nodes have similar adjacency properties, meaning that the child nodes which you obviously can't see anymore had the ability to walk between each other. They retain the property to walk to adjacent nodes when they merge. As soon as I get the landscape data I will build a map of these nodes and start calculating paths around the world. Link to comment Share on other sites More sharing options...
qbots 239 Share Posted August 28, 2015 make sure ur web walking opens doors and has all caves and whatnot thx Link to comment Share on other sites More sharing options...
Explicit 213 Share Posted August 28, 2015 Why would you make web walking server sided? Link to comment Share on other sites More sharing options...
sini 32 Author Share Posted August 28, 2015 So I keep the code closed source and have dictionary of paths to look up. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.