Refactoring the entire destroy proc path from Mob Human all the way down
to Atom while trying to find the causes for the damn mob human hard
deletes. This PR comprehensively reorganizes every single stray
snowflake var used by /atom/ all the way to /mob/living/carbon/human,
and makes sure that every var that COULD store a reference, is now
cleared during the entirety of the Mob Destroy() parent hierarchy.
This may very well be the end of the lag war.
In total, I've hunted down and cleared 39 hanging references between
/atom and /mob/living/carbon/human
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
This PR adds a feature requested of me by @Fyniiy , adding optional
Filters to the Narrate panel that allow Storytellers to narrate only to
people that meet a set condition. The conditions themselves were
specifically requested to be "Psi Narrates" and "Synth Narrates", with
optional variations on Synth narrates that include people with cranial
implants. While I was touching these files, I've also fixed the improper
message sanitization bug with admin messages in general.
<img width="926" height="536" alt="image"
src="https://github.com/user-attachments/assets/08dcfd2a-5399-48b0-a13d-2bfd3a2c88f0"
/>
Here's a breakdown of the filter options.
1. **Skrell-like Psi-sensitives**: Anyone with a Psi-sensitivity score
of "At least 1". This will include Skrell, anyone with a Psi-receiver,
and people with the High Psi-sensitivity trait. It will exclude people
who are blocked from receiving telepathy for any reason, such as having
a mindshield, mindblanker, or having the psi-suppression power active.
Skrell with the Low Psi-sensitivity trait are counted as "Human-like
Psi-sensitives", and so won't be caught by this filter.
2. **Human-like Psi-sensitives**: Anyone who isn't blocked from
receiving telepathy, and also has a Psi-sensitivity score of "At least
0". This will basically catch "Most people who aren't a Vaurca,
Synthetic, or Diona". It will ignore Humanoids with the Low
Psi-sensitivity trait.
3. **Silicons**: Basically all of the possible robots/IPCs.
4. **Silicons + Implants**: It's fairly common practice during Hivebot
related events for Storytellers to also include characters with brain
implants. This filter automates that by including said brain implant
owners in the "Are you a synthetic?" check.
5. **Hivenet**: Pretty simple, people with the Vaurca language. This
would be Vaurca, plus anyone with the hivenet implants.
The next step in the Psi Reworks is here, this time adding all of the
remaining sources and applications of Psi-sensitivity and Psi-protection
that were on my To-Do list. Aside from a variety of tweaks and bugfixes
to powers, the most player-facing addition is the new Psi-sensitivity
related traits, which are High Psi-sensitivity, and Low Psi-sensitivity.
These traits modify the character's psi-sensitivity, which messes with
their interactions with psionics in a variety of ways.
All of these new sources and interactions with psionics are handled
entirely through components, which operate on the previously added
COMSIG_PSI signals.
Check the changelog file for more specific details on what all was
fixed. I've fixed quite a lot of bugs and issues with the various psi
powers.
I have actually tested this PR and verified that it works as advertised.
<img width="1902" height="1015" alt="image"
src="https://github.com/user-attachments/assets/e922593c-0595-4b63-bee4-36080d9cb8b4"
/>
<img width="1701" height="292" alt="image"
src="https://github.com/user-attachments/assets/db1dbc50-1a6a-4549-b9e5-b838ec62f849"
/>
**This is but one of several PRs as part of Project Anabasis, and is a
necessary building-block for a Traits System and a Skills System**
This PR was essentially prompted by recent lore changes to Skrell that
weren't yet existing in the game, so I'm kicking off this as a PR to
start a series of more meaningful psionic reworks. With a focus on
Components and Signals as a way of dramatically increasing the systems
interactivity of psionics. With this PR, mobs have an effective
"Psi-Sensitivity" that can be checked by psionic effects, and influence
a wide variety of interactions.
Psi-Sensitivity is calculated based on a Signal interaction, whereby
multiple responding sources have a chance to respond to the signal and
influence the end result of the calculation. For now there still remains
a cutout specifically for owners of a Psi-Complexus(Which is just Skrell
and Antag Psions), who have a bonus to the psi-sensitivity check equal
to their PSI-RATING. That being 1 for Skrell, and 2 for antag psions.
But eventually in the future this should be replaced with a standalone
component separate from the concept of "Sending"
The other common sources of sensitivity currently are the Psionic
Receiver implant, MindShield, and Mind Blanker implants. With Psionic
Receivers giving a bonus to psi-sensitivity, and the latter two giving a
penalty to psi-sensitivity. Both MindShields and Mind Blankers are now
unified in how they interact with psionics, both using the same system
of Signals without a hardcoded check for the mindshield.
As an important distinction to make, Psi-Sensitivity is NOT the same
thing as being Psionic. Actually Psionic characters like Skrell have a
big bonus to their sensitivity. It's more a measurement of how receptive
a character is to Receiving (separate from Sending) psionic influences.
You can actually be capable of using psionic abilities, but have a
sensitivity of 0, effectively meaning such a character can "Send but not
Receive" psi influences.
- [x] I have tested this PR and have verified that it works, you're
welcome.
This PR "Gently refactors" organs in preparation for adding in new
variant organsas requested by HumanLore. Additionally, it adds in
several organs that were requested by Human Lore, as described in:
https://docs.google.com/document/d/1SLbll969PyJ_H9J1LP8cmdso9OMozUc8MGOVZkY4HbE/mobilebasic
The new augments include: Auxiliary Heart, Platelet Factories, and
Subdermal Carpace
Additionally, all of the new Galatean Bioaugs have been added to the
antag uplink.
The bulk of this PR consists of replacing a majority of all the organ
"Magic Numbers" with variables which could feasibly be modified by any
new kind of organ object. Additionally-- although it's unused in this
PR, here's also a new optional boolean for hearts to create a "Fake
Pulse", which would be useful in the future for event character shells
to be able to fool a pulse check. Finally, the heart systems are
configured to use Signals so that arbitrarily any component can
introduce their own modifiers to the heart statistics.
This PR was requested by Human Lore:
<img width="434" height="290" alt="image"
src="https://github.com/user-attachments/assets/98236886-1c19-4621-958e-c154ae66f2ad"
/>
Sprites have been made by @NobleRow
This PR adds a pair of new "BioAugs" as loadout options for Galatean
characters, called Mind Blanker. They come in two variants, and both are
available exclusively to Galateans. The basic version of the mind
blanker makes its user immune to mind-affecting psionic powers.
The advanced version of it inflicts lethal biofeedback on any psychic
that attempts to enter the user's mind, while also providing the user
with the same protection as the basic version. The advanced version is
more expensive, and is exclusively available to Galatean Consulars.
This PR was requested by Human Lore for their "Galatean Bioaugments"
list.
<img width="739" height="334" alt="image"
src="https://github.com/user-attachments/assets/8dd0e65c-2834-4949-8a03-8966f22eeca4"
/>
---------
Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Unified most of the procs into one definition, so there are no duplicate
around the codebase.
Marked some of the above as overridable if a good enough case can be
made for them (eg. external dependency or unlikely to be used).
* Your unbeatable smile wrecks the media
We wanna know your secret, so mysterious
* Even the things she lacks end up in her area
Such a perfect liar, you are
* Miss ingenious, godly idol!
(You're my savior, you're my saving grace)
* So, what'd you eat today?
What's your favorite book?
* And if you wanna go to play, where are you gonna go?
I haven't eaten at all
* That's a secret
No matter what you ask
* She's elusive, evasive
* So nonchalant
Yet still shining bright;
* Her secret: out of sight, as if visible, has the taste of honey
There is none, none, none of this
* And also none, none, none of that
What type of guy do you like?
* Who is your partner?
Come on, answer me
* "I don't understand what falling in love with someone else is like" (Hey! Hey!)
I cannot tell what is true from what is a lie (Hey! Hey! Hey! Hey!)
* And yet again, someone falls for such words (Hey! Hey! Hey! Hey!)
Gently lulled into love
* Drawing everyone's eyes
You are the perfect, ultimate idol
* Never to appear again
A reincarnation of Venus
* With that smile, with that "I love you"
You captivate everyone
* Even if those eyes, those words, are false
They make up a perfect love (Ai)
* Yeah, yeah, that girl stands out, exceptional
We were extras from the beginning
* BS that acted as adornments for the star's leading role
Everything we've accomplished is thanks to her — no!
* How impudent
How could envy and jealousy not exist?
* examine
* This isn't some made-up drama for appearances
So I cannot forgive
* You're not perfect, I cannot forgive you
I cannot forgive myself
* I cannot accept any version of you other than the one stronger than everyone else
* Everybody trusts and worships
The very strongest, most invincible idol
* Weaknesses and whatnot are not to be found
Carrying the morning star within
* Showing any weakness is no good, no good (Hey! Hey!)
Don't let them see anything that they don't want to know (Hey! Hey! Hey! Hey!)
* Anything but being one-of-a-kind is a definite no, no (Hey! Hey! Hey! Hey!)
That is the real love (Hey!)
* can commune fixes
* can commune rename
* fix is psi blocked
* fixes agian
* My signature smile that fires up the media
The only secret that I shall keep is this:
* My career was built upon fake "I love you"s
This is love, in my own way
* Even the flowing sweats are beautiful Aqua
These eyelids that hid the Ruby within
* Sing, dance, flutter, I am Maria —
Right, lying is the most exquisite form of love
* I have never been loved by anyone
Nor have I loved anyone else
* That such lies of mine will become true someday
I trust in it
* Someday, surely, I will have it all in hand
I am such a greedy idol
* Because I wish to love everybody properly in a life-sized way
I shall lie today as well (Hey! Hey! Hey! Hey!)
* a
* b
* c
* d
* And yet, still, (Hey! Hey!)
I have been unable to tell you, and you, alone (Hey! Hey! Hey! Hey!)
* jesus christ
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/game/gamemodes/technomancer/spell_objs.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human_helpers.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/organs/organ_external.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/assay.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/command.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/emotional_suggestion.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/psi_search.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/singularity.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/time_stop.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* cl update
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Your unbeatable smile wrecks the media
We wanna know your secret, so mysterious
* Even the things she lacks end up in her area
Such a perfect liar, you are
* Miss ingenious, godly idol!
(You're my savior, you're my saving grace)
* So, what'd you eat today?
What's your favorite book?
* And if you wanna go to play, where are you gonna go?
I haven't eaten at all
* That's a secret
No matter what you ask
* She's elusive, evasive
* So nonchalant
Yet still shining bright;
* Her secret: out of sight, as if visible, has the taste of honey
There is none, none, none of this
* And also none, none, none of that
What type of guy do you like?
* Who is your partner?
Come on, answer me
* "I don't understand what falling in love with someone else is like" (Hey! Hey!)
I cannot tell what is true from what is a lie (Hey! Hey! Hey! Hey!)
* And yet again, someone falls for such words (Hey! Hey! Hey! Hey!)
Gently lulled into love
* Drawing everyone's eyes
You are the perfect, ultimate idol
* Never to appear again
A reincarnation of Venus
* With that smile, with that "I love you"
You captivate everyone
* Even if those eyes, those words, are false
They make up a perfect love (Ai)
* Yeah, yeah, that girl stands out, exceptional
We were extras from the beginning
* BS that acted as adornments for the star's leading role
Everything we've accomplished is thanks to her — no!
* How impudent
How could envy and jealousy not exist?
* examine
* This isn't some made-up drama for appearances
So I cannot forgive
* You're not perfect, I cannot forgive you
I cannot forgive myself
* I cannot accept any version of you other than the one stronger than everyone else
* Everybody trusts and worships
The very strongest, most invincible idol
* Weaknesses and whatnot are not to be found
Carrying the morning star within
* Showing any weakness is no good, no good (Hey! Hey!)
Don't let them see anything that they don't want to know (Hey! Hey! Hey! Hey!)
* Anything but being one-of-a-kind is a definite no, no (Hey! Hey! Hey! Hey!)
That is the real love (Hey!)
* can commune fixes
* can commune rename
* fix is psi blocked
* fixes agian
* My signature smile that fires up the media
The only secret that I shall keep is this:
* My career was built upon fake "I love you"s
This is love, in my own way
* Even the flowing sweats are beautiful Aqua
These eyelids that hid the Ruby within
* Sing, dance, flutter, I am Maria —
Right, lying is the most exquisite form of love
* I have never been loved by anyone
Nor have I loved anyone else
* That such lies of mine will become true someday
I trust in it
* Someday, surely, I will have it all in hand
I am such a greedy idol
* Because I wish to love everybody properly in a life-sized way
I shall lie today as well (Hey! Hey! Hey! Hey!)
* a
* b
* c
* d
* And yet, still, (Hey! Hey!)
I have been unable to tell you, and you, alone (Hey! Hey! Hey! Hey!)
* jesus christ
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/controllers/subsystems/processing/psi.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/game/gamemodes/technomancer/spell_objs.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/mob/living/carbon/human/human_helpers.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/organs/organ_external.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/assay.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/command.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/emotional_suggestion.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/grip.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/mend.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/psi_search.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/shockwave.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/singularity.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/abilities/time_stop.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Update code/modules/psionics/interface/ui_hub.dm
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* cl update
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com>
* Ports a psionic system from Bay.
* Rip out this shitcode.
* shitcoden't
* fixes
* it should work fully now
* Admin fixes
* Remove todos
* remove todos part 2
* Removes psi-armour. We don't need this for now.
* Skrell are now operants. Tweaks coercion.
* Adds thralls.
* Temp removal of psiarmour. Fixes psigrabs.
* Thrall assay.
* fixes
* More fixes
* unused define cleanup
* Log and powers
* Skrell powers are done.
* Update code/modules/psionics/events/mini_spasm.dm
Co-Authored-By: Geeves <ggrobler447@gmail.com>
* Update code/modules/psionics/events/mini_spasm.dm
Co-Authored-By: Geeves <ggrobler447@gmail.com>
* Update code/modules/psionics/equipment/cerebro_enhancers.dm
* did this work???
* jargon
* arrow's fixes
Co-authored-by: Geeves <ggrobler447@gmail.com>