You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix: skill hitting caster due to shared Targets across attack points (#650)
* Update Actor.cs
* Update Actor.cs
### Fix
In `Actor.TargetAttack()`, for Hostile attacks only:
1. Skip applying damage to the caster
2. Filter caster from targets when applying skill effects
3. Skip creating splash skills at the caster's position
The Hostile-only condition ensures Friendly skills (self-buffs, AoE heals) continue to work correctly.
* move filter to target select stage
* Refine fix: clear Targets per attack point, simplify downstream caster checks
- TrySetAttackPoint now calls Targets.Clear() to ensure each attack point
starts with a clean target set. This is the authoritative fix for caster
bleed-through from a Friendly AP into subsequent Hostile APs.
- Actor.TargetAttack: remove per-ApplyTarget caster-skip checks (now
redundant), pre-compute splashEffects, and unconditionally skip the caster
in the splash loop with a diagnostic warning for the edge case where
CubeMagicPathId == 0.
- SkillHandler.HandleTarget: remove redundant caster-skip guard for Hostile
targets (player ID is never in Field.Mobs, and Targets.Clear() handles
cross-AP bleed).
- SkillHandler: downgrade over-target-count log to Warning and include
BounceCount for better context.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* skill targeting fix
* early exit
* format
---------
Co-authored-by: Ângelo Tadeucci <angelo_tadeucci@hotmail.com.br>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Zin <62830952+Zintixx@users.noreply.github.com>
Logger.Warning("[TargetAttack] SkillId={SkillId} AttackPoint={AttackPoint} IncludeCaster={IncludeCaster} — caster skipped in splash loop but CubeMagicPathId=0. Splash may be lost.",
0 commit comments