fix: having higher sanity is no longer punished by making you enter crit faster
balance: you can have 100 mood instead of 99 before it starts slowly decreasing
Remember higher sanity is BETTER
You want crit_modifier (now crit_threshold) to be LOW so you can stay in fights more (you go into crit at 5hp vs 0hp).
Why: Proc overhead, puts the load on mood, proper abstraction of mood component, values > defines, etc.
Adds an organ harvester. It's a machine. A human goes in, and the machine starts removing organs and limbs and ejects them right next to the machine. The process can be stopped at any time by either disabling power or prying it open.
The machine does not work if the subject has clothes or appears alive. The health scan can be disabled by emagging, but they'll still need to be naked.
It consists of 4 micro-manipulators, each tier making it faster, but it shouldn't ever really go below 2.4 seconds for every iteration, barring magic fuckery
It's basically a slower acting gibber, but it preserves all limbs and organs.
Useful in conjunction with either a limb grower, bounties, extra food, organ replacement or for something yet to come
balance: Limbs no longer need to have full damage to be dismemberable, although more damage means higher dismemberment chance.
balance: Damaging limbs now only counts as 75% for the mob's total health. Bleeding still applies normally.
add: Limbs that reach max damage will now be disabled until they are healed to half health.
add: Disabled limbs work similarly to missing limbs, but they can still be used to wear items or handcuffs.
Fixes#38445
Always felt odd how reaching max damage on a limb had no consequence. Now it does.
Currently i only added effects for disabling arms and legs; "breaking" heads and torsos has no effect as of now.
cl Floyd
del: removed beauty / dirtyness
balance: Mood no longer gives you hallucinations, instead makes you go into crit sooner
/cl
oranges requested these changes, i havn't coded in DM for a while so I might have made some mistakes
* adds signal and modifies each call of afterattack to call it's inherited proc
* uses new macro for sendsignal()
* map fuck
* skip precommithooks
* combine and negate 2 ifs
* Shrinks the internal cavity, allowing only singletanks, small, and smaller items to be implanted in the chest (heavily nerfs 'chestgun' circuits). Additionally, prevents circuits from grabbing or throwing in storage implants. As part of this change, grabbers can now hold items up to assembly size (shouldn't be problematic, since they cannot hold TTVs or two-handed weapons, and can no longer function inside of a storage implant).
* Un-nerfs cavity implants, while preventing medium circuits from functioning as storage implants or chestguns.
A later PR soon should add logging for throwers and examine text for implanted small weapon circuits.
The component is initialized with any combination of three flags, EMP_PROTECT_SELF protects against effects that target the object itself, EMP_PROTECT_WIRES protects against wires being messed with similar to the NO_EMP_WIRES_1 flag which this PR removes, EMP_PROTECT_CONTENTS protects against things that are inside the object like organs, internal "non-virtual" power cells and the like
This enables (but doesn't introduce) new mechanics such as adding EMP shielding at runtime to any atom, or taking it away.
No ingame changelog cause these are supposed to fool people.
Changes:
Hallucinations now pick from a single weighted list, instead of being separated in tiers. The more obvious a hallucinations, the less likely it is to appear.
Hallucination is now a contantly ticking down variable. 1 hallucination = 2 seconds duration. Hallucinating effects have been rebalanced to fit this.
Hallucinations have a random cooldown ranging from 10 to 60 seconds. The status will still tick down in the meantime.
The Sounds hallucinations has been split in three: realistic sounds (likely), weird sounds (rare), and station messages (i.e. the shuttle arrived, blob warning, etc.)(also rare).
The Bolts hallucination now stops you from bumping doors open. You can still click them to open them.
Removed the singulo hallucination. It's pretty much impossible to make it realistic enough, and it's too widely known to scare someone. It's an annoyance and a definite tell that you're hallucinating.
Removed the xeno attack for the same reasons. It was kept in the code to serve as a pseudotemplate for hallucination mobs.
Removed the fake attacker hallucination. Trying to replicate full attack and defense code as well as managing icon generation with blacklists and all is just not worth it. It would never be realistic enough.
RDS hallucinations have been either rolled into normal ones or removed (the OOC ones). No reason to keep them separate, aside from throwing off the hallucination odds (which has resulted in complaints about the cult victory warning being too common).
Added/edited a lot of strings for the text-based hallucinations. I could definitely use a few more for the message hallucination, i got writer's block there.
code: HEALS_EARS_2 is removed in favor of the earhealing component
code: wearertargeting component is available to subtype for components that want to target the wearer of an item rather than the item itself
* Rebalances lethality and adds a traitcheck
* Moves borg reagent to other_reagents since these shouldn't do damage at all and are hardly toxins
* Lower it more because this is probably gonna hurt a lot real fast
* Naku's suggestion
derp
Thanks cobby
readds this check
almost nerfed cybernetic livers oops
Aaaaaa
cl Floyd / Qustinnus
del: Removes short-term effects of mood
add; Adds long-term effects of mood by implementing sanity which goes up with good mood, down with bad mood, but takes time to change. Your sanity can be seen as your average mood in the recent past. All effects of moods are now covered by this system
add: Beauty component, currently only attached to cleanables, but you could attach it to any atom/movable and make them pretty/ugly, affecting mood of anyone in the room.
refactor: Removes the original way of adding mood events, uses signals properly instead.
fix: Cleanables "giving" area's free beauty during initialization
fix: Fixes some events not clearing properly
/cl
Fixes#36444
From now on mood no longer affects you directly, instead it decides whether your sanity goes up or down, when your sanity gets too low you will get the effects of what mood did before.
This means getting hit with bad moods due to being attacked while not mean you are doomed anymore, and you get a large timeframe to get away and just fix your mood later.
I also added the beauty component, you could add this to any object and it would either make a room prettier or uglier, comparable to DF or Rimworld. You could add traits to make certain people ugly, for example.
* caps fixed, small other fixes and mushpunch
* honey, i fixed the bugs!
* STUPID YORII DUMB GIRL STINK LEAVE
* boolean is such a fun word
* zoinks
* F_XED
* fixes part 2
* TRUEs and FALSEs
* don't drink and code boys unless you're goofball or like maybe kor
* for entirely different reasons i mean
* at what point is goofball too drunk to troll but not drunk enough to shitcode
* cool your jets, travis.
* what a TRAVIS-TY
* mush added to yet another blacklist!
Floyd / Qustinnus (Sprites by Ausops, Some moodlets by Ike709)
add: Adds mood, which can be found by clicking on the face icon on your screen.
add: Adds various moodlets which affect your mood. Try eating your favourite food, playing an arcade game, reading a book, or petting a doggo to increase your moo. Also be sure to take care of your hunger on a regular basis, like always.
add: Adds config option to disable/enable mood.
add: Indoor area's now have a beauty var defined by the amount of cleanables in them, (We can later expand this to something like rimworld, where structures could make rooms more beautiful). These also affect mood. (Janitor now has gameplay purpose besides slipping and removing useless decals)
remove: Removes hunger slowdown, replacing it with slowdown by being depressed
imageadd: Icons for mood states and depression states
What this PR is
This PR adds a system that allows player to gain and lose moodlets based on events occuring to, and around them. These events then give the player a mood value based on what it is. For example a hug could give you +1 mood, while being stabbed in the eye with a screwdriver can give -5 mood. All these moodlets together determine the mood of your character which currently affects the following things:
Movement speed - If you are very sad you move slower. Replacing movement slow from hunger. (hunger now instead affects mood)
Screen blur - If you are sad you gain an overlay that slightly blurs the screen, increasing in severity as you get sadder.
Interaction / do after speed - If you are sad or happy your interaction speed with things such as handcuffs is changed. with a 25% longer time if you are sad, or 10% shorter time if you are extremely happy.
Hunger rate - You gain hunger slower if you are very happy.
* Virus antagonist initial commit
* Updated disease code
* Sentient virus improvements
* Renamed /mob/living/var/viruses to diseases, and /mob/living/var/resistances to disease_resistances
* Added sentient virus event
* Renamed VIRUS defines to DISEASE defines
* Fixed bugs in rewritten disease code
* Fixed advanced disease Copy()
* Finalized disease antagonist
* Made cooldown buttons stop processing if they are removed from an owner.
Made sentient disease active sneeze and cough not available if the host is unconscious.
Made sentient disease menu refresh when adaptations are ready or hosts are added or removed.
Made sentient disease following use movement signals instead of fastprocess.
* Added better icons to sentient disease abilities