Mentors can already see a list of all players by account age. This
includes antags with obvious names, like "Donk Co. Operative #1".
This PR changes the permissions on the playtime report (the one which
shows how much playtime everyone has) so mentors can see that, too.
The idea being that this enables mentors to distinguish between "X has
an old account" and "X has a lot of experience on paradise". Currently,
mentors cannot distinguish the two.
Also, consistency. If mentors can see players' account registration age,
they should also be able to see players' playtime experience.
This adds Message filters to Goonchat (only for mentors +
administrators).
There is a new option in the settings dropdown of Goonchat to access
these. They are temporary, non-destructive filters which will hide all
messages matching them that are already in your chat, as well as any new
messages matching them.
There are 5 filters currently:
- Admin; Filters out most admin logs.
- Combat; Filters out a limited subset of combat messages-
Specifically, any message with the 'combat' span class. Currently, this
has only been added to the central /attack and /attacked_by procs, so a
large considerable amount of hostile actions taken against a
player are still not going to be filtered out. We can work on adding
the identifier to more stuff later.
- Radios: Filters out all radio messages.
- Speech: Filters out all mob speech.
- OOC: Filters out OOC chat.
There is also an "All" option, which just turns off all messages that
are not internal to Goonchat.
Includes a refactor for gun turrets (merged into portable turrets), hostile simple_animal behaviour, spells (sounds have been added) and poi_list items.
- Replaced 'EXP' with "Playtime' in most admin-visible locations. The
system is still invisible to normal players.
- Changed the types of exp you can accumulate from 'all', 'eng', 'sup',
etc to more human-friendly names like 'Crew', 'Engineering', and
'Supply'.
- Eliminated some copy-paste.
- Added a new configuration option: use_exp_restrictions_heads_hours.
When enabled and set to a >0 value, it overrides all head/ai job
playtime requirements, instead substituting that number of hours.
- Hid XP info from mentors (Fox request)
- Commented the verb that lets normal players see their XP (Neca
request)
- Added logging for usage of admin XP verbs
- Deleted old commented code
- Formatted XP numbers in reports as "1h", "3h", "27h" etc rather than a
# of points/minutes.
Admins can toy around with converting a character to text, and
placing them back elsewhere, independent of the round.
It's got a kink, though: The text given to you directly needs to be
printed once to remove all the escapes - otherwise the thing will choke.
I'd like advice on resolving that
* Adds Error Handler
Adds a /world/Error proc to handle runtime errors. This proc replaces
the normal runtime logging behavior, providing the following
improvements:
- Adds timestamps to runtimes
- Pads or omits certain lines
- Continues logging runtimes after the 99th (with less info, as provided
by BYOND)
- Adds ckey and accurate xyz to usr info
- Continues including usr info after 19th runtime
- Silences spammy runtimes (by default, a runtime that occurs 10 times
in 10 minutes gets ignored for the next 10 minutes)
* Adds runtime viewer
Also fixes a minor mistake in the error handler
* Sanitizes HTML in Error Viewer
Also removes the stray return from the end of the error handler
* Prettifies Error Viewer
Now uses browser datum and some extra bits of formatting, inspired by
the changes made by @PJB3005
* Error Handling Improvements
- Skipped error counts now show up in the error viewer
- Proper runtimes caught by a process are now sent to the main error
handler
- The error handler and viewer can now handle a provided src, such as
one from a processing runtime
- Moved some info generation into helper procs
Highlander and Dodgeball will now view Vox as incompatible species and
convert them into humans to avoid issues with deleting their much-needed
internals
- Already did this for plasmamen
Adjusts team selection for Dodgeball to hopefully result in consistently
"balanced" teams (in terms of numbers)
- Rather than relying on a if(prob(50)) check, it now just switches back
and forth with each successful team addition
Adds a new admin panic button: "Del Singulo / Tesla"
- After a confirmation, deletes ALL singularities and tesla orbs across
all z-levels (except away missions and cent-comm), regardless of
containment
Not gonna changelog this since it's non-player stuff
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.
Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
Wee! Readds Disease1, kills off disease2, and finally removes poop.dmi
(fucking piece of shit)
Needs WAY more testing, most of which I don't know how to do yet, because
I've never used this system. Fun!
Changes:
- Virus2 has been removed completely.
- Some symptoms have not been readded. Aka, none of them have been
readded, I just wanted to get this shit ported.
- Virology has been updated slightly to mirror -tg-'s boxstation, as the
virus2 machines are gone.
- Welcome back, disease1
- The centrifuge, vials, splicer, analyzer, growerthing, have all been
replaced by the PanD.E.M.I.C. 2220
- No symptoms have been completely removed; However, vision symptoms
have been disabled pending byond 510, and genetics symptoms have been
disabled until "when I figure out how to fix them".
- Advanced Mutation Toxin now uses a disease, which turns people from
species, to slime person, to slime. Slime people are instantly turned
to a slime.
- Diseased touch now give people appendicitis. Yes, they VANT YOUR...
appendix.
- Virology now has a fridge with the following in it:
- Antiviral Syringes
- 1 Rhinovirus culture
- 1 Flu culture
- 1 Bottle of Mutagen
- 1 Bottle of Plasma
- 1 Bottle of Synaptizine
- A few more things, which I can't remember and can't look at while writing
this commit. Sometimes, git hurts.
TODO:
- Test more shit and figure out how the PanD.E.M.I.C. works/is supposed to
work.
- Fix genetics symptoms.
- Give vampires a less shitty diseased touch.
- Add appendicitis event.
-