Commit Graph

138 Commits

Author SHA1 Message Date
Bobbahbrown 8ba15b5ea8 [s] Fixes XSS Exploit Defeating Sanitization of Any String in Goonchat (#49867)
* fix

* cleanup

* renamed that one function

* fixes for users who do not have 5 entries
2020-03-11 09:29:37 +13:00
ShizCalev 7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
EOBGames 297d7e7d9b TG's Got the Pop Factor: The Singing Update (#49063)
* Sing a lovely song

* minor changes, ~ to %, and removal of specific logging

* 512 support

don't trust byond

* oops
2020-01-31 20:10:55 +01:00
MrPerson f7eb2c905b Unicode awareness Part 2 -- copytext() (#48512)
* Unicode support Part 2 -- copytext()

This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.

I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````

with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.

This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.

* Makes the code functional

* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.

* Removes ninjaspeak since it's unused
2020-01-18 13:07:22 +13:00
skoglol 51236f08db Merge pull request #48613 from MarioWizard119/patch-1
Dark mode chat color tweaks
2020-01-11 03:52:58 +01:00
Bobbahbrown 0b32b5c938 Format Change of Health Analyzers + scanners.dm Cleanup (#48595)
* VERY cool no more stink (less)

* LIST GAAANGLIST GAAANGLIST GAAANGLIST GAAANGLIST GAAANGLIST GAAANG
2020-01-10 22:59:47 +11:00
MarioWizard119 94d0a73488 I swear I’m blind 2020-01-09 23:48:25 -06:00
MarioWizard119 510c77fd28 pisschat for condoms 2020-01-07 00:35:39 -06:00
MarioWizard119 8cfa6ce549 a less ugly color change 2020-01-06 23:56:44 -06:00
MarioWizard119 f15e0ee699 Borg chat dark mode color tweak
Changes binary chat in dark mode to be more distinct from common. Black background in dark mode is dumb.
2020-01-05 17:19:29 -06:00
oranges 591eac4367 Add a spam limiter to the goonchat topic calls (#48524) 2020-01-03 15:21:00 -05:00
actioninja 365a9a66b5 proper colors 2019-11-24 17:26:59 -08:00
actioninja a2e9033502 dark mode announcement fix 2019-11-24 17:24:05 -08:00
XDTM b8c1be16f2 Makes the hypnosis text color animation smoother 2019-11-19 23:37:45 +01:00
kingofkosmos 8768b6b3b5 Removes unused & undefined spans (#47436)
* Removes all instances of 'caution', 'error' and 'notify'.

* Removes span classes which were either not used at all or were used very infrequently.
2019-10-30 02:00:11 -07:00
KomradeSpectre 9ff071af60 Clockcult Removal 2019 (#47057)
* Nanotrasen fires the Wave Motion Gun at the Clock Cult

* Fixes a random changelog appearing from the reebe void.

* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.

* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.

* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron

* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.
2019-10-15 10:13:41 +02:00
cacogen 6403b55b97 Makes admin OOC the same size as player OOC again (#46458) 2019-09-15 00:27:54 -07:00
kingofkosmos 8358169b8e New 'hear' span class (#46369)
* Reverts italics-span back to no color.

* Cleans up many extra spaces and indents.

* Adds 'hear' span class.

* Replaces all 'italics' used in heard messages with 'hear'.
2019-09-14 23:56:34 -07:00
cacogen abced6018e All font size spans scale (#46414) 2019-09-10 16:36:30 -07:00
Tad Hardesty c0b5cd3430 Fix defaults, clamp to minimums 2019-09-06 21:02:45 -07:00
Tad Hardesty 0c311392f5 Fix goonchat line-height setting in IE8 2019-09-06 20:57:24 -07:00
skoglol 718973fb9f Removes the assimilation/hivemind gamemode (#45316)
* Initial pass

* comment.

* stray ,

* stray define begone
2019-07-27 00:08:53 +02:00
tralezab 347a52eb52 Chat Subsystem ported from TerraGov-Marine-Corps (#45354)
* chat subsystem v0.1

* removes old tabulator

* updates the check on to_chat

* SSchat now initializes
2019-07-25 16:23:05 +12:00
nemvar 2fb1150130 Replace global TAB variable with a define (#45264)
Replaces 4 spaces global var with a define!! BADMINS BTFO'd YET AGAIN!!
2019-07-20 16:22:05 -07:00
AnturK 0d5c0f16f9 Updates FontAwesome to 5.9.0 (#45031)
* removes duplicated tgui asset definition.

* Puts fa in separate asset

* Makes it work.

* Not needed anymore

* Removes brands css and font

* we're not using logos anywhere right

* duh

* Fixes the chat settings width while i'm at it.

* TGUI build
2019-07-10 22:27:53 +10:00
JJRcop 938789d0a7 [READY] Blocked words tell you which ones (#44728)
About The Pull Request

Same premise as #44712 but using a simple regex replace and also on the client side
Closes #44712

I was gonna PR it to #44712 but half way through I realized I had already replaced nearly all of bobbah's changes, and after I was finished the branches shared nothing.
Why It's Good For The Game

The delta is way smaller and simpler
Should solve the DoS concerns without needing a limit on bad chats because it's not a loop it's on the client side
Changelog

cl JJRcop and Bobbahbrown
tweak: When attempting to say a blocked word in character you will be notified which ones were blocked.
/cl
2019-06-29 21:09:56 +12:00
Qustinnus 9d9a965bd1 New scientist traitor item: Australian Slime Mutator / Spider Injector (#44559)
cl Floyd / Qustinnus
add: New scientist traitor item: Australian Slime Mutator / Spider Injector, use it on a gold slime extract to create 3 neutral broodmother spiders, make them sentient and start your own hive.
/cl

'ello mates, Me and my syndicate expedition team have recently returned from my journey to the Australicus sector and crikey the spiders are big there. Fucking the size of a bear. Luckily one of my fellow expeditioners managed to knock one of the fuckers out with a boomerang and we took 'er to our labs. We managed to extract some of their extract which is known to create tame offspring when injected into a gold slime core.

However, if you give it sentience and tell it to do whatever you want, maybe you can use it for a useful purpose?

10 TC item, lets you inject a gold-slime core for some midwife/broodmother spiders that can help you start a spider army. Price can be raised if people think 10 is too little. It spawns 3 instead of 1 to keep consistent, but it can be lowered to 1 spider.
2019-06-22 10:31:28 +12:00
oranges f8c012abf4 Revoke JS error handler's right to exist (#44581)
unused, vulnerable
2019-06-18 00:06:45 -07:00
vuonojenmustaturska 0254559eca Replaces hear_intercept with signals, refactors MOVABLE_HEAR, touches up nanites and to_chat (#44391)
hear_intercept is removed in favor of having the things that care register for the COMSIG_MOVABLE_HEAR signal instead.

The signal has been changed to be like the speech one with an args list.

Nanite datums no longer register for the hearing signal just in case, only the voice sensor nanite program does.

Dead code has been removed from to_chat, the savefile/sound checks being just-in-case boilerplate checks made during the conversion to to_chat, the replacetexts sidestepping a byond bug that was fixed in 512.1420.
2019-06-10 10:43:12 +12:00
skoglol c163ba599d Blood brother alert now has sound and bigger text (#44293)
* Makes the blood brother antag alert more obvious.

* added css class
2019-06-08 13:23:28 +02:00
Akrilla d612ea120e New classes, <span>, and inline var
Fixup
2019-05-26 08:50:37 +01:00
Rob Bailey 272fcb60f3 Fix the prefs for darkmode loading inverted (#43639)
I can't believe this was the problem just end my life do it
2019-04-18 22:43:21 -07:00
nervere 80ff869077 Fixes for asay, asay darkmode, and asay when custom asay colors enabled (#43422)
About The Pull Request

Fixes several annoying and unintentional things about asay.
Fixes #43370
Changelog

cl Nervere
fix: Default color for when custom asay colors is not enabled is now orange, not red.
fix: Asay is now properly bolded in lightmode.
fix: Asay is now properly bolded in darkmode.
tweak: Default color for when custom asay colors is enabled is now orange, not black.
/cl

closes #43370
2019-04-03 10:51:24 +13:00
Rob Bailey ceca1e605e [READY] Yet more darkmode tweaks and fixes (#43306)
* fuck you whoever made the last icon it was garbage

* ticket log fixes

* ticket log fixes

* changes colors from hardcode per line to a define

* some nicer darkmode colors

* asay and ooc name default fixes

* fuck you appveyer build again

* slight brightening of the default font color

* properly fixes tip of the round being hard to read
2019-03-25 20:49:59 +13:00
Rob Bailey 9290358482 fixes (#43275) 2019-03-22 10:53:19 -04:00
ShizCalev 5d60f2d568 Merge pull request #43215 from AutomaticFrenzy/patch/throw-exception
Replace 'throw EXCEPTION' with CRASH or WARNING
2019-03-21 23:57:27 -04:00
Rob Bailey 930e9dc501 [READY] Darkmode fixes (#43252)
* better darkmode v1

* ever better colors

* slightly improved tip color + fixed scrolly bug

* updates skin.dmf as well as some small color tweaks

* slightly tweaked more readable info and admin shit

* span_class fix

* merges ooc fixes

* whoops

* MC and ticket screen fix

* no default darkmode

* skin fixes

* more obnoxious adminpm

* more obnoxious adminshit

* skin revert to ensure proper light theme.

* prevents weirdness with default whiteness
2019-03-22 08:56:17 +13:00
Kmc2000 6b6537cccd Adds toggleable darkmode to the game! (#43072)
* Adds toggleable darkmode to the game! (Use the toggle darkmode verb if you want to use light mode)

* Removes a random linechange

* Undo unintentional changes

* Changes some forced font tags to use spans, which won't break darkmode.

* Fixes up some problems I found while testing
Darkmode is no longer default (this caused some issues with people getting a broken chat)

* Darkmode sucks less now

* Darkmode button now works again
2019-03-21 11:02:41 +13:00
Tad Hardesty 570a4da33e Replace 'throw EXCEPTION' with CRASH or WARNING 2019-03-19 23:09:24 -07:00
MrStonedOne 186f6c8ddd dbstickybans: Qdeleting queries, misc fixes, Query select proc for executing mutiple queries at once... 2019-03-16 00:23:40 -07:00
JJRcop aab6494846 Removes firebug from goonchat
not used in game
2019-03-11 05:28:18 -04:00
JJRcop 8748e6d83e Internet midi respects start and end times (#43021)
* Play Internet Sound respects start time
For example, adding &t=400 to youtube links.
Doesn't try to parse the start time, youtube-dl does that for us already. Will probably work on most sites not just youtube.

* [Play Internet Sound] now supports end time too

Switched event handler for start to loadeddata from canplay

loadeddata fires when the first frame is available
this is quicker and more consistent than canplay, which tries
to predict at least a few moments of playability being
available before it fires

* [Internet Sound] music_extra_data now starts null
2019-03-08 10:51:04 -05:00
Dominik Panic 74f959a0ac Oranges stop being lazy reeeee 2019-02-20 14:33:47 +01:00
Kierany9 14fa6040e5 Assimilation 2.0: Not quite a big enough PR to be worthy of the 2.0 title but almost (#42607)
* one

* ???

* big

* sprites

* it is done

* oofs

* no more bad jokes

* location -> reception

* i forgot a feature lmao

* yo lemme nerf this op power

* adjust removal and makes panic less insane

* hey i forgot another feature

* one mind removals

* *laser eyes meme*

* Disables multiple one minds for real this time
2019-02-12 20:02:23 -05:00
XDTM 89fe484b6d Phobia trigger words are highlighted in pulsing red/black (#40885)
* Phobia trigger words are highlighted in pulsing red/black

* .

* !

* >:(

* fixes

* fixes 2
2018-10-23 14:49:05 +02:00
Kierany9 5ef054e605 Assimilation Update (#40769)
* new objectives + qol

* beep

* oof

* one line

* prevent kill objectives from having the same target as assimilate objectives

* Free objectivev

* code review

* fix

* yes
2018-10-16 15:14:33 +02:00
Kyle Spier-Swenson 8baa470d7a Port paradise goonchat uridecode fix 2018-10-02 10:53:08 -07:00
XDTM 0b813b63b5 [Ready]Adds hypnosis and the hypnotic stupor brain trauma (#40362)
cl XDTM
add: Added a new severe brain trauma: hypnotic stupor. Victims of hypnotic stupor occasionally fall into a trance, and upon hearing a sentence they'll focus on it to the point of obsession, until it is replaced by a new hypnosis or the trauma is cured.
/cl

Adds the potential for some fancy rp gameplay. The idea is that they should take a passing message way too seriously, while leaving room for interpretation to the player. Hearing an isolated "greytide" over the radio might prompt a player to take up arms against the rampaging greyshirts, another might interpret it as having to become the greytide. Someone who realizes what's up might use this to give clear orders to the victim, although they'll only last until the following trance.

I plan on adding more methods to inflict hypnosis with the same trance->"focus on a sentence" mechanics, perhaps as a traitor/CMO pendulum item, or as a wizard/cult spell.
2018-09-29 10:07:43 +12:00
Jordan Brown bd7c22dda9 Moves TgsInitializationsComplete call to immediately after world/New() (#39771)
* Moves TgsInitializationsComplete call to immediately after world/New()

* Subsystem PreInit data directory audit

* world/New data directory audit

* Needful here too

* Remove SS_NO_INIT from SStitle

* Don't create banlist.bdb for SQL banning

* Stop creating legacy notes file

* Moves iconCache from data to tmp
2018-09-15 21:34:14 +12:00
vuonojenmustaturska bc7006f266 Small refactor to to_chat to get rid of needless list-wrapping (#39899)
This is frequently called from inside a loop. Probably no measurable performance impact but I sleep easier knowing we don't do this. Also includes a helper define for getting a client from a clientful thing.

I also shuffled some things around for more nano-optimizations.
2018-08-26 12:49:26 +12:00