From bc9e6bc58b7e1473344d4054c32a19f5bfdac0d2 Mon Sep 17 00:00:00 2001 From: Standing-Storm <120433252+Standing-Storm@users.noreply.github.com> Date: Thu, 29 Aug 2024 19:21:44 -0500 Subject: [PATCH] [MoM] Add Headblind trait and Latent Psion trait. (#76004) * Add trait * Add traits * Update README.md * Headblind characters cannot gain psionics * Add randomized odds EoC * Traits have Cancels fields to prevent weird stacking * Edit snippet for awakening odds * Most NPCs cannot be psions * Awakening removes Latent Psion * Awakening Psion profession starts with Latent Psion * EoC has to be recurring to set NPC randomized awakening odds * Set load EoC to prevent existing characters from having their awakening count increased * Lint * Final fixes --- data/mods/MindOverMatter/README.md | 4 ++ .../effectoncondition/eoc_awakening.json | 55 +++++++++++---- .../eoc_game_initialization.json | 59 ++++++++++++++++ .../mods/MindOverMatter/mutations/traits.json | 58 ++++++++++++++++ .../MindOverMatter/npcs/starting_traits.json | 69 ++++++++++++++++--- data/mods/MindOverMatter/obsolete/eocs.json | 8 +++ data/mods/MindOverMatter/professions.json | 1 + .../MindOverMatter/snippets/snippets_new.json | 2 +- 8 files changed, 232 insertions(+), 24 deletions(-) diff --git a/data/mods/MindOverMatter/README.md b/data/mods/MindOverMatter/README.md index d28f303fd9933..90887e4004d3a 100644 --- a/data/mods/MindOverMatter/README.md +++ b/data/mods/MindOverMatter/README.md @@ -57,6 +57,10 @@ Bathe in the energies of the Nether. We have such sights to show you. +Starting characters without psionics have random odds to gain them using these methods, from 50% to less than 1%. There are three traits that can affect this. The first, Latent Psion, raises the odds of gaining initial psionics to 100%. The second, Headblind, prevents a character from ever gaining psionics. The last, Limited Awakening, is designed to be taken by a character who starts with psionics and makes unlocking future paths much harder. Most NPCs are Headblind, and most NPCs who have psionics have Limited Awakening. + +Finally, the odds of unlocking future paths are reduced based on the number of paths you already have. This is true for both methods of awakening psionics. There may be other means of awakening that are not subject to these restrictions. + LEARNING NEW POWERS New powers are unlocked by leveling existing powers. When particular prerequisites are reached and after a certain amount of time (anywhere from a couple of days to a couple of weeks, depending on power difficulty), you have the chance to unlock the possibility of a new power. Once you’ve done so, you can attempt its contemplation recipe, found in the Practice crafting tab, to attempt to understand the power. If you succeed (success depends on your Metaphysics skill), you’ll unlock the power and it will appear in your powers list. If you fail, you’ll have to try again. You can try repeatedly until you successfully unlock it. diff --git a/data/mods/MindOverMatter/effectoncondition/eoc_awakening.json b/data/mods/MindOverMatter/effectoncondition/eoc_awakening.json index 58d9c9141396b..e049f15add692 100644 --- a/data/mods/MindOverMatter/effectoncondition/eoc_awakening.json +++ b/data/mods/MindOverMatter/effectoncondition/eoc_awakening.json @@ -11,7 +11,7 @@ { "type": "effect_on_condition", "id": "EOC_BIOKIN_MATRIX_AWAKENING", - "condition": { "u_has_trait": "BIOKINETIC" }, + "condition": { "or": [ { "u_has_trait": "BIOKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -46,6 +46,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. As it fills your vision, you become aware of the sound of your heartbeat, of the blood rushing through your veins, of the oxygen fueling your muscles. You see the connections between them all and, only partially aware of how you're doing it, you reach out and adjust the flow. Strength and power suddenly fill your body, and as you watch the connections with your inner eye, you see what exactly you did and you know how to do it again. As the light from the crystal fades, leaving it dull and colorless, your vision clears.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "BIOKINETIC" }, { "u_add_trait": "BIOKIN_NEEDS" }, { "u_add_effect": "effect_biokin_physical", "duration": "5 minutes" }, @@ -72,7 +73,7 @@ { "type": "effect_on_condition", "id": "EOC_CLAIR_MATRIX_AWAKENING", - "condition": { "u_has_trait": "CLAIRSENTIENT" }, + "condition": { "or": [ { "u_has_trait": "CLAIRSENTIENT" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -107,6 +108,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. You remember your childhood, before the end of the world, and then the memories diverge. You see yourself on an aircraft carrier bridge, looking out the window as a colossal tentacle breaches the surface of the ocean; you stand in a clear white room, watching through a reinforced glass window as your colleague reanimates; you are caught up in the riots and shot by soldiers manning a road block; you are on a camping trip with friends when a nest of pig-sized wasps descend from a formerly-clear sky. Dozens of lives in quick succession, might-have-beens and never-weres, fragments that fade even as you try to grasp each one in succession. When the last one ends, you can see through the crystal, through your hands, through the ground. You can see forever.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "CLAIRSENTIENT" }, { "u_add_trait": "CLAIR_SENSES" }, { "u_add_effect": "effect_clair_clear_sight", "duration": "1 minutes" }, @@ -133,7 +135,7 @@ { "type": "effect_on_condition", "id": "EOC_ELECTRO_MATRIX_AWAKENING", - "condition": { "u_has_trait": "ELECTROKINETIC" }, + "condition": { "or": [ { "u_has_trait": "ELECTROKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -168,6 +170,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. As it fills your vision, you see thin lines beneath your skin. They pulse with energy, bright sparks traveling to your fingers as you flex them and a burst of internal lightning when you touch the crystal with your free hand. You raise your hand and hold up two fingers, and a thunderbolt jumps between them accompanied by a loud crackle. Your hair stands on end as lightning travels down your arm, filling the air with the scent of ozone. As the light from the crystal fades, leaving it dull and colorless, your skin tingles.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "ELECTROKINETIC" }, { "u_add_trait": "ELECTRO_SHIELD" }, { "u_add_effect": "effect_electrokin_zap_enemies", "duration": "5 minutes" }, @@ -194,7 +197,7 @@ { "type": "effect_on_condition", "id": "EOC_PHOTOKIN_MATRIX_AWAKENING", - "condition": { "u_has_trait": "PHOTOKINETIC" }, + "condition": { "or": [ { "u_has_trait": "PHOTOKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -229,6 +232,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. The crystal's inner light gradually intensifies, starting by revealing the hidden details of your surroundings and then unveiling the world in vivid clarity. It's not merely light, but a gentle luminescence that emanates a tranquil warmth. The air around you becomes suffused with a subtle, almost otherworldly radiance, as if you're witnessing a scene from a dream. Within this radiant spectacle, subtle patterns of light perform an elegant dance, and you find yourself captivated by their graceful movements. You reach out your free hand, allowing your fingers to interact with the delicate light which seems to respond to your thoughts, and as the crystal's glow ultimately dissipates into obscurity, you're left with a lingering sense of wonder.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "PHOTOKINETIC" }, { "u_add_trait": "PHOTO_EYES" }, { "u_add_effect": "effect_photokin_arms", "duration": "5 minutes" }, @@ -257,7 +261,7 @@ { "type": "effect_on_condition", "id": "EOC_PYROKIN_MATRIX_AWAKENING", - "condition": { "u_has_trait": "PYROKINETIC" }, + "condition": { "or": [ { "u_has_trait": "PYROKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -292,6 +296,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. The crystal begins glowing, the faint light at its core gradually brightening, first shedding light on your surroundings and then throwing everything into sharp relief. As it blazes in your hands, it begins growing slowly warmer. The warmth spreads down your arms and across your entire body, filling it with a comfortable heat, and then the air around you takes on the heat and the light. The air wavers like a summer haze, but even as it sparks and flames dance on the air, you feel only a comfortable warmth. You reach out your free hand, letting the fire play between your fingers, and when the crystal's glow dims and fades into nothingness, you don't even notice it.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "PYROKINETIC" }, { "u_add_trait": "PYROKIN_ADAPTATION" }, { "u_add_effect": "effect_pyrokinetic_cloak", "duration": "5 minutes" }, @@ -319,7 +324,7 @@ { "type": "effect_on_condition", "id": "EOC_TELEKIN_MATRIX_AWAKENING", - "condition": { "u_has_trait": "TELEKINETIC" }, + "condition": { "or": [ { "u_has_trait": "TELEKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -354,6 +359,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. You release your grasp on the crystal but it doesn't fall. It floats, supported on nothingness, and as you watch it you become aware of the connections between objects. Gravity, attraction and repulsion, reveal themselves--you can see the weakened influence of gravity on the crystal, and with a thought you nudge it slightly. The crystal floats up in the air, stretching the connections between it at the ground, before they adjust to its new place. You tug on the connections, rotating the crystal, moving it from left to right, and as the light within it slowly fades away, you let go and the crystal drops back to your hand.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEKINETIC" }, { "u_add_trait": "TELEKINETIC_GRAB_POCKETS" }, { "u_add_effect": "effect_telekinetic_armor", "duration": "1 minutes" }, @@ -380,7 +386,7 @@ { "type": "effect_on_condition", "id": "EOC_TEEP_MATRIX_AWAKENING", - "condition": { "u_has_trait": "TELEPATH" }, + "condition": { "or": [ { "u_has_trait": "TELEPATH" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -415,6 +421,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. In the light, you can see yourself, standing there holding a glowing crystal, in which you can see another light and a tiny version of yourself in an endless hall of mirrors. Time slows down--you decide to move your hand and you can feel the thought form in your brain and the signal travel through your nerves to your spine and then on your hands, and you watch as the motion finally occurs. The light grows brighter as you stand outside yourself observing your own thoughts, and as you feel your attention being drawn to the light, you reach out, nudge your own mind, your awareness of yourself sharpens into laser focus. As the light and the vision fades, leaving the crystal dull and nearly lifeless, you turn your full attention--FULL attention--to your next task.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEPATH" }, { "u_add_trait": "TELEPATHIC_SUGGESTION" }, { "u_add_effect": "effect_telepathic_learning_bonus", "duration": "1 minutes" }, @@ -441,7 +448,7 @@ { "type": "effect_on_condition", "id": "EOC_TELEPORT_MATRIX_AWAKENING", - "condition": { "u_has_trait": "TELEPORTER" }, + "condition": { "or": [ { "u_has_trait": "TELEPORTER" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -476,6 +483,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. As the light spreads and illuminates the surrounding terrain, the air shimmers slightly. You can see your bedroom, in the place you've been holed up after the end of the world; you can see a city, with buildings made of greenish soapstone and people whose bodies are faces are merely indistinct shadows; you can see the cafe you always used to hang out in, empty and ruined, with the door back in back thumping rhythmically as something pounds on it; you can see a point of light, floating in the midst of a starry void, and hear a reedy toneless hum. You see the paths that link all four of these places and an infinite number of others, glowing paths that you could easy follow in directions you had never previously known existed. The light in the crystal fades as you set one foot on a path.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEPORTER" }, { "u_add_trait": "TELEPORTER_PROTECT" }, { @@ -504,7 +512,7 @@ { "type": "effect_on_condition", "id": "EOC_VITAKIN_MATRIX_AWAKENING", - "condition": { "u_has_trait": "VITAKINETIC" }, + "condition": { "or": [ { "u_has_trait": "VITAKINETIC" }, { "u_has_trait": "CANNOT_GAIN_PSIONICS" } ] }, "effect": [ { "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains." @@ -539,6 +547,7 @@ "u_message": "You gaze into the strange crystal and the light slowly grows brighter. You become aware of your skin, of every cut and bruise and scrape, of the food sitting in your stomach and the air moving in and out of your lungs. You can feel the bits of smoke in the air from the all the fires unleashed by the Cataclysm, the bits of dirt and debris in your wounds, of the char in your food. Not quite knowing how, you reach out and push at it, all the dirt and grime and filth of daily life in the Cataclysm, sealing it away. You instantly feel better, like a weight you didn't realize you were carrying has been taken off your shoulders, and as the light from the crystal dims and goes dark you stand up straight. You're going to be alright.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "VITAKINETIC" }, { "u_add_trait": "VITAKINETIC_HEALTH" }, { "u_add_effect": "effect_vita_health", "duration": "5 minutes" }, @@ -577,6 +586,7 @@ { "type": "effect_on_condition", "id": "EOC_CORUSCATING_MATRIX", + "condition": { "not": { "u_has_trait": "CANNOT_GAIN_PSIONICS" } }, "effect": [ { "weighted_list_eocs": [ @@ -593,6 +603,15 @@ }, { "u_assign_activity": "ACT_CRYSTAL_AWAKENING_MEDITATION", "duration": 5 }, { "queue_eocs": "EOC_CORUSCATING_CRYSTAL_DRAINING", "time_in_future": "1 seconds" } + ], + "false_effect": [ + { + "u_message": "You gaze into the strange crystal and the light slowly grows brighter. It starts pulsing, first slowly and more rapidly, and your head starts pounding in time with the light. You tear your gaze away but the pounding in your head remains.", + "popup": true + }, + { "u_add_effect": "psionic_overload", "duration": "1 hours" }, + { "u_add_effect": "stunned", "duration": 10 }, + { "queue_eocs": "EOC_CORUSCATING_CRYSTAL_DRAINING", "time_in_future": "1 seconds" } ] }, { @@ -605,7 +624,8 @@ "u_is_outside", { "is_weather": "distant_portal_storm" }, { "test_eoc": "EOC_PORTAL_STORM_CONDITION_FLAG_PORTAL_PROOF" }, - { "not": { "u_has_effect": "sleep" } } + { "not": { "u_has_effect": "sleep" } }, + { "not": { "u_has_trait": "CANNOT_GAIN_PSIONICS" } } ] }, "deactivate_condition": { "not": { "is_weather": "distant_portal_storm" } }, @@ -637,7 +657,8 @@ "u_is_outside", { "is_weather": "portal_storm" }, { "test_eoc": "EOC_PORTAL_STORM_CONDITION_FLAG_PORTAL_PROOF" }, - { "not": { "u_has_effect": "sleep" } } + { "not": { "u_has_effect": "sleep" } }, + { "not": { "u_has_trait": "CANNOT_GAIN_PSIONICS" } } ] }, "deactivate_condition": { "not": { "is_weather": "portal_storm" } }, @@ -669,7 +690,8 @@ "u_is_outside", { "is_weather": "close_portal_storm" }, { "test_eoc": "EOC_PORTAL_STORM_CONDITION_FLAG_PORTAL_PROOF" }, - { "not": { "u_has_effect": "sleep" } } + { "not": { "u_has_effect": "sleep" } }, + { "not": { "u_has_trait": "CANNOT_GAIN_PSIONICS" } } ] }, "deactivate_condition": { "not": { "is_weather": "close_portal_storm" } }, @@ -711,6 +733,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. New strength and vigor suddenly fill you. You stand up straight and tall, heedless of the wind and the kaleidoscoping sky, and clench your fists. You feel like you could take on the world, like you could sprint for an hour without stopping, like you could wrestle one of those giant insects to the ground and pin it, like you could dodge bullets. You unclench your fists and shake your head, but the sense of strength remains.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "BIOKINETIC" }, { "u_add_trait": "BIOKIN_NEEDS" }, { "run_eocs": "EOC_TEACH_BIOKIN_CONTEMPLATE_RECIPES" }, @@ -744,6 +767,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. You close your eyes but you can still see--at first just a light against your eyelids, then like a train approaching the end of a tunnel, light expands and reveals your surroundings. You can see in all directions. You can see behind and beneath every blade of grass around you, illuminated in the storm's witchlight, for a moment until your awareness snaps back into your body and you reel back with the shock of it. When you open your eyes again, the colors around you are brighter and the sounds are clearer than before.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "CLAIRSENTIENT" }, { "u_add_trait": "CLAIR_SENSES" }, { "run_eocs": "EOC_TEACH_CLAIR_CONTEMPLATE_RECIPES" }, @@ -777,6 +801,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. Multi-colored lightning flashes across the sky and then freezes. The lightning expands in your sight, until you can see individual electrons tracing their paths through the air. You reach out a hand and some of the electrons change their path, and as the world restarts its motion the lightning crashes into you and through you to the ground. A few sparks remain, dancing across your hand, and as you flex your fingers lightning crackles between them.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "ELECTROKINETIC" }, { "u_add_trait": "ELECTRO_SHIELD" }, { "run_eocs": "EOC_TEACH_ELECTROKIN_CONTEMPLATE_RECIPES" }, @@ -809,6 +834,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. As you stand there, a sudden warmth envelops your being, far more radiant than the most brilliant of suns. It begins as a subtle glow deep within, and then it intensifies, growing brighter and brighter, until your entire consciousness is bathed in the incandescent brilliance. As the light fades, you notice the world is painted in more colors than you ever noticed before, the light seems to respond to your every thought.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "PHOTOKINETIC" }, { "u_add_trait": "PHOTO_EYES" }, { "u_add_effect": "effect_photokin_arms", "duration": "5 minutes" }, @@ -844,6 +870,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. You stretch out your hand toward the shattering sky and a glow gathers around it as the air itself begins to shine. The glow brightens and then flames arise, dancing on the open area above your palm. You move your hand and the flames move with it, swirling around you, and with a final wave they scatter into the air. The glow fades, but the sensation of heat remains.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "PYROKINETIC" }, { "u_add_trait": "PYROKIN_ADAPTATION" }, { "run_eocs": "EOC_TEACH_PYROKIN_CONTEMPLATE_RECIPES" }, @@ -878,6 +905,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. You look around for shelter, but you're out in the open. You reach down toward the ground but the ground starts rising--bits of grass and rock and dirt lifting up and swirling around you. The roar in your head grows louder as you slowly rise off the ground, the debris around you whirling faster and faster, until your mind suddenly stills and you collapse back to the earth with a thump. The pebbles around start to fall--but one catches your eye, and as you look at it, it stops and hovers in the air for a moment.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEKINETIC" }, { "u_add_trait": "TELEKINETIC_GRAB_POCKETS" }, { "run_eocs": "EOC_TEACH_TELEKIN_CONTEMPLATE_RECIPES" }, @@ -910,6 +938,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. A babble of voices, male, female, neither, both, and some not human at all, speaking to you. The world is rapidly dying. The dead and the fungus and the plants will fight over what remains and there will be nothing left for humanity. Stay out here, where realities converge and walk into a better tomorrow. As the voices blend together, the volume rising, you reach inside your own mind somehow and twist--and are greeted with blessed silence. Though the portal storm still rages, internally you are calm.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEPATH" }, { "u_add_trait": "TELEPATHIC_SUGGESTION" }, { "run_eocs": "EOC_TEACH_TELEPATH_CONTEMPLATE_RECIPES" }, @@ -943,6 +972,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. Reality grows thin--you can see the ground beneath your hand. You can see the spaces between molecules, larger by far than the distances at a macro scale. You see the paths you could take to slip between them, to traverse space in an instant without any obstacles in your path. As the distances collapse back and reality grows solid once again, that knowledge remains with you.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "TELEPORTER" }, { "u_add_trait": "TELEPORTER_PROTECT" }, { "run_eocs": "EOC_TEACH_TELEPORT_CONTEMPLATE_RECIPES" }, @@ -976,6 +1006,7 @@ "u_message": "A roar fills your mind, louder even than the screaming madness of the portal storm. For a moment, you can feel the blood flowing in your veins, every blood cell traveling through your body on its way to your cells. You can feel the oxygen in your lungs cross through into your blood. The howling of the portal storm pulses in time with your heartbeat for a moment before your awareness fades, but a lingering trace of it remains in the back of your mind.", "popup": true }, + { "u_lose_trait": "ALWAYS_GAIN_PSIONICS" }, { "u_add_trait": "VITAKINETIC" }, { "u_add_trait": "VITAKINETIC_HEALTH" }, { "run_eocs": "EOC_TEACH_VITAKIN_CONTEMPLATE_RECIPES" }, diff --git a/data/mods/MindOverMatter/effectoncondition/eoc_game_initialization.json b/data/mods/MindOverMatter/effectoncondition/eoc_game_initialization.json index 4bcbab19b99d0..f0654c5ea8ffc 100644 --- a/data/mods/MindOverMatter/effectoncondition/eoc_game_initialization.json +++ b/data/mods/MindOverMatter/effectoncondition/eoc_game_initialization.json @@ -1,4 +1,63 @@ [ + { + "type": "effect_on_condition", + "id": "EOC_GAMESTART_RANDOMIZE_AWAKENING_ODDS", + "recurrence": [ "1 minutes", "1 minutes" ], + "condition": { "math": [ "u_has_initial_awakening_countup_set", "!=", "1" ] }, + "deactivate_condition": { "math": [ "u_has_initial_awakening_countup_set", "==", "1" ] }, + "effect": [ { "run_eocs": "EOC_GAMESTART_RANDOMIZE_AWAKENING_ODDS_2" } ] + }, + { + "type": "effect_on_condition", + "id": "EOC_GAMESTART_RANDOMIZE_AWAKENING_ODDS_2", + "condition": { + "or": [ + { + "and": [ + { + "not": { + "u_has_any_trait": [ + "BIOKINETIC", + "CLAIRSENTIENT", + "ELECTROKINETIC", + "PHOTOKINETIC", + "PYROKINETIC", + "TELEKINETIC", + "TELEPATH", + "TELEPORTER", + "VITAKINETIC" + ] + } + }, + { "not": { "u_has_trait": "ALWAYS_GAIN_PSIONICS" } } + ] + }, + { + "and": [ + { + "u_has_any_trait": [ + "BIOKINETIC", + "CLAIRSENTIENT", + "ELECTROKINETIC", + "PHOTOKINETIC", + "PYROKINETIC", + "TELEKINETIC", + "TELEPATH", + "TELEPORTER", + "VITAKINETIC" + ] + }, + { "u_has_trait": "LIMITED_PSIONICS" } + ] + } + ] + }, + "effect": [ + { "math": [ "u_awakening_countup", "+=", "rand(8) + 1" ] }, + { "math": [ "u_has_initial_awakening_countup_set", "=", "1" ] } + ], + "false_effect": [ { "math": [ "u_has_initial_awakening_countup_set", "=", "1" ] } ] + }, { "type": "effect_on_condition", "id": "EOC_CHECK_GAMESTART_BIOKIN", diff --git a/data/mods/MindOverMatter/mutations/traits.json b/data/mods/MindOverMatter/mutations/traits.json index 494a5f8d4fb4f..03d0f7ffab226 100644 --- a/data/mods/MindOverMatter/mutations/traits.json +++ b/data/mods/MindOverMatter/mutations/traits.json @@ -107,6 +107,64 @@ "valid": false, "spells_learned": [ [ "vita_slow_bleeding", 2 ], [ "vita_health_power", 2 ], [ "classless_toggleable_concentration_end", 1 ] ] }, + { + "type": "mutation", + "id": "CANNOT_GAIN_PSIONICS", + "name": { "str": "Headblind" }, + "points": -4, + "description": "You've seen people do some crazy things after the Cataclysm, but you've never managed to figure out how they do it. You can never learn psionic powers.", + "valid": false, + "player_display": true, + "starting_trait": true, + "purifiable": false, + "cancels": [ + "BIOKINETIC", + "CLAIRSENTIENT", + "ELECTROKINETIC", + "PHOTOKINETIC", + "PYROKINETIC", + "TELEPATH", + "TELEKINETIC", + "TELEPORTER", + "VITAKINETIC", + "ALWAYS_GAIN_PSIONICS" + ] + }, + { + "type": "mutation", + "id": "ALWAYS_GAIN_PSIONICS", + "name": { "str": "Latent Psion" }, + "points": 3, + "description": "Before the Cataclysm, you were lucky in some way. Maybe you never lost your keys, or maybe you always made that last green light before getting home, or maybe you never had to take a sick day in your life. Now after the Cataclysm, you have the potential for even more power. Your first attempt to awaken psionic powers will always be successful.", + "valid": false, + "player_display": true, + "starting_trait": true, + "purifiable": false, + "cancels": [ + "BIOKINETIC", + "CLAIRSENTIENT", + "ELECTROKINETIC", + "PHOTOKINETIC", + "PYROKINETIC", + "TELEPATH", + "TELEKINETIC", + "TELEPORTER", + "VITAKINETIC", + "CANNOT_GAIN_PSIONICS" + ] + }, + { + "type": "mutation", + "id": "LIMITED_PSIONICS", + "name": { "str": "Limited Awakening" }, + "points": -2, + "description": "You managed to awaken psionic powers, but it was a struggle and you're not sure you'll be able to do it again. You are subject to the random odds of awakening new powers.", + "valid": false, + "player_display": false, + "starting_trait": true, + "purifiable": false, + "cancels": [ "CANNOT_GAIN_PSIONICS", "ALWAYS_GAIN_PSIONICS" ] + }, { "type": "mutation", "id": "FIFTH_SUN_PEOPLE", diff --git a/data/mods/MindOverMatter/npcs/starting_traits.json b/data/mods/MindOverMatter/npcs/starting_traits.json index a9fffa0d809c5..bc61afea74d16 100644 --- a/data/mods/MindOverMatter/npcs/starting_traits.json +++ b/data/mods/MindOverMatter/npcs/starting_traits.json @@ -3,13 +3,24 @@ "type": "trait_group", "id": "NPC_starting_traits", "subtype": "collection", - "traits": [ { "group": "trait_group_PSION", "prob": 1 } ] + "traits": [ { "group": "trait_group_PSION", "prob": 100 } ] }, { - "//": "This group picks out one of the traits, leading to a 1% chance for an NPC to be a psion.", "type": "trait_group", "id": "trait_group_PSION", "subtype": "distribution", + "traits": [ + { "trait": "CANNOT_GAIN_PSIONICS", "prob": 80 }, + { "trait": "ALWAYS_GAIN_PSIONICS", "prob": 3 }, + { "group": "trait_group_NULL", "prob": 15 }, + { "group": "trait_group_PSION_AWAKENED", "prob": 1 } + ] + }, + { + "//": "This group picks out one of the traits, leading to a 1% chance for an NPC to be a psion.", + "type": "trait_group", + "id": "trait_group_PSION_AWAKENED", + "subtype": "distribution", "traits": [ { "group": "trait_group_BIOKINETIC", "prob": 1 }, { "group": "trait_group_CLAIRSENTIENT", "prob": 1 }, @@ -32,54 +43,90 @@ "type": "trait_group", "id": "trait_group_BIOKINETIC", "subtype": "collection", - "traits": [ { "trait": "BIOKINETIC", "prob": 100 }, { "trait": "BIOKIN_NEEDS", "prob": 100 } ] + "traits": [ + { "trait": "BIOKINETIC", "prob": 100 }, + { "trait": "BIOKIN_NEEDS", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_CLAIRSENTIENT", "subtype": "collection", - "traits": [ { "trait": "CLAIRSENTIENT", "prob": 100 }, { "trait": "CLAIR_SENSES", "prob": 100 } ] + "traits": [ + { "trait": "CLAIRSENTIENT", "prob": 100 }, + { "trait": "CLAIR_SENSES", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_ELECTROKINETIC", "subtype": "collection", - "traits": [ { "trait": "ELECTROKINETIC", "prob": 100 }, { "trait": "ELECTRO_SHIELD", "prob": 100 } ] + "traits": [ + { "trait": "ELECTROKINETIC", "prob": 100 }, + { "trait": "ELECTRO_SHIELD", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_PHOTOKINETIC", "subtype": "collection", - "traits": [ { "trait": "PHOTOKINETIC", "prob": 100 }, { "trait": "PHOTO_EYES", "prob": 100 } ] + "traits": [ + { "trait": "PHOTOKINETIC", "prob": 100 }, + { "trait": "PHOTO_EYES", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_PYROKINETIC", "subtype": "collection", - "traits": [ { "trait": "PYROKINETIC", "prob": 100 }, { "trait": "PYROKIN_ADAPTATION", "prob": 100 } ] + "traits": [ + { "trait": "PYROKINETIC", "prob": 100 }, + { "trait": "PYROKIN_ADAPTATION", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_TELEKINETIC", "subtype": "collection", - "traits": [ { "trait": "TELEKINETIC", "prob": 100 }, { "trait": "TELEKINETIC_LIFTER_1", "prob": 100 } ] + "traits": [ + { "trait": "TELEKINETIC", "prob": 100 }, + { "trait": "TELEKINETIC_GRAB_POCKETS", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_TELEPATH", "subtype": "collection", - "traits": [ { "trait": "TELEPATH", "prob": 100 }, { "trait": "TELEPATHIC_SUGGESTION", "prob": 100 } ] + "traits": [ + { "trait": "TELEPATH", "prob": 100 }, + { "trait": "TELEPATHIC_SUGGESTION", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_TELEPORTER", "subtype": "collection", - "traits": [ { "trait": "TELEPORTER", "prob": 100 }, { "trait": "TELEPORTER_PROTECT", "prob": 100 } ] + "traits": [ + { "trait": "TELEPORTER", "prob": 100 }, + { "trait": "TELEPORTER_PROTECT", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] }, { "type": "trait_group", "id": "trait_group_VITAKINETIC", "subtype": "collection", - "traits": [ { "trait": "VITAKINETIC", "prob": 100 }, { "trait": "VITAKINETIC_HEALTH", "prob": 100 } ] + "traits": [ + { "trait": "VITAKINETIC", "prob": 100 }, + { "trait": "VITAKINETIC_HEALTH", "prob": 100 }, + { "trait": "LIMITED_PSIONICS", "prob": 95 } + ] } ] diff --git a/data/mods/MindOverMatter/obsolete/eocs.json b/data/mods/MindOverMatter/obsolete/eocs.json index 463696bfd3be5..5020c3489d09d 100644 --- a/data/mods/MindOverMatter/obsolete/eocs.json +++ b/data/mods/MindOverMatter/obsolete/eocs.json @@ -1,4 +1,12 @@ [ + { + "type": "effect_on_condition", + "id": "EOC_MOM_GAMELOAD_HEADBLIND_UPDATER", + "eoc_type": "EVENT", + "required_event": "game_load", + "condition": { "math": [ "u_has_headblind_pr_set", "!=", "1" ] }, + "effect": [ { "math": [ "u_has_headblind_pr_set", "=", "1" ] }, { "math": [ "u_has_initial_awakening_countup_set", "=", "1" ] } ] + }, { "type": "effect_on_condition", "id": "EOC_MOM_GAMELOAD_POWER_LEARNING_VARIABLES_UPDATER", diff --git a/data/mods/MindOverMatter/professions.json b/data/mods/MindOverMatter/professions.json index 63d1b907f61ae..47ed3f151d7bf 100644 --- a/data/mods/MindOverMatter/professions.json +++ b/data/mods/MindOverMatter/professions.json @@ -5,6 +5,7 @@ "name": "Awakening Psion", "description": "You survived a portal storm and hid inside while reality broke around you, and when you left to examine the damage you found a strange crystal the storm had left behind. It was captivating, and you took it with you. Sometimes, at night, you look into it before you sleep, and you almost feel like something in you is responding to the glow within the crystal.", "points": 1, + "traits": [ "ALWAYS_GAIN_PSIONICS" ], "items": { "both": { "entries": [ diff --git a/data/mods/MindOverMatter/snippets/snippets_new.json b/data/mods/MindOverMatter/snippets/snippets_new.json index 2f9939ec2579f..c52cc11a9356d 100644 --- a/data/mods/MindOverMatter/snippets/snippets_new.json +++ b/data/mods/MindOverMatter/snippets/snippets_new.json @@ -430,7 +430,7 @@ { "name": "Preliminary Report: Matrix Awakening", "id": "lab_file_matrix_research_03", - "text": "Initial testing shows that the rate of awakening from matrix crystal exposure is over 50% with no side effects. Candidates that failed to awaken complained of headaches and bad dreams but the effects rarely last longer than a week (see fig 4). In approximately 5% of cases, however, awakening causes serious side effects including hallucinations, high fever exceeding 39.5°C, muscle tremors, unconsciousness, disassociation, and amnesia. This can occur in either successful or unsuccessful awakening and is a serious danger in certain cases (e.g. incident reports ID39483 and IC49378).\n\nMultiple awakenings are not cost-effective. Despite a wide range of candidates and repeated attempts, only two incidents have ever occurred and no specific commonality between the mathematicians other than gender exist. No further attempts should be made until a similar effectiveness to initial awakenings has been achieved.\n\nIn-phase awakenings show variable efficacy, sometimes much lower or much higher than normal. Efficacy is in general consistent within each plane, though some planes show variable efficacy. Plane 398RG shows 99% efficacy; however, side effects rise to 35% of cases and so further experimentation with 398RG is prohibited. Melchior has so far been unable to find any specific characteristics of a plane that would lead to greater or lesser efficacy. Further testing and sampling are required." + "text": "Initial testing shows that the rate of awakening from matrix crystal exposure is just over 10%, generally with no side effects. Candidates that failed to awaken complained of headaches and bad dreams but the effects rarely last longer than a week (see fig 4). In approximately 15% of cases, however, awakening causes serious side effects including hallucinations, high fever exceeding 39.5°C, muscle tremors, unconsciousness, disassociation, and amnesia. This can occur in either successful or unsuccessful awakening and is a serious danger in certain cases (e.g. incident reports ID39483 and IC49378).\n\nMultiple awakenings are not cost-effective. Despite a wide range of candidates and repeated attempts, only two incidents have ever occurred and no specific commonality between the mathematicians other than gender exist. No further attempts should be made until a similar effectiveness to initial awakenings has been achieved.\n\nIn-phase awakenings show variable efficacy, sometimes much lower or much higher than normal. Efficacy is in general consistent within each plane, though some planes show variable efficacy. Plane 398RG shows 99% efficacy; however, side effects rise to 85% of cases and so further experimentation with 398RG is prohibited. Melchior has so far been unable to find any specific characteristics of a plane that would lead to greater or lesser efficacy. Further testing and sampling are required." }, { "name": "LV-429 Analysis",