Commit Graph

34382 Commits

Author SHA1 Message Date
Treeston
dce39aedc2 Core/Combat: Some more sanity check asserts to try and track down #21187.
Also, some anti-annoyance treatment for dot tele.

(cherry picked from commit fdacf12739)
2021-05-16 21:56:05 +02:00
Treeston
2a7bb9b404 Core/Combat: some more detailed assertions to possibly shed light on #21187.
(cherry picked from commit 5a9fddaa5a)
2021-05-16 21:56:05 +02:00
Treeston
b00d3812ab Core/Map: Fix a crash that could happen if a player moved very far away from a creature they were in combat with. Closes #21177.
(cherry picked from commit e0b609a178)
2021-05-16 21:56:05 +02:00
Moein
673cc20e79 MovementInform should overrides
(cherry picked from commit 18f5eae835)
2021-05-16 21:56:05 +02:00
Treeston
5aee452943 Core/Misc: A variety of clean-up changes, mostly following up on 532ab1c to fix legacy bugs exposed by it:
- Triggers can no longer have a threat list (this may expose some ugliness in old legacy scripts)
- Threat entries are forced to OFFLINE if the AI refuses to attack the target
- Clean up passive creature evade behavior to be more consistent
- Fix a months old issue in spawn group management that would cause "Inactive" to incorrectly show in .list respawns for system groups outside of map 0
- Valithria script cleanups, remove old hacks and make it work with the new system. Closes #21174.
- Some strings cleanup

(cherry picked from commit 9f9507e6a1)
2021-05-16 21:56:05 +02:00
ariel-
83159544b5 Core/Spells: fix casting NO_TARGET event spells
Closes #19978

(cherry picked from commit e245113660)
2021-05-16 21:56:05 +02:00
Treeston
34c7810fe5 Core: Combat/threat system rewrite (PR #19930)
- PvE combat is now always mutual. UNIT_FLAG_IN_COMBAT is backed by actual references to the units we're in combat with.
- PvP combat is now also tracked, and almost always mutual; spells like Vanish and Feign Death can break this rule. That means we can easily determine a list of players we're fighting.
- By extension, IsInCombatWith now has sensible behavior when invoked on nonplayers.
- Threat and combat systems are no longer the same.
  - They still have an enforced relationship (threat implies combat - clearing combat clears threat)...
  - ...but we can have combat without threat. A creature (with threat list) isn't considered to be engaged until it has an entry on its threat list...
  - ...which means we can now faithfully replicate retail engage behavior. Combat on projectile launch - engagement start on projectile impact. Yay for progress!
- AI method refactor, as already ported in 6113b9d - `JustEngagedWith`, `JustEnteredCombat` and `JustExitedCombat`.
- Vehicle threat is now properly pooled on the main vehicle body (fixes #16542).
- Various edge case bug fixes for threat redirects (Misdirection "cancelling" Vigilance and similar).
- Target re-selection is now significantly faster.
- Fixed a ton of other smaller edge case bugs, probably.

Closes #7951 and #19998.

(cherry picked from commit 532ab1c7f8)
2021-05-16 21:56:01 +02:00
Shauren
5158136ee8 Core/Players: Fixed last tick of power regeneration when reaching minimum or maximum value not being visible clientside and not triggering auras on power value change 2021-05-15 17:44:31 +02:00
Shauren
12ed21e690 Scripts/Spells: Clear arcane charge damage/cost/cast time modifier aura when reaching 0 arcane charges (power) 2021-05-15 17:44:31 +02:00
Shauren
331c7ec7c2 Scripts/Spells: Remove manual damage adjustment from Arcane Barrage for scaling with arcane charges and use spell cast for mana energize 2021-05-15 17:44:31 +02:00
Shauren
fd7f854995 Scripts/Spells: Properly utilize all Arcane Explosion energize effects 2021-05-15 17:44:31 +02:00
Matan Shukry
be8cbab4b3 Scripts/Spells: Fixed arcane barrage + explosion 2021-05-15 17:44:31 +02:00
Shauren
e2964dadf4 Fixed nopch build with clang 11 2021-05-15 02:17:08 +02:00
Shauren
b511fac643 Core/Spells: Send actual power gain amount in spell energize log 2021-05-15 02:15:09 +02:00
Shauren
fb6c1dc295 Dep/bzip2: Remove dependency 2021-05-15 02:14:37 +02:00
Shauren
5a9a3b3938 Core/Spells: Load SpellEffectInfo::ChainTargets as signed (there are negative values found in db2) 2021-05-15 02:13:45 +02:00
funjoker
08572a4e36 DB/Hotfixes: Update base hotfixes to 38556 2021-05-14 20:31:18 +02:00
Ovahlord
a0a4d23fed Core/Units: No longer send PowerUpdate packets when gaining power via energize spell effects 2021-05-13 00:43:11 +02:00
Shauren
1a7779a6e6 Core/Spells: Expose number of targets selected for each spell effect to scripts to allow implementing spells that do something depending on number of targets hit 2021-05-13 00:38:09 +02:00
Shauren
1b39612b33 Fix dynamic windows build 2021-05-12 18:08:53 +02:00
Shauren
2906926173 Core/Scenes: Fix scenes played by package id storing pointers to stack variables 2021-05-12 14:23:21 +02:00
Shauren
f3465003df Core: Updated allowed build to 9.0.5.38556 2021-05-12 01:10:21 +02:00
Shauren
f072bc4ca1 Core/Commands: Add ItemContext argument to .additem and .additemset commands 2021-05-11 18:25:22 +02:00
Shauren
8a551d598d Core/Misc: Define new ItemContext values 2021-05-11 18:24:58 +02:00
Shauren
d9d242bea4 Core/Quests: Set quest accept time updatefield 2021-05-11 15:47:58 +02:00
Shauren
2ffedf30a9 Core/Quests: Implemented QUEST_OBJECTIVE_FLAG_KILL_PLAYERS_SAME_FACTION 2021-05-11 12:32:22 +02:00
Shauren
254d5af7c2 Core/Quests: Implement new quest objective types QUEST_OBJECTIVE_LEARNSPELL, QUEST_OBJECTIVE_AREA_TRIGGER_ENTER, QUEST_OBJECTIVE_AREA_TRIGGER_EXIT 2021-05-11 11:45:12 +02:00
Shauren
3ad389efee Core/Quests: Un-deprecate QUEST_SPECIAL_FLAGS_EXPLORATION_OR_EVENT 2021-05-11 00:38:08 +02:00
Shauren
2d7411c9fa Core/Quests: Fix loading quest_template.AreaDescription 2021-05-11 00:37:42 +02:00
Shauren
6352a84bf7 Core/Quests: Unify quest objective updating into one function and replace iterating entire quest log to find objective with direct {type, id} lookup 2021-05-10 22:45:54 +02:00
funjoker
5bef47f1e9 DB/Misc: Update and add some npc_text entries 2021-05-10 12:46:31 +02:00
funjoker
7e3f0968bf DB/Misc: Update npc_text with BfA massparse 2021-05-10 12:42:22 +02:00
funjoker
0d7d5cf66e DB/Hotfixes: Update zhTW hotfixes to 38134 2021-05-10 12:18:38 +02:00
funjoker
28f6287427 DB/Hotfixes: Update zhCN hotfixes to 38134 2021-05-10 12:18:33 +02:00
funjoker
d4e15dd95c DB/Hotfixes: Update ruRU hotfixes to 38134 2021-05-10 12:18:25 +02:00
funjoker
29a0408264 DB/Hotfixes: Update ptBR hotfixes to 38134 2021-05-10 12:18:16 +02:00
funjoker
106879faed DB/Hotfixes: Update koKR hotfixes to 38134 2021-05-10 12:18:09 +02:00
funjoker
3ee2d09b22 DB/Hotfixes: Update itIT hotfixes to 38134 2021-05-10 12:18:02 +02:00
funjoker
3c41b55fcf DB/Hotfixes: Update frFR hotfixes to 38134 2021-05-10 12:17:55 +02:00
funjoker
a8a61158f7 DB/Hotfixes: Update esMX hotfixes to 38134 2021-05-10 12:17:47 +02:00
funjoker
68c7f49bf7 DB/Hotfixes: Update esES hotfixes to 38134 2021-05-10 12:17:39 +02:00
funjoker
58d521c804 DB/Hotfixes: Update deDE hotfixes to 38134 2021-05-10 12:17:29 +02:00
funjoker
dc14b03edd DB/Hotfixes: Update hotfixes to 38134 2021-05-10 12:17:10 +02:00
funjoker
b36681e4cc DB/Hotfixes: Update zhTW broadcast_text_locale 2021-05-10 00:48:34 +02:00
funjoker
b82eba37c5 DB/Locales: Update zhTW quest 2021-05-10 00:48:04 +02:00
funjoker
34eebf88ec DB/Locales: Update zhTW creature 2021-05-10 00:47:56 +02:00
funjoker
4428694ccc DB/Hotfixes: Update zhCN broadcast_text_locale 2021-05-09 21:53:57 +02:00
funjoker
554e668074 DB/Locales: Update zhCN quest 2021-05-09 21:53:33 +02:00
funjoker
ad83ffce70 DB/Locales: Update zhCN creature 2021-05-09 21:53:24 +02:00
funjoker
7750bbdea5 DB/Hotfixes: Update ruRU broadcast_text_locale 2021-05-09 21:27:35 +02:00