From ee16b2c2442ff2f6f45c80fd178ee9315546bddd Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Wed, 4 Dec 2024 14:51:07 -0500 Subject: [PATCH] v3.0.0: Cleric spell balance: - nerfed divine sense to 30 turns from 50 - nerfed recall glyph, +1 charge cost --- .../assets/messages/actors/actors.properties | 8 ++++---- .../actors/hero/spells/DivineSense.java | 5 +++-- .../actors/hero/spells/RecallGlyph.java | 16 ++++++++-------- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/core/src/main/assets/messages/actors/actors.properties b/core/src/main/assets/messages/actors/actors.properties index 4f72871cf..d6e8663cb 100644 --- a/core/src/main/assets/messages/actors/actors.properties +++ b/core/src/main/assets/messages/actors/actors.properties @@ -560,7 +560,7 @@ actors.hero.spells.detectcurse.desc=The Cleric focuses their senses on an item a actors.hero.spells.divinesense.name=divine sense actors.hero.spells.divinesense.short_desc=Gain temporary mind vision in a wide range. -actors.hero.spells.divinesense.desc=The Cleric focuses their senses on their surroundings, gaining mind vision with a %d tile range for 50 turns. +actors.hero.spells.divinesense.desc=The Cleric focuses their senses on their surroundings, gaining mind vision with a %d tile range for 30 turns. actors.hero.spells.divinesense$divinesensetracker.name=divine sense actors.hero.spells.divinesense$divinesensetracker.desc=The Cleric is temporarily able to see other nearby creatures with their mind!\n\nTurns remaining: %s. @@ -601,7 +601,7 @@ actors.hero.spells.radiance.desc=The Priest erupts in holy light, stunning all v actors.hero.spells.recallglyph.name=recall glyph actors.hero.spells.recallglyph.short_desc=Repeats a recently used stone or scroll. -actors.hero.spells.recallglyph.desc=The Cleric uses holy magic to replicate and re-cast the effect of a magical glyph found on a runestone or scroll they used in the last %s turns.\n\nRecall Glyph cannot be used to replicate scrolls of upgrade. This spell's charge cost varies based on which item was used recently: 1 for a runestone, 2 for a scroll, 3 for an exotic scroll. This charge cost is also doubled when replicating a scroll of transmutation, or alchemy items that must be crafted using transmutation or upgrade. +actors.hero.spells.recallglyph.desc=The Cleric uses holy magic to replicate and re-cast the effect of a magical glyph found on a runestone or scroll they used in the last %s turns.\n\nRecall Glyph cannot be used to replicate scrolls of upgrade. This spell's charge cost varies based on which item was used recently: 2 for a runestone, 3 for a scroll, 4 for an exotic scroll. This charge cost is also doubled when replicating a scroll of transmutation, or alchemy items that must be crafted using transmutation or upgrade. actors.hero.spells.recallglyph$usedglyphtracker.name=recently used glyph actors.hero.spells.recallglyph$usedglyphtracker.desc=The Cleric has recently used an item that works with the recall glyph spell. The Cleric can cast the spell to repeat the item's effect.\n\nItem Used: %1$s.\n\nTurns Remaining: %2$s. @@ -1066,11 +1066,11 @@ actors.hero.talent.shield_of_light.desc=_+1:_ The Cleric can cast _Shield of Lig actors.hero.talent.enlightening_meal.title=Enlightening Meal actors.hero.talent.enlightening_meal.desc=_+1:_ Eating food takes the Cleric 1 turn and grants them _1 charge_ on their holy tome.\n\n_+2:_ Eating food takes the Cleric 1 turn and grants them _1.5 charges_ on their holy tome. actors.hero.talent.recall_glyph.title=Recall Glyph -actors.hero.talent.recall_glyph.desc=_+1:_ The Cleric can cast _Recall Glyph,_ a spell that lets the Cleric repeat the effect of the last runestone or scroll they used within the last _10 turns._\n\n_+2:_ The Cleric can cast _Recall Glyph,_ a spell that lets the Cleric repeat the effect of the last runestone or scroll they used within the last _300 turns._\n\nRecall Glyph cannot be used with scrolls of upgrade. This spell's charge cost varies based on which item was used recently: 1 for a runestone, 2 for a scroll, 3 for an exotic scroll. This charge cost is also doubled when used with a scroll of transmutation, or alchemy items that must be crafted using transmutation or upgrade. +actors.hero.talent.recall_glyph.desc=_+1:_ The Cleric can cast _Recall Glyph,_ a spell that lets the Cleric repeat the effect of the last runestone or scroll they used within the last _10 turns._\n\n_+2:_ The Cleric can cast _Recall Glyph,_ a spell that lets the Cleric repeat the effect of the last runestone or scroll they used within the last _300 turns._\n\nRecall Glyph cannot be used with scrolls of upgrade. This spell's charge cost varies based on which item was used recently: 2 for a runestone, 3 for a scroll, 4 for an exotic scroll. This charge cost is also doubled when used with a scroll of transmutation, or alchemy items that must be crafted using transmutation or upgrade. actors.hero.talent.sunray.title=Sunray actors.hero.talent.sunray.desc=_+1:_ The Cleric can cast _Sunray,_ A spell that deals _2-8 damage_ and blinds the target for _4 turns,_ at the cost of 1 charge.\n\n_+2:_ The Cleric can cast _Sunray,_ A spell that deals _3-12 damage_ and blinds the target for _6 turns,_ at the cost of 1 charge.\n\nSunray can only blind each target once, but if the target is already blinded by Sunray then it paralyses instead. Sunray always deals maximum damage to demonic and undead foes. actors.hero.talent.divine_sense.title=Divine Sense -actors.hero.talent.divine_sense.desc=_+1:_ The Cleric can cast _Divine Sense,_ a spell that grants them _8 tiles_ of Mind Vision for 50 turns, at the cost of 2 charges.\n\n_+2:_ The Cleric can cast _Divine Sense,_ a spell that grants them _12 tiles_ of Mind Vision for 50 turns, at the cost of 2 charges. +actors.hero.talent.divine_sense.desc=_+1:_ The Cleric can cast _Divine Sense,_ a spell that grants them _8 tiles_ of Mind Vision for 30 turns, at the cost of 2 charges.\n\n_+2:_ The Cleric can cast _Divine Sense,_ a spell that grants them _12 tiles_ of Mind Vision for 30 turns, at the cost of 2 charges. actors.hero.talent.clerict2e.title=Unknown actors.hero.talent.clerict2e.desc=This talent hasn't been implemented yet, it currently does nothing. diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/DivineSense.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/DivineSense.java index 00684201e..880d49a83 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/DivineSense.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/DivineSense.java @@ -23,6 +23,7 @@ package com.shatteredpixel.shatteredpixeldungeon.actors.hero.spells; import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Dungeon; +import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.FlavourBuff; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent; @@ -44,7 +45,7 @@ public class DivineSense extends ClericSpell { @Override public void onCast(HolyTome tome, Hero hero) { - FlavourBuff.affect(hero, DivineSenseTracker.class, 50f); + Buff.affect(hero, DivineSenseTracker.class, 30f); Dungeon.observe(); Sample.INSTANCE.play(Assets.Sounds.READ); @@ -62,7 +63,7 @@ public class DivineSense extends ClericSpell { public static class DivineSenseTracker extends FlavourBuff { - public static final float DURATION = 50f; + public static final float DURATION = 30f; { type = buffType.POSITIVE; diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/RecallGlyph.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/RecallGlyph.java index 7eecb0377..ab9407093 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/RecallGlyph.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/hero/spells/RecallGlyph.java @@ -94,22 +94,22 @@ public class RecallGlyph extends ClericSpell { Class item = hero.buff(UsedGlyphTracker.class).item; if (ExoticScroll.class.isAssignableFrom(item)){ if (item == ScrollOfMetamorphosis.class || item == ScrollOfEnchantment.class){ + return 8; + } else { + return 4; + } + } else if (Scroll.class.isAssignableFrom(item)){ + if (item == ScrollOfTransmutation.class){ return 6; } else { return 3; } - } else if (Scroll.class.isAssignableFrom(item)){ - if (item == ScrollOfTransmutation.class){ + } else if (Runestone.class.isAssignableFrom(item)){ + if (item == StoneOfAugmentation.class || item == StoneOfEnchantment.class){ return 4; } else { return 2; } - } else if (Runestone.class.isAssignableFrom(item)){ - if (item == StoneOfAugmentation.class || item == StoneOfEnchantment.class){ - return 2; - } else { - return 1; - } } } return 0;