[DiscordArchive] which issue is it ?
[DiscordArchive] which issue is it ?
Archived author: Carbine • Posted: 2025-10-19T17:44:14.546000+00:00
Original source
I did, it seems related with the handle delayed functionality of the spells that have a trajectory, the effect is being executed on launch instead of hit even tho the spell effect is `SPELL_EFFECT_TRIGGER_MISSILE`
![[Image: image.png?ex=690c3715&is=690ae595&hm=972...a414647e3&]](https://cdn.discordapp.com/attachments/376457042392514560/1429527074347024384/image.png?ex=690c3715&is=690ae595&hm=972a053c559935cd2b1c9a57e2539b09c6f2970d4fd4fe518e57020a414647e3&)
Archived author: Carbine • Posted: 2025-10-19T17:50:13.978000+00:00
Original source
this is the spell
![[Image: image.png?ex=690c3715&is=690ae595&hm=972...a414647e3&]](https://cdn.discordapp.com/attachments/376457042392514560/1429527074347024384/image.png?ex=690c3715&is=690ae595&hm=972a053c559935cd2b1c9a57e2539b09c6f2970d4fd4fe518e57020a414647e3&)
Archived author: jackpoz • Posted: 2025-10-19T17:57:49.737000+00:00
Original source
did you debug void Spell::EffectTriggerMissileSpell() ?
Archived author: Carbine • Posted: 2025-10-19T17:59:49.914000+00:00
Original source
yes, that function is immediately triggered on spell launch but it gets skipped because of ```c++
if (effectHandleMode != SPELL_EFFECT_HANDLE_HIT_TARGET
&& effectHandleMode != SPELL_EFFECT_HANDLE_HIT)
return;``` and then it gets called again on `handle_immediate()`
Archived author: jackpoz • Posted: 2025-10-19T18:00:36.730000+00:00
Original source
and is it even called with those modes ?
Archived author: Carbine • Posted: 2025-10-19T18:02:40.973000+00:00
Original source
yes, second call `handle_immediate()` and that time it works but since is immediately handle, the second missile is triggered almost in launch phase, creating the visual effect of 2 missiles in the air and none of them deal damage, since the first one is the visual and the trigger should be executed only on hit since is the spell that deals damage to gobjs and units
Archived author: Tea • Posted: 2025-10-19T18:03:17.110000+00:00
Original source
switch your focus to Spell::CalculateDelayMomentForDst
Archived author: Tea • Posted: 2025-10-19T18:03:33.804000+00:00
Original source
that would cause m_delayMoment to be 0 and hit immediately
Archived author: Carbine • Posted: 2025-10-19T18:06:37.259000+00:00
Original source
I did, `m_delayMoment` is not 0 instead around 1700, then `handle_delayed` gets called with the 2 missiles on the air
Archived author: Tea • Posted: 2025-10-19T18:07:37.978000+00:00
Original source
in that case the spell should hit at that point