Psi Rework Part 2: Scenes From A Memory (#21736)

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"
/>
This commit is contained in:
VMSolidus
2026-02-01 18:29:21 -05:00
committed by GitHub
parent ba2f599a19
commit a802b48e2a
34 changed files with 280 additions and 65 deletions
@@ -133,3 +133,23 @@ BROKEN_DISABILITY(left_foot, "Left Foot", BP_L_FOOT)
BROKEN_DISABILITY(right_foot, "Right Foot", BP_R_FOOT)
#undef BROKEN_DISABILITY
// Psi related traits. Not strictly disabilities, but also not positive traits either.
/datum/character_disabilities/high_psi_sensitivity
name = "High Psi-sensitivity"
desc = "You are naturally more sensitive to psychic phenomena, roughly on par with having a psi-receiver implant." \
+ "Though this does not grant any psychic abilities, a character with this trait is counted as being psychic for a variety of effects." \
+ "For example, having the ability to distinguish the source of telepathic signals, but also taking bonus damage from anything that deals bonus damage to psychics."
/datum/character_disabilities/high_psi_sensitivity/apply_self(var/mob/living/carbon/human/H)
H.AddComponent(HIGH_PSI_SENSITIVITY_COMPONENT)
/datum/character_disabilities/low_psi_sensitivity
name = "Low Psi-sensitivity"
desc = "Your Zona Bovinae is naturally under-developed, resulting in a lower than normal response to psychic phenomenon." \
+ "Characters who are already psychic with this trait don't lose their powers, but they are also no longer counted as psychic for a variety of effects." \
+ "For example, losing the ability to distinguish the source of telepathic signals, or taking brain damage when having their mind read." \
+ "On the opposite end of the spectrum, anything that deals bonus damage to psychics will also deal reduced damage to you."
/datum/character_disabilities/low_psi_sensitivity/apply_self(var/mob/living/carbon/human/H)
H.AddComponent(LOW_PSI_SENSITIVITY_COMPONENT)