azerothcore / azerothcore-wotlk

Complete Open Source and Modular solution for MMO
http://www.azerothcore.org
GNU Affero General Public License v3.0
6.56k stars 2.63k forks source link

Add spawns missing AI delay #19062

Open Alethrion opened 4 months ago

Alethrion commented 4 months ago

Current Behaviour

Practically all ads on the server spawn in and attack instantly, practically getting an auto-attack off before they've even phased in. (This may also apply to respawns in the open world, but I cannot find a source outside private servers for the expected behavior)

Expected Blizzlike Behaviour

Many ads are supposed to have a short (0.5-1 second) delay on their ai. The bosses that I found with add spawning that have a delayed AI: Hydross, Nightbane, Curator, Aran, Midnight, Maybe Vashj.

Source

Oof, gimme a second Hydross: https://youtu.be/X4-VeHZ1DsE?t=39 Nightbane: https://youtu.be/D2jz0prp32o?t=90 Curator: https://youtu.be/M7K8HkxJ99o?t=810 Aran: https://youtu.be/gYANql-4mYo?t=90 Midnight: https://youtu.be/9gXlyEFhQg0?t=23 Vashj: https://youtu.be/MPTtcBScs9g?t=293

Steps to reproduce the problem

  1. Find a boss that spawns ads and meet the requirements for the ads to spawn
  2. View behavior

Extra Notes

This is definitely not an exhaustive list, but it seems to be fairly common. Cases can also be difficult to find sources for as when the mob is hit (such as by aoe) it's ai is instantly activated, hence cases can likely be found where the same mobs instantly act as well.

AC rev. hash/commit

85a2812

Operating system

Windows 10 x64

Custom changes or Modules

No response

Grimdhex commented 2 months ago

Do we know situations where isn't the case ? This is important for the method being considered. Either we generalise this behaviour to all summons or it becomes an option to be set (where it's defined by a flag or something like that).

heyitsbench commented 2 months ago

If the behavior isn't global across all summons, I'd personally argue the delay is more common than not, so if a flag were to be the decided implementation, I'd say it should be set to remove the delay, not add it.

Nyeriah commented 2 months ago

Is there something already existing about this e.g summon properties?

If not flags extra might be the way to go, if there’s a bit available

Mobs are static until the first DoZoneInCombat() call, so we just need to delay it in JustSummoned()

most mobs if not all are supposed be summoned by spells so there’s little room to change it in the script files themselves

Rorschach91 commented 1 month ago

We can add the Flames of Azzinoth in this report.