Here is the specification for autoadd/kick bot function (sorry - this post will be long once again
). This written here is valid since podbot2.6mm R2beta25 (you can ses this number in meta list).
What do the people want? They want keep as constant the number of bots+players at the server, but sometimes this was not working correct in old PB2.5 (client connection failed - bot didn't rejoin back) - sometimes this made a server empty. Another people want the same but with the possibility of some manual control of bots on the server (some kick, some add, some removebots and some fillserver - these function have to be still avaiable). How to solve this?
Now in code is an new variable, but this variable is invisible for user-admin. I named it keep_bots_players - this variable define how many bots+players shuld be still on the server. This name is only here for explaining how this is working now and in code the name can be different.
The meaning of max_bots and min_bots - these are limits only but with possibility change them from console by:
pb max_bots {new_value}
pb min_bots {new_value}
You can define max_bots as 12 and min_bots as 2 and put 8 addbot commands in podbot.cfg - then keep_bots_players is calculated (automaticaly) as 8 - for example. If You use fillserver - this variable will
reach 12 (in our example). At the first map (server started) the first bots added to the server are from podbot.cfg - these added by addbot commands or fillserver. If there is 4 addbot commands - first will enter the game these 4 and after if there is also a fillserver command automaticaly will be added some other bots (according to min/maxbotskill min/max_bots parameters).
So - You started a game with 8 bots. One player is connected - one bot is automaticaly kicked. Player is disconnected - bot is automaticaly added. This is checked every frame - if still keep_bots_players is the same like number of bots+players.
If You decide manualy add some bot (from podbotmenu or by pb addbot from console) - bot will be added according to this what You specified (if You type pb addbot 100 2 2 3 "KWo" - just exactly this bot will be added - not some bot automaticaly). In this case keep_bots_players variable will be automaticaly incremented by 1. If You decide to kick manulay some bot - bot will be kicked (if from podbotmenu - some from selected team, if from console - exactly this You selected). In this case keep_bots_players variable will be automaticaly decremented by 1. If You decide to use fillserver and You have actualy 10 bots+players on the server - bots will
be added automaticaly until reaching max_bots = bots+players (in our example 12). In this case keep_bots_players will be overwritten by max_bots variable (12).
The same for removebots - If You decide to use this command, bots will be removed from the server until reaching min_bots = bots+players (in our example 2). In this case keep_bots_player variable will be overwritten by min_bots variable (2). Writing in console :
pb max_bots 6
will decrase (if is grater) the keep_bots_players variable to 6 and some bots will be probably kicked. Writing in console:
pb min_bots 7
will incrase (if is lower) the keep_bots_players variable to 7 and some bots will be probably added. This "probably" is depanding of actual situation on the server - if the number of human-players lets kick or add some bots in these both situations.
Connecting to the game more human-players than is actually calculated keep_bots_players will not affect this variable. If You have this variable as 10 and there is 12 human-players - of course You can't kick more bots.
All here can work automaticaly and there is still some control and possiblity of manual bots management.
The beta is avaiable here:
http://www.mapzap.org/files/podbot/podbotBETA.zip