Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removes the "who" verb #10068

Closed
wants to merge 1 commit into from
Closed

Conversation

Fresh341
Copy link
Contributor

About The Pull Request

Removes the who verb completely.

Why It's Good For The Game

There's quite a couple reasons for why the "who" verb better gets removed. The who verb gives the person who uses it a complete list of every ckey currently connected to the server. This includes the ckeys stealthmins set themselves. Normal players should not have access to such a command. And admins have no use for it either.

The issues I currently see with the who command:

  • There's the issue with potential harassement/stalking. Metagangs from other servers who "hunt/chase" certain people to other servers are given an easy time.
  • A malicious user could theoretically sit afk in the lobby and regularily run the who command, to easily create their own form of player tracking/playtime statistics.
  • It reveals stealthmins who forgot to set their ckey to something else. The who command also does not give an admin alert, which means a griefer does not have to risk using staffwho to check if or which admin is online.

And all of this what for exactly? Players can already check who's on the station via the crew manifest, in the lobby. They absolutely do not need to know who's observing or just receive a full ckey list at all.
Then there's also the whole issue of "I only join when I see my metafriends being online" or "Let me see who's observing by comparing the who-list to the crew manifest, so that we can then do ghost roles together".

People joining only when their metafriends are online is an issue. And this change doesn't fix that, obviously. But I don't think it should be enabled that easily, on top of all the potential risks I pointed out above.

TLDR: The who command has a ton of downsides with virtually no benefits. Players do not need a zero cooldown full ckey list command, available from the lobby.

Testing Photographs and Procedure

Screenshots&Videos

I'm not sure what screenshot I should put here, I tested the PR and the command didn't autocomplete in the verb bar. When I typed it in manually also nothing happened.

Changelog

🆑
del: Removes the who verb
/:cl:

@Tsar-Salat
Copy link
Contributor

The issues I currently see with the who command:

  • There's the issue with potential harassement/stalking. Metagangs from other servers who "hunt/chase" certain people to other servers are given an easy time.
  • A malicious user could theoretically sit afk in the lobby and regularily run the who command, to easily create their own form of player tracking/playtime statistics.
  • It reveals stealthmins who forgot to set their ckey to something else. The who command also does not give an admin alert, which means a griefer does not have to risk using staffwho to check if or which admin is online.

Wouldn't just logging the use of the verb solve 2/3 of these

@Fresh341
Copy link
Contributor Author

The issues I currently see with the who command:

  • There's the issue with potential harassement/stalking. Metagangs from other servers who "hunt/chase" certain people to other servers are given an easy time.
  • A malicious user could theoretically sit afk in the lobby and regularily run the who command, to easily create their own form of player tracking/playtime statistics.
  • It reveals stealthmins who forgot to set their ckey to something else. The who command also does not give an admin alert, which means a griefer does not have to risk using staffwho to check if or which admin is online.

Wouldn't just logging the use of the verb solve 2/3 of these

Yep. But I remember bringing this up in one of the coding channels like a year ago or so, and the answer I received by crossed among other people was that it makes 0 sense to log it. Simply because of how many false positives you'd get. On top of spamming the already fast moving admin alert chat.

@MCterra10
Copy link
Contributor

MCterra10 commented Oct 22, 2023

staffwho already alerts admins, if there is such a massive issue around the command as you suggest, then I see no reason why this couldn't be implemented for the who verb too.
And besides, even if this was removed, you can still get a fairly complete list of players from the BYOND hub anyway, since most people don't set their activity to private.

@Tsar-Salat
Copy link
Contributor

Tsar-Salat commented Oct 22, 2023

Yep. But I remember bringing this up in one of the coding channels like a year ago or so, and the answer I received by crossed among other people was that it makes 0 sense to log it.

Okay, that doesn't mean killing it is the best option

Simply because of how many false positives you'd get. On top of spamming the already fast moving admin alert chat.

Simple solution to that is just making a new INVESTIGATE_OOC category and making it log there. It wouldn't spam admin Chat and any records would still be accessible ingame and to outside log parsers.

If 95% of the uses of this are non-malicious, the nuclear options seems overkill.

@Fresh341
Copy link
Contributor Author

Fresh341 commented Oct 22, 2023

staffwho already alerts admins, if there is such a massive issue around the command as you suggest, then I see no reason why this couldn't be implemented for the who verb too.

As I said in the reply above, the issue is mostly all the false positives you'd get. People just using the who command to check who's on before they decide to play for example. It's just not worth it. Either we remove the who command, or we leave it in.

And besides, even if this was removed, you can still get a fairly complete list of players from the BYOND hub anyway, since most people don't set their activity to private.

Something being possible or easy to do, doesn't mean we should enable it.

Yep. But I remember bringing this up in one of the coding channels like a year ago or so, and the answer I received by crossed among other people was that it makes 0 sense to log it.

Okay, that doesn't mean killing it is the best option

Simply because of how many false positives you'd get. On top of spamming the already fast moving admin alert chat.

Simple solution to that is just making a new INVESTIGATE_OOC category and making it log there. It wouldn't spam admin Chat and any records would still be accessible ingame and to outside log parsers.

If 95% of the uses of this are non-malicious, the nuclear options seems overkill.

I'm aware that the total removal seems "nuclear", but like, what benefits does the who command actually give? I'm happy to be proven wrong, but I haven't been able to come up with a usecase yet that doesn't somewhat include "I want to see who's online before I play", which is something that I don't think should be encouraged by code (nor by administration for that matter).

Like, we can have a long discussion here about what could be changed and a new OOC format to avoid admin chat spamming etc. , which are all decent suggestions.

But, this is work and energy being put into something that brings.... what again? What does the who command give the server?

Again, do players really need to know the ckey of every single connected person at all times?

The crew manifest... exists... and is also IC.

@PowerfulBacon
Copy link
Member

PowerfulBacon commented Oct 22, 2023

But its good for seeing if anyone you are friends with is online. Adding an optional private mode or friends list could be a nice alternative

@Fresh341
Copy link
Contributor Author

Fresh341 commented Oct 22, 2023

But its good for seeing if anyone you are friends with is online. Adding an optional private mode or friends list could be a nice alternative

Well, the crew manifest still exists and can be used for that. But the actual question is do we really want that though.

Your "friends" being online shouldn't be the deciding factor if you decide to play or not. Roleplay happens only if everyone is somewhat involved. Not if specific people roleplay with their specific group of friends.

I might be wrong of course, but I feel like the crew manifest fullfils all the needs in this regard. And people who want to use a new character that isn't known yet to play "alone" for a bit, are also more hidden that way. (More hidden because now only their crew manifest name is shown and not their full ckey, which I know, will be shown anyways when they become an antagonist. But sometimes it's nice to just be a "blank" sheet again.)

@VickiMorris
Copy link
Contributor

VickiMorris commented Oct 22, 2023

If you really need to play only while your friends are online, you still have the option to jab them on discord and go "Hey are you in round rn?" I don't think it hurts to remove who and it honestly feels like a debug or admin tool that's just user-accessable for some reason.

@PowerfulBacon
Copy link
Member

Yea thats true, the only time I ever use anything like this is staffwho since it only shows me the relevant people online

@itsmeow
Copy link
Member

itsmeow commented Oct 23, 2023

Considering we haven't really had any of these problems I see no point in removing the verb. It serves a real, but minor utility. If there is a problem with stealthmins showing just add a basic filter to hide stealthmins.

@Fresh341
Copy link
Contributor Author

Considering we haven't really had any of these problems I see no point in removing the verb.

Something not being a real issue yet, doesn't mean it can't be one in the future. I feel like that's kinda obvious.

It serves a real, but minor utility.

Well, which one? The fact that it allows people to check if their friends are online? As I said in the beginning, that is something I don't think we should encourage.
People should play because they have fun overall. Not because specific players are online. Metafriending => bad.

@itsmeow
Copy link
Member

itsmeow commented Oct 23, 2023

I mean, at the end of the day it's a game, and if people find people they like interacting with, so long as they aren't causing harm, then let them see if friends are on. It's really not a big deal.

@Fresh341
Copy link
Contributor Author

Fresh341 commented Oct 23, 2023

I mean, at the end of the day it's a game, and if people find people they like interacting with, so long as they aren't causing harm, then let them see if friends are on. It's really not a big deal.

I mean what stops them from just using the ingame crew manifest? Like most of it is already there.

I'm not a maintainer obviously, but I just have a hard time understanding why something that really does feel like a debug tool, is accessible to players. It has a list of potential problems and the only positive it has is already achieved by other ingame tools, that are a lot less powerful or can't potentially be abused.

@itsmeow
Copy link
Member

itsmeow commented Oct 23, 2023

Because it's useful? I dunno, I use it sometimes to check if people are online. I don't know everyone's character names always and Who is always accessible while the manifest is not.

I just don't find it to be strong enough of a push to remove it that someone might abuse it in any of the ways described. It's nothing the BYOND hub can't report and the harm is so minimal.

@Fresh341
Copy link
Contributor Author

I don't know everyone's character names always and Who is always accessible while the manifest is not.

Sometimes people don't want other's to know what their new character is.
Imagine this; someone makes a new character, other's see that he's connected via the "who" command but they can't see his normal static on the crew manifest, so they ping on discord and ask if they have a new character. Which can be annoying.

The crew manifest is completely sufficient in my opinion.

It is what it is in the end, if you think it's fine as is then that's how it is. 🤷

@PowerfulBacon
Copy link
Member

PowerfulBacon commented Oct 25, 2023

If the alternative is to just use the crew manifest, then what's the point of removing the who verb?
What's the problem of someone pinging on discord to ask if they are on? If someone has a friend online, they will message them on discord anyway to see if the who verb is removed and they likely do it anyway.

It would be better if byond gave us the option to respect people in invisible mode and redact their ckey

@PowerfulBacon
Copy link
Member

What if we let people hide their ckey or use alias ckeys similar to how rainbow six lets you set your in-game username to be anything and numbers just get added to the end to make it unique.

@Fresh341
Copy link
Contributor Author

then what's the point of removing the who verb?

Well, all the points I listed in the first post pretty much.

To me, the who verb has no positives (the crew manifest can be used as a way better replacement) and only downsides (as listed in the original PR body).

That's why I don't really see why we should put in so much effort to just make the verb "good". There's just no use for the who verb.
I spent like 2 years playing without even knowing the who verb existed with 0 problems. The crew manifest is completely sufficient.

In the end you decide if you want to keep the who verb or not of course. I said what I think about it, and how the crew manifest does everything the who verb does but without all the downsides.
But in the end if you think the who verb is a part of the game that doesn't warrant removal then that's how it is.

@ike709
Copy link
Member

ike709 commented Oct 28, 2023

I swear I have an informed argument against this PR but I haven't slept in 50 something hours so you can either try to extrapolate from my discord ranting or wait for me to do a more properly written response. Won't officially key it until then.

@PowerfulBacon
Copy link
Member

I think all maintainers and a good amount of players are against this. As we discussed on discord, the who verb doesn't really come with any substantial benefits but also doesn't really come with any substantial downsides to keeping around. The majority of negative points are either inconsequential or an issue with other systems such as the stealthmin system.

The only real issue would be if someone was scraping data on the lobby screen, however there are much easier ways to do that which are less noticable and easier.

The who system is a nice convenience at times and I do see legitimate usecases for it since I have used it before.

The reasons for removing are just simply not strong enough.

  • Playing with friends 'issue': Inconsequential, people will use the crew manifest for this since it tells you if your friend is in the game and if not, you will likely just use discord to ask or look at their status message.
  • Scraping data issue: Valid and this is something I have thought about being an issue before but I don't think it has been an issue so far.
  • Stealthmin ckey revealed: Issue with stealthmin, either tell admins to actually set a proper name or hide stealth ckeys from the who command entirely if they are using the stealthmin command to actively admin while hiding for some reason.

Don't get me wrong, removing it wouldn't be a terrible thing, but there are cases where I think it is handy to have and I have used it before.

@Fresh341 Fresh341 deleted the who_removal branch April 25, 2024 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants