Announcement

Collapse
No announcement yet.

Botman server manager official support thread

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Botman server manager official support thread

    Hi guys,

    This is a repost kinda. Due to an accident with a zombie stripper and a pole my original official support thread got deleted. I wasn't the only victim and I have to rebuild this thing from scratch. Oh well it'll be fun to re-write everything. Yep.. fun.


    I am the creator of the Botman Server Manager. This thread is where I will answer your questions and update you with news, and links to guides etc. As time permits I may make some video guides. I've been meaning to get onto that forever xD

    I started the bot in late 2014 and have been working on it almost daily ever since. It is written in Lua, currently has over 69,000 lines, well over 1,000 commands, almost all the features of other server managers and many more. You will probably use less than 50 commands most of the time and they are all documented on my website and accessible in-game and on IRC.

    It runs on top of a program called Mudlet which is designed to be a MUD client (Multi-user D&D). Mudlet is a telnet client with Lua scripting support. It requires a desktop so you can't run it on Bluefang etc, but you can run it anywhere with a reliable internet connection and a desktop OS and connect it remotely to your server. Mudlet runs on Windows, Linux and OSX but the bot uses a database and Lua on Windows is not able to connect to any database servers. If someone can help me solve that, get in touch.

    Currently to run the bot you need a Linux desktop environment.

    Right now the bot is commanded via in-game chat, from IRC and there is a fancy web panel available. IRC is great because you can monitor and admin from anywhere and all you need is a smartphone or better. The bot supports coloured names and commands can be hidden from public chat. It can also run along side other server managers and can be told to use something other than / for commands or even no symbol. It will automatically detect CBSM and remap commands to ! unless told not to or commands are already using something else.

    I have no plans to stop supporting the bot, and improving and adding to it. It is a very mature project that runs well and is very responsive. If you have problems with it you only need to contact me and you can post in here.

    Bot development and support takes a lot of my free time. Aside from providing a hosted bot service, I do not sell my bot, it is 100% free but I do accept donations. If you would like to support my efforts you can do so via a donate button on my website. It helps to keep me motivated through all the boring parts of coding.

    Here are some links for you..

    botman.nz

    The bot will always support the latest version of the game and I keep archives of older versions for anyone who wants to revisit old game bugs xD

    The bot's source code is online on bitbucket. I have other links in my download page on the botman website. The latest sources can be obtained here. I generally keep bitbucket up to date though it can get a little dated if I am busy or have a lot of changes in progress.

    If self-hosting isn't for you there is a bot rental service run by myself and Highope at botmanhosting.com. Our prices are cheap and get even cheaper if you rent more bots. There is also an active Discord server and you get free access to our web panel at mybotpanel.com You can check out a demo of the panel using the login demo@demo and the password demo123 . When logging in make sure to change User Type to Bot Setup Dashboard. If you want to check out the bot without spending a dime you can use the promo code 7daystobotman at checkout when you sign up for your first month free.

    You are always welcome to message me directly on Discord if you have any questions or need my help with bot stuff. On Discord I am smegzor#9806

    There is also a botman mod that adds extra features and can also be used via console commands without the bot. To make sure you have the latest version you should visit my download page rather than using the link above as it will become out of date with new game updates if I forget to edit this post in the future.

    More links!

    Care and feeding of your bot

    All Bot Commands

    Botman mod console command help

    https://botman.nz/Botman_Mods_A18.zip (Without BC)

    https://botman.nz/Botman_Mods_A18_With_BC.zip
    Last edited by Smegzor; 4 weeks ago.

    #2
    This is where I will post the bot's huge list of features. It will take a lot of time to write this and MANY revisions. Just posting this here atm as a holding post for it :P

    Comment


      #3
      Changelog from the bot's github repo. Originally posted 23 Feb 2020.

      Updated bot_profile.xml adding more buttons for fixing stuff and debugging.
      The running Mudlet chat window no longer shows ingame chat unless you set a variable called displayChatInMudlet to true. Not always displaying chat should give a small improvement to memory use and maybe performance too.

      New commands:

      /reset regions now
      Reboot the server and reset all reset regions immediately. (result varies subject to other settings)

      /enable/disable reset prefabs
      The Botman mod can reset entire regions (the default) or just the prefabs they contain.

      /redo reset zones
      Put back all of the reset zones via the Botman mod if you've accidentally deleted the mod's config.xml file from the server.
      Note: This requires the Botman mod or all it really does is list the reset zones.

      /allow/disallow family (allowed by default)
      Set to disallow if you require all players use the owner steam key and want to block players with a steamid that does not match the steamOwner.


      Changes:

      Updated copyright year to 2020. My code is released under the GPL3 license.
      The idle kick timer can now be set.
      Improved how the bot handles setting up to use Alloc's web API. It should be a lot more reliable now and not get stuck in a non-working state.
      Tweaked some of the timings used by the bot during server shutdowns to help mimic a low population server prior to stopping the server. This is an attempt to work around a bug where A18 servers can fail to shut down properly and get stuck in limbo.
      Reduced some bot telnet command spam caused when the bot reloads the server table.
      Moved thirty minute timer code out of the main scripts folder and into the timers folder.
      Filtered out some new telnet spam I'd not seen before. Less work for the bot.


      Fixes:

      Fixed issue with access override causing donors to lose the ability to set a 2nd base. Setting an override no longer touches donor access.
      The server table was missing 2 fields in some bots which caused random chaos with bot commands working for some players and not others with no real pattern. That was a fun bug.
      Fixed (hopefully) an issue with capitalisation of Lobby or Spawn causing new players to not be sent there.
      Fixed bug when loading the list of gimme zombies that caused some wrong indexes and wrong zombies to spawn and even the odd unkillable deer.
      Fixed bug that triggers when there are no countries defined in the country blacklist. Added same fix to the country whitelist.
      Fixed bug in shop caused by mixed case category names.
      Fixed bug in the idle kick code. It actually works now.
      Reworked a previous code fix where the telnet log has random newline characters embedded in bad places in the player joined line. That was causing incomplete data and some fun side effects. The bot can now rebuild the entire line before processing it so the Pimps can add all the random newlines they want :P
      Fixed a bug with donor management.
      Fixed donors not getting the correct zombie kill reward.
      Fixed typo (bad variable name) in a core bot function that caused some bother.
      Last edited by Smegzor; 4 weeks ago.

      Comment


        #4
        awesome work!

        Comment


          #5
          Here is a Windows and a Linux script to automatically restart your server.

          Linux script..

          Code:
          #!/bin/sh
          SERVICE='7DaysToDieServer'
          
          if ps ef | grep -v grep | grep $SERVICE > /dev/null
          then
          echo "$SERVICE service running, everything is fine"
          else
          echo "$SERVICE is not running"
          nohup /home/highope/7d2d/startserver.sh -configfile=serverconfig.xml &
          fi
          place that in a .sh script and cron it every 3 minutes your done.

          Windows bat script (with comments)..

          For servers running on Windows, I was recently shown a nice batch script that will auto-restart your 7 Days server provided you leave the batch file's cmd window open. I tested it and it works great.

          Credit to Quicken over at oxidemod.org for the script.

          http://oxidemod.org/threads/restarte...7/#post-251576
          here is an example of a 7DTD Start batch file that I use. the game has a shutdown command that saves the world and shutdown but no restart so I wrote this batch file. how to use:
          1. create a batch file called what ever. mine is _start7DTDServer.bat
          2. make sure the 7DTD Server is not already running, if so shut it down using the shutdown command via Telnet so that you have a clean saved state
          3. run the batch file (make sure you are Admin or have the right permissions)
          4. DO NOT CLOSE the batch file. it will stay something like "starting 7dtd server..."
          5. every time you shutdown the server using Telnet/RCON and the shutdown command, the batch file will restart the server and you will see a "restarting" time stamp in the console/command window.

          Code:
          @Echo off
          cls
          :start
          @Echo Starting 7DTD Dedicated Server...
          
          7DaysToDieServer.exe -batchmode -nographics -configfile=serverconfig.xml -dedicated
          
          echo.
          for /F "tokens=2" %%i in ('date /t') do set mydate=%%i
          set mytime=%time%
          echo Restarting Server: %mydate%:%mytime%
          echo.
          goto start
          Last edited by Smegzor; 4 weeks ago.

          Comment


            #6
            Hi Smegzor,

            I understand I need to install a virtual machine on my windows pc to run linux to run the manager. My confusion is on the rented server side of things. My server manager has several options and I am not sure which I need, or if this is something I need to drop into the server and not use the hosts installer for. Unfortunately I cannot post pictures in the forums, i still dont know why.

            also, we have two rented servers, do I need two virtual machines and two copies of botman running, or can I manage both servers within one manager?

            my choices are:

            Alloc's server fixes
            Compatible with Alpha 18
            Not Installed [ Install ]
            BC Manager v4.0 - A17
            Compatible with Alpha17
            Not Installed [ Install ]
            Botman Mods Pack A18
            For use with Botman server manager. Compatible with Alpha 18 **Please note this does NOT install the server manager only mods to accompany it. For the bot please visit http://www.botman.nz **
            http://www.botman.nz http://www.botman.nz/contact Not Installed [ Install ]
            Botman Mods Pack A18 with BC Mod
            **INCLUDES FIX FOR CURRENT ISSUE WITH AUTOMATIC SERVER RESTARTS AFFECTING THE BOT!!** For use with Botman server manager. Compatible with Alpha 18 **Please note this does NOT install the server manager only mods to accompany it. For the bot please visit http://www.botman.nz **

            Thank you for your help

            Comment


              #7
              Hi SlicksGirl!

              Grab this one.. Botman Mods Pack A18

              You can connect one bot to one server but you can run multiple bots. The tidiest way to do it is to make a new linux user for each bot you want to run. That way everything is kept separate. If you run multiple profiles in one running Mudlet (which Mudlet supports) you may find that initially anyway the bots will occupy the same IRC channels. You will be able to separate them out ok I think. I just avoid any issues with that entirely using different user accounts.

              If self-hosting the bot is too hard, I also host bots both privately and at https://botmanhosting.com

              Comment


                #8
                Hi guys!

                I am testing an important bugfix update overnight on the a18test branch. It fixes several bugs including pvp not going to prison, bail not working, and some minor bugs that I found along the way. More fixes are being worked on this week as time allows.

                Comment


                  #9
                  Cool, appreciate the hard work Smegzor! Looking forward to more changes and fixes

                  Comment


                    #10
                    I have released the bugfix update to the a18 code branch and forced a18test to move to a18 automatically. I will try to post a changelog in the next couple of days.

                    Comment


                      #11
                      Hey there Smegzor, long time lurker and fan. You do some impressive work. Played and enjoyed plenty of servers with your bot loaded on them. This is my first time running a server of my own. Your bot is my choice for self-hosting. I've included some excerpts of the output log below:

                      2020-03-10T12:57:44 1323.726 ERR IOException in ReadLine for TelnetClient_127.0.0.1:38924: Unable to write data to the transport connection: The socket has been shut down.
                      2020-03-10T12:57:44 1324.072 INF Telnet connection from: 127.0.0.1:38942
                      2020-03-10T12:57:44 1324.072 INF Started thread TelnetClient_127.0.0.1:38942
                      2020-03-10T12:57:46 1325.770 EXC Unable to write data to the transport connection: The socket has been shut down.
                      SocketException: The socket has been shut down
                      at System.Net.Sockets.Socket.Send (System.Byte[] buffer, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags socketFlags) [0x00016] in <c9226b2f33b7421e85bb391f94075e49>:0
                      at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x0009b] in <c9226b2f33b7421e85bb391f94075e49>:0
                      Rethrow as IOException: Unable to write data to the transport connection: The socket has been shut down.
                      at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x000e2] in <c9226b2f33b7421e85bb391f94075e49>:0

                      ... (skipped some log output here)

                      (Filename: <c9226b2f33b7421e85bb391f94075e49> Line: 0)

                      2020-03-10T12:58:34 1373.502 ERR IOException in ReadLine for TelnetClient_127.0.0.1:38934: Unable to write data to the transport connection: The socket has been shut down.
                      2020-03-10T12:58:34 1373.502 EXC Unable to write data to the transport connection: The socket has been shut down.
                      SocketException: The socket has been shut down
                      at System.Net.Sockets.Socket.Send (System.Byte[] buffer, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags socketFlags) [0x00016] in <c9226b2f33b7421e85bb391f94075e49>:0
                      at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x0009b] in <c9226b2f33b7421e85bb391f94075e49>:0
                      Rethrow as IOException: Unable to write data to the transport connection: The socket has been shut down.

                      ... (Further down the log is this):

                      2020-03-10T13:32:18 3397.836 INF Exited thread TelnetClient_127.0.0.1:38942
                      2020-03-10T13:32:21 3400.258 INF Executing command 'pm BotStartupCheck "test"' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:21 3400.551 INF Executing command 'version' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:50 3429.458 INF Executing command 'version' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:50 3429.508 INF Executing command 'gt' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:50 3429.558 INF Executing command 'bm-uptime' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:50 3429.608 INF Executing command 'bm-resetregions list' by Telnet from 127.0.0.1:39252
                      2020-03-10T13:32:51 3430.579 INF Executing command 'bm-say "[D4FFD4]Bot is online. Command me. :3[-]"' by Telnet from 127.0.0.1:39252


                      So despite the errors it sounds like bot loaded just fine. My question is, should I be looking into correcting the errors mentioned above or is it something that doesn't affect the server and bot running how they should? Because bot responds when I output "hi bot" in game but doesn't /gimme admin the way it should.. Yes, I included my Steam ID in serveradmin.xml as directed when running a home server and is included in the output log file on the server. If the problem involves those errors, what should I do?
                      Last edited by Wolfish247; 3 weeks ago.

                      Comment


                        #12
                        Sasoriza is my husband, I asked him for help on this project. thank you for your assistance. no rush, server wont go live until april and other admins wont need to access this until then.

                        Comment


                          #13
                          Hi guys!

                          I have updated the 2 mods zips on my website with the latest Botman mod version 1.8.10

                          Here are the download links..

                          https://botman.nz/Botman_Mods_A18.zip (Without BC)

                          https://botman.nz/Botman_Mods_A18_With_BC.zip

                          For anyone who wants to keep tabs on the latest version without having to monitor posts, I have also uploaded the mod info xml https://botman.nz/ModInfo.xml which I will soon have the bot monitoring and reporting as well.
                          Last edited by Smegzor; 1 week ago.

                          Comment


                            #14
                            Hi! Me again! ^^

                            I have released a bugfix update to the a18 code branch. I have more stuff to code and in about 2 days my country is going into full lockdown for 4 weeks. I will be staying at home working on the bot, watching the odd movie and playing games. I don't need to worry about zombies as I have pretty good defenses set up so I'm hoping to get a huge amount done to the bot over the coming weeks. I am unlikely to have much if any real work to do during the lockdown (which may be extended) so the bot is my job. All hail the bot! Bot is love Bot is life.

                            I'll post a changelog soon and I might even find time to update the help. Beyond that who knows? I may even wear clothes. xD

                            Comment


                              #15
                              I have updated the bot command help.

                              Comment

                              Working...
                              X