What features would you want to see in an admin plugin?
devicenull
Join Date: 2003-04-30 Member: 15967Members, NS2 Playtester, Squad Five Blue
I've begun writing an admin plugin for NS2, and I'm wondering what features people consider to be essential.
So far, these are the planned features:
<ul><li>Kick/Ban</li><li>Rcon</li><li>Map voting</li><li>Admin chat</li><li>Mute/gag</li><li>Change level</li><li>Change server cvars (ex: password, gravity, etc)</li><li>Move players to marines/aliens/readyroom/random</li><li>Eject a commander, alien or marine</li><li>Access by group</li><li>MySQL support would be nice</li></ul>
Anything I'm missing that you would consider essential?
So far, these are the planned features:
<ul><li>Kick/Ban</li><li>Rcon</li><li>Map voting</li><li>Admin chat</li><li>Mute/gag</li><li>Change level</li><li>Change server cvars (ex: password, gravity, etc)</li><li>Move players to marines/aliens/readyroom/random</li><li>Eject a commander, alien or marine</li><li>Access by group</li><li>MySQL support would be nice</li></ul>
Anything I'm missing that you would consider essential?
Comments
So far, these are the planned features:
<ul><li>Kick/Ban</li><li>Rcon</li><li>Map voting</li><li>Admin chat</li><li>Mute/gag</li><li>Change level</li></ul>
Anything I'm missing that you would consider essential?<!--QuoteEnd--></div><!--QuoteEEnd-->
Toggling All talk on/off.
: Traps the disruptive player in a small glass box muting them and trapping them on the spot like a mime <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" />
Some readyroom_all command might be useful too.
: Traps the disruptive player in a small glass box muting them and trapping them on the spot like a mime <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" /><!--QuoteEnd--></div><!--QuoteEEnd-->
That...is...AWESOME
But make them killable to the opposing team
: Traps the disruptive player in a small glass box muting them and trapping them on the spot like a mime <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" /><!--QuoteEnd--></div><!--QuoteEEnd-->
Hardly essential.
Perhaps admins should be able to set nextmap?
: Traps the disruptive player in a small glass box muting them and trapping them on the spot like a mime <img src="style_emoticons/<#EMO_DIR#>/biggrin-fix.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin-fix.gif" /><!--QuoteEnd--></div><!--QuoteEEnd-->
mute, gag, remove Ready Room function and make it so that the only way to leave the box is the Quit button. =D
Mute Chat
Kick
Ban (5m, 1h, 24h, 144h, perm)
Move to RR
Force Random
Restart Match and Force Random
Stealth Spec
Change Map
Display Server Message
Groupware functionality. I want to create different groups and assign steam_ids to them.
Example:
Group: Light Admin, available features: kick, mute voice, stealth spec, members: steam_0132408u324, steam_3429234
Group: Admin, available features: all
Most importantly the plugin must log the use of each feature or even better allow me to configure which use should be logged.
Extensive logging ist just very important, if you want any form of control over your admin crowd.
slay a player
<!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->amx_exec
amx_execteam
amx_execall
amx_slap
amx_slapteam
amx_slapall
amx_beat
amx_beatteam
amx_beatall
amx_slay
amx_slayteam
amx_slayall
amx_god
amx_godteam
amx_godall
amx_noclip
amx_noclipteam
amx_noclipall
amx_heal
amx_bury
amx_buryteam
amx_buryall
amx_unbury
amx_unburyteam
amx_unburyall
*Server Related Stuff
amx_hostname
amx_timelimit
amx_password
amx_listmaps
amx_slapdmg
amx_alltalk
*Client Punishments
amx_llama and amx_unllama
amx_gag and amx_ungag
amx_shutup and amx_unshutup
amx_pig and amx_unpig
*For Getting Rid of those ######s
amx_quit<!--QuoteEnd--></div><!--QuoteEEnd-->
Some were fun as hell, some were not, all worked well. One of my faves from this was amx_bury: it rendered the recipient immobile as well as disabling his F4. :laughing:
- switch players to marines or khaara
- nuke :roll:
So far, these are the planned features:
Kick/Ban
Rcon
Map voting
Admin chat
Mute/gag
Change level
Anything I'm missing that you would consider essential?<!--QuoteEnd--></div><!--QuoteEEnd-->
I wonder how much of this will be in vanilla NS2. I would write Max or Flayra to get an idea of what they plan, so you don't waste time implementing stuff that's already going to be there.
How about some sort of IRC backend? Would allow you to echo chat to an IRC channel for instance. Easy way to get hold of an admin?
<a href="http://www.unknownworlds.com/ns2/forums/index.php?showtopic=106254&st=0" target="_blank">http://www.unknownworlds.com/ns2/forums/in...106254&st=0</a>
My favorite was the plug-in that made anything you said come out as Bleeet!!!
My basic requirements are
1) Kick, Temp Ban, Perm Ban, Mute.
2) No Slay, Teleport etc.. they are not needed unless your admins like ego trips.
3) A map manager including map change policy and priority. I.e. a maplist that changes by time of day, number of players.
4) A vote interface for kick/ban/mute/map change
5) NS specific features but keep them simple. I.e. commander ban, force readyroom etc.
6) A database backend with an easily configurable query set so it can be integrated into existing user databases etc.
I was planning on adding support for admin groups already, just forgot to add that to my initial post.
MySQL support for various things would be nice, but I'm not entirely sure how possible that is in LUA. I'll take a look and see, I might end up just writing another interface plugin for SourceBans (as I really don't want to write another PHP frontend for bans). I'm attempting to write this as modularly as possible, so replacing the file storage of bans with mysql storage at some point shouldn't be too hard.
I've updated the first post with the expanded list of features now, let me know if I missed anything
@Private: It's been nearly impossible to get in contact with them for any reason, so I don't really have much faith that I could to find out what features will be there already.
I was planning on adding support for admin groups already, just forgot to add that to my initial post.
MySQL support for various things would be nice, but I'm not entirely sure how possible that is in LUA. I'll take a look and see, I might end up just writing another interface plugin for SourceBans (as I really don't want to write another PHP frontend for bans). I'm attempting to write this as modularly as possible, so replacing the file storage of bans with mysql storage at some point shouldn't be too hard.
I've updated the first post with the expanded list of features now, let me know if I missed anything
@Private: It's been nearly impossible to get in contact with them for any reason, so I don't really have much faith that I could to find out what features will be there already.<!--QuoteEnd--></div><!--QuoteEEnd-->
Yeah, I always find it irritating when admins abuse various "fun" commands, like binding a key to slapping themselves and flying around or irritating players to flex their power.
Regarding admin abuse commands: 6 years ago, I was one of <b>40</b> admins on some CS 1.6 server, and the sole gimmick was to grief obnoxious CS pubbies. It was funny at first, but the gimmick died within a month as less pubbies joined our server. Eventually, people got bored and moved on to better games.
Player abuse may be funny if used sparingly, but it's almost always more effective to kick or ban than make them linger and remember how awful their server experience was, and to spread it on by word of mouth.
Regarding admin abuse commands: 6 years ago, I was one of <b>40</b> admins on some CS 1.6 server, and the sole gimmick was to grief obnoxious CS pubbies. It was funny at first, but the gimmick died within a month as less pubbies joined our server. Eventually, people got bored and moved on to better games.
Player abuse may be funny if used sparingly, but it's almost always more effective to kick or ban than make them linger and remember how awful their server experience was, and to spread it on by word of mouth.<!--QuoteEnd--></div><!--QuoteEEnd-->
I haven't really looked into SQL stuff at all yet, just haven't hit that point. Thanks for the link though.
In my experience when players get slapped/abused rather then kicked they just start acting up more... so it's not really a fix for anything.
The only other thing I would like if mysql can not be implemented is the ability to share config/ban data across multiple servers. Maybe having a single set of config files that can be used/update by multiple local servers
Bad idea.
... Why are terrible maps on the server / in votemap to begin with? A map rating system would be nice.. say midway through the game poll all the players "Do you like this map?". Store the responses for awhile, depending on how many people like a certain map, it shows up in the mapcycle more. Maps that everyone hates just disappear.
I've used luasql myself for a bit, and its fine but seems finicky. The problem I see with it however is that it is an external library. I'm not sure how the devs are implementing a Lua sandbox, I would hope that external drivers won't be allowed. You'd have to write your own Lua only driver of some sort, using whatever network libraries they've implemented and opened up through Lua.
As for an admin plugin, I vote for keeping it simple but allow add-ons for the really un-needed baggage. If all of the following is already implemented in the game, I would probably just use the built-in myself, but:
Kick, Ban, User Friendly Multi Admin, Map voting, Team Balancer, and possibly a (small!) menu to allow admins to easily change maps. I think everything else can be safely tucked away in a "download seperately" drawer.
For the "User Friendly Multi Admin" part though, I mean keep the configuration down to a bare minimum. I think when adding a new admin, one should only have to specify their unique id, password, and access level. Then access levels can be defined simply as what commands an administrator with a given access level can use.
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->AccessLevelName="Full Control"
AccessLevelCommands="1;0;1;0;0;1;"<!--c2--></div><!--ec2-->
Something like that?
As for an admin plugin, I vote for keeping it simple but allow add-ons for the really un-needed baggage. If all of the following is already implemented in the game, I would probably just use the built-in myself, but:
Kick, Ban, User Friendly Multi Admin, Map voting, Team Balancer, and possibly a (small!) menu to allow admins to easily change maps. I think everything else can be safely tucked away in a "download seperately" drawer.
For the "User Friendly Multi Admin" part though, I mean keep the configuration down to a bare minimum. I think when adding a new admin, one should only have to specify their unique id, password, and access level. Then access levels can be defined simply as what commands an administrator with a given access level can use.
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->AccessLevelName="Full Control"
AccessLevelCommands="1;0;1;0;0;1;"<!--c2--></div><!--ec2-->
Something like that?<!--QuoteEnd--></div><!--QuoteEEnd-->
I was planning on going with the flag systems in use by amxx or sourcemod, so you would end up with say "bdefz" as your access level. It's a bit easier to understand then toggling individual flags on and off like that I think.
An ability to recast votes with in a time limit. So if some one calls a vote in the middle of a fire fight, you don't accidentally vote against your wishes.