MERVBot Release-candidate (Build 38) Documentation ----=Quick Setup=---- NOTE: Do these steps in order. Extract all files in archive to an empty folder. Double-click Spawns.txt Read the directions. Delete the example spawns at the very top. Add your own spawn(s) in the proper format. Double-click Operators.txt Read the directions. Delete the example operators at the very top. Add yourself in the proper format. http://www.subspacehq.com/features/serverstatus.shtml Find the zone you want to have the bot enter and write down its "IP Address" and "Port." Your zone must be listed on one of the main directory servers for it to be listed on that website. If it is not listed, you may also find the "IP Address" and "Port" numbers in a SubSpace favorite.lst file or a Continuum zone.dat file (Both may be viewed in Notepad) Double-click MERVBot.INI Where it says.. [Login] Zone=127.0.0.1:2000 ..put the zone's IP Address:Port. If the zone is Continuum-only, add the bot to VIP.TXT Double-click MERVBot.EXE Read the F.A.Q. below if the bot doesn't connect after a minute. Take this time to read the documentation more thoroughly and to familiarize yourself with the operator and command systems. Type /!login to gain access to the bot, if you didn't set a password for your name at the Operators.txt step, you will be logged in automatically. When you are done using the bot, press a key to close it. DO NOT close the window to close the bot. Thank you for testing MERVBot! ----=F.A.Q.=---- Q. What is a MERVBot? A. MERVBot is an open-sourced C++ server-side bot. Its name comes from the U.S. arsenal's nuclear-warhead-equipped MIRV missiles because each missile is equipped with multiple warheads. Similarly, MERV destroys countries. Err, it also has multiple features to better serve all zones instead of requiring new bots to be made for each individual zone. Q. A plugin is listed in !plugins but it doesn't do anything. What's up? A. If the terminal window says there's a version mismatch, download a new version of either this bot core or the plugin from my website. Read "how to upgrade.txt" Q. How do I specify more than one plugin in spawns.txt or for the !load command? A. Separate the plugin names with commas: eliza, ctf, flag Q. I'm getting a MAJOR plugin version mismatch. How do I fix it? A. Download the latest version of the plugin and/or the bot. Q. I'm getting a MINOR plugin version mismatch. How do I fix it? A. This is not a problem. If you download the plugin again, it might have been updated. Q. WARNING: Super Moderator+ access is required to remain connected in this zone. WARNING: Subspace.BIN checksum mismatch! A. Exactly what it says. The bot needs to be SMod, SysOp or in vip.txt to remain connected. Q. Why does the bot get disconnected constantly? A. 1) If your zone is Continuum-only, it must have Super Moderator/SysOp staff powers. 2) If your zone is Continuum-only in the SERVER.INI, bots and SubSpace cannot enter. One solution to scenario #2 is to add the bot's name to vip.txt Q. Why do I get "Winsock" problems trying to connect the bot from Windows 95? A. Try this link for a Winsock update: http://www.microsoft.com/windows95/downloads/contents/wuadmintools/s_wunetworkingtools/w95sockets2/ Q. Why doesn't the bot connect? A. 1) Make sure you have edited MERVBot.INI and have chosen an online zone. 2) If you are behind a firewall/router, use "SubSpace Proxy 6" from my website. 3) Ask me about it. Q. I changed or added an operator while s/he was in the arena and his/her powers haven't changed. A. Ask him/her to reenter the arena or use !login . You may also change the bot's arena Q. I deleted an operator while s/he was in the arena and his/her powers haven't been removed. A. Ask him/her to reenter the arena. You may also change bot's arena Q. Why doesn't the bot respond to remote private commands from another arena? A. Change [Misc]RemoteInterpreter=1 in MERVBot.INI, to allow remote commands. WARNING: Remote commands may be spoofed by hackers in esoteric circumstances. Q. How do I create different kinds of bots? A. 1) Edit Spawns.txt to include the name of the bot DLL file you wish to import. 2) Type /!import 3) Type /!spawn -i= [other options] Q. Why do I have to constantly type !login !?!? A. There is no way for the bot to know if it is still you when you change arenas. Thus, you must !login whenever you enter a different arena. You may disable the !login password by logging in and typing !setlogin. Setting a zero-length password circumvents the !login system, but means that your account is disabled if/when the zone's billing server goes offline (scores are unavailable, etc.) Q. Why does the bot only respond -once- when I send a public chat command -several- times? A. This is a limitation imposed by the SubSpace server software. Interleave with different messages. Q. What level staff access (mod/smod/sysop) does the bot need? A. Depends on the application. Most features will work with moderator access, but supermoderator access is necessary if you want it to grant prizes. Being SysOp allows the bot to respond faster to commands, but is not necessary unless you notice a tremendous lag in response time among other things. Q. Why isn't MERVBot listening to all the kill messages? A. Zone settings might need to be corrected. Type as Arena Owner or Zone SysOp: ?set Routing:DeathDistance:16384 Or download SubGame 11h or later from http://www.shanky.com/server/ Q. Why isn't a MERVBot feature working? 1) SMods/Mods cannot *spec or *setship SysOps/SMods. 2) Make sure the bot's name is in the appropriate staff .TXT file for the zone. moderate.txt - moderator powers smod.txt - supermoderator powers sysop.txt - sysop powers 3) Double-check the Spawns.txt file to make sure you didn't make a typo. Q. Players get kicked for "too many ship-type changes." How do i fix this? A. Zone settings must be corrected. Type as Arena Owner or Zone SysOp: ?set Security:MaxShipTypeSwitchCount:32767 Q. How do I make the bot go to a certain public arena? A. Use command !go . Ex: !go 3 Only SysOp's can create public arenas on demand. Q. Will the bot be safe if the billing server goes down? A. Yes. Operators without !login passwords cannot use commands until the billing server comes back online. Remote private messages are ignored completely. Q. Does MERVBot drain system resources? A. Bandwidth: 40% average SubSpace session. ~80 BPS while idling (according to *info) Memory: 1MB for one spawn. For comparison, SubSpace takes 14MB and Continuum takes 6MB. CPU: <1% on a PIII 866mhz machine. Q. I need help with something that isn't explained [well enough] here. A. Scroll to the bottom of this document for contact information. ----=Files=---- / Readme.txt This file Commands.txt Bot commands Operators.txt Bot operators Spawns.txt Bot names MERVBot.INI Other bot settings MERVBot.exe MERVBot application subspace.bin Checksum data file zlib.dll File transfer library Other *.dll Bot spawn definitions /bak *.bak Documentation backups /src zlib.lib Linkable object library *.h Bot source; declarations *.cpp Bot source; definitions MERVBot.vcproj VC++ 7.0 project file MERVBot.ds* VC++ 6.0 project files /lvl *.lvl Level files /get *.* *getfile folder news.txt Zone news /log *.log Changelog.txt History and future Logins.txt History of logins ----=Contact the Author=---- mailto:cat02e@fsu.edu ICQ#18736684 SubSpace:CAT Test Zone IRC:irc.openprojects.net #sheepcloning #C++ http://catid.sscentral.com ^^ Before reporting a bug, download the latest version from my site. i've been accused of being a poet. -Interpretive