User Tools

Site Tools


en:rpd:zapping

Zapping

Zapping is the action of using wands and other charged items to produce magical effects in Remixed Dungeon.

Description

Zapping refers to the act of using a wand or other magical implement to direct its power toward a specific target or location. This action consumes charges and produces the wand's specific magical effect.

Zapping Mechanics

  • Targeting: Most zaps require selecting a target or location on the map via the Zapper class and Ballistica.cast() for path calculation
  • Charge Consumption: Zapping consumes exactly 1 charge from the wand (wandUsed() method decreases curCharges by 1)
  • Effect Application: The wand's specific effect is applied to the target via the onZap() abstract method
  • Range: Determined by Ballistica.cast() with directional property (typically limited range)
  • Time Cost: Takes 1 turn of time (TIME_TO_ZAP = 1f)
  • Animation: Includes visual effect (MagicMissile.blueLight) and sound (Assets.SND_ZAP)

Zapping Considerations

  • Accuracy: Uses Ballistica.cast() for path calculation, may hit different targets if original target moves
  • Collateral Effects: Some wand effects may affect nearby creatures, depend on specific onZap implementation
  • Enemy Response: Using magic does not specifically attract enemies, but may cause effects that do
  • Tactical Positioning: Effective zapping often requires strategic positioning due to line-of-sight requirements

Zapping Behavior

  • Failure: If wand has 0 charges, zap “fizzles” with no effect but still takes 1 turn of time
  • Invisibility: Using a wand dispels Invisibility from the user (Invisibility.dispel(selector))
  • Identification: If wand has no charges, has 20% chance to identify the wand (Random.Int(5) == 0)
  • Quick Slot: Refreshes the quick slot display after use (QuickSlot.refresh(getOwner()))

Zapping Tips

  • Aiming: Consider splash effects when targeting near allies (specific to certain wands)
  • Conservation: Use zaps efficiently, especially when charges are low
  • Timing: Zapping during combat should factor in enemy retaliation (takes 1 turn)
  • Safety: Be aware of line-of-sight requirements for targeting
  • Charging: Wands recharge 1 charge over time (time varies by hero class and wand level)

Content Verification

  • Information source: Java Class Wand.java
  • Zapping mechanics verified against wandUsed(), wandEffect(), and onZap() methods in the code
  • Charge consumption and timing extracted directly from the Wand class implementation
  • Last updated: Based on Remixed Dungeon source code analysis

Code References

  • Zapping System: Wand.java - How zapping is implemented
  • Targeting: getDestinationCell() - How zap targets are determined using Ballistica.cast()
  • Effect Application: wandEffect() - How zap effects are applied
  • Charge Consumption: wandUsed() - How charges are consumed
  • Actor System: Char.java - How zaps affect characters
  • String Resources: strings_all.xml - All zapping-related text

See Also

en/rpd/zapping.txt · Last modified: by 127.0.0.1