Customizable admin tag

Dr. ODr. O Minister of RoggenSenior
edited 12:16PM in Suggestions
It would be really nice to be able to change the default admin tag to something else than "admin".

It takes just a few lines of code to add that. I've already requested this in 2012 and 2014, and I was told it would be added. It's still not there. Please consider it!

Much appreciated ;)
PVKII Server: The House of Dr. O
--friendly fire
--manual block

My maps/plugins:
te_sahara_b1 : http://pvkii.gameban...com/maps/184372
Weddings: http://forums.allied...ad.php?t=221933



15:55 - Sir Whiskeyngton: well you're the minister of roggen
15:55 - Sir Whiskeyngton: you'd just be doing your job
15:56 - Sir Whiskeyngton: I need to send an army of monks to the enemy
15:56 - Sir Whiskeyngton: since I'm the minister of propaganda



5:22 PM - Felis catus: QSBtYW4gY2hvb3NlcywgYSBzbGF2ZSBvYmV5cywgQWxsIHdvcmsgYW5kIG5vIHBsYXkgbWFrZXMgU2lyIFdoaXNrZXluZ3RvbiBhIGR1bGwgYm95Lg==
5:22 PM - Felis catus: base64
5:23 PM - Sir Whiskeyngton: nab
5:23 PM - Felis catus: dr o could translate that without a decoder
5:23 PM - Felis catus: he is a wizard
5:23 PM - Felis catus: he actually programmed roggen
5:24 PM - Felis catus: he programmed the world
5:24 PM - Felis catus: how it behaves
5:24 PM - Felis catus: dr o is god
5:24 PM - Sir Whiskeyngton: lol
5:24 PM - Sir Whiskeyngton: you forgot the first commandment
5:25 PM - Sir Whiskeyngton: 1. Thou shalt have no gods; thou shalt only have Budnab.
5:25 PM - Felis catus: dr o made him
5:25 PM - Felis catus: dr o defined the gods
5:25 PM - Felis catus: dr o did everything
5:25 PM - Felis catus: he is the god

Comments

  • PaladinPaladin Senior
    edited January 2015
    Couldn't somone like MadKat do this? although some admins could change it to something rather unfriendly.
    2v2z7rr.jpg
  • FelisFelis Glitch Kitty PVKII Team
    edited January 2015
    Make this happen please, my server needs it a lot.
  • SpirrwellSpirrwell That Guy That Knows Things About a Lot of Things PVKII Team, Authorized Creator
    edited 12:16PM
    Paladin wrote:

    Couldn't somone like MadKat do this? although some admins could change it to something rather unfriendly.


    I'm a bit late to the party, but I just got Internet back yesterday. Anyway, I do believe it can be done. It's not so super easy though. I've looked into it quite a bit, and I've found that PVKII uses a client_update (I think that's the name) command in order to change the tags, which requires some weird entity index number or whatever in order to run properly. (Warning: Programming garble ahead) It seems like it uses some sort of an enumerator with bit shifting technique like 1<<0. This is kind of like flags and they are added up together somehow depending on if a person is part of a group or not.

    I do believe this could be modified in a plugin, but it would be a tremendous pain in the ass, and it could easily be abused by giving a person a "Beta Tester" or "Developer" tag. I just suggest whoever writes such a plugin to make sure it can't be changed to that.
    5GY1DFV.png


    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░██████░░░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░████░░█████░░░██
    ░░░░░░███░░░░░░░░░░░░░░████░░█████░░░███
    ░░░░░░░░░░░░░░░░░░░░░░░░██░░░░░░████░░█████░░░████
    ░░░░░░░░░░░░░░░░░░░█████████░░███████████░░████
    ░░░░░░░░░░░░███████████████████████████░░░░░░██
    ░░░░░░░░░██████████████████████████████░░░░░░██
    ░░░░░░░█████████████████████████████████░░░░░░██
    ░░░░░██████████████████████████████████░░░░░░███
    ░░░░░███████████████████████████████████░░░░░████
    ░░░░████████████████████████████████████░░░░░████░░
    ░░░░███████████████████████████████████░░░░█████░░░
    ░░░░█████░░░░░░░░████████████████████░░░░██████░░░░
    ░░░░░██░░░░░░░░░░████████████████████████████░░░░░░
    ░░░░░░░░░░░░░░░░░██████████████████████████░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████████████████░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░█████████████░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░██░░░░░░░███████░░░░░░█████████░░░░░░░░░
    ░░░░░░███░░░███████░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░███████████░░░░░░░░░░░░░░░░░███░░░░░░░░░░░░░
    ░░░████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░████░░░░░░░░░░░░░░░░░░░░░░░░░░██████░░░░░░░

    yP71cHI.gif

    Xxkr2il.jpg
    56JtqQq.jpg
    kJFRh1a.png
    MOBO: MSI Z87M GAMING
    CPU: Intel® Core™ i7-4770K OC'd @ 3.7 GHz
    GPU: EVGA GTX 660 Ti
    RAM: Ripjaws X 8GB (2 x 4GB) DDR3 2133MHz
    OS: Windows 10 Technical Preview

  • Dr. ODr. O Minister of Roggen Senior
    edited 12:16PM
    The default tags are hardcoded in the game, as well as their priority. There is no point in messing around with sourcemod in this case, this has to be done in the game code if you want a clean solution. For instance, there exist already these commands:

    sv_community_groupid
    sv_community_grouptag

    However they have a very low priority and are overwritten by any other default tag. The admin tag however has highest prio but its boringly just "Admin" and cannot be modified.
    Adding this feature would mean for the devs to just add a console command, which is an issue of 5 min.

    So once again, please add a sv_admin_grouptag command.
    PVKII Server: The House of Dr. O
    --friendly fire
    --manual block

    My maps/plugins:
    te_sahara_b1 : http://pvkii.gameban...com/maps/184372
    Weddings: http://forums.allied...ad.php?t=221933



    15:55 - Sir Whiskeyngton: well you're the minister of roggen
    15:55 - Sir Whiskeyngton: you'd just be doing your job
    15:56 - Sir Whiskeyngton: I need to send an army of monks to the enemy
    15:56 - Sir Whiskeyngton: since I'm the minister of propaganda



    5:22 PM - Felis catus: QSBtYW4gY2hvb3NlcywgYSBzbGF2ZSBvYmV5cywgQWxsIHdvcmsgYW5kIG5vIHBsYXkgbWFrZXMgU2lyIFdoaXNrZXluZ3RvbiBhIGR1bGwgYm95Lg==
    5:22 PM - Felis catus: base64
    5:23 PM - Sir Whiskeyngton: nab
    5:23 PM - Felis catus: dr o could translate that without a decoder
    5:23 PM - Felis catus: he is a wizard
    5:23 PM - Felis catus: he actually programmed roggen
    5:24 PM - Felis catus: he programmed the world
    5:24 PM - Felis catus: how it behaves
    5:24 PM - Felis catus: dr o is god
    5:24 PM - Sir Whiskeyngton: lol
    5:24 PM - Sir Whiskeyngton: you forgot the first commandment
    5:25 PM - Sir Whiskeyngton: 1. Thou shalt have no gods; thou shalt only have Budnab.
    5:25 PM - Felis catus: dr o made him
    5:25 PM - Felis catus: dr o defined the gods
    5:25 PM - Felis catus: dr o did everything
    5:25 PM - Felis catus: he is the god

  • FelisFelis Glitch Kitty PVKII Team
    edited January 2015
    Spirrwell wrote:

    I do believe this could be modified in a plugin, but it would be a tremendous pain in the ass, and it could easily be abused by giving a person a "Beta Tester" or "Developer" tag. I just suggest whoever writes such a plugin to make sure it can't be changed to that.


    And this is a big problem since SourceMod derivative works must be under the GPL and open source to be released, and someone could easily modify the code to do evil things.
    The custom admin tag can't be hard to code because community tags can already be modified. Devs should really put this in their todo list.
  • SpirrwellSpirrwell That Guy That Knows Things About a Lot of Things PVKII Team, Authorized Creator
    edited 12:16PM
    Dr. O wrote:

    The default tags are hardcoded in the game, as well as their priority. There is no point in messing around with sourcemod in this case, this has to be done in the game code if you want a clean solution. For instance, there exist already these commands:

    sv_community_groupid
    sv_community_grouptag


    Perhaps not. Since the code has to look to sv_community_grouptag for a string that is changeable. It may be possible to force the flags of the client to be that of the community group tag, but have it use a different string. That's the opening I've thought of. I dunno for sure. I DO know that this could be used to override the tags of beta testers who might want to be anonymous. It could force them to the community group tag or otherwise.

    It might not be possible at all, but it's the only thing that I've been able to come up with.
    5GY1DFV.png


    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░██████░░░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░████░░█████░░░██
    ░░░░░░███░░░░░░░░░░░░░░████░░█████░░░███
    ░░░░░░░░░░░░░░░░░░░░░░░░██░░░░░░████░░█████░░░████
    ░░░░░░░░░░░░░░░░░░░█████████░░███████████░░████
    ░░░░░░░░░░░░███████████████████████████░░░░░░██
    ░░░░░░░░░██████████████████████████████░░░░░░██
    ░░░░░░░█████████████████████████████████░░░░░░██
    ░░░░░██████████████████████████████████░░░░░░███
    ░░░░░███████████████████████████████████░░░░░████
    ░░░░████████████████████████████████████░░░░░████░░
    ░░░░███████████████████████████████████░░░░█████░░░
    ░░░░█████░░░░░░░░████████████████████░░░░██████░░░░
    ░░░░░██░░░░░░░░░░████████████████████████████░░░░░░
    ░░░░░░░░░░░░░░░░░██████████████████████████░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████████████████░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░█████████████░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░██░░░░░░░███████░░░░░░█████████░░░░░░░░░
    ░░░░░░███░░░███████░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░███████████░░░░░░░░░░░░░░░░░███░░░░░░░░░░░░░
    ░░░████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░████░░░░░░░░░░░░░░░░░░░░░░░░░░██████░░░░░░░

    yP71cHI.gif

    Xxkr2il.jpg
    56JtqQq.jpg
    kJFRh1a.png
    MOBO: MSI Z87M GAMING
    CPU: Intel® Core™ i7-4770K OC'd @ 3.7 GHz
    GPU: EVGA GTX 660 Ti
    RAM: Ripjaws X 8GB (2 x 4GB) DDR3 2133MHz
    OS: Windows 10 Technical Preview

  • Dr. ODr. O Minister of Roggen Senior
    edited 12:16PM
    With sourcemod you can check a player's steam group membership, but there is no way you can modify that info to your liking. Unless you hack steam and give wrong answers. Also, you cannot influence pvk code with sourcemod, the player tag is a pvk specific thing and sm does not provide any commands for doing anything with it.
    Nice idea though ;)

    The point of my request is to have a modifiable tag with highest priority (not the community tag), so that it overwrites developer, tester, contributor and all those tags. Devs could implement it so that you cannot set the admin tag to any of their default tags to avoid abuse.
    But I'm not sure whether this suggestion was noticed or understood, since there wasn't any reaction so far.
    PVKII Server: The House of Dr. O
    --friendly fire
    --manual block

    My maps/plugins:
    te_sahara_b1 : http://pvkii.gameban...com/maps/184372
    Weddings: http://forums.allied...ad.php?t=221933



    15:55 - Sir Whiskeyngton: well you're the minister of roggen
    15:55 - Sir Whiskeyngton: you'd just be doing your job
    15:56 - Sir Whiskeyngton: I need to send an army of monks to the enemy
    15:56 - Sir Whiskeyngton: since I'm the minister of propaganda



    5:22 PM - Felis catus: QSBtYW4gY2hvb3NlcywgYSBzbGF2ZSBvYmV5cywgQWxsIHdvcmsgYW5kIG5vIHBsYXkgbWFrZXMgU2lyIFdoaXNrZXluZ3RvbiBhIGR1bGwgYm95Lg==
    5:22 PM - Felis catus: base64
    5:23 PM - Sir Whiskeyngton: nab
    5:23 PM - Felis catus: dr o could translate that without a decoder
    5:23 PM - Felis catus: he is a wizard
    5:23 PM - Felis catus: he actually programmed roggen
    5:24 PM - Felis catus: he programmed the world
    5:24 PM - Felis catus: how it behaves
    5:24 PM - Felis catus: dr o is god
    5:24 PM - Sir Whiskeyngton: lol
    5:24 PM - Sir Whiskeyngton: you forgot the first commandment
    5:25 PM - Sir Whiskeyngton: 1. Thou shalt have no gods; thou shalt only have Budnab.
    5:25 PM - Felis catus: dr o made him
    5:25 PM - Felis catus: dr o defined the gods
    5:25 PM - Felis catus: dr o did everything
    5:25 PM - Felis catus: he is the god

  • SpirrwellSpirrwell That Guy That Knows Things About a Lot of Things PVKII Team, Authorized Creator
    edited January 2015
    What I'm saying is, PVKII uses this hidden command thing called client_update. Since I'm part of my server's group, one of the arguments will end up being 40. PVKII seems to use an enumerator that uses a bit shifting technique such as:

    enum EventType {
    		NONE				= 0,
    		PUSH				= 1&lt;&lt;0,
    		RELEASE			 = 1&lt;&lt;1,
    		DOUBLECLICK		 = 1&lt;&lt;2,
    		DRAG				= 1&lt;&lt;3,
    		MOVE				= 1&lt;&lt;4,
    		KEYDOWN			 = 1&lt;&lt;5,
    		KEYUP			   = 1&lt;&lt;6,
    		FRAME			   = 1&lt;&lt;7,
    		RESIZE			  = 1&lt;&lt;8,
    		SCROLL			  = 1&lt;&lt;9,
    		PEN_PRESSURE		= 1&lt;&lt;10,
    		PEN_ORIENTATION	 = 1&lt;&lt;11,
    		PEN_PROXIMITY_ENTER = 1&lt;&lt;12,
    		PEN_PROXIMITY_LEAVE = 1&lt;&lt;13,
    		CLOSE_WINDOW		= 1&lt;&lt;14,
    		QUIT_APPLICATION	= 1&lt;&lt;15,
    		USER				= 1&lt;&lt;16
    	};
    


    (From Stack Overflow)

    If I leave the group from my server, that 40 changes to something like 20 or 8. It's been almost 2 months since I looked at it, so I'm forgetting, but that's how it works. All someone has to do is monitor the client_update commands that are called and their arguments. You can do this with the callback OnClientCommand or whatever it is. client_update seems to take 5 arguments every time, so it's a multi-purpose command, but one of its uses is for setting beta tester, developer, community, admin, and etc. status. This doesn't even need group information. My guess is that the PVKII code uses this command AFTER determining what group(s) a player is a part of.

    The first argument of client_update seems to be some weird entity index number, which without it, PVKII says it's an invalid command. It's easy to see this command in the console if you set the max players to a local server to 1. It will run the game in single player mode, and it will call client_update. But because of it being single player, it will say it's an invalid command in the console, which is partly how I learned about it.

    Anyway, regardless, I do think it would be a nice feature, and in PVKII code it would definitely be like a 5 minute thing. There's a few little things like that I would love to see. Like there's some commands for hiding the HUD timers, but they don't work at the moment.
    5GY1DFV.png


    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░██████░░░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░░░████░░█████░░░██
    ░░░░░░███░░░░░░░░░░░░░░████░░█████░░░███
    ░░░░░░░░░░░░░░░░░░░░░░░░██░░░░░░████░░█████░░░████
    ░░░░░░░░░░░░░░░░░░░█████████░░███████████░░████
    ░░░░░░░░░░░░███████████████████████████░░░░░░██
    ░░░░░░░░░██████████████████████████████░░░░░░██
    ░░░░░░░█████████████████████████████████░░░░░░██
    ░░░░░██████████████████████████████████░░░░░░███
    ░░░░░███████████████████████████████████░░░░░████
    ░░░░████████████████████████████████████░░░░░████░░
    ░░░░███████████████████████████████████░░░░█████░░░
    ░░░░█████░░░░░░░░████████████████████░░░░██████░░░░
    ░░░░░██░░░░░░░░░░████████████████████████████░░░░░░
    ░░░░░░░░░░░░░░░░░██████████████████████████░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████████████████░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░█████████████░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░░░░██░░░░░░░███████░░░░░░█████████░░░░░░░░░
    ░░░░░░███░░░███████░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░░░███████████░░░░░░░░░░░░░░░░░███░░░░░░░░░░░░░
    ░░░████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
    ░░████░░░░░░░░░░░░░░░░░░░░░░░░░░██████░░░░░░░

    yP71cHI.gif

    Xxkr2il.jpg
    56JtqQq.jpg
    kJFRh1a.png
    MOBO: MSI Z87M GAMING
    CPU: Intel® Core™ i7-4770K OC'd @ 3.7 GHz
    GPU: EVGA GTX 660 Ti
    RAM: Ripjaws X 8GB (2 x 4GB) DDR3 2133MHz
    OS: Windows 10 Technical Preview

  • Dr. ODr. O Minister of Roggen Senior
    edited 12:16PM
    Spirrwell wrote:

    If I leave the group from my server, that 40 changes to something like 20 or 8. It's been almost 2 months since I looked at it, so I'm forgetting, but that's how it works. All someone has to do is monitor the client_update commands that are called and their arguments. You can do this with the callback OnClientCommand or whatever it is. client_update seems to take 5 arguments every time, so it's a multi-purpose command, but one of its uses is for setting beta tester, developer, community, admin, and etc. status. This doesn't even need group information. My guess is that the PVKII code uses this command AFTER determining what group(s) a player is a part of.


    So you say I need to implement OnClientCommand to check for the client_update commands and then modify its arguments to "lie" about group membership? If it worked it still would not let me edit the highest prio tag. But I could make the game think that people are not part of any other group than my server group, and only that tag would then apply.

    I'll definitely give this a try when I have some time. Thanks for the hint ;)
    PVKII Server: The House of Dr. O
    --friendly fire
    --manual block

    My maps/plugins:
    te_sahara_b1 : http://pvkii.gameban...com/maps/184372
    Weddings: http://forums.allied...ad.php?t=221933



    15:55 - Sir Whiskeyngton: well you're the minister of roggen
    15:55 - Sir Whiskeyngton: you'd just be doing your job
    15:56 - Sir Whiskeyngton: I need to send an army of monks to the enemy
    15:56 - Sir Whiskeyngton: since I'm the minister of propaganda



    5:22 PM - Felis catus: QSBtYW4gY2hvb3NlcywgYSBzbGF2ZSBvYmV5cywgQWxsIHdvcmsgYW5kIG5vIHBsYXkgbWFrZXMgU2lyIFdoaXNrZXluZ3RvbiBhIGR1bGwgYm95Lg==
    5:22 PM - Felis catus: base64
    5:23 PM - Sir Whiskeyngton: nab
    5:23 PM - Felis catus: dr o could translate that without a decoder
    5:23 PM - Felis catus: he is a wizard
    5:23 PM - Felis catus: he actually programmed roggen
    5:24 PM - Felis catus: he programmed the world
    5:24 PM - Felis catus: how it behaves
    5:24 PM - Felis catus: dr o is god
    5:24 PM - Sir Whiskeyngton: lol
    5:24 PM - Sir Whiskeyngton: you forgot the first commandment
    5:25 PM - Sir Whiskeyngton: 1. Thou shalt have no gods; thou shalt only have Budnab.
    5:25 PM - Felis catus: dr o made him
    5:25 PM - Felis catus: dr o defined the gods
    5:25 PM - Felis catus: dr o did everything
    5:25 PM - Felis catus: he is the god

Sign In or Register to comment.