Commit Graph

5168 Commits

Author SHA1 Message Date
Mickyan cebc8d428e Merge branch 'master' of https://github.com/tgstation/tgstation into chewing_gum 2020-02-20 16:09:01 +01:00
Bobbahbrown 476399a346 the span of these changes is immense (#49432) 2020-02-20 13:48:13 +01:00
spookydonut 6401ba5708 Merge pull request #49421 from ShizCalev/define-cleanup
Cleans up redundant math defines
2020-02-20 19:32:36 +08:00
AffectedArc07 0315245729 Adds in discord auto-roling (#49374)
About The Pull Request

When a user successfully links their BYOND accounts and discord accounts, they will now be automatically roled, based on config settings.

NOTE: This does not update pre-linked accounts, but I can write an external bot to do that if needed

RUST-G has also been updated in this PR, to be inline with this PR over at RUST-G tgstation/rust-g#23

Why It's Good For The Game

People with linked accounts can now be given a specific role in the discord, which is good for verification.
Changelog

🆑 AffectedArc07
add: Linking your discord and BYOND accounts will now give you a role in the discord
/🆑
2020-02-20 22:37:14 +13:00
ShizCalev 7a24755696 Merge pull request #49393 from kriskog/keybinds
Forces basic keybind reset, fixes some older savefile issues.
2020-02-18 22:43:04 -05:00
ShizCalev 17d94aa57e Merge pull request #49362 from nightred/spacesuitbug
Several Spacesuit bug fixes
2020-02-18 22:39:40 -05:00
TheVekter 572be45c12 Adds the Vibebot (#49251)
* Adds the Vibebot and associated files

* Refactored code

* Further code fixes

* Fixed UI issue

* See last commit

* god why

* Fixed bug related to color priority
2020-02-18 08:25:02 +01:00
ShizCalev 7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
ShizCalev fcf32c3d2d Merge pull request #49399 from AnturK/512begone
Drops 512 support.
2020-02-17 22:52:47 -05:00
81Denton 3858591c78 Merge pull request #48965 from XDTM/MorQuantum
Adds the quantum alignment special brain trauma
2020-02-17 23:46:26 +01:00
XDTM 99500d05e0 Adds the Enhanced Interrogation Chamber as a BEPIS tech node (#49047)
About The Pull Request

Adds the Enhanced Interrogation Chamber as a BEPIS reward.

This security-only machine is able to implant a deep-rooted trigger phrase onto a subject; if they hear that phrase after the procedure, they will immediately enter a state of hypnotic trance, which can be used to demand truthful answers for your ongoing investigation.

The enslavement of criminal and non-criminal subjects is frowned upon by space law. Do not abuse the Enhanced Interrogation Chamber for personal gain.
Bad choice or mishandling of trigger words may lead to loss of control over the subject.

Side effects include dizziness, nausea, confusion, vomit, loss of eyesight, violent tendencies, loss of sanity, depression, oppression, loss of free will, spontaneous hypnotic trance, loss of hair, death.
Use with care.
Why It's Good For The Game

Make your own Manchurian Candidate!

Allows "rehabilitation" of dangerous criminals by security, which is more interesting than straight-up execution.
Could lead to fun situations if a team antag is caught and forced to be a mole.
It could also be used by any antag who manages to get to the sec protolathe.

However, the "conversion" is still shaky! The main cure is surgery, as the triggered trance is effectively just a brain trauma, healable with surgery. On top of this, even if the subject is unable to hear their trigger phrase, if someone else knows it they can override commands at any time. Even if that doesn't happen, it's possible that another message sneaks in before you can give your command, intercepting the hypnosis.
On top of this, the chamber has a 10% chance of giving the hypnotic stupor trauma instead of the triggered trance, making the subject even more of a wildcard.

Effectively, this is a very powerful tool in the antag-vs-security conflict, but over-reliance on it will probably bite back in amusing ways.
Changelog

cl
add: Added the Enhanced Interrogation Chamber as a BEPIS researchable tech.
add: The EIC can be used to implant trigger phrases in subjects that cause an instant hypnotic trance.
/cl
2020-02-18 09:34:14 +13:00
nightred 35cea2de35 fixed the return, it was just wrong 2020-02-17 09:35:45 -06:00
nightred f9e11dc58e now with signals, and other cleanups 2020-02-17 09:35:45 -06:00
nightred d8344a5a60 clean that up a bit 2020-02-17 09:34:21 -06:00
nightred f9fa5acb4f action button is a thing i have to deal with now 2020-02-17 09:34:21 -06:00
JJRcop a1392847bd Remove ismovableatom macro (#9) 2020-02-17 15:03:16 +01:00
Time-Green 980837fc79 PLUMBING: Lavaland geysers, pumps and regrettable balance decisions! (#49067)
Implements the geysers and pumps I originally added along with the first draft of plumbing.

Geysers
A geyser can be plungered with a reinforced plunger to activate. At wich point, it'll either produce clf3, hollow water, protozine or rarely wittel.

Pumps
Adds the liquid pump to the plumbing RCD. Place on an active geyser and wrench it to start pumping the geyser of its delicious juicess. I also changed it to not use power, because it would be awful drawing kilometer long wires along with the ducts.

Chems
Hollow water works basically like blood and mutage, where you can mix it with 1 unit of holy water for more holy water.

Protozine has a .2 healing, down from omnizine's .5. The healing is just kind of a side thing and not really what this chem was implemented for.

If it wasn't obvious, this allows chemists to industrialize strange reagent creation, with hollow water being able to create limitless holy water alongside protozine being a valid replacement for omnizine. Getting 2 geysers with those chems and on lavaland is quite the hassle, and you still need to get some holy water from the chaplain as kickstarter. I honestly think this is fine, and otherwise I could add a unique botany catalyst, so they don't become useless in the process.

Wittel
Adds wittel, wich is rare. Does nothing, but can be processed into two fun/regrettable chems.

Adds gravitum. Metabolizes very slowly. Drinking it makes you weightless, and spraying it makes that object temporarily weightless. Make 10u by mixing 1 wittel with 10 sorium

Adds metalgen. Created by mixing it with mutagen and bluespace powder. Must then be mixed with 40u of a powedered material and 1u of liquid dark matter.
The material used becomes imprinted on the chem. It can then be applied to anything, except mobs, to turn it into that material. Radiation is bad, and no you can't turn the nuke into plasma to blow it up.
The chem is difficult to get and use, but it can turn the escape shuttle into solid gold wich looks really cool. You could also turn it into plasma and vaporize everything. It can be used to, with some effort, duplicate materials.

🆑
add: Adds geysers to lavaland! They can be activated by using a reinforced plunger found in the medical vendor. They can be harvested by using a new plumbing device, magically powered liquid pumps!
add: Adds Hollow Water to geysers, wich can be combined with Holy Water as catalyst for more Holy Water
add: Adds Protozine to geyers, a very weak version of Omnizine. Can be used in Strange Reagent mixing
add: Adds Wittel, a very rare geyser chem. Can be processed into gravitum, wich removes gravity. Can also be processed into metalgen, wich has a strange tendency to transform objects into the imprinted material.
/🆑

Why:
This is what I originally wanted to do. The idea was to have a lot more chems, but I can't focus on one thing for that long. Hopefully this'll empower the bored chemist and make the rounds just that more interesting. Hopefully this'll spark the creation of some other geyser chems aswell.

That and makes shaft miners not the only ones hunting on lavaland.
2020-02-17 21:33:19 +13:00
Emmett Gaines 9e34b3d6a1 Supports named arguments in AddComponent and AddElement (#49098)
AddComponent/AddElement now support named arguments. This requires passing around an argument list instead of using actual proc args which a bit gross but we can blame byond for forcing this.

InheritComponent uses mirrored init arguments instead of an argument list which means no more accessing it via index to get to the same arguments as in init.

As a small bonus I restructured dcs defines to be a bit more manageable. Mainly just splits them into separate files and gives them their own folder.
2020-02-17 17:57:52 +13:00
JJRcop 163c463b27 Stasis supports multiple sources (#49237)
* Add grouped status effect
This status effect can be applied by multiple sources
Will not be removed until all sources remove themselves

* Stasis is now a grouped status effect
2020-02-16 18:03:06 -08:00
Mickyan 56d08f9908 space drugs 2020-02-16 16:49:37 +01:00
skoglol eb075ffc59 Sets more sane default keybinds 2020-02-16 14:29:37 +01:00
AnturK e3fca45a78 Fix a few small runtimes (#49352)
Nothing special here, mostly sanity.
Defib hud is awful, needs rewrite.
2020-02-16 00:40:11 -08:00
ArcaneMusic 382b91dc64 Adds a new Space Ruin, the Hell Factory. (#49186)
* The hell factory is born. Initial Commit.

* Alright just makes sure to re-add the dmi files, so at least SOMEWHERE they exist

* I somehow lost my pressure plate fix and didn't actually fix the conflict.

* No, really, how did I break this so badly. Jesus christ.

* Quick anti-cheese measures.

* Made the map a bit more comfortable, APCs/ Keycard

* mapmerge hook :(
2020-02-15 23:44:14 -08:00
necromanceranne 57fa901437 Krav Maga: Stompies Edition (#49103)
* Changes how krav maga works by making the legsweep a knockdown with stamina damage and disarm intent on someone on the floor a nonlethal strike. These hopefully respect armor. Needs further adjustments most likely

* Made harm stomp respect armor as well because 15 force kicks with no mitigation is fucking stupid and really made nonlethal stomps look like crap

* Krav Maga disarm intent is now a nonlethal jab. If jabbed, you have a probability based on stamina damage to drop everything you're holding. Krav stomp slightly more variable in damage to match nonlethal jab.

* Reduced the knockdown to 6 from 10.
2020-02-15 14:21:00 -05:00
nightred 395bebcdcc [READY] Space Suits use cells and warm the wearer (#49028)
About The Pull Request

This makes space suits use a cell and warm the wearer, This was handled by the handle_environment proc in the past with an override to make the suits work. This corrects this issue, and removes the override.

All space suits will have a cell installed at round start, this cell will last 15 min on average usage.

The cell cover can be toggled by alt+clicking (press the button), or using a crowbar (just pry it open) on the suit.
With the cover open you can remove the cell by using the suit in hand, or ctrl+clicking the suit.
As well with the cover open you can use a screwdriver to set the thermal regulator's temperature. The normal range is 20 c to 45 c, do not use an emag on the suit to increase the temperature range.

Examining the suit will report the temperature setting and the cells charge, if the cover is open you will also be able to see the type of cell that is in the suit.

Suit storage units will now charge the cells in suits, they will also require power to operate properly now.

Why It's Good For The Game

    Space suits should be managing the wearers temp in space not using some override.
    Lizards now have a portable heater in the form of any space suit.
    Now that suits need a cell it is not as easy to spend all session in a space suit.
    New interactions with hardsuits and emp's give nice combat buff to an underused item.
    Nuke ops can raid xeno for some nice yellow cells, or science for a big old bluespace cell.
2020-02-15 11:32:54 +13:00
Mickyan 0b3e1b524a Functional headphones (#48908)
* headphones

* adds element for mob icon updates

* corrects some "user" errors, literally

* now using signals

* removes extra space
2020-02-13 16:38:15 +01:00
nemvar f4f7172c8e Changes the two left feet mutation (#49280)
* Changes two left feet to randomly knock you down instead of prolonging stun times

* adds a span class to the message
2020-02-13 10:37:55 +01:00
Emmett Gaines 64c0461bca Makes radioactive contamination have a limited amount of material per wave (#49222)
* contam rework for tg

* Suggested changes

* and more suggested changes

* Cleans up the code a bit and make contamination a bit more random

* Makes radiation wave autodoc'd

Co-authored-by: Putnam3145 <putnam3145@gmail.com>
2020-02-13 10:16:53 +01:00
nemvar b7134336d7 Fixes the unstable quirk (#49309)
* Fixes mood 100% super duper for real this time

* fixes mood for real, removes a bit of convoluted code.
2020-02-12 19:01:04 -05:00
nightred 5d361d9665 [READY] Warm hugs for everyone (#48920)
* Warm hugs for everyone

* To hot to hug time to cool down

* Warm hug mood, and notice on hot hugs

* fixed mood, added insulation proc

* Balance heat exchange, notify when freezing also

* tenses again

* words, and proc clean up

* Common interfaces

* fixed monkey override

* lets not have another hard suit situation

* really wide lines

* need to invert that number
2020-02-11 20:03:56 -05:00
itseasytosee 870a6e5bbd [READY] Omega soap (#49265)
* Omega soap

* Update code/game/objects/items/clown_items.dm

Co-Authored-By: swindly <swindly_tg13@aol.com>

Co-authored-by: swindly <swindly_tg13@aol.com>
2020-02-10 20:03:29 +01:00
AnturK e40e22da6b Another runtime fixes batch. (#49209)
* Slime gland runtime fix.

* Logout ahelp logging runtime.

* Crafting non-items runtime.

* Turret building runtime.

* spacevine runtime.

* forcesay runtime fix.

* One less var
2020-02-10 10:50:36 -05:00
Coconutwarrior97 9c73230223 Fixes a typo. (#49236) 2020-02-08 14:53:43 -05:00
Emmett Gaines ece3c04ca3 Fixes an issue where you could unregister someone else's signal (#49224) 2020-02-07 19:46:41 +01:00
Dennok d49b9c369d nanite shock protection respect (#49154)
now other sources of shock protection protect nanites
2020-02-07 11:43:51 -05:00
Fikou 8deeceefb6 [READY] Adds rideable Goliaths (#49003)
* adds rideable goliaths

* stamding on the emdge

* plems work

* this should be it

* FUCK YOU TRAVIS

* primal friendly

* ok athath buddy

* mmm grayons

* sprite gang

* placeholder sprite, works till someone makes a new one maybe haha

* lets do this

* An object tames a monstrous beast somehow. More news at 5.
2020-02-07 17:00:07 +01:00
SteelSlayer 21fd1b25ee Adds the dunkable element (#49192)
* Adds the dunkable component

* Makes this an element instead

* early return

* makes this a bespoke element

* istype check for container
2020-02-07 10:30:06 -05:00
skoglol a28b24f149 Completely removes cloning (#48668)
* Removed from code

* Removes cloners from maps

* Some more references, now compiles.

* Reduces availability of replica pods

* DNA scanner and tech disk rebranding

* pubby door name, cargo pack description
2020-02-04 16:04:06 -05:00
Jordan Brown ce9577663a Merge pull request #49173 from ninjanomnom/material-lazy-init
Makes the global materials lookup lazily initialized
2020-02-04 11:05:59 -05:00
Qustinnus 48de09b7a4 Edible component; be gone vile organ code (#48596)
* component

* progress

* stuff

* Makes minor progress on edible component

* Finishes component and applies it to organs

* newline

* forgot to send signal

* domob addition

* wave that organ flag

* return adde

* fixes some minor issues

* fixes

* done

* done

* done

* added last one

* done

* done

* fix
2020-02-04 01:05:55 -05:00
Emmett Gaines 2cf7728494 Removes the bitflag helpers (#49106) 2020-02-03 16:26:00 -05:00
Emmett Gaines ab3a127295 Makes the global materials lookup lazily initialized 2020-02-03 10:17:13 -05:00
AnturK 33e3622f27 Add basic sanity to keybindings (#49116)
Not a fan adding another wrapper here but alternative is copypasta 
everyone will forget.
2020-02-02 19:51:39 -08:00
RaveRadbury 8b19d797ca [Ready] Prisoner role (#48819)
About The Pull Request

I observed someone request to be perma'd round start and then they just chilled in perma the whole shift. Security isn't always going to be up for putting people in perma and players who have been placed in perma tend to go catatonic. This allows players who are interested in having a chill shift doing the stuff in perma and acting like they've done crimes the opportunity to do that.
Why It's Good For The Game

Crew content. I'm not saying it's mindblowing but if we add it in as a role it will open the door for people to look at perma and what could be done with prisoners.

Prisoners spawn with a prison ID, a jumpsuit, and shoes. They are also currently spawning with a backpack and I'm uncertain about whether or not I want to do anything with that.

This is ready for a testmerge and worked for me locally.

Thanks to Tralezab for assistance with merge conflicts.
Thanks to EOBGames for the plasmaman prisoner sprites.
Thanks to Quill-Weave for encouragement.

Feedback is of course welcome, and I'd appreciate suggestions re: balancing this role. Maybe they should be roundstart pacified or something.
Changelog

cl
add: Adds prisoner role
/cl
2020-02-03 09:54:03 +13:00
Swept 2a14ee03d6 Fixes typo in sleeping_carp.dm (#49107)
Fixes #49100 

Changes wording of the "Sleeping Carp Wrist Wrench" from

"Your wrist is grabbed by [A] while simultaneously wrenched it to the side!"

to

"Your wrist is grabbed and simultaneously wrenched to the side by [A]!"
2020-02-02 21:17:15 +01:00
XDTM c73edf0687 Update code/datums/brain_damage/special.dm
Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>
2020-02-02 02:35:49 +01:00
XDTM bc80153456 Update code/datums/brain_damage/special.dm
Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>
2020-02-02 02:35:36 +01:00
MrPerson 12eecfd181 Makes raw HTML and browser datum popups UTF-8 aware (#49066)
* Makes raw HTML and browser datum popups UTF-8 aware

Admin menus specifically really shouldn't break just because you named some guy "☺s the Clown"

* Fixed new_player.dm

* Fucking filing cabinets
2020-02-01 22:14:31 +01:00
Time-Green 8ecbacc002 fixes item reactions breaking plumbing (#49088)
🆑
fix: fixes reaction chamber breaking with flour-like reactions
/🆑
2020-02-01 20:49:34 +13:00
Rob Bailey 62d1a3941c tgui-next ntos card console (#48938)
About The Pull Request

A PR now several weeks in the making that spiraled ridiculously out of control for something not many even use.
What else is new in NTOS hell?
I spent several days doing nothing but playing escape from tarkov so this took longer than expected I valiantly spent all night and day working on this, and barely finished it before The Deadline
the card ntos program was split into three programs, manifest, job management, and id card modification. It didn't make much sense for them all to be the same program imo, and made the project a bit more managable.

Airlock electronics saw some improvements as well since it uses this new access control section as well.

Yet again some new functionality and improvements to core components. Buttons now have an "altSelected" feature where instead of changing the color it adds a small white marker, among some other things.

There were a couple of small changes in inconsequential ways in other places, and datacore was refactored a tiny bit. Probably some other stuff I don't remember.

I would replace the old card console with a modular computer right now, but I know a few people actually use this program and want a bit of time to iron out bugs and inconsistencies before replacing the main job console with it.
Changelog

🆑
add: tgui-next NTOS card console, job manager, and crew manifest
tweak: airlock electronics interface is a little fancier

/🆑
2020-02-01 20:47:36 +13:00