From 093c3f1399b4fb45c8dfff64b6c78135890a70ce Mon Sep 17 00:00:00 2001 From: Standing-Storm <120433252+Standing-Storm@users.noreply.github.com> Date: Tue, 23 Jul 2024 10:49:42 -0500 Subject: [PATCH] [MoM] Rework Extended and Torrential channeling recipe learning (#75147) * Initial commit * Implement more interesting ways of learning * 3 -> 2 * Metaphysics and Intelligence make the chance of a eureka moment higher * Change conditions slightly * Lower recipe requirements * Account for proficiencies in unlock formula * Match flags to other contemplations --- .../effectoncondition/eoc_learn_recipes.json | 65 +++++++++++++++++++ .../mods/MindOverMatter/recipes/research.json | 32 ++++++--- 2 files changed, 89 insertions(+), 8 deletions(-) diff --git a/data/mods/MindOverMatter/effectoncondition/eoc_learn_recipes.json b/data/mods/MindOverMatter/effectoncondition/eoc_learn_recipes.json index afba99404ef8c..05a6101c442f1 100644 --- a/data/mods/MindOverMatter/effectoncondition/eoc_learn_recipes.json +++ b/data/mods/MindOverMatter/effectoncondition/eoc_learn_recipes.json @@ -1140,6 +1140,7 @@ ], "condition": { "and": [ + { "test_eoc": "EOC_PSI_LEARNING_BANNED_EFFECTS" }, { "u_has_any_trait": [ "BIOKINETIC", @@ -1186,5 +1187,69 @@ } ], "false_effect": [ { "u_message": "Without a laptop, you can't access the data on the USB", "type": "bad" } ] + }, + { + "type": "effect_on_condition", + "id": "EOC_PSI_RESEARCH_LEARN_EXTENDED_CHANNELING", + "eoc_type": "EVENT", + "required_event": "spellcasting_finish", + "condition": { + "and": [ + { "test_eoc": "EOC_CONDITION_SPELLCASTING_FINISH_TRAIT_AND_SCHOOL_LIST" }, + { "not": { "u_has_trait": "PSI_EXTENDED_CHANNELING" } }, + { "not": { "u_know_recipe": "psi_research_extended_channeling" } }, + { "math": [ "u_vitamin('vitamin_maintained_powers')", ">=", "2" ] }, + { + "x_in_y_chance": { "x": 1, "y": { "math": [ "1000 - (u_skill('metaphysics') * 50) - (u_val('intelligence') * 25)" ] } } + }, + { "math": [ "_success", "!=", "false" ] } + ] + }, + "effect": [ { "queue_eocs": "EOC_PSI_RESEARCH_LEARN_EXTENDED_CHANNELING_TRIGGER", "time_in_future": [ "6 hours", "24 hours" ] } ] + }, + { + "type": "effect_on_condition", + "id": "EOC_PSI_RESEARCH_LEARN_EXTENDED_CHANNELING_TRIGGER", + "condition": { "not": { "u_know_recipe": "psi_research_extended_channeling" } }, + "effect": [ + { "u_learn_recipe": "psi_research_extended_channeling" }, + { + "u_message": "The state of mind necessary to channel while maintaining other powers has you thinking. It requires fine control to maintain your concentration on multiple things at once, but what if you applied that level of control to a single power at a time? If you slowly and carefully drew on just as much energy as you needed, maybe there would be fewer side effects? With some experimentation, perhaps you can discover a way.", + "popup": true + } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_PSI_RESEARCH_LEARN_TORRENTIAL_CHANNELING", + "eoc_type": "EVENT", + "required_event": "spellcasting_finish", + "condition": { + "and": [ + { "test_eoc": "EOC_CONDITION_SPELLCASTING_FINISH_TRAIT_AND_SCHOOL_LIST" }, + { "not": { "u_has_trait": "PSI_TORRENTIAL_CHANNELING" } }, + { "not": { "u_know_recipe": "psi_research_torrential_channeling" } }, + { "math": [ "u_vitamin('vitamin_psionic_drain')", ">=", "135" ] }, + { + "x_in_y_chance": { "x": 1, "y": { "math": [ "1000 - (u_skill('metaphysics') * 50) - (u_val('intelligence') * 25)" ] } } + }, + { "math": [ "_success", "!=", "false" ] } + ] + }, + "effect": [ + { "queue_eocs": "EOC_PSI_RESEARCH_LEARN_TORRENTIAL_CHANNELING_TRIGGER", "time_in_future": [ "6 hours", "24 hours" ] } + ] + }, + { + "type": "effect_on_condition", + "id": "EOC_PSI_RESEARCH_LEARN_TORRENTIAL_CHANNELING_TRIGGER", + "condition": { "not": { "u_know_recipe": "psi_research_torrential_channeling" } }, + "effect": [ + { "u_learn_recipe": "psi_research_torrential_channeling" }, + { + "u_message": "Safety is all well and good, but sometimes you need power. The ebb and flow of Nether energy…if you deliberately drew on it more deeply, could you charge your powers up more quickly? Maybe you can figure out a way with some more experimentation.", + "popup": true + } + ] } ] diff --git a/data/mods/MindOverMatter/recipes/research.json b/data/mods/MindOverMatter/recipes/research.json index 1f3a0680f2a6b..ecffd830c4c21 100644 --- a/data/mods/MindOverMatter/recipes/research.json +++ b/data/mods/MindOverMatter/recipes/research.json @@ -183,18 +183,26 @@ "category": "CC_PSIONIC", "subcategory": "CSC_PSIONIC_OTHER", "skill_used": "metaphysics", - "difficulty": 3, + "difficulty": 1, "time": "6 h", - "autolearn": true, "proficiencies": [ { "proficiency": "prof_psionic_basic", "required": false }, { "proficiency": "prof_psionic_ritual", "required": false } ], - "flags": [ "SECRET", "BLIND_HARD" ], + "flags": [ "SECRET", "BLIND_EASY", "NO_MANIP", "AFFECTED_BY_PAIN", "NO_BENCH", "NO_ENCHANTMENT" ], "result_eocs": [ { "id": "EOC_UNLOCK_EXTENDED_CHANNELING", - "condition": { "and": [ { "roll_contested": { "math": [ "u_skill('metaphysics')" ] }, "difficulty": 8 } ] }, + "condition": { + "and": [ + { + "roll_contested": { + "math": [ "u_skill('metaphysics') + u_has_proficiency('prof_psionic_ritual') + u_has_proficiency('prof_psionic_basic')" ] + }, + "difficulty": 9 + } + ] + }, "effect": [ { "u_message": "You've figured it out. The concept of \"taking more time\" wasn't exactly hard to grasp, but maintaining the images in your mind, keeping your focus on a single train of thought, that was harder. Now you've got it down, though. If you take meticulous care in channeling your powers, it will take much longer but you'll be more likely to succeed.", @@ -223,18 +231,26 @@ "category": "CC_PSIONIC", "subcategory": "CSC_PSIONIC_OTHER", "skill_used": "metaphysics", - "difficulty": 6, + "difficulty": 3, "time": "14 h", - "autolearn": true, "proficiencies": [ { "proficiency": "prof_psionic_basic", "required": false }, { "proficiency": "prof_psionic_ritual", "required": false } ], - "flags": [ "SECRET", "BLIND_HARD" ], + "flags": [ "SECRET", "BLIND_EASY", "NO_MANIP", "AFFECTED_BY_PAIN", "NO_BENCH", "NO_ENCHANTMENT" ], "result_eocs": [ { "id": "EOC_UNLOCK_TORRENTIAL_CHANNELING", - "condition": { "and": [ { "roll_contested": { "math": [ "u_skill('metaphysics')" ] }, "difficulty": 13 } ] }, + "condition": { + "and": [ + { + "roll_contested": { + "math": [ "u_skill('metaphysics') + u_has_proficiency('prof_psionic_ritual') + u_has_proficiency('prof_psionic_basic')" ] + }, + "difficulty": 15 + } + ] + }, "effect": [ { "u_message": "You've figured it out. Your first few attempts were overwhelming, a raging crush of power than nearly knocked you unconscious…or perhaps worse. But after you recovered, you tried again, and again, and you gained more and more control over the flood and now you can tame its flow. Mostly.",