Commit Graph

260 Commits

Author SHA1 Message Date
Zonespace
1481db3dab Improves the "disable ERP" config (#16411)
* i'm stealing the erp

* h

* Apply suggestions from code review

Co-authored-by: Tastyfish <crazychris32@gmail.com>

Co-authored-by: Tastyfish <crazychris32@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-10-02 14:20:24 +00:00
OrionTheFox
f8aa27f8d6 Removes obsolete Skyrat_Wiki variable (Fixes CorpReg link) and sets wikiurl default config to the Skyrat wiki (helps test servers/downstreams) (#16197)
* kill skyrat_wiki var

* OPTIONAL COMMIT: Comment "Tidying"(?) and Description improvements

* config i hope i did these right

WIKIURLSKYRAT IS OBOSLETE AND REMOVED

* hnhbg
2022-09-25 18:03:21 -04:00
SkyratBot
00d7e1f375 [MIRROR] Rocking The Boat, er, Map Vote [MDB IGNORE] (#16083)
* Rocking The Boat, er, Map Vote (#69561)

* Rocking The Boat, er, Map Vote

Hey there,

A while ago, I spooke (typo intentional) to some other people. One frustration I heard was the fact that people would sometimes sneak through map votes during the very start of a shift, during a high-paced portion, or just as a meme. People in OOC would then flood the vote, putting in any given station. However, if a vote happens 10 minutes in- and the round goes for 70 minutes and not many of the original players are around, then it's not particularly fair to those who have to play next shift on a map they bemoan.

So, we can rock the vote! If a player isn't particularly chuffed with the hand they are given, they can poll the players to see if they want to change the map as well. If rocking the vote goes through, huzzah, you get the ability to vote for the map again. If it doesn't go through: tough luck. You can rock the vote one time per shift by default, and server operators can change the amount of times you can call to rock the map vote at their discretion. Calling to rock the vote either successfully or non-successfully counts as a "call", and when that limit is exceeded: no more calls.

Does this mean that we will only rotate between two maps because pissants will keep rocking the vote until they get what they like? Maybe? I still see people bemoan getting Tram or shit the bed over IceBox, but I think enough people get sick of bread-on-butter to take the server where it need to go. If operators don't really like seeing only two maps play, they can always adjust the config to ensure it doesn't happen.

* makes the grammar grammar

it would be "Rock the Vote vote" otherwise

* Rocking The Boat, er, Map Vote

Co-authored-by: san7890 <the@san7890.com>
2022-09-11 20:18:14 -07:00
SkyratBot
2bd18adc8a [MIRROR] Cadaver spawner fixes [MDB IGNORE] (#16109)
* Cadaver spawner fixes (#69544)

fix: Fixed a runtime preventing nonhuman cadavers from spawning properly.
config: Cadaver spawners will no longer yell at you when morgue_cadaver_other_species_probability is blank.
config: morgue_cadaver_disable_nonhumans will now properly disable nonhuman races! (It was reversed, woops.)

* Cadaver spawner fixes

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2022-09-08 08:27:12 -04:00
SkyratBot
d559b94920 [MIRROR] Add silicon human spremacy override config, fixes #68957 [MDB IGNORE] (#15788)
* Add silicon human spremacy override config, fixes #68957 (#69293)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Add silicon human spremacy override config, fixes #68957

Co-authored-by: RandomGamer123 <31096837+RandomGamer123@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2022-08-24 18:12:29 -04:00
SkyratBot
403406fecf [MIRROR] Allows non-human bodies to spawn in the morgue at roundstart [MDB IGNORE] (#15493)
* Allows non-human bodies to spawn in the morgue at roundstart (#68867)

Adds a configurable probability for the cadavers in the morgue to spawn as nonhuman species.

* Allows non-human bodies to spawn in the morgue at roundstart

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2022-08-09 18:48:09 -04:00
SkyratBot
5cc21edbb1 [MIRROR] Security's Scaling Departmental Accesses - More Pop, More Problems [MDB IGNORE] (#15393)
* Security's Scaling Departmental Accesses - More Pop, More Problems

* Update admins.txt

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-08-05 00:56:52 +01:00
SkyratBot
9203743637 [MIRROR] Word Filter Fix Round Two: JSON Decoding Debauchery [MDB IGNORE] (#15383)
* Word Filter Fix Round Two: JSON Decoding Debauchery (#68975)

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Yeah, you need to json_decode the results again, again, again. This is three JSON decodes, I believe? I could be wrong. Anyways, we add another json_decode here as well to not runtime on initialization (as well as have the word filter work most likely).

Tested on local, did not see the runtime that @ ShizCalev brought up in https://github.com/tgstation/tgstation/pull/68905#issuecomment-1204557463 (after verifying where it would be seen on master). Should be good now. Again.

* Word Filter Fix Round Two: JSON Decoding Debauchery

Co-authored-by: san7890 <the@san7890.com>
2022-08-04 15:49:42 +01:00
SkyratBot
800369ef9f [MIRROR] AI Lawset can now be specified instead of 'custom' [MDB IGNORE] (#15375)
* AI Lawset can now be specified instead of 'custom' (#68587)

* AI Lawset can now be specified instead of 'custom'

Co-authored-by: Charlotte <98856144+orthography@users.noreply.github.com>
2022-08-04 15:49:11 +01:00
SkyratBot
bd47eb9a21 [MIRROR] Blargedy Blarg Blarg Blarg - Word Filter Error Fix [MDB IGNORE] (#15357)
* Blargedy Blarg Blarg Blarg - Word Filter Error Fix

* Update code/controllers/configuration/configuration.dm

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-08-02 21:39:47 +00:00
SkyratBot
ef8a81d162 [MIRROR] Take Two: The word filter now verbosely describes config failure (Rust-g 1.0.2 Edition) [MDB IGNORE] (#15328)
* Take Two: The word filter now verbosely describes config failure (Rust-g 1.0.2 Edition) (#68690)

A resuscitation of #67474 since Arm is not presently able to do it.

rustg_read_toml_file has backwards dependency to support older cases that checked for lack of list (the old sign the rust fn went wrong).

Fixes #67446

The configuration for the word filter now verbosely describes the error from the bad toml to the logs, allowing problems with it to be identified quicker and resolved.
Why It's Good For The Game

BLAZING
Ferris warning
Changelog

cl Armhulen/Armhulenn/Bazelart/Tralezab, san7890
admin: Word filters incorrectly set up will now have their errors actually described. Please, tell your server ops when you see it so they may fix the configuration.
server: Rust-g on this codebase is now on the 1.0.2 version, prepare accordingly.
/cl

I also bump rust-g's DLL to 1.0.2 in this PR as well.

* Take Two: The word filter now verbosely describes config failure (Rust-g 1.0.2 Edition)

Co-authored-by: san7890 <the@san7890.com>
2022-08-02 18:28:27 +01:00
Zonespace
15a223ff2d [MIRROR] Admin lua scripting (#65635) (#15118)
[Ready for Review] Admin lua scripting (#65635)

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>

Co-authored-by: Y0SH1M4S73R <legoboyo@earthlink.net>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-07-24 19:55:53 +01:00
GoldenAlpharex
fbbecbdba5 Fixes the issues with the database that have been forcing us to have #10823 test-merged for half a year (#15061)
* Don't try to make a query on a client that doesn't exist

* If this is actually why it's been shitting the bed, I swear to god
2022-07-20 04:12:35 +02:00
SkyratBot
c68fea7cba [MIRROR] Completely removes proc_holders from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code. [MDB IGNORE] (#14666)
* Completely removes `proc_holders` from existence. Refactors all wizard, xeno, spider, and genetics powers to be actions. Also refactors and sorts ton of accompanying code.

* our changes

* yes

* 0

* Update blackmesa.dmm

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-07-01 20:33:30 +01:00
SkyratBot
48ac7b572d [MIRROR] Security Level Datums [MDB IGNORE] (#14504)
* Security Level Datums

* wew

* Update security_level_datums.dm

Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-06-25 02:04:50 +01:00
SkyratBot
1464f5ec56 [MIRROR] Added further limitations on the sound emitter circuit component [MDB IGNORE] (#14401)
* Added further limitations on the sound emitter circuit component (#67540)

Added limitations on the sound emitter component

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Added further limitations on the sound emitter circuit component

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2022-06-19 10:11:49 -07:00
SkyratBot
7a653adfbb [MIRROR] TGUI Say: Upgrades chat input with modern features [MDB IGNORE] (#14375)
* TGUI Say: Upgrades chat input with modern features

* yes

Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-06-17 02:12:42 +01:00
SkyratBot
af8aa232d2 [MIRROR] Makes Playing Lobby Music A Config [MDB IGNORE] (#14220)
* Makes Playing Lobby Music A Config (#67455)

* Makes Playing Lobby Music A Config

Hey there,

Apparently some people don't like listening to the soulful lobby music we have to offer. How unfortunate. This adds a config flag to disable said title screen music. I've heard people who like debugging a lot don't want to get their ears-bleeding via flipflap, but I find it hard to agree.

* ALLOW to DISALLOW

whoops

* FUCK

* MSO's suggestions

I also added a small portion in regards to player preferences in case people weren't aware of that.

* lol

physics burned my brain out on parentheses

Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>

Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>

* Makes Playing Lobby Music A Config

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Kylerace <kylerlumpkin1@ gmail.com>
2022-06-10 18:01:56 +01:00
GoldenAlpharex
d4b0974aaf [MIRROR] CARGONIA THE FREE: The Quartermaster is now a head of staff. (#67518) [MDB IGNORE] (#14186)
* CARGONIA THE FREE: The Quartermaster is now a head of staff. (#67518)

* The Quartermaster is officially a head of staff, with new accesses, a silver ID, ect ect.
* The HoP lost their cargo-related equipment and access, including the Vault monitor, and frequency.

* wew

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-06-08 15:28:51 +01:00
SkyratBot
17fcc2aced Purges Mentions/Related Code of Virtual Reality From Config and Mapping (#13672)
Co-authored-by: san7890 <the@san7890.com>
2022-05-17 17:32:18 -07:00
SkyratBot
c8f2c9d98c [MIRROR] Removes log_cloning [MDB IGNORE] (#13581)
* Removes log_cloning (#66912)

Right now there is only 1 source of cloning: pod cloning-- and pod cloning is exceedingly rare. I don't think this warrants its own file anymore with the death of regular cloning a few years back.

* Removes log_cloning

* Removes log_cloning

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2022-05-17 21:38:27 +01:00
SkyratBot
6059a35c7a [MIRROR] Removes (now unused) sandbox related config and variable [MDB IGNORE] (#13493)
* Removes (now unused) sandbox related config and variable (#66803)

I don't know when we removed sandbox but this datum doesn't exist anymore and this var is unused

Also the config does nothing anymore so might as well throw that out

* Removes (now unused) sandbox related config and variable

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-05-09 21:48:03 -07:00
SkyratBot
9485e35615 [MIRROR] Refactors SSvote, makes votes into datums, also makes vote ui Typescript [MDB IGNORE] (#13448)
* Refactors SSvote, makes votes into datums, also makes vote ui Typescript

* yes

* Update transfer_vote.dm

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-05-09 01:42:27 +01:00
SkyratBot
b87c7279b0 [MIRROR] Adds MC initialization stages. Earlier stages can fire while later ones init. Fixes tgui chat reconnection banner showing during init. [MDB IGNORE] (#13089)
* Adds MC initialization stages. Earlier stages can fire while later ones init. Fixes tgui chat reconnection banner showing during init. (#66473)

* Adds MC initialization stages. Earlier stages can fire while later ones init.
Removes TICK_LIMIT_MC_INIT config for barely doing anything to speed up init and being inconvenient to work with if fires and inits can happen at the same time.

* Adds MC initialization stages. Earlier stages can fire while later ones init. Fixes tgui chat reconnection banner showing during init.

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2022-04-25 14:25:23 +01:00
SkyratBot
b12cf7f5da [MIRROR] Gives traitor logging its own config flag [MDB IGNORE] (#12746)
* Gives traitor logging its own config flag (#66148)

Co-authored-by: tattle <article.disaster@ gmail.com>

* Gives traitor logging its own config flag

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: tattle <article.disaster@ gmail.com>
2022-04-14 04:15:29 +01:00
Spock
d4d9e469a4 [MODULAR] Alert level text changes (#12251)
* Alert level text changes

* Update config.dm

* Update config.dm
2022-04-08 23:24:48 +01:00
Gandalf
f58530db36 Upstream merge 65625 (#12452)
* Pingbus changes and improvements

* Update adminhelp.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-04-01 01:15:48 +01:00
SkyratBot
6e51ad38ef [MIRROR] Changes what appears for urgent ahelps to supportmins. [MDB IGNORE] (#11516)
* Changes what appears for urgent ahelps to supportmins. (#64748)

Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>

* Changes what appears for urgent ahelps to supportmins.

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@ users.noreply.gitlab.com>
2022-02-15 23:27:40 +00:00
Tom
da50b21d45 Cleans up and fixes a logging issue. (#11208) 2022-02-05 20:52:04 -05:00
SkyratBot
43c74b2818 Adds a config toggle for granting admin server profile access (#11263)
Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2022-02-04 19:37:44 +00:00
SkyratBot
105f0cc610 [MIRROR] Add config entries for PR_ANNOUNCEMENTS_PER_ROUND and STATION_GOAL_BUDGET [MDB IGNORE] (#11145)
* Add config entries for PR_ANNOUNCEMENTS_PER_ROUND and STATION_GOAL_BUDGET (#64368)

Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>

* Add config entries for PR_ANNOUNCEMENTS_PER_ROUND and STATION_GOAL_BUDGET

Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>
2022-02-01 01:31:19 +00:00
SkyratBot
958a9d632d [MIRROR] Logs tool usage [MDB IGNORE] (#11055)
* Logs tool usage

* fix conflict

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
2022-01-28 01:57:27 -05:00
jjpark-kb
272384d0fb lobby camera (#10829)
* lobby camera

* Update code/__DEFINES/layers.dm

shouldn't cover up the menu

* make it a subsystem

* adds a setting to disable the lobby eye (per person)

* Update modular_skyrat/modules/lobby_cam/code/lobby_eye_ss.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/modules/lobby_cam/code/lobby_eye_ss.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/modules/lobby_cam/code/lobby_eye_ss.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/modules/lobby_cam/code/lobby_eye_ss.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/modules/lobby_cam/code/lobby_eye_ss.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-01-27 04:02:34 +00:00
SkyratBot
1e4ba0273c [MIRROR] Fixes some mapping errors not using the mapping error log. [MDB IGNORE] (#10805)
* Fixes some mapping errors not using the mapping error log. (#64114)

Should help prevent #64066 from reoccurring.

* Fixes some mapping errors not using the mapping error log.

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2022-01-19 17:21:17 +00:00
Useroth
eb384bd2d7 Telemetry 'n shit (#10810)
* Refactors dbcore and limits the maximum amount of concurrent async queries to a variable amount (#59676)

Refactors dbcore to work off a subsystem if executed async and limits the maximum amount of concurrent async queries to 25.

This has been tested locally on a mysql docker image and there were no crashes (as long as you didn't run it with debug extools) + data was getting recorded fine.
Why It's Good For The Game

May or may not resolve terry crashes, however, each query creates a new thread which takes up 2mb, preventing the game from using that 2mb. This can lead to ooms if they stack up, e.g. due to poor connectivity. This solves that issue.

maintainer note: this did not actually resolve the crashes, but has value anyway. Crashes were sidestepped fixed by finding out Large Address Awareness works

cl
refactor: Refactors dbcore.dm to possibly resolve the crashes that happen on Terry.
/cl

* Fixes an oversight in database code and cleans up telemetry (#64177)

As it is right now, we never actually clear the temporary list processing_queries
So if the subsystem is for some reason unable to complete a run, we will just whip right back around to it again
If it's been long enough, this could even cause horrific log spam. There was just now a manuel round with roughly 30k undeleted query errors. not good.

But what was actually not deleting you may ask?
Well

When you create a db request, a 5 minute timer starts. after those 5 minutes are up, the request is qdeleted by the db subsystem
This is to prevent the creation of unused requests, and to handle requests that are never cleaned up

Telemetry code was creating all of its db requests inside a for loop that could check tick, and then later
attempting to call them in series

Since requests by default sleep, this almost always lead to undeleted queries, which harddel'd given long enough periods

I've fixed this by moving the data gathering away from the query creation
Why is it good for the game

I was working on atmos code, happy, safe in my delusion, when suddenly I got a ping from tattle freaking out over 200 undeleted queries a second
This resolves that issue, so I can once again live in peace
Changelog

cl
admin: Telemetry code will spam you with undeleted query logs much less often now!
server: Improved how the db subsystem handles undeleted queries, should never have an incident like that again
/cl

* Fixes an error in telemetry queries (#64205)

* Hardsynced time_track.dm with upstream

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2022-01-19 00:21:07 +00:00
SkyratBot
c33061765b [MIRROR] [MDB IGNORE] BIDDLE TRAITORS - Adds progression traitors. Refactors uplink code in its entirety [MDB IGNORE] (#10620)
* [MDB IGNORE] BIDDLE TRAITORS - Adds progression traitors. Refactors uplink code in its entirety

* updates and fixes

* ffff

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
2022-01-12 03:25:38 +00:00
SkyratBot
df350f0977 [MIRROR] Add config entry to hide the station name in the hub entry [MDB IGNORE] (#10380)
* Add config entry to hide the station name in the hub entry

* Fixing the merge conflicts, I'll update this again once the PR right before is merged.

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-01-03 22:05:45 +00:00
SkyratBot
eb65da1b45 [MIRROR] Amortize the cost of creating preference assets by caching them per git revision on production, reducing best case init times by ~20 seconds [MDB IGNORE] (#10379)
* Amortize the cost of creating preference assets by caching them per git revision on production, reducing best case init times by ~20 seconds (#63503)

Preference asset creation, which while consistently created in early assets, can be requested at any time before then and often is, currently takes about 15 to 25 seconds to produce. Because of extremely hard to reproduce BYOND icon bugs, most of this is done on the same tick.

Lowering the cost of initialization itself is very tricky. Some of it we can theoretically optimize, such as creating humans for antagonists, others we can't, such as the raw cost of icon blending.

Furthermore, adding new icons later down the line would just increase this initialization time even more.

Instead of optimizing the asset creation, which is an uphill battle, this instead chooses to amortize the cost by caching preference assets created per git revision. This means that preference assets will be created, with their long delay, only once whenever the code changes.

This is done on a config, defaulting to on so that production needs no changes, as the whole point of these being made at runtime at all is that it keeps assets/art styles consistent, and PRs making subtle bugs that break preference generation in some way is not uncommon. On development, your git revision will stay the same until you commit, no matter what code changes you make.

* Amortize the cost of creating preference assets by caching them per git revision on production, reducing best case init times by ~20 seconds

* Fixing another conflict :)

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2022-01-03 21:42:11 +00:00
SkyratBot
c0706f4a41 [MIRROR] Field of View and Blindness improvements [bounty + upstream push] [MDB IGNORE] (#10060)
* Field of View and Blindness improvements [bounty + upstream push]

* Update death.dm

* almost done

* Update fov_handler.dm

* Face mouse when in combat mode, fix

* Fixes the category for the fov admin verb. #63401

* Fixes objects with bad planes and FoV bugs #63412

* pain

* there we go

* face pref

Co-authored-by: Azarak <azarak10@gmail.com>
2021-12-22 14:56:01 +00:00
SkyratBot
a526c6070a [MIRROR] Makes all default job titles, defines. [MDB IGNORE] (#10080)
* Makes all default job titles, defines.

* Makes all default job titles, defines.

* whitespace

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2021-12-18 16:54:03 +00:00
SkyratBot
959f66bf47 [MIRROR] Fixed spelling of possession, Separate, and Cemetery [MDB IGNORE] (#9862)
* Fixed spelling of possession, separate, and cemetery (#63203)

Just fixes some spelling for gangs. I also fixed misspellings for "posession" to "possession". Fixed "seperate " to "Separate" Fixed "Cemetary" to "Cemetery"

* Fixed spelling of possession, Separate, and Cemetery

Co-authored-by: Doctor Pope <84367152+Dr-Pope@users.noreply.github.com>
2021-12-03 16:58:40 -05:00
SkyratBot
d6a1ad473f [MIRROR] Allows players to send more visible adminhelps when no admins are on, which'll definitely alert admins [MDB IGNORE] (#9583)
* Allows players to send more visible adminhelps when no admins are on, which'll definitely alert admins

* db portion sorted out

* now it really is

* should work about fine

* one last touch

* well, one more

* also botched comment

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com>
2021-11-20 22:41:53 +01:00
SkyratBot
9750cca7cb [MIRROR] The word filter will now be less scared of double or trailing spaces [MDB IGNORE] (#9375)
* The word filter will now be less scared of double or trailing spaces (#62703)

It kept on tripping because the RegEx expression was malformed due to an absence of words in to_join_on_whitespace_splits, which caused it to filter out spaces that were at the beginning or at the end of a message, or if there was two spaces one by the other.

Also prevents people from sending a message that's only spaces in OOC, because that's a little silly.

* The word filter will now be less scared of double or trailing spaces

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-11-10 14:47:59 -05:00
SkyratBot
ad008ecfa6 [MIRROR] Adds logging for all Silicon rather than just Laws [MDB IGNORE] (#9346)
* Adds logging for all Silicon rather than just Laws (#62500)

I find stuffing everything in game.log is a real problem when you need to actually find useful information about what happened to a specific Silicon. It's hard to tell what happened to Silicon throughout a round, even when crossreferencing attack/game logs, so having a Silicon log for all the information related to them would be really useful.
For example, a Cyborg can spawn unlinked on Robocop, go Janitor and crowbar someone to death with a Robodoctor AI. When looking through logs, an Admin can easily assume it was a rogue Engineering cyborg who disobeyed their laws to kill someone.
This also isn't adding a whole new log file, more than it is just renaming the law log file to silicon and adding more useful things into it, so it isn't logging bloat (if that's even a concern)

* Adds logging for all Silicon rather than just Laws

Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2021-11-09 14:16:27 -05:00
SkyratBot
551fa984bb [MIRROR] Map load unit testing and directory whitelisting - Mojave Sun is a really cool downstream, like and subscribe for longer PR names. oranges was here and made this github PR name much longer, thereby proving once and for all that upstreams do add value to the downstream not just endless amounts of refactoring because we can't write any api's in a modular fashion the first time around so have to update them later to be modular. Anyway do you think a taco counts as a sandwich? [MDB IGNORE] (#9290)
* Map load unit testing and directory whitelisting - Mojave Sun is a really cool downstream, like and subscribe for longer PR names. oranges was here and made this github PR name much longer, thereby proving once and for all that upstreams do add value to the downstream not just endless amounts of refactoring because we can't write any api's in a modular fashion the first time around so have to update them later to be modular. Anyway do you think a taco counts as a sandwich? (#62620)

About The Pull Request

This is a fix for map not load anymore because of security changes
Why It's Good For The Game

Maps are good as they encourage gameplay and differentiate ss13 from a classic MUD game
Changelog

cl
add: unit test for map load
add: directory param to map load + whitelist for data and _maps
add: advertising for mojave sun in tg commit logs
/cl

* Map load unit testing and directory whitelisting - Mojave Sun is a really cool downstream, like and subscribe for longer PR names. oranges was here and made this github PR name much longer, thereby proving once and for all that upstreams do add value to the downstream not just endless amounts of refactoring because we can't write any api's in a modular fashion the first time around so have to update them later to be modular. Anyway do you think a taco counts as a sandwich?

Co-authored-by: AndrewL97 <andrewjlove97@gmail.com>
2021-11-07 08:09:43 -05:00
SkyratBot
d45e3ce55f [MIRROR] [s] Security vulnerability patch [MDB IGNORE] (#9256)
* [s] Security vulnerability patch (#62568)

About The Pull Request

In my personal, subjective opinion; trialmins should not, in fact, be able to read and delete server/box configuration files on a whim.

cl
server: Patches multiple(?) arbitrary file related vulnerabilities
/cl

* [s] Security vulnerability patch

Co-authored-by: TheFakeElon <59686430+TheFakeElon@users.noreply.github.com>
2021-11-06 19:47:20 +13:00
SkyratBot
a31e4bedfa [MIRROR] Tackles various problems with keyed_list config entries, fixing broken roundstart races and more! [MDB IGNORE] (#9131)
* Tackles various problems with keyed_list config entries, fixing broken roundstart races and more! (#62359)

While helping RaveRadbury debug some issues with enabling Halloween species early via the brute force method of enabling them in the config rather than the gentleman's solution of testmerging a PR that changes the Halloween date, we discovered something dreadful.

Cloth golems cannot be enabled! Infact, any species with a space in the ID cannot be enabled.

It uses the splitter despite VALUE_MODE_FLAG being set. So a key entry like ROUNDSTART_RACES cloth golem would get parsed as cloth = golem, then entered into the config as cloth = TRUE
NEW AND IMPROVED PART HERE

I've re-written how keyed_list config entries are parsed, splitting it into a number of procs to do some discrete block of logic.

Based on feedback from MSO, he expected that VALUE_MODE_FLAG keyed_list entries could have elements overridden. However, this functionality was not present in the code.

I have implemented it. We now support 3 methods of setting VALUE_MODE_FLAGS.

Implicitly enable the config entry: CONFIG_ENTRY config_key_goes_here
Explicitly enable the config entry: CONFIG_ENTRY config_key_goes_here 1
Explicitly disable the config entry: CONFIG_ENTRY config_key_goes_here 0

There have been functionality changes too. Previously, everything before the first splitter was the key and everything after was the value. However, in ambiguous config entries (Such as ROUNDSTART_RACES cloth golem 0) it would be unclear if the intent was (cloth, golem 0) or (cloth golem, 0) or indeed if the intent was (cloth golem 0, 1).

As a result, there is now the following paradigm in place: Everything after the LAST splitter is the value, everything before is the key and a log_config warning is now given explaining the problem and showing how it was resolved.

[2021-10-27 19:48:12.840] WARNING: Multiple splitter characters (" ") found. Using "cloth golem" as config key and "1" as config value.

This warning will trigger if multiple splitters are present for any keyed_list config entry, and will trigger on implicit VALUE_MODE_FLAGS entries that have splitters. The example above is it triggering on ROUNDSTART_RACES cloth golem - It has detected that there is potential ambiguity between (cloth, golem) or (cloth golem, 1), has picked a sensible option for the data type and has warned about it.

The intent is that no config entry should be ambiguous. It should be clear what is key and what is value when dealing with keyed_list config entries.

There's probably more work to do on other config entries to bring them up to this standard, but this is the thing I'm hitting in this PR.

Similarly, I have improved the validation aspect of keyed_list config entries with additional logging in general.
[2021-10-27 19:47:53.135] ERROR: Invalid KEY_MODE_TYPE typepath. Is not a valid typepath: /mob/living/carbon/monkey

I have added a unit test to make sure species IDs do not contain splitters from the two keyed_list subtypes relating to species.

I have added sanity checking to the race config subtypes since we have a big dick global list of all races sorted by ID, so a race not existing will fail validation and output a meaningful config log entry.

I have removed /datum/config_entry/keyed_list/probability from the code as it is unused with the removal of all game modes except Dynamic.

The config change necessitated the renaming of all golem species IDs. Doing so and renaming the clothgolem.ts file to match has fixed the broken cloth golem page too.

* Tackles various problems with keyed_list config entries, fixing broken roundstart races and more!

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2021-10-29 21:07:21 +01:00
SkyratBot
fad38d8c24 [MIRROR] Adds the ability to soft filter words, also fixes some word filter bugs [MDB IGNORE] (#9062)
* Adds the ability to soft filter words, also fixes some word filter bugs (#62158)

* Adds the ability to soft filter words, also fixes some word filter bugs

* Fixing linters (you're welcome Jake!)

* Punctuation is my passion!1!!111!

Co-authored-by: NamelessFairy <40036527+NamelessFairy@users.noreply.github.com>
Co-authored-by: GoldenAlpharex<jerego1234@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-10-27 20:06:23 -04:00
Gandalf
72f6221689 Interactions tidyup (#8850)
* Updated interactions

* Update interaction_menu.dm

* Colors

* Update interaction_menu.dm

* Update interaction_menu.dm

* Update interaction_menu.dm

* Better code for all.

* Update interaction_component.dm

* Removes support for TARGET SPEAK and USER SPEAK due to instability.

* Update interactions.dm

* Update interaction_component.dm

* Enables you to interact from a distance again.
2021-10-18 01:01:14 +01:00
SkyratBot
09c2297ad1 [MIRROR] Secret Gateways: Config loaded Away Missions + Anti-observing Z level traits [MDB IGNORE] (#8437)
* Secret Gateways: Config loaded Away Missions + Anti-observing Z level traits

* 0

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-10-04 00:11:28 +01:00