Following the work done in #19361 this is the cleanup and improvement of the related logic of waypoint management.
Ref 28050f3#18020
(taking the good parts and ignoring the incomplete work)
* Core/Scripts: Rewrite Boss Kalecgos (Sunwell Plateau)
Scripted all spells
Corrected behavior of Spectral Blast and Curse of Boundless Agony
Removed wrong wipe behavior
Fix problem where bosses would be stuck with banish
Added Boundaries
Corrected texts
Removed old hacks
Other minor fixes
- Use unsigned int for thread count
- Use std::thread::hardware_concurrency() to try estimate available threads instead of hardcoded 3 threads by default
- Print thread count always regardless of using --threads switch or not
http://www.wowhead.com/quest=10248/you-robot
- Progress text (quest_request_items) was missing completely (request item: Scrap Reaver X6000 Controller)
- Reward Text (quest_offer_reward.RewardText) had lost '-52 Nether-Rocket from certain doom!' from the end.
- Rename JustRespawned to JustAppeared, which better matches its behavior anyway.
- Properly invoke JustAppeared for new (re-)spawns - fixes#20111.
- Fix Thaddius script to work with dynamic_spawning (mostly unrelated to the above) - Feugen/Stalagg should really be a summon group, but I don't have time to fix that right now.
- Fix default value for DynamicEscortNPC to match worldserver.conf.dist.
Fixed the following typos:
- 'Clues in the Thicket' (9971) RewardText typo (Is it was/Is it what)
- `An Unseen Hand` (10013) RewardText typo (duplicated words "it to me")
- 'Evil Draws Near' (10923) Progress typo (ben/been)
- True blizzlike creature spawn/respawn behavior - new creature = new object
- Toggleable spawn groups (with C++/SAI/command options to use them)
- Custom feature: dynamic spawn rate scaling. Accelerates respawn rate based on players in the zone.
- Backward compatibility mode (set via group and for summons)
to support creatures/gos that currently don't work well with this
(this should be removed once the exceptions are fixed)
Fixes and closes#2858
Tags #8661 as fixable.
Fixes and closes#13787Fixes#15222.
* Move IteratorPair to its own header
* Add AsUnderlyingType function to cast enum value to its underlying type (avoids repeating std::underlying_type everywhere)
(cherry picked from commit fdd9227b23)
- Silithus / Cenarion Circle repeatable quests (Field Duty)
- 'Bandages for the Field' progress text (quest_request_items):
"You have something for me, <name>?", requesting 4 quest items.
- Add conditions to allow player to stay mounted in the quest zones.
- Update comment text for existing condition, adding zone name.
By Foereaper
Updates issue #20078
- Gender selection for the words brother/sister = $gbrother:sister;
- in existing quest RewardText $g is flipped and shown as straight text
(instead of "brother" or "sister" the quest says "g$sister:brother")
- add missing CompletionText (Progress) and RewardText to quest 14350
- identical to quest ID 6145, only Bragor Bloodfist's text is changed
- fix minor typo in Reward Text for quest ID 838 'Scholomance'(Horde)