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

Tfw It Never Worked to Begin with (Whitelist Fix) #580

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

M3739
Copy link
Contributor

@M3739 M3739 commented Feb 23, 2025

Round 2153 was arguably a horrible round for both Security and Justice members involved. However, after some discussion with some fellow players and revelations, we found out that the whitelist system for Chief Justice is actually broken. Along with the CJ at the time not being whitelisted according to public sources within the Discord server.

Description

This PR seeks to fix the aforementioned issue, which if not clear is as entails;

Currently at the moment you need 600 minutes and a "whitelist" to play as Chief Justice. However, due to an oversight in the YAML, this whitelist actually never existed.

For example, the captain.yaml utilizes the statement whitelisted: true to implement it. But for Chief Justice, this is instead utilizing the !type;CharacterWhitelistRequirement to attempt to accomplish this. However, this may likely be reliant on a non-existent component or system from DeltaV, and thus, it does not work as expected.

To correct this, chief_justice.yml now utilizes the whitelisted: true field instead of the flawed requirement as stated before. This change has also been attempted to be reflected to the Nuclear Operative Commander as it too used the same flawed requirement, but as it turns out, the antags work a bit differently on that regard. (For context, I never got whitelisted for ANY role, and I have access to Nuke Op Commander on live servers.)

HOW

LIVE M3739 REACTION

Edit: Originally, this PR was to fix what was thought to be a botched whitelist, and I was informed that the said whitelist never actually existed to begin with. This PR now removes the deprecated way of whitelisting jobs, so now players should no longer be confused as to Chief Justice needing a whitelist.

The rest of this PR's post is unaltered for posterity.


Changelog

🆑 M3739

  • fix: Central Command has conducted a review of it's assignment system. Chief Justice should no longer be erroneously reporting that the job needs a whitelist.

@github-actions github-actions bot added Status: Needs Review Someone please review this Changes: YML Changes any yml files and removed Status: Needs Review Someone please review this labels Feb 23, 2025
@Floof-Station-Bot Floof-Station-Bot changed the title Tfw it never worked to begin with (Whitelist Fix, urgent) Tfw It Never Worked to Begin with (Whitelist Fix, Urgent) Feb 23, 2025
@M3739
Copy link
Contributor Author

M3739 commented Feb 23, 2025

As it turns out, antags are a bit special in that they don't accept the whitelisted: true statement.

Odd. Change reversed for the Nuclear Operative Commander.

@Mnemotechnician
Copy link
Collaborator

Mnemotechnician commented Feb 23, 2025

The old whitelist requirement actually came from delta-v. But floof uses that whitelist system to determine whether a player should be able to join, so everyone who can join is whitelisted. What you added is a job whitelist requirement - a different thing. This should probably require admin approval and a prior notice because right now no person is whitelisted for CJ.

@Mnemotechnician Mnemotechnician added the Undergoing Maintainer Discussion This PR is currently going through an internal discussion by the maintainer team. label Feb 23, 2025
@M3739
Copy link
Contributor Author

M3739 commented Feb 23, 2025

The old whitelist requirement actually came from delta-v. But floof uses that whitelist system to determine whether a player should be able to join, so everyone who can join is whitelisted. What you added is a job whitelist requirement - a different thing. This should probably require admin approval and a prior notice because right now no person is whitelisted for CJ.

I see. Then it's unclear as to what the intention is to be exact. The flawed method was no doubt an artifact from DeltaV, but it wasn't addressed until now it would seem. For us, we were under the impression of needing a whitelist due to this message in the job selection;
image

Personally, I feel that Chief Justice should be a whitelisted role, much like the Captain. As a great deal lies on them as the judge when it comes to trials. Be it civil, or criminal. As round 2153 showcases, it can make or break the entirety of sec, or the department. Afterall, should the Captain be charged with Abuse of Power, the Chief Justice will preside over that case.

This also does not create a Catch 22, as the Clerk can also stand in as a judge if need be, allowing for prior experience to rightfully earn the mantle of Chief Justice. This is a role with a heavy amount of gravitas to it. In some cases, more than the Captain.

@M3739
Copy link
Contributor Author

M3739 commented Feb 23, 2025

I have been informed that the official decision as of writing this PR is that the Chief Justice role is not whitelisted

Until an official decision declaring otherwise has been made, the PR has been adjusted to now reflect that existing decision. The Chief Justice role should no longer imply any kind of whitelist, as it doesn't have one.

@M3739 M3739 changed the title Tfw It Never Worked to Begin with (Whitelist Fix, Urgent) Tfw It Never Worked to Begin with (Whitelist Fix) Feb 23, 2025
@FoxxoTrystan
Copy link
Collaborator

chief justice is not suposed to be whitelisted for the moment.

Copy link
Collaborator

@FoxxoTrystan FoxxoTrystan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No Whitelist needed, CharacterWhitelistRequirement is SERVER WHITELIST while whitelisted: true is job whitelist.

@M3739
Copy link
Contributor Author

M3739 commented Feb 23, 2025

No Whitelist needed, CharacterWhitelistRequirement is SERVER WHITELIST while whitelisted: true is job whitelist.

Wait, so that "flawed" method of doing it, is actually for the whole server?... Then why does the jobwhitelistadd command work in "whitelisting" a player for Chief Justice?

Personally, this is very confusing to me.

@M3739
Copy link
Contributor Author

M3739 commented Feb 23, 2025

No Whitelist needed, CharacterWhitelistRequirement is SERVER WHITELIST while whitelisted: true is job whitelist.

Wait, so that "flawed" method of doing it, is actually for the whole server?... Then why does the jobwhitelistadd command work in "whitelisting" a player for Chief Justice?

Personally, this is very confusing to me.

image
Picture taken on the "Ayin" branch, which is the master branch of my fork. Last synced after yesterday's merges.

@Fansana
Copy link
Owner

Fansana commented Feb 24, 2025

There are two whitelist systems, one is the old global whitelist system. Then we importent another that is job specific, which we use for the captain. whitelist: true just checks the old system which every player is in otherwise they wouldn't be able to play.

@M3739
Copy link
Contributor Author

M3739 commented Feb 24, 2025

There are two whitelist systems, one is the old global whitelist system. Then we importent another that is job specific, which we use for the captain. whitelist: true just checks the old system which every player is in otherwise they wouldn't be able to play.

I.. see...
And it seems to add up. I took a gander at DeltaV's current implementation of the Chief Justice job prototype, and I do see the whitelisted: true on the JobPrototype in it's current iteration. I also took a look at it's code history, and found out that the !type:CharacterWhitelistRequirement was removed and instead replaced with it as result of PR number 1678 on the Delta-V repo, which was when they implemented the JobWhitelists panel. !type:CharacterWhitelistRequirement was also deprecated as a result, encouraging the use of whitelisted: true instead on the JobPrototype.

Apparently this deprecation and usage of whitelisted: true was in order to grandfather existing whitelists into the new system. Neat!

Funnily enough, it seems we have that JobWhitelists panel, it's just the deprecated way of whitelisting jobs wasn't fully addressed at the time, and thus remains as a vestigial structure in the chief_justice.yml job prototype.

Well, lets change that. ChiefJustice will just have the whitelisted: true commented out to allow for convenience when Floof decides to get on with that part. And the deprecated job whitelist will be removed from the Nuke Ops commander.

That way, now there should be no further confusion and miscommunication that Chief Justice and Nuke Ops commander is whitelisted.

Wild. Well, that clears up that confusion for me.

@FoxxoTrystan FoxxoTrystan self-requested a review February 26, 2025 00:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes: YML Changes any yml files Status: Needs Review Someone please review this Undergoing Maintainer Discussion This PR is currently going through an internal discussion by the maintainer team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants