Commit Graph

1038 Commits

Author SHA1 Message Date
Donkie 53b212ddf2 Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)
* Process procs now properly use deltatime when implementing rates, timers and probabilities

* Review fixes

* Geiger counters cleanup

Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now

* Moved SS*_DT defines to subsystems.dm

* Rebase fix

* Redefined the SS*_DT defines to use the subsystem wait vars

* Implemented suggested changes by @AnturK

* Commented /datum/proc/process about the deltatime stuff

* Send delta_time as a process parameter instead of the defines

Also DTfied acid_processing

* Dtfied new acid component
2020-09-08 10:24:05 +02:00
ArcaneMusic d2dd7a2c8c Wild Mutation crops now carry over traits from the parent plant. (#53413)
This results in wild mutation carrying over possible traits from parent to child, in a way that will also be displayed by the plant analyzer.

This means if you gene splice a parent plant and it wild mutates into a different species, the wild mutation will take the trait genes of the parent, with none of the reagents as reagents are specific to the species in most cases, but can be bred back in via cross-pollination.
2020-09-05 16:46:22 -03:00
TiviPlus ca366c3ea1 Bools and returns super-pr (#53221)
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is

Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>
2020-08-28 14:26:37 -07:00
ArcaneMusic 4187c6f791 Waterworks: Plumbing enabled sinks, tanks, plant trays, and showers. (#52865)
https://cdn.discordapp.com/attachments/326831214667235328/740812723956482118/2020-08-06_02-04-14.mp4
For everything in this PR working at the same time, watch this video!

Alright, from the top:
Sinks now need plumbing to pump out liquids.

All sinks now has a demand-only plumbing pipe face the opposite direction of the sink itself. A standard iron sink will hold 100 units of water, and must be constructed from a sink frame. To complete the frame, a new stock part, the water recycler must be applied to the frame. Once the sink is constructed, it will only hold those 100 units of water until new water is piped in.
This however doesn't extend just to water, as a result. Any reagent can be piped into the sink, and will be used 5 units at a time per use. This means water isn't just an infinite resource, and will need to be resupplied to the station if, somehow, you're using a metric ton of water somehow.
image
A basic sink setup with water being plumbed in.
Showers now need plumbing to wash you off.

Want to dispense reagents faster on your Patients Victims Friends Coworkers? Well, you may also construct a shower frame, in a similar fashion to a sink frame, and pipe in your own reagents into the loop. The shower drains reagents much faster than the shower, and also preforms vapor and touch reagent reactions, resulting in a constant stream of chemicals being processed. This can lead to horrible situations, like a chemical heater hooked up to a vat of cooking oil being pumped into a shower.
Additionally, showers will display the reagents they're pumping out visually based on the color of their chemical contents. As a result, dangerous or unique showers are going to look noticeably different if their contents are dangerous looking.
image
A safe shower.
image
A very unsafe shower.
Wait what was that bit about cooking oil?

So, reagent dispensers, like water/fuel tanks, Virus Food, Cooking Oil Vats, Pepperspray, and the like, can now be converted into a stationary tank of reagents by using a sheet of metal on it, allowing it to behave as a simple supply of their respective contents, and can be pumped into a plumbing network. This means rolling water tanks can be used to resupply sinks and showers, as well as allow for inventive uses of otherwise unused chemicals located all around the station. Pump welding fuel into a resupply line to fight a blob! Pump pepper spray into the dorms showers! Create a deep fryer shower! The possibilities are LIMITED (Because we have very few reagent dispensers)! Still, this will prevent sinks and showers from being completely unfix-able should all the water run out, as cargo can purchase many of these chemical tanks at will.
Hydroponics is now also plumbing enabled.

So there I was, thinking, have I gone mad? Is the barking I hear in my noggin my own dogs rattling and raging against the eternal ocean tide, or are these the hounds of tindalos come to finally rip me to shreds within the sea of causality?
The answer to this is quite simple: I added plumbing simple-demand components to hydroponics.
Now, the trays will accept a pumping input, which can provide the plants themselves a reagent input for their nutrients, and SHOULD (current not fixed yet) also contribute to refilling the trays water. As a check to this horrible decision, there are very few plumbing chems that don't suffer from some kind of downside if exclusively pumped into the trays, so this should be done delicately and with forethought applied, or you'll have a row of plants with dead stats because they OD'd on ammonia.
image
Holy damn why are you doing this

I'm thinking this pr is probably in need of some serious trimming and will probably be closed as a result of the need to atomize this down, but this way I can start to get some feedback and ideas on which aspects would be better suited towards the current design direction of plumbing/bio-chem/reagent heavy jobs. As far as I'm aware, this is all in accordance with the relevant design docs, but this way I'll know for sure 🤷‍♂️
To-do before being 100% sparkly and clean

Fix hydroponics trays adding water to the nutrient reagents slot (NOT A TRUE FIX, SEE COMMENTS BELOW PLEASE)
Make disconnected sinks/showers slowly regenerate water so that a stationwide plumbing net isn't required so Anturk doesn't snap my kneecaps off
Make water/fuel tanks use their snowflaked stationary tank sprites instead of the custom overlay version

    Yeet out the existing psudo-plumbing from hydroponics

Why It's Good For The Game

We've discussed adding plumbing into the game for forever now, and with all the new and tangentally related plumbing content we have, almost everything we have now perfectly enables servers to properly create a station-wide plumbing network.

Sinks and showers provide an infinite supply of water all shift long, and since they can be produced with any material, anywhere, practically for free, that was the first and foremost reason why I made this PR, to make water slightly more precious on station, to justify the 20+ water tanks mapped across every station. Plus, no more meatsink spam in the middle of the hallways.

Hydroponics has a built in feature that was intended to work similar to plumbing, before we had plumbing, for sharing resources/water, but it was pretty rough and is still exceptionally difficult to make look very pretty on live servers. By integrating them with actual plumbing pipes, this enables one step closer to integrating chemistry and botany to merge going forward, and give them an incentive to include each other in their supply chains each shift.

On the reagent tank conversion, That's just an interesting feature I felt the need for while testing everything else, and found pretty great success in. Being able to pipe in large supplies of a single reagent that ordinarily would just sit on a wall or in mait somewhere proved extra useful, and would be beneficial for refilling plumbing heavy areas like bathrooms/medbay, etc.
2020-08-27 23:23:55 -07:00
Ryll Ryll 52b5eecced Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes) (#52951)
By clicking yourself with grab intent while targeting a limb of yours that's bleeding, you'll "grab" onto it with your free hand to apply pressure. This takes 1.5 seconds to do, takes up a hand while you do so, and applies a slowdown while you're holding it. In return, that limb will bleed 30% less while you're holding it (though it won't clot any faster). This stacks with the 25% reduction in bleeding you get from being horizontal, so laying down clutching your gushing gut while waiting for help is now both thematic and viable!
Other fixes and changes

I also made some other changes to wounds of various importance. Here's a quick list

-Most wound treatments now respect thick clothing/materials, so you can no longer suture slashes through spacesuits.
-Using sutures on slashes and pierces now actually use up sutures, and regen mesh must be opened to treat wounds with
-Infectious zombies (romerol) can now be wounded as intended
-Coagulant has been nerfed again to reduce bleeding less for every wound it's reducing bleeding on. This'll still need more love and attention later, but I need to find a good middle point where medipens are good for bleeding in an emergency without being a way to sidestep any and all bleeding wounds in one go.
-I added a recipe for improvised coagulant in the Wounds 2 PR using baked pulped banana peels and salglu, but then realized that recipe sucked and was overly complicated. You can now drink straight up ground/juiced banana peels to help close up slashes and piercings. Yuckm!
-You can no longer repeatedly disembowel people who have already lost their internal organs
-Whetstones now make things edged sharp rather than pointy sharp, fixing a carryover from when sharpness = 2 used to be accurate sharpness. This'll have the effect of making sharpened weapons less sucky at chopping people apart since slashing is usually more devastating than piercing

I've also made a few tweaks to scars, mostly making them a bit smaller. It now takes twice as much scar severity to reach "absolutely fucked up" when examined, and the other steps have been raised a few points as well. Minor scar examine text is a tad smaller text-wise, and the precise locations for the scars are a bit more procedural as well (more location modifiers like upper/lower/inner/outer wrist/whatever). These changes will hopefully add a bit more variety to the scarring you see on random crew members, since it's pretty easy to hit max examine severity as is.
2020-08-26 23:19:49 -07:00
TemporalOroboros 70d4bcaf3c Makes reagent exposure methods bitflags (#53164) 2020-08-25 16:40:15 -07:00
TemporalOroboros 6e950daccc Defines damage flags. (#53158) 2020-08-24 08:20:33 -03:00
ArcaneMusic c2caa18288 Fixes invasive spreading not updating plant tray identity. (#53101) 2020-08-23 03:59:51 +08:00
ArcaneMusic 648838de88 Wild Mutation produce is now the right size. (#53104) 2020-08-23 03:59:26 +08:00
ArcaneMusic ba20c9c47f Fixes plants potentially getting duplicate random reagents. (#53111) 2020-08-23 03:58:50 +08:00
Rohesie eda7c6ca55 Overlay lighting component (#52413)
Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.

It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:


This is a BYOND limitation, very well worth it IMO.

🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑
2020-08-22 14:56:38 +12:00
Rohesie 7859721611 Explosions SS runtime fix + code cleanup (#52894)
* runtime fix

* turf references are immortal
2020-08-21 21:57:29 +02:00
ArcaneMusic 10362c6bf9 Bam ath happy (#53039) 2020-08-19 14:25:58 -04:00
kingofkosmos 3263decaad Personalized combat messages part 2 (#52890)
Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
2020-08-13 11:34:57 -03:00
ShizCalev 399ab1ee8f Fixes a couple things not sending icon update signals (#52778) 2020-08-10 11:24:09 -04:00
Timberpoes 19c3bbde31 Cleanup up all instances of using var/ definitions in proc parameters. (#52728)
* var/list cleanup

* The rest of the owl

* plushvar bad

* Can't follow my own advice.
2020-08-07 12:23:42 -03:00
Jared-Fogle 7df16c595e Confusion will no longer continue to confuse after being cured (#52286)
* Confusion will no longer continue to confuse after being cured

* Grammar comment fix

* Move to status effect

* Remove test per request

* Make confusion a status effect, confusion curing now completely neuters the confusion

* set_confusion changes, get_confusion

* Fix confusion going down twice per tick

* Change strength = to proc

* Move procs to status_procs
2020-08-05 16:36:00 -03:00
Krysonism 35602ec6d0 [READY]syriniver nerfix / syringe projectile fix + various fixes requested by maintainer (#52019)
* syringe projectile fix

* greenman review

* oversight fix
2020-08-03 13:57:56 -04:00
ArcaneMusic c1e8d58eb0 Plant crossbreeds can now upgrade reagent %s, seeds can now select if they can mutate early. (#52366)
* Plant Reagent Genes can upgrade themselves via crossbreed, var added to keep cabbage from creating an organ farm

* This will do.

* Nah, NOW it's fine.

* tiny documentation tweak.

* like every var in hydroponics is ONE LETTER ROH

* When did this change

* is this the power of bitflags

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* Apply suggestions from code review

Co-authored-by: Rohesie <rohesie@gmail.com>

* Alright, working as intended.

* Flips to positive defines because I'm a negative lad

* resolves conflict

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-01 23:43:37 -03:00
ShizCalev 37a3e79552 Fixes seed mutatelist runtime (#52573) 2020-07-30 00:49:30 -03:00
Memedoktor ff69a8f7a9 Chaplains now enjoy eating the only divine food (#52082)
* god please let this work

* Update melon.dm

* Update code/datums/mood_events/generic_positive_events.dm

spelling errors missed.

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

* Update code/modules/hydroponics/grown/melon.dm

grammar matters kids

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>

* Update code/modules/hydroponics/grown/melon.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update generic_positive_events.dm

* Update melon.dm

fuckin variable got changed

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-28 20:28:48 -03:00
Ryll Ryll 46dd89b07a [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 23:19:30 -03:00
skoglol 8a75624377 Merge pull request #52307 from ArcaneMusic/PlantMutationTweaks
Fixes wild instability mutations giving the wrong seeds and other issues..
2020-07-21 19:20:52 +02:00
ShizCalev 4b6500fb67 Makes all anchored changes use setAnchored(), COMSIG_MOVABLE_SETANCHORED now only sent if an AM's anchored var has changed for more reliable usage. (#52254)
* Converts everything to use setAnchored() + other fixes

* Fixed singulo debug

* singulo again

* forgot to move the vv_edit proc

* caught that this time :)

* changes

* Update code/game/atoms_movable.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-21 02:20:26 -03:00
ArcaneMusic fad1911968 Plant Belt sprites are fixed, Engy Sprites too (#52330) 2020-07-20 18:41:07 -04:00
ArcaneMusic 47f7a5f212 Turns out that .len was a bad idea. 2020-07-18 02:56:08 -04:00
ArcaneMusic 165df85c32 Lets keep plant stats to clean, rounded values. 2020-07-18 01:42:27 -04:00
ArcaneMusic 4742d741bc Fixes Wild Instability Mutations. 2020-07-17 19:35:21 -04:00
Aleksej Komarov 0cf00a2645 tgui 4.0 (#52085)
* tgui 4.0 hyper squash

* Upgrade dependencies
2020-07-16 20:13:04 +02:00
skoglol 33f60893f7 Merge pull request #52196 from ArcaneMusic/funnicactus
Adds Star Cacti and the Prickly Adhesion plant trait.
2020-07-16 09:00:40 +02:00
ArcaneMusic 6191e20ef3 Updates seed.dm file. 2020-07-15 22:42:56 -04:00
ArcaneMusic 6050994fd3 Merge remote-tracking branch 'upstream/master' into amutatedharvest 2020-07-15 22:41:19 -04:00
jdawg1290 62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
ArcaneMusic c7da3e32ba On deep personal reflection that may have been stupid 2020-07-14 17:56:27 -04:00
ShizCalev 2b382db99a Merge pull request #52182 from ArcaneMusic/chemfix
fixes chemical plant analyzer examine for reacted chems.
2020-07-13 13:03:06 -04:00
ArcaneMusic 21d724f550 Work's both ways. 2020-07-12 18:59:46 -04:00
ArcaneMusic 1b4aebad4a Forgot the .len 2020-07-12 15:51:24 -04:00
ArcaneMusic 35419958f8 Plants now have a chance of growing mutated offspring. 2020-07-12 15:49:06 -04:00
skoglol ad0a9139e8 Merge pull request #52087 from KathyRyals/floralsomaltorayinstab
[READY]Plant mutation chances at 80+ instability is now a sliding scale.
2020-07-12 12:47:05 +02:00
ArcaneMusic fa5cf0496b fixes chemical plant analyzer examine for reacted chems. 2020-07-12 06:08:13 -04:00
ArcaneMusic 7890119d18 Ready made cactuses and cactus parts when we have <100 Prs. 2020-07-11 06:23:26 -04:00
nemvar 9ec9897bb3 Barrel melons no longer turn water into wine (#52075) 2020-07-10 20:26:42 +02:00
Kathy ff4ff6c39b I'm stupid 2020-07-08 11:53:14 +02:00
Kathy fd77d2a770 Changes mutation chances 2020-07-08 03:47:43 +02:00
ArcaneMusic 042e4df1ba Adds 2 new plants and 2 new plant traits. (#51789)
* Initial Commit ya dig

* I had no idea you could do this. This feels illegal, is this illegal?

* Suggestions made, plus comments and prepare result cleanup

* Fixes conflict

* Adds more documentation

* :Lenny:
2020-07-07 10:16:35 -04:00
skoglol 969b6ac46d Merge pull request #51734 from ATH1909/arcanemigraine
the default chem capacity of most grown plants is now 100u
2020-07-06 01:07:13 +02:00
ArcaneMusic 5052dfc2cb Changes the plant reagent formula and makes plant potency, plant reagent % and plant volume interact sanely. (#51723)
* Initial commit and god help me if there are any botany mains left they're probably finding my address right now god save my soul

* Cobby's changes and Shadark was right about my formula being slightly wack

* Adjusts the examine message to suck a bit less.

* Densified Chemicals now halves yield for double-power plants.
2020-07-04 03:24:00 +02:00
ShizCalev 411dea9542 Merge pull request #51659 from TaG2e/master
Fixes more missing sprites and adds invisible icon
2020-07-01 11:58:17 -04:00
spookydonut 88d1d36aef Removes some var/const that should be defines (#51461)
* Removes some var/const that should be defines

* change requests

* change requests
2020-06-25 03:00:09 -04:00
TemporalOroboros e78d82592f Refactors reagent exposure code (#51396)
* Refactors reagent exposure code

Removes istype clutter. Renames a few procs

* == TRUE

Adjusts COMPONENT_NO_EXPOSE_REAGENTS bitflag offset.

TODO: Remove comment

Co-authored-by: Rohesie <rohesie@gmail.com>

* == TRUE

Adjusts COMONENT_NO_EXPOSE REAGENTS bitflag offset.

Removes comment

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-06-21 20:03:19 -03:00