Editing Installation
From Bebot Wiki 2
Jump to navigationJump to searchWarning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 7: | Line 7: | ||
To install and run BeBot you need the following: | To install and run BeBot you need the following: | ||
− | * | + | * Anarchy Online (free or paid) or Age of Conan |
− | * PHP version from 5.4 ( | + | * PHP version from 5.4 (minimal requirement) upto 7.4 (max tested so far) |
− | * database server of either Mysql (from 4.1 upto 8.0 | + | * database server of either Mysql (from 4.1 upto 8.0) or MariaDB (10.0 upto 10.4) |
* either "Official" files at https://github.com/J-Soft/BeBot/archive/master.zip (stable) or "Beta" files from https://github.com/bitnykk/BeBot/archive/master.zip (sandbox) NB : if you know how to use git, you also can clone/pull from any of these urls. | * either "Official" files at https://github.com/J-Soft/BeBot/archive/master.zip (stable) or "Beta" files from https://github.com/bitnykk/BeBot/archive/master.zip (sandbox) NB : if you know how to use git, you also can clone/pull from any of these urls. | ||
Line 15: | Line 15: | ||
A bot is basically a regular player character so you'll need to create a character on the appropriate dimension or server. The breed, gender and profession is irrelevant for the function of the bot. The name of the toon will be the name of the bot. You can use an already existing character, but be advised that this character should not be played while the bot is running. If you try to login as this character the bot will be disconnected. | A bot is basically a regular player character so you'll need to create a character on the appropriate dimension or server. The breed, gender and profession is irrelevant for the function of the bot. The name of the toon will be the name of the bot. You can use an already existing character, but be advised that this character should not be played while the bot is running. If you try to login as this character the bot will be disconnected. | ||
− | + | Notes for guild-style bot | |
− | |||
A guild bot needs to be a member of the guild it is to be a bot for. | A guild bot needs to be a member of the guild it is to be a bot for. | ||
Line 23: | Line 22: | ||
For Age of Conan there are no extra requirements. If you want the bot to do be able to perform guild member add/remove functions you will need to promote it to a suitable rank. We suggest you don't do this until you are comfortable with bebot and how it operates. | For Age of Conan there are no extra requirements. If you want the bot to do be able to perform guild member add/remove functions you will need to promote it to a suitable rank. We suggest you don't do this until you are comfortable with bebot and how it operates. | ||
− | + | Download and install BeBot | |
− | |||
You will need to do one of the following to get BeBot: | You will need to do one of the following to get BeBot: | ||
− | Download the latest release version from the BeBot homepage and unzip/git the files to a directory maintaining the directory structure. | + | Download the latest release version from the BeBot homepage and unzip/git the files to a directory maintaining the directory structure. |
− | |||
− | |||
− | |||
− | |||
'''Database''' | '''Database''' | ||
0. Prompt into your database, e.g. by doing : mysql -u user -p | 0. Prompt into your database, e.g. by doing : mysql -u user -p | ||
− | (Enter/Return then type password and Enter/ | + | (Enter/Return then type password and Enter/Retunr again) |
− | 1. Type CREATE DATABASE databasename CHARACTER SET latin1; (or utf8 for recent PHP | + | 1. Type CREATE DATABASE databasename CHARACTER SET latin1; (or utf8 for recent PHP) |
(replace databasename with the name of the database you wish to create) | (replace databasename with the name of the database you wish to create) | ||
2. Press Enter/Return. | 2. Press Enter/Return. | ||
− | 3. CREATE USER username@localhost; | + | 3. CREATE USER username@localhost; (Change username to the username you |
− | + | want, keep @localhost) | |
4. Press Enter/Return. | 4. Press Enter/Return. | ||
5. SET PASSWORD FOR username@localhost = PASSWORD("newpassword"); | 5. SET PASSWORD FOR username@localhost = PASSWORD("newpassword"); | ||
− | (Change username and newpassword to your selected username and password, again keep @localhost) | + | (Change username and newpassword to your selected username and |
+ | password, again keep @localhost) | ||
6. Press Enter/Return. | 6. Press Enter/Return. | ||
− | 7. Type GRANT ALL on databasename.* TO username@localhost; | + | 7. Type GRANT ALL on databasename.* TO username@localhost; (Again, |
− | + | change username, keep @localhost) | |
8. Press Enter/Return. | 8. Press Enter/Return. | ||
9. Type quit then Enter/Return to exit the MySQL Monitor. | 9. Type quit then Enter/Return to exit the MySQL Monitor. | ||
Line 54: | Line 49: | ||
'''StartBot.php''' | '''StartBot.php''' | ||
− | If you start the bot from the same directory as the binary php file (for windows "php.exe") you can just enter the name. Otherwise you'll have to enter the name and path of the binary executable (ie C:/Program files/PHP/php.exe or C:\\ProgramFiles\\PHP\\php.exe or /usr/local/bin/php5). | + | If you start the bot from the same directory as the binary php file (for |
− | + | windows "php.exe") you can just enter the name. Otherwise you'll have to | |
− | Note that you can use forward slashes (recommended) or double backslashes (not recommended) on windows systems. Using single backslashes WILL NOT WORK as php interprets \ as a special escape character | + | enter the name and path of the binary executable (ie C:/Program |
− | + | files/PHP/php.exe or C:\\ProgramFiles\\PHP\\php.exe or /usr/local/bin/php5). | |
− | + | Note that you can use forward slashes (recommended) or double backslashes | |
− | + | (not recommended) on windows systems. Using single backslashes WILL NOT WORK | |
+ | as php interprets \ as a special escape character. | ||
− | On windows, according to the PHP version you'd want Bebot to run into, you may need to copy a php.exe file right into bot's root folder (where StartBot.bat is). Unless windows PATH and/or php.ini are well set so the exe can locate required libraries alone, you may have to copy correct .dll files for this specific PHP. | + | On windows, according to the PHP version you'd want Bebot to run into, you may |
− | + | need to copy a php.exe file right into bot's root folder (where StartBot.bat is). | |
− | + | Unless windows PATH and/or php.ini are well set so the exe can locate required | |
+ | libraries alone, you may have to copy correct .dll files for this specific PHP. | ||
+ | For 5.4/5.6 : libeay32, libmysql, php5ts and ssleay32, php_mysqli & php_sockets. | ||
+ | For 7.x : libcrypt, libssl, libssh2, sockets, nghttp2, curl & php7(ts). | ||
Bot will tell you what misses to run during startup, so check all lines ! | Bot will tell you what misses to run during startup, so check all lines ! | ||
− | + | You may need to install some modules (e.g. curl) and activate them in php.ini | |
− | So | + | So be sure of what php.ini file is loaded by the PHP client Bebot uses. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Set $main_php to the location of the "Main.php" file. Once again you can | |
− | + | just enter "Main.php" if you're starting the bot from the directory its in. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | If StartBot.php is in another directory than the bot itself (not | |
− | + | recommended) you must specify the complete path to Main.php. | |
− | |||
− | |||
− | |||
− | If | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Open the file Bot.conf, which is in the conf directory where you installed the bot, in a text editor. Here you will have to enter the Anarchy-Online username, password and the name of the bot along with the dimension number you would like to run it on. | Open the file Bot.conf, which is in the conf directory where you installed the bot, in a text editor. Here you will have to enter the Anarchy-Online username, password and the name of the bot along with the dimension number you would like to run it on. | ||
Line 110: | Line 84: | ||
To switch logging off set “$log” to “off”. You can also set it to “chat” which will only log incoming and outgoing messages. If set to “all” everything displayed on the console will be put into the log. The default is “chat”. Set “$log_path” to the place where you want logs to be saved. | To switch logging off set “$log” to “off”. You can also set it to “chat” which will only log incoming and outgoing messages. If set to “all” everything displayed on the console will be put into the log. The default is “chat”. Set “$log_path” to the place where you want logs to be saved. | ||
− | With “$command_prefix” you can determin what symbol commands start with. The default here is “!”. Note that you need to use the regex string here. This means that to use “.” as your command prefix you need to enter “\.” because “.” has got a special meaning in regular expressions | + | With “$command_prefix” you can determin what symbol commands start with. The default here is “!”. Note that you need to use the regex string here. This means that to use “.” as your command prefix you need to enter “\.” because “.” has got a special meaning in regular expressions. This goes for a lot of other characters as well. |
The last 4 values are probably best left at default. | The last 4 values are probably best left at default. | ||
− | + | Guild bot ONLY | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
To make a guild bot set “$guildbot” to true. Change “$guild_name” to the exact name of your guild. Set “$guild_id” to the id of your guild. The easiest way to find out the guild ID is going to http://www.anarchy-online.com/content/community/people/ and finding your guild. The URL will now read something like this: “http://www.anarchy-online.com/org/stats/d/1/name/xxxxxx” where the “xxxxxx” would be your guild ID. To relay chat to another guild bot you want to set $guild_relay_target = “Name_of_other_guildbot”; If you do not want this feature set $guild_relay_target = False; (note: False, not “False”. If you use quotes your bot will attempt to relay to the player named 'False') | To make a guild bot set “$guildbot” to true. Change “$guild_name” to the exact name of your guild. Set “$guild_id” to the id of your guild. The easiest way to find out the guild ID is going to http://www.anarchy-online.com/content/community/people/ and finding your guild. The URL will now read something like this: “http://www.anarchy-online.com/org/stats/d/1/name/xxxxxx” where the “xxxxxx” would be your guild ID. To relay chat to another guild bot you want to set $guild_relay_target = “Name_of_other_guildbot”; If you do not want this feature set $guild_relay_target = False; (note: False, not “False”. If you use quotes your bot will attempt to relay to the player named 'False') | ||
− | + | Raid bot ONLY | |
− | |||
To make a raid bot set “$guildbot” to false. leave “$guild_name” blank. Set “$guild_id” to 0. For a raid bot you most likely want to set $guild_relay_target = False; (note: False, not “False”) | To make a raid bot set “$guildbot” to false. leave “$guild_name” blank. Set “$guild_id” to 0. For a raid bot you most likely want to set $guild_relay_target = False; (note: False, not “False”) | ||
Line 135: | Line 100: | ||
'''Starting the bot''' | '''Starting the bot''' | ||
− | Open a console (In windows press “Start” ⇒ “Run” ⇒ enter “cmd” and press enter). | + | Open a console (In windows press “Start” ⇒ “Run” ⇒ enter “cmd” and press enter). |
− | Now run StartBot (.php under linux or .bat under windows) : | + | Now run StartBot (.php under linux or .bat under windows) : |
− | Windows: Navigate to the directory of your bot assuming you have the php.exe in the same directory and write “StartBot.bat”. You also can make it a startup shortcut as long as your database service runs too. | + | Windows: Navigate to the directory of your bot assuming you have the php.exe in the same directory and write “StartBot.bat”. You also can make it a startup shortcut as long as your database service runs too. |
− | Linux: Assuming you can run php from anywhere navigate to your bot directory and write “php StartBot.php” (assuming your php binary is named “php”). You also can cron it at startup with screen, as long as your database service runs too. | + | Linux: Assuming you can run php from anywhere navigate to your bot directory and write “php StartBot.php” (assuming your php binary is named “php”). You also can cron it at startup with screen, as long as your database service runs too. |
The console should now state that the bot is loading the modules, authenticating and connecting. Once this is done (it should only take a few seconds) You can log onto an character ingame which you have configured as “superadmin”. You should now be able to talk to the bot. | The console should now state that the bot is loading the modules, authenticating and connecting. Once this is done (it should only take a few seconds) You can log onto an character ingame which you have configured as “superadmin”. You should now be able to talk to the bot. | ||
− | + | In-game setup | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Starting at version 0.3 there is a new settings module to handle configuration of most aspects and many modules for BeBot. Most notable is the Security module. To start configuring it send a tell to your bot with “!settings security”. For a list of modules whose settings are configurable by the new interface send a tell to your bot with “!settings”. | Starting at version 0.3 there is a new settings module to handle configuration of most aspects and many modules for BeBot. Most notable is the Security module. To start configuring it send a tell to your bot with “!settings security”. For a list of modules whose settings are configurable by the new interface send a tell to your bot with “!settings”. | ||
− | + | Adding and Removing Modules | |
− | |||
If you do not wish for certain modules to be used by a bot just put an underscore (“_”) at the front of the name in the “modules” directory. There are several files already in the distribution that have been commented out in this way: Most notable is _ExampleModule.php which is a template to make your own modules. | If you do not wish for certain modules to be used by a bot just put an underscore (“_”) at the front of the name in the “modules” directory. There are several files already in the distribution that have been commented out in this way: Most notable is _ExampleModule.php which is a template to make your own modules. |