[Release] EBE Bot Builder - Build bots with scripting!
Jul 5, 2017 15:39:07 GMT 2
Excoluss and polak23p like this
Post by realmaster42 on Jul 5, 2017 15:39:07 GMT 2
Hello!
This is my latest invention, the EBE Bot Builder.
EBE Bot Builder is a bot constructing tool that allows you to build up your own bots using it's own scripting language.
This will help everyone that doesn't know C# to learn basic programming, logics and syntax, so that on the future they could make real bots using C#. However, this tool allows you to do many things, incluiding saving your bot as an EXE!
Let's get straight into it!
What is ebbbot.exe and EBEBotBuilder.exe?
How does the UI work?
On the left side, you've got the script box. This is where you type your codes, and make the magic begin!
Right after it, you've got the console. The console stores the information you want the bot to send, and the text you'd send on the bot console.
Also, here when in the debugger and NOT DEBUGGING it will show all commands. As you type in the code, depending on the first letters of the word you're typing, it will filter the commands out.
Next to the console, you've got tabs and buttons.
Let's begin with the buttons:
"Save" - This saves your current code as a text file in the directory you run the bot.
"Debug" - This makes your code run on the debugger. Please note that ?ask, ?askyes and other input-based commands don't work yet on the debugger, but do on the bot exe itself.
"As Exe" - This saves your current code as the bot itself, with all the complete features. However, make sure not to make it bug.
"Check Error" - This does a quick scan on your code's syntax. However, this is inaccurate. The reason I believe so is that it only checks the code's syntax, and not user errors.
User errors are incorrect email, password, world id, etc.
And the tabs... They give you a list of commands about that category.
And this is what those categories mean:
"Events" - Events are things that happen in-game or in the bot. For example, "botdisconnected [bot] [botfunction]" runs every time the bot is disconnected/kicked.
"Actions" - Currently incomplete as of V1.0.0, actions are things your bot does. For example, "bottalk [bot] [message]" makes the specified bot send a chat message.
"Initialize" - Those are pretty much all the things that don't belong on the remaining categories, and serve more as additional things. For example, "bot [name]" creates a bot variable.
"Logics" - Those are for the advanced users of EBEBotBuilder, displaying coding logics in case you need any.
"Scripting" - Those are the basic functions that the scripting language supports, that help you with the bot.
Upcoming plans
How to script?
Change Log
Download
And that's it!
Hope you enjoy my tool.
Be free to give feedback, give suggestions and report bugs!
This is my latest invention, the EBE Bot Builder.
EBE Bot Builder is a bot constructing tool that allows you to build up your own bots using it's own scripting language.
This will help everyone that doesn't know C# to learn basic programming, logics and syntax, so that on the future they could make real bots using C#. However, this tool allows you to do many things, incluiding saving your bot as an EXE!
Let's get straight into it!
What is ebbbot.exe and EBEBotBuilder.exe?
Bot builder has it's own scripting language. It has two main files, which you should NEVER delete: ebbbot.exe and EBEBotBuilder.exe
ebbbot.exe is the "bot". It has the scripting language stored inside, aswell as the code you type. When you save as exe in the compiler, it will obfuscate your code, however still "deobfuscatable".
It runs your code the way you want. It is a "console" type of bot.
EBEBotBuilder.exe is the compiler and is where you store code. It supports multiple features such as saving file, debugging bot, saving as error and making a quick error scan.
Error scans don't work too well however, as they only check for syntax errors. User errors, such as wrong email/password cannot be checked.
ebbbot.exe is the "bot". It has the scripting language stored inside, aswell as the code you type. When you save as exe in the compiler, it will obfuscate your code, however still "deobfuscatable".
It runs your code the way you want. It is a "console" type of bot.
EBEBotBuilder.exe is the compiler and is where you store code. It supports multiple features such as saving file, debugging bot, saving as error and making a quick error scan.
Error scans don't work too well however, as they only check for syntax errors. User errors, such as wrong email/password cannot be checked.
How does the UI work?
On the left side, you've got the script box. This is where you type your codes, and make the magic begin!
Right after it, you've got the console. The console stores the information you want the bot to send, and the text you'd send on the bot console.
Also, here when in the debugger and NOT DEBUGGING it will show all commands. As you type in the code, depending on the first letters of the word you're typing, it will filter the commands out.
Next to the console, you've got tabs and buttons.
Let's begin with the buttons:
"Save" - This saves your current code as a text file in the directory you run the bot.
"Debug" - This makes your code run on the debugger. Please note that ?ask, ?askyes and other input-based commands don't work yet on the debugger, but do on the bot exe itself.
"As Exe" - This saves your current code as the bot itself, with all the complete features. However, make sure not to make it bug.
"Check Error" - This does a quick scan on your code's syntax. However, this is inaccurate. The reason I believe so is that it only checks the code's syntax, and not user errors.
User errors are incorrect email, password, world id, etc.
And the tabs... They give you a list of commands about that category.
And this is what those categories mean:
"Events" - Events are things that happen in-game or in the bot. For example, "botdisconnected [bot] [botfunction]" runs every time the bot is disconnected/kicked.
"Actions" - Currently incomplete as of V1.0.0, actions are things your bot does. For example, "bottalk [bot] [message]" makes the specified bot send a chat message.
"Initialize" - Those are pretty much all the things that don't belong on the remaining categories, and serve more as additional things. For example, "bot [name]" creates a bot variable.
"Logics" - Those are for the advanced users of EBEBotBuilder, displaying coding logics in case you need any.
"Scripting" - Those are the basic functions that the scripting language supports, that help you with the bot.
Upcoming plans
Upcoming plans for the script/bot/language that are listed from easiest to hardest.
-Extending the "Events" and "Actions" categories, as they are pretty vague right now.
-(HARD) Adding an input box into the compiler. The reason this is really hard is that it'll require additional threads that await user's response, while communicating with the main thread. If any programmer here knows how to do it, I'd pleasantly know about it.
-Extending the "Events" and "Actions" categories, as they are pretty vague right now.
-(HARD) Adding an input box into the compiler. The reason this is really hard is that it'll require additional threads that await user's response, while communicating with the main thread. If any programmer here knows how to do it, I'd pleasantly know about it.
How to script?
Well, scripting BotBuilder isn't hard. It's actually easy, for the basic syntax.
There are multiple new features here, but we'll start with basics...
#1 - Understanding the console
#2 - Commenting
#3 - Botting
#4 - Verifying code before debugging
Next scripting informations coming soon.
There are multiple new features here, but we'll start with basics...
#1 - Understanding the console
The console is the gray box right after the language script.
It holds all information you wish the bot to type.
To add more information to the console, you use "log [info]".
But, since finding out more commands will be hard, on the right side of the tool you've got various tabs, "Events", "Actions", "Initialize", "Logics" and "Scripting".
Clicking them will show you commands about it.
Here is a basic script that adds to the console "Hello World!":
Oh yeah--To run your code, press "Debug", and to stop it, press "Stop".
That is pretty much the console and how to run the code!
It holds all information you wish the bot to type.
To add more information to the console, you use "log [info]".
But, since finding out more commands will be hard, on the right side of the tool you've got various tabs, "Events", "Actions", "Initialize", "Logics" and "Scripting".
Clicking them will show you commands about it.
Here is a basic script that adds to the console "Hello World!":
log Hello World!
Oh yeah--To run your code, press "Debug", and to stop it, press "Stop".
That is pretty much the console and how to run the code!
#2 - Commenting
As you can imagine, scripting should be able to support some notes on your script.
It is possible to do so in EBEBotBuilder too, by using "# note".
This means you can note some TODO or don't forget things.
Example:
It is possible to do so in EBEBotBuilder too, by using "# note".
This means you can note some TODO or don't forget things.
Example:
log Hello World!
# code bot from down here
#3 - Botting
What would EBEBotBuilder be useful for if it didn't support bots?
To program bots, you must initialize them.
EBEBotBuilder supports multiple bots at the same time, and it's quite simple to do so.
The first step is to initialize the bot. To do so, do "bot <name>".
Of course, you wouldn't use "bot <abc>". You must take out the "<" ">" and put the bot's name instead of just "name". You can make it stay "name" too, if you'd wish.
After this, you must make the bot connect.
For this, you must use "botemail". The "botemail" initialization comes with "botemail bot email". For this, replace "bot" with your bot's name and "email" with the email of the account you wish to connect with.
Do the same with "botpass", just instead of email use password.
Once that is done, we must make sure the bot logins. To login, run "botlogin". It uses "botlogin bot". You should know by now how it works.
Now, we are missing making it connect to a world. To do this, use "botworld" ("botworld bot world", you know...)
Finally, use "botjoin bot" and, if everything goes good, your bot is connected!
Your code should look something like this:
To program bots, you must initialize them.
EBEBotBuilder supports multiple bots at the same time, and it's quite simple to do so.
The first step is to initialize the bot. To do so, do "bot <name>".
Of course, you wouldn't use "bot <abc>". You must take out the "<" ">" and put the bot's name instead of just "name". You can make it stay "name" too, if you'd wish.
After this, you must make the bot connect.
For this, you must use "botemail". The "botemail" initialization comes with "botemail bot email". For this, replace "bot" with your bot's name and "email" with the email of the account you wish to connect with.
Do the same with "botpass", just instead of email use password.
Once that is done, we must make sure the bot logins. To login, run "botlogin". It uses "botlogin bot". You should know by now how it works.
Now, we are missing making it connect to a world. To do this, use "botworld" ("botworld bot world", you know...)
Finally, use "botjoin bot" and, if everything goes good, your bot is connected!
Your code should look something like this:
bot test
botemail test guest@guest.guest
botpass test guest
botlogin test
botworld test PWa
botjoin test
#4 - Verifying code before debugging
This is one of the very important things you must do while scripting or even programming.
Before debugging, make sure your code has no errors and is clean.
One quick action to verify surface errors is to press the "Check Error" button. It will help you by looking for syntax errors.
After this, make sure you haven't misspelled anything in the bot. A simple typo in bot email/password or even syntax may cause it to break.
Once you are capable of doing this every time before debugging when needed, you are ready to code more!
Before debugging, make sure your code has no errors and is clean.
One quick action to verify surface errors is to press the "Check Error" button. It will help you by looking for syntax errors.
After this, make sure you haven't misspelled anything in the bot. A simple typo in bot email/password or even syntax may cause it to break.
Once you are capable of doing this every time before debugging when needed, you are ready to code more!
Next scripting informations coming soon.
Change Log
All dates are in DD/MM/YY.
[D] means Debugger.
V1.0.1:
[D] -Fixed check errors not detecting botfunction error.
-Fixed bot not sending messages properly before inited.
-Fixed saved as exe bots not sending messages.
-Improved bot message delay time.
-Added "wait milliseconds".
[D] -Added new tab: "Scripting".
V1.0.0: initial release, 29/05/2017
[D] means Debugger.
V1.0.1:
[D] -Fixed check errors not detecting botfunction error.
-Fixed bot not sending messages properly before inited.
-Fixed saved as exe bots not sending messages.
-Improved bot message delay time.
-Added "wait milliseconds".
[D] -Added new tab: "Scripting".
V1.0.0: initial release, 29/05/2017
Download
Here you go! It's free to use and doesn't pack much memory, standing at merely 197.17 KB (and 57 KB for the debugger). Another up side is that it doesn't use much RAM.
Link: www.mediafire.com/?l16hmop62x8j8hm
Link: www.mediafire.com/?l16hmop62x8j8hm
And that's it!
Hope you enjoy my tool.
Be free to give feedback, give suggestions and report bugs!