CS CS:GO/SourceMod | GUI Option for Administration

4g0tt3nSou1

All you had to do was follow the D*** Train, CJ
Joined
Sep 21, 2018
Messages
1,206
So I can only speak as to what I can see, but I believe MOST admins administrate through commands in chat/console (essentially CLI) as opposed to a GUI. (I could be COMPLETELY Wrong, I know there is an Admin GUI(Or rather Menu in SM for admin), but I think it's restricted to like M/SM+?), but I do know FOR SURE that DS's cannot do administrative (votekick/bans) via a GUI.

Why do I bring this up?
Time and time again, someone joins with a name very similar to a user's that is already in the server, with malicious intent to cause general havoc and massrulebreak, and evade by mimicing a legit user's name so they are targeted via SM/etc and not the troublemaker. Usually these people are evading an existing ban on eGO, but reality is anyone could do it(Obviously not without reprocussion, but it can be done). We could go days and days about discussing client filtering theories(The correct method for trying to keep players like this out), but overall no solution is perfect.

So what do I propose?
A lightweight and simple SM plugin that can be used by ALL admins and DS's respectively for their permission levels, that allows you to target a user specifically, which has ALL ASCII, UNICODE, And foreign chars indexed so everyone's name displays in the GUI as it displays in-game. This GUI will allow you to target them with an action (votekick/voteban; or warn, kick, ban, etc for admins), and help take the tedious process of dealing with someone actively evading being delt with.

Now, 4g; You say "Lightweight", but include loading a dictionary of every character essentially ever just so you can see names pretty; all in the same paragraph.
The two things that add weight to this the most are this dictionary and a check that runs as MUCH AS POSSIBLE to update the player names in the array that you can target(in case they really trying to evade that fast and hard).

The reason I suggest dictionarying the characters is so that you can CLEARLY SEE who you are targeting before you do what you are trying to do. Many times I've seen this, they are using unicode characters which just appear as blocks in console, and fact of the matter is not every player has a plain name, and frequently you find names with these unicode or etc characters outside of someone evading.

This solution cuts out accidental actions against people who do not deserve the hammer. Which if we are being honest, these accidents happen VERY frequently, from both DS's and Admins alike, usually with people laughing it off and going about their day. Overall though, if a system can be built to eliminate that risk, then by all means I feel it's something that needs to be looked at, even in other implementations other than my suggestion.

Is this a solution to something that isn't a problem?
HARD NO.

I encurage a SM/CM to look at all accidental Bans/Kicks reported in say, the last 6 months. I'm willing to bet that the number is high double didgets, if not triple.
Take into consideration DS's, whom do not have as great of a toolkit availible to them. I will be honest and say I have accidentally votekicked someone who was not the person whom I meant to kick. Honest mistake, they happen, and in 99% of DS/Admin Accidental Actions, they usually end up being resolved.

But why allow it to happen at all?

Short answer, Sourcemod is VERY capable of handling this task, and overall I think this improves QoL of Administration to anyone involved.

But 4g, if X admin actually knows the commands they are using, they can do the exact same job without the GUI
Overall, I feel a vast majority of people would prefer simpler GUI interfaces than commands that have a lot more potential to go sideways.

You'd have one button to open this GUI, number selections to navigate, and checking("Are you SURE?") messages before things go through, this simplifies the entire thing to a system where you can get the same job with less effort, and train admins/etc on how to use better than memorizing the nuances of every admin command, when you only are going to use a handful anyways.

Command-based administration has been the method for some time, and as such a problem that has come up are these accidents. It's just a byproduct, and that is ok. But again, why not make things easier? You can always keep these methods as a backup, and train for them, but overall, a GUI might see more use.

The Meat & Potatos
This would require Tech to make a Sourcemod plugin probably from scratch or update the existing system for a non-emergent problem. The system now WORKS, but isn't as good as it can be. This is something that can take less priority over other projects, but IMHO, should be on the roster eventuallyTM.

A last, but fair point I want to leave you with:
Just because it isn't broken doesn't mean you shouldn't improve it. If we followed the "If it ain't broke, don't fix" mentality to the entire global scale, we'd be in the stone age still.

I hope you seriously consider my idea, as I think it can cause a LOT less problems in the long run.
 
Upvote 0
Admins already have a variety of methods they are taught to handle users with unicode names or the same name as someone else.

From my experience as leadership, the number of accidental bans is relatively low and fixing them is generally done in less than a minute.

It just seems like a hell of a lot of work for tech team over something we have given people many many tools for and never had a massive problem with for a long time.
 
Last edited:
GUI's are far and few between for plugins since plugins are usually free to the public, and GUI's require a lot of work to develop.
 
GUI's are far and few between for plugins since plugins are usually free to the public, and GUI's require a lot of work to develop.

That's mostly untrue actually. Writing a GUI in sourcemod is VERY easy, it's legit a command hook, a title line, and then your options, with each option calling a function. I very well know tech could do it in there sleep. The biggest things here again are the dictionary of characters which allows for more definitive usernames; and hooking it to run as frequently as possible (it can be taxing depending on the function, but then again something like this shouldn't be too bad.)

I also stated that this is a non-emergent problem. :
This would require Tech to make a Sourcemod plugin probably from scratch or update the existing system for a non-emergent problem. The system now WORKS, but isn't as good as it can be. This is something that can take less priority over other projects, but IMHO, should be on the roster eventuallyTM.

As for Simon, I didn't know they've had more difinitive ways than a command to administrate, but it doesn't cover everyone, I also stated this should have some use for DS's and votekicks, which are not so intuitive. While we can take some of the same methodology, we also are not trained in any of that, and I guarentee a fair 75% do NOT know these features exist. Both admins and DS's could utilize this tool.

But why allow it to happen at all?

We easily could get rid of the accidental actions with such a system. If you managed to accidentally target someone with this gui that you shouldn't have, then It's on the admin/ds who did it. The gui I discribe removes the background work, and would show the exact person's name to deal with people evading via names.
 
I don't think devs need to bother implementing menus when there is much more things that actually need their attention.

Also if you want to apply a command on someone who's name is hard to write, you can type 'status' in console, get his userId (top left number) and do something like '!votekick #3 rdmrdmrdm'.
 
As far as I know, #3 is not actually an acceptable arguement, as someone could be named #3.
 
As far as I know, #3 is not actually an acceptable arguement, as someone could be named #3.

It's a valid command argument and is something we teach our admins to use. If it were to cause a collision then sourcemod would not let it pass through and spit back that it resolves to multiple clients.
 
Last edited:
I haven't used the !admin command to target a player ever. Status is a great console command and in the event there is an accidental kick we end up apologizing and owning up to it.

I would rather Tech work on more important things than a cosmetic change that probably most old admins wouldn't use since we're used to the simple

Status > account id > and private chat > using the same account id doing a kick
 
I enjoy the idea of trying to make the QoL better for not just admins, but for everyone. Unfortunately this is a fair amount fo work for Tech and seems like it'd cause some issues.

In my experience as an admin, I've only used the GUI for banning players when I first started admining. I use typing out now mainly because I find it quicker. For now I will lay this to rest, but if you feel passionate about this still feel free to make a CL stating your case further.
 

Latest posts

Back
Top