Callsign registration & aditional admin options

Make suggestions for improving one of the best games on the net!
Post Reply
User avatar
JeffM
Staff Sergeant
Staff Sergeant
Posts: 5193
Joined: Fri Dec 13, 2002 4:11 am
Location: https://github.com/OmniTanks
Contact:

Callsign registration & aditional admin options

Post by JeffM » Fri Feb 07, 2003 12:54 am

I am implementing a patch that will give servers some more controll over how they can give out admin rights, and allow users some more contoll over the uses of there callsigns.

The plan is this:

Split out the individual "/" server comands to be controlable on a per user basis. Not just a /password user.

Allow a IRC NickServ Style /register, /identify , and /ghost type commands to allow users to register callsigns with passwords. kick people who are using there callsigns, and to let the server know who each user is.

Also the server would allow each user to have a set of permisions based on his login. so that server admins could give certan users kick/ban premisions, and other users just countdown permisions.

initaly this will all be done with a local data file, while it's being tested but it would be easy to have it do all the look ups from a centeral database. Just trying to do it in baby steps to make sure it gets done.

It's not as lock down secure as a full blown registerd user list, but it seems to work for IRC, so it could work here. Also this method dosn't break protcoll since it's all handled via "/" messages.

and if the server dosn't set up a database then it all works like it used to, you do a /password and you have full admin rights. And all usesers get the default rights ( what they can do now ).

Jormungandr is interested in testing it on one of his new servers. I also thing that it could work well with the cop program. I also think it would be nice for CTF leauges, where you could give out Ref access without giving out full admin.

I would just like thoughts or comments on this idea. It seems like a nice posible feature.
ImageJeffM

michaelh20
Private First Class
Private First Class
Posts: 57
Joined: Thu Dec 12, 2002 2:28 am
Location: MN USA

Post by michaelh20 » Fri Feb 07, 2003 3:43 am

So the client has to store a password for each server too and send it right after it connects, or some small period of time otherwise?

Of course it would madden a server admin if he/she had to assign a password for each and every person who entered the door

User avatar
JeffM
Staff Sergeant
Staff Sergeant
Posts: 5193
Joined: Fri Dec 13, 2002 4:11 am
Location: https://github.com/OmniTanks
Contact:

Post by JeffM » Fri Feb 07, 2003 3:58 am

just like nickserv on IRC, it's up to the user to send a /identify with his password.

Initaly I don't plan on changing the client, so the players will have to do it manualy.

If it's liked, then the client can be changed to store a password, look for the servers "you need to ID" message and then send the /identify, like more modern IRC clients.

It's up to the user to register his callsign. the admin can then set higher level permisions after the callsign has been registerd. with a /SetRights command.

if a user is on as a callsign that is registerd but has not identified yet, he is flaged as "unverified" and only has the default user permisions. He will receve a message from the server that he is using a registerd callsign and shoudl /identify. You only get your server permisions when you ID. I am looking into a server option to auto kick after a certan amount of time if you don't identify a registerd callsign.

if your callsign is not registerd, and you don't care, nothing happens, and you just have normal user rights.

If you go on and your callsign is in use by someone else other then you, and you have registered it, you can go in as another name, do a /ghost <callsign> <your pass> and it will notify the user who has your callsign and kick them. You must have the callsign password to kick this way. It would be nice then to give a command that lets you change your callsign in game. But that could be added later.
ImageJeffM

User avatar
JeffM
Staff Sergeant
Staff Sergeant
Posts: 5193
Joined: Fri Dec 13, 2002 4:11 am
Location: https://github.com/OmniTanks
Contact:

Post by JeffM » Fri Feb 07, 2003 4:03 am

ohh and the sever admin can register a user called "default" and set it's permisions, and that will set the default premisions for each new player. so the admin only has to do that once.

Then the admin can just hit the people he wants to give special access too. Or he can give another person set rights abilitys. A person with SetRights abilty can only give others rights he has, so you can make lesser "subadmins".

there are set of "meta" permisions too, for things like "normal player","ref", "cop", "trusted admin", and "super admin" that could catch most of what people do.
ImageJeffM

User avatar
Dervish
Private First Class
Private First Class
Posts: 651
Joined: Thu Dec 05, 2002 12:39 am
Location: public void

Post by Dervish » Fri Feb 07, 2003 5:13 am

Excellent idea. :) Considering the community explosion since the last couple of slashdots, I think now is as good as any time to start planning such designs and when to implement them into code.

For example, this would give an extra dimension to server ops to restrict their admins from turning flags off or changing the lagwarn. Currently anyone with the password has the same rights as a server op would on a remote system, and that isn't quite right.
protected object myTank(){
foreach(noob in this.game){return frag(noob);}}
Image

User avatar
JeffM
Staff Sergeant
Staff Sergeant
Posts: 5193
Joined: Fri Dec 13, 2002 4:11 am
Location: https://github.com/OmniTanks
Contact:

Post by JeffM » Fri Feb 07, 2003 4:43 pm

that's the plan stan.
ImageJeffM

Post Reply