====== Shaman Subclass ====== {{ rpd:images:elf_shaman_hero.png|Shaman }} The Shaman is the Elf's subclass in Remixed Dungeon. ===== Description ===== Elven //Shamans// can use wands as melee weapons. Successful hits have a chance to activate the wand's power on a target without using a charge. ===== Unlocking ===== The Shaman subclass can be unlocked by using a [[en:rpd:tome_of_mastery_item|Tome of Mastery]] after defeating the second boss (Tengu). ===== Special Mechanics ===== * Elven _Shamans_ can use [[en:rpd:wands|wands]] as [[en:rpd:melee_weapon|melee weapons]] * When attacking with a wand equipped as the primary weapon, there's a 25% chance (implemented as Random.Int(4) == 0) to zap the target with the wand's power without consuming a charge * This ability is implemented in the ''attackProc'' method of ''HeroSubClass.java'' (lines 144-153) * The wand must be equipped as the primary weapon (active weapon) for this mechanic to work * The wand needs to have charges available and the ''affectTarget()'' method must return true * +1 dew bonus for enhanced [[en:rpd:mana_mechanic|mana recovery]] ===== Technical Details ===== * **Implementation:** The Shaman's special mechanics are implemented in the ''attackProc'' method of ''HeroSubClass.java'' (lines 144-153) * **Wand Activation:** When a Shaman attacks with a wand equipped as the active weapon, there's a 25% chance to zap the enemy with the wand's effect without consuming a charge * **Code Reference:** The specific implementation checks if the primary weapon is a wand, and if ''affectTarget()'' returns true and ''Random.Int(4) == 0'', then ''zapCell()'' is called to zap the enemy without consuming charges ===== Special Armor ===== Using an [[en:rpd:armor_kit_item|Armor Kit]] on any armor will transform it into the [[en:rpd:shaman_armor_item|Shaman Armor]], which is specifically designed for this subclass. ===== Advantages ===== * Can use [[en:rpd:wands|wands]] as [[en:rpd:melee_weapon|melee weapons]] * 25% chance to activate wand powers without consuming charges * Versatile weapon options combining [[en:rpd:ranged_weapons|ranged]] and [[en:rpd:melee_combat|melee]] * Preserves wand charges when power activates * Synergizes well with all [[en:rpd:wands|wand types]] * +1 dew bonus for enhanced [[en:rpd:mana_mechanic|mana recovery]] ===== Disadvantages ===== * Activation chance is not guaranteed (25% chance) * Wand damage as [[en:rpd:melee_weapon|melee weapon]] may be lower than dedicated weapons ===== Data Validation ===== * Information source: Java Enum ''com.watabou.pixeldungeon.actors.hero.HeroSubClass.SHAMAN'' * Mechanics verification: Attack bonus implemented in ''attackProc'' method of ''HeroSubClass.java'', with 25% chance to zap enemy * Effect descriptions: Based on string resources from values/strings_all.xml ("HeroSubClass_DescShaman") * Name verification: Confirmed from string resources ("HeroSubClass_NameShaman") * Additional mechanics: Dew bonus verified in ''dewBonus'' method of ''HeroSubClass.java'' ===== Code References ===== * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroSubClass.java|HeroSubClass.java]] - Subclass definition and mechanics * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroSubClass.java#L144-L153|HeroSubClass.java#L144-L153]] - Exact implementation of wand-zap mechanic (25% chance when wielding wand) * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroSubClass.java#L257-L261|HeroSubClass.java#L257-L261]] - Dew bonus implementation (+1 for Shaman) * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroSubClass.java#L19-L21|HeroSubClass.java#L19-L21]] - Enum definition with armor class ("ShamanArmor") * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/items/wands/Wand.java|Wand.java]] - Wand implementation that enables the mechanic * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/items/wands/Wand.java#L92-L96|Wand.java#L92-L96]] - AffectTarget() method that checks if wand can zap * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/items/wands/Wand.java#L164-L174|Wand.java#L164-L174]] - zapCell() method that performs the zap without consuming charge * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values/strings_all.xml#L1010-L1011|Shaman string resources (English)]] - Name and description * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values-ru/strings_all.xml#L996-L997|Shaman string resources (Russian)]] - Russian localization * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroClass.java|HeroClass.java]] - Class/subclass relationship definitions * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/items/common/ItemFactory.java#L295|ItemFactory.java#L295]] - Registration of Shaman armor * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values-ru/strings_all.xml#L996-L997|HeroSubClass_NameShaman, HeroSubClass_DescShaman]] - Russian string resources (name and description) * **mr: namespace:** Check [[mr:shaman_subclass]] for machine-readable data ===== Configuration Files ===== * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/hero/HeroClass.java|HeroClass.java]] - Class/subclass relationship definitions * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/items/common/ItemFactory.java#L295|ItemFactory.java#L295]] - Registration of Shaman armor ===== String Resources ===== * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values/strings_all.xml#L1010|HeroSubClass_NameShaman]] - "Shaman" (English) * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values/strings_all.xml#L1011|HeroSubClass_DescShaman]] - "Elven Shamans can use wands as melee weapons. Successful hits have a chance to activate the wand's power on a target without using a charge." (English) * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values-ru/strings_all.xml#L996|HeroSubClass_NameShaman]] - "Шаман" (Russian) * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values-ru/strings_all.xml#L997|HeroSubClass_DescShaman]] - "Эльфийские шаманы могут использовать жезлы как оружие ближнего боя. Успешные атаки имеют шанс активировать силу жезла на цели без расхода заряда." (Russian) ===== See Also ===== * [[en:rpd:elf_class|Elf Class]] * [[en:rpd:wands|Wands]] * [[playable_class_mechanic|Playable Classes]] * [[en:rpd:subclasses|Subclasses]] * [[en:rpd:shaman_armor_item|Shaman Armor]] * [[en:rpd:hero|Hero]] * [[en:rpd:mechanics|Game Mechanics]] {{tag> rpd subclasses shaman elf wand melee}}