en:rpd:ballistica_mechanic
Table of Contents
Ballistica System
The Ballistica System is the line-of-sight and pathfinding system used in Remixed Dungeon to determine if a ranged attack can hit its target.
Description
The Ballistica system is used to calculate line of sight between two points in the dungeon and to determine valid paths for ranged attacks, projectiles, and zapping abilities. It's named after the Italian word “ballistica” meaning ballistics.
Mechanics
- Line of Sight (LoS): Determines if there's an unblocked path between attacker and target
- Path Calculation: Finds a potential path for direct ranged attacks
- Range Limitation: Sets the maximum effective range of ranged abilities
- Obstacle Handling: Accounts for walls, doors, and other environmental obstacles
Usage
- Zapping Attacks: Used to determine if a zapping mob (like Warlock) can hit a target
- Wand Usage: Determines valid targets for wands
- Projectile Weapons: Used for ranged weapon targeting
- Trap Triggers: Some traps use Ballistica for activation detection
Technical Details
- Path Length: Returns the length of the calculated path
- Obstacle Detection: Stops pathfinding when encountering blocking terrain
- Direct Line Path: Calculates straight-line paths factoring in dungeon geometry
Code References
- Java Implementation: Ballistica.java
- Path Calculation: Ballistica path calculation method
- Usage in Warlock: canAttack method using Ballistica
- Usage in Tengu: Tengu using Ballistica for distance attacks
- Ballistica Constructor: Ballistica initialization
- Terrain Blocking: How blocking terrain is handled
- Field of View Integration: Integration with field of view system
- Machine-readable data: mr:ballistica_mechanic
See Also
en/rpd/ballistica_mechanic.txt · Last modified: by 127.0.0.1

