I have updated the github repo and some of the code branches. I will update more after this. I am hoping that this bot is good enough to be the new stable bot as the current stable bot has issues that have been fixed. I want to at least backport the most important fixes if I'm not replacing branches. That will need to be done with care and some testing to see if the magic smoke doesn't escape.
Here is the changelog..
Bug fixes, performance tweaks, new commands, queues and timers and stuff.
New command /remove/leave expired claims.
The bot can automatically remove dead claims. The default is to leave them alone.
Fixed a bug in the screamer alert toggle. Used wrong value for true and false.
Base separation has been changed. There is a new base deadzone that can be set. The lowest setting allowed is 2x the base size. This is so that base protections won't overlap. If players are friends, the base separation restriction is waived.
Fixed issue in hotspot commands that broke them in API mode. It seems the API is a bit picky about the use of #. This was also fixed in a few other places for the same reason.
The /locations command now reports when there are no locations instead of saying nothing.
The bot now always sends the 'sa' command via telnet to fix an issue I encountered with sending it via the API.
Fixed typo in /enable/disable return so that it matches the help.
Added an API queue and timer so that API commands sent by the bot are sent one at a time on a timer to avoid spamming too many too fast. Currently this is only used for chat sent by the bot. You will notice that chat appears with a slight delay due to this. This should also help to stop some players spamming bot commands in an attempt to disrupt the bot or server. You can also set a command delay.
Added a new post update function which does some maintenance tasks after a bot update. At the moment all it does is a bot restart 5 minutes after the update. This will help to ensure that the bot is properly initialised with any changes introduced by the update. It won't do this until the next update since the code is new and not live before the update.
Added IRC command, reload bot. Same as ingame command.
Added IRC command empty category {category name}. A fast way to delete everything from a category.
Added IRC command igplayers. Its used for debugging the bot. The bot creates a temporary ingame player record for each player online. This command lets you view all of it for each player. There is also igplayer {name} to list a specific player's data.
Fixed a bug when loading the server table from the database. If the IRC server was not defined, the bot would fail to load properly.
Removed a very basic 'phone home' feature as I haven't been monitoring it anyway. It will be replaced with restful API in the web interface.
To help reduce command spam on servers with large online player counts, when online players exceeds 24 players, several timed bot commands switch to slower timers. This results in a slower bot but it should help to prevent freezes and crashes when the server is busy.
Fixed bug in gimme arena that prevented zombies spawning.
Fixed bug that caused admins to return to the admin list that had been removed.
Added delay after a player spawns after joining the server before the bot attempts to teleport them. This may be unnecessary but there was an issue with players sometimes getting desynced and causing the server to crash if they are teleported too quickly.
Maandag, Oktober 8, 2018