Looking this over, it seems wierd that the server was locked, when the last action line there states that it was unlocked. I'm going to add a timestamp to the action log.
As for it locking at 17/19, that would stem from having 1 reserve slot and 1 minimum slot configured. Basically reserve slots are slots that will always be held open for reserve slot holders to join and fill, meaning no one would be kicked as the slot is always available. If you just want to keep just the one extra slot to allow reserve slot holders to join, then you can safely set reserveslots to 0, which will have DAK hold only the minimum slots open (1). As for the password issue, im going to change it so it that any playercount change, or the periodic scan, will cause the password state to be re-applied (either the nil password or the reserve password)
I just updated the github version with those changes. Generally speaking changing the map should also always resolve the password issue (as a less invasive fix).
As for having individual logs for each admin, I would like to see file appending fixed before adding something like that (as it would require reading the entire file to update the log).
Yea I figured as much, any ideas how we can get that feature in the game faster? As I am sure it is low priority it might be faster to have someone develop it basically as a mod rather than wait around for it...
Who is with me in trying to start a thread to bring more focus to this issue? We need a lot of posts for them to actually do something about it.
I was testing the ban system in DAK, and I did manage to successfully ban myself, however sv_unban does not seem to work (when being used by another admin on the server). The ban is showing up in DAKbannedplayers.json. I'll also note that the reason specified when the ban was entered didn't show up in the DAKbannedplayers.json file. It's listed as "no reason."
Slightly unrelated, is there any way we could use the original bannedplayers.json file, so in the event we're not using DAK we can still easily retain our full banlist without having to copy and paste newer bans to the native banlist ?
On the subject of banlists, could you shed some light on the ban-related parameters under the server admin heading in DAKconfig.json ?
I don't have any of these options configured. Am I supposed to set this up to get ban functionality working fully in DAK? Does this have something to do with the native web admin interface?
Those are yet unused features of the ban/unban system, which were intended to be used with a php bans database (or even sourcebans).
The banslist change kinda sucks, i had intended the change to allow me to store additional parameters, but then i dont want to break the original file, but should also update it... its kinda a dilemma. I think i can make it update the old file without too much issue, and I think thats how it will work in a sec. The sv_ban command in DAK takes an additional parameter over the default, which is name. If omitted, that might have caused everything to be off a row in your ban record (so no reason). The format in DAK for sv_ban is (steamID, GameID, playerName), the name to associate with the ban (in quotes if there are spaces), then the duration in minutes and then any reason after that.
As for the unban, did they recieve an ack stating your ID was unbanned?
Erf found the unban error and uploaded the fixes. This version will use the old bannedplayers.json file again, converting the format just for the array in memory, not affecting the file itself - (converts it on load, converts it back on save).
As for the unban, did they recieve an ack stating your ID was unbanned?
They got an error along the lines of "steam ID not found." I just removed my ban entry from DAKbanned file and uploaded the modified file to the server.
Thanks for the update! I'll update it tomorrow and do more testing.
Yea I would have released something to help bridge the bans between sourcebans and DAK but I have still had a lot of trouble understanding how sourcebans actually posts bans and processes unbans. Unfortunate the help I was able to get was go read the code... lol
What I might do is create a php script that allows bans to be sent to a CS:S server as an RCON command that then allows the actual sourcebans plugin to process them from there. Then I just create 1 slot dummy servers to act as a relay. The only problem is that it does not allow you to attach which admin did the ban and without individual admin log files it can be hard to track down who is doing what.
I have had user reports for a while that the random vote plugin wasn't performing properly. We tried it tonight, and 4 people were still left in the ready room. When the random vote executed, I do think there were 4 people already on teams. Not sure if that's related.
The random vote wont random people that are flagged as AFK anymore, could it be those people were not moving when the vote passed?
No, that shouldn't be the case. We just finished a round and I got most of them on the server to vote random. One of the players who didn't go random immediately chimed in and asked why he wasn't randomed. I'll do more testing with this over the coming days.
I do recall one of them did. Now that I think of it, I believe I remained in the ready room as well. That might be the reason. I should do more testing. If this is the case, could we have an option to random admins as well? Some of us like to smurf and wouldn't like to be found out that way.
Done! Thanks again. I came across why most of our bans weren't being read. For some reason, many of the bans had quotes around the data in the ID field. I have confirmed that these bans weren't being read properly by the server, becoming ineffective. A recent build of DAK was able to read them like this. I believe it was because that build created a separate banned players file. Server admins, make sure you remove quotes around the NS2 steam IDs in the ID field.
I tested banning some more, and I still get "no reason" in the reason field. When I banned, I used this syntax:
Installed the latest build. Reasons are coming up properly now
I have noticed another bug. Temp bans show up as ridiculously long durations in the bannedplayers.json file. However, the bans do seem to expire appropriately on the server and in the bannedplayers.json file (if I ban myself for 3 minutes, I can connect fine after 3 minutes pass and the ban entry in the bannedplayers.json file is gone).
Looks like the random bug is still present. Earlier today we voted random. In both rounds, there were some people left over in the lobby. I have confirmed in both cases the people left in the lobby were not admins nor reserve slot holders. I tried using sv_randomall to random the remaining people in the lobby, but that didn't work. I'm not sure if this is a bug with DAK or with NS2 itself. I'm going to do some more testing.
Here's the screenshots for both rounds with random teams enabled:
I shut DAK of temporarily today and used sv_randomall after every round. I didn't have anyone stick around in the ready room, save for one moment when someone in spec didn't get randomed in.
Edit: It looks like console bans with DAK enabled aren't showing up in the ban section in web admin. The entries are present in bannedplayers.json. This was a temp ban, if that helps.
Hmm i think I have fixed those errors, and hopefully adjusted the AFK plugin issue that might have been causing people to get left behind in the RR on a team random. As for the temp bans not showing up in the web admin, I am not 100% sure why that might happen - do they just not show up at all? As all my bans show up correctly in testing.
Thanks for the update! I installed it now. The temp/regular bans will show up when a new map loads. Same with unbanning via web admin: The unban will follow through on the next map load. Banning/unbanning takes place instantly when DAK is disabled. It's like web admin doesn't have instant read/write access when DAK is running (when it comes to bans).
Comments
As for it locking at 17/19, that would stem from having 1 reserve slot and 1 minimum slot configured. Basically reserve slots are slots that will always be held open for reserve slot holders to join and fill, meaning no one would be kicked as the slot is always available. If you just want to keep just the one extra slot to allow reserve slot holders to join, then you can safely set reserveslots to 0, which will have DAK hold only the minimum slots open (1). As for the password issue, im going to change it so it that any playercount change, or the periodic scan, will cause the password state to be re-applied (either the nil password or the reserve password)
Who is with me in trying to start a thread to bring more focus to this issue? We need a lot of posts for them to actually do something about it.
Slightly unrelated, is there any way we could use the original bannedplayers.json file, so in the event we're not using DAK we can still easily retain our full banlist without having to copy and paste newer bans to the native banlist ?
On the subject of banlists, could you shed some light on the ban-related parameters under the server admin heading in DAKconfig.json ?
Specifically:
"QueryURL": "",
"UnBanSubmissionURL": "",
"BansQueryURL": "",
"BanSubmissionURL": ""
I don't have any of these options configured. Am I supposed to set this up to get ban functionality working fully in DAK? Does this have something to do with the native web admin interface?
The banslist change kinda sucks, i had intended the change to allow me to store additional parameters, but then i dont want to break the original file, but should also update it... its kinda a dilemma. I think i can make it update the old file without too much issue, and I think thats how it will work in a sec. The sv_ban command in DAK takes an additional parameter over the default, which is name. If omitted, that might have caused everything to be off a row in your ban record (so no reason). The format in DAK for sv_ban is (steamID, GameID, playerName), the name to associate with the ban (in quotes if there are spaces), then the duration in minutes and then any reason after that.
As for the unban, did they recieve an ack stating your ID was unbanned?
Erf found the unban error and uploaded the fixes. This version will use the old bannedplayers.json file again, converting the format just for the array in memory, not affecting the file itself - (converts it on load, converts it back on save).
They got an error along the lines of "steam ID not found." I just removed my ban entry from DAKbanned file and uploaded the modified file to the server.
Thanks for the update! I'll update it tomorrow and do more testing.
What I might do is create a php script that allows bans to be sent to a CS:S server as an RCON command that then allows the actual sourcebans plugin to process them from there. Then I just create 1 slot dummy servers to act as a relay. The only problem is that it does not allow you to attach which admin did the ban and without individual admin log files it can be hard to track down who is doing what.
No, that shouldn't be the case. We just finished a round and I got most of them on the server to vote random. One of the players who didn't go random immediately chimed in and asked why he wasn't randomed. I'll do more testing with this over the coming days.
I tested banning some more, and I still get "no reason" in the reason field. When I banned, I used this syntax:
sv_ban <player ID> <name> <duration> <reason>
Am I doing it right?
I have noticed another bug. Temp bans show up as ridiculously long durations in the bannedplayers.json file. However, the bans do seem to expire appropriately on the server and in the bannedplayers.json file (if I ban myself for 3 minutes, I can connect fine after 3 minutes pass and the ban entry in the bannedplayers.json file is gone).
Interesting. I actually recall this issue now from web admin bans. I hope UWE clears that up to be less esoteric.
Here's the screenshots for both rounds with random teams enabled:
http://imgur.com/a/dZq1r#0
Yes we do. I actually forgot that was running. I suppose it's not needed any more due to NS2 having a native option?
http://www.gitpaste.com/paste/1780/
http://www.gitpaste.com/paste/1782/
Edit: It looks like console bans with DAK enabled aren't showing up in the ban section in web admin. The entries are present in bannedplayers.json. This was a temp ban, if that helps.