* Change BanExemption command to AdminFlags.Ban permissions
* Change LOOC to check for Moderator permission
* Change ListVerbs from Admin to Debug AdminFlags
* Change RunVerbAs from Admin to Fun AdminFlags
* More permission changes
* Change GhostKick to Moderator perm
* Clean up command perms
* fuck
---------
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 68992735d81a7709543ab7c6056385b9d3946d75)
## Mirror of PR #26263: [Add
stealthmins](https://github.com/space-wizards/space-station-14/pull/26263)
from <img src="https://avatars.githubusercontent.com/u/10567778?v=4"
alt="space-wizards" width="22"/>
[space-wizards](https://github.com/space-wizards)/[space-station-14](https://github.com/space-wizards/space-station-14)
###### `dca0c6694bce56fcf962feab2b59ad4a849f4533`
PR opened by <img
src="https://avatars.githubusercontent.com/u/32041239?v=4"
width="16"/><a href="https://github.com/nikthechampiongr">
nikthechampiongr</a> at 2024-03-19 16:14:22 UTC
---
PR changed 11 files with 197 additions and 10 deletions.
The PR had the following labels:
- Status: Needs Review
---
<details open="true"><summary><h1>Original Body</h1></summary>
> <!-- Please read these guidelines before opening your PR:
https://docs.spacestation14.io/en/getting-started/pr-guideline -->
> <!-- The text between the arrows are comments - they will not be
visible on your PR. -->
>
> resolve#26013
>
> ## About the PR
> <!-- What did you change in this PR? -->
> This pr implements stealthmins as laid out in issue #26013.
>
> There is now the Stealth permission flag. This allows admins to use
the stealthmin command and to see other stealthmins.
>
> When stealthmin is toggled, the admin will not show up in adminwho
except for other admins with the Stealth permission.
>
> The stealthmin command sends fake de-admin/re-admin messages to admins
without the Stealth flag.
>
> stealthmin persists in the same way deadmin does(it persists for the
lifetime of the server).
>
> Admin login/logout messages are suppressed for stealthmins except for
other admins with the Stealth flag.
>
> It is still possible possible to find stealthed admins using toolshed
commands or logs. This is in line with the requirements of the issue,
and I don't want to start clobbering functionality of logs and toolshed.
>
> ## Why / Balance
>
> See #26013
>
> ## Technical details
> <!-- If this is a code change, summarize at high level how your new
code works. This makes it easier to review. -->
>
> Stealth flag now exist for AdminFlags.
>
> An admin's stealth status is saved in their admin registration and in
ContentData.
>
> SendAdminAnnouncement now takes a whitelist flag and blacklist flag
(This will work with multiple flags). This is necessary to suppress
admin announcements where necessary. Blacklist takes priority over
whitelist.
>
> ## Media
> <!--
> PRs which make ingame changes (adding clothing, items, new features,
etc) are required to have media attached that showcase the changes.
> Small fixes/refactors are exempt.
> Any media may be used in SS14 progress reports, with clear credit
given.
>
> If you're unsure whether your PR will require media, ask a maintainer.
>
> Check the box below to confirm that you have in fact seen this (put an
X in the brackets, like [X]):
> -->
>
>
https://github.com/space-wizards/space-station-14/assets/32041239/98ec48c3-170e-406a-b177-07003ff7d59f
>
>
> - [x] I have added screenshots/videos to this PR showcasing its
changes ingame, **or** this PR does not require an ingame showcase
>
> **Changelog**
> <!--
> Make players aware of new features and changes that could affect how
they play the game by adding a Changelog entry. Please read the
Changelog guidelines located at:
https://docs.spacestation14.io/en/getting-started/pr-guideline#changelog
> -->
>
> <!--
> Make sure to take this Changelog template out of the comment block in
order for it to show up.
> 🆑
> - add: Added fun!
> - remove: Removed fun!
> - tweak: Changed fun!
> - fix: Fixed fun!
> -->
>
> 🆑
> ADMIN:
> - add: The stealthmin command has been added. Admins with the Stealth
permission can now hide themselves from adminwho except for other admins
with that permission.
</details>
---------
Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Co-authored-by: SimpleStation14 <Unknown>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
Adds a massban flag to the admin flags used on ss14 to ban large amounts of players rom a .tsv file
Co-authored-by: Geekyhobo <66805063+Ahlytlex@users.noreply.github.com>
(cherry picked from commit dbf2c64cfd5a47088f5b20e850862a202795d5c8)
* Add admin logging, models, migrations
* Add logging damage changes
* Add Log admin flag, LogFilter, Logs admin menu tab, message
Refactor admin logging API
* Change admin log get method names
* Fix the name again
* Minute amount of reorganization
* Reset Postgres db snapshot
* Reset Sqlite db snapshot
* Make AdminLog have a composite primary key of round, id
* Minute cleanup
* Change admin system to do a type check instead of index check
* Make admin logs use C# 10 interpolated string handlers
* Implement UI on its own window
Custom controls
Searching
Add admin log converters
* Implement limits into the query
* Change logs to be put into an OutputPanel instead for text wrapping
* Add log <-> player m2m relationship back
* UI improvements, make text wrap, add separators
* Remove entity prefix from damaged log
* Add explicit m2m model, fix any players filter
* Add debug command to test bulk adding logs
* Admin logs now just kinda go
* Add histogram for database update time
* Make admin log system update run every 5 seconds
* Add a cap to the log queue and a metric for how many times it has been reached
* Add metric for logs sent in a round
* Make cvars out of admin logs queue send delay and cap
* Merge fixes
* Reset some changes
* Add test for adding and getting a single log
* Add tests for bulk adding logs
* Add test for querying logs
* Add CallerArgumentExpression to LogStringHandler methods and test
* Improve UI, fix SQLite, add searching by round
* Add entities to admin logs
* Move distinct after orderby
* Add migrations
* ef core eat my ass
* Add cvar for client logs batch size
* Sort logs from newest to oldest by default
* Merge fixes
* Reorganize tests and add one for date ordering
* Add note to log types to not change their numeric values
* Add impacts to logs, better UI filtering
* Make log add callable from shared for convenience
* Get current round id directly from game ticker
* Revert namespace change for DamageableSystem
* Add nullable to some Content.Shared files.
* Use [NotNullWhen(true)]
* Undo adding now redundant !'s
* Forgot one
* Add a ton more nullable
* You can guess
* Fix some issues
* It actually compiles now
* Auto stash before merge of "null2" and "origin/master"
* I lied
* enable annotations -> enable
* Revert ActionBlockerSystem.cs to original
* Fix ActionBlockerSystem.cs
* More nullable
* Undo some added exclamation marks
* Fix issues
* Update Content.Shared/Maps/ContentTileDefinition.cs
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
* Resolve some issues
* Remove unused method
* Fix more issues
* Fix more issues
* Fix more issues
* Fix more issues
* Fix issue, rollback SharedGhostComponent.cs
* Update submodule
* Fix issue, invert some if-statements to reduce nesting
* Revert RobustToolbox
* FIx things broken by merge
* Some fixes
- Replaced with string.Empty
- Remove some exclamation marks
- Revert file
* Some fixes
* Trivial #nullable enable
* Fix null ables
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>