en:rpd:zapping
Table of Contents
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
