Gooyeth
42a11e97d5
Scripts/Commands: add AI/ScriptName to .gobject info (PR #21419 )
2018-02-15 16:11:28 +01:00
Treeston
4da9321d2b
Core/Combat: Unify combat permitted checks between CvC and PvC - only require "not friendly" in all cases. Fixes Yogg-Saron encounter. Closes #21380 .
...
Also some bonus cleanup to Yogg's script to make transition cleaner.
2018-02-15 12:23:05 +01:00
Treeston
cfc77fd843
Scripts/SmartAI: SetData now has an invoker (if the setting is done by something using SmartAI).
...
Also, some refactors. SMARTAI IS SUCH A FUCKING CLUSTERFUCK I SWEAR.
2018-02-15 11:44:37 +01:00
Gooyeth
b9aec3b4d3
Core/Scripts: Add bossId in state error log. ( #21421 )
2018-02-15 09:00:48 +01:00
ariel-
f1f6976f91
Core/Auras: make area and dynauras condition compliant by using the spellarea searcher instead of script searchers
...
Closes #17317
2018-02-15 03:07:41 -03:00
ariel-
a145a14166
Core/Handlers: fix bogus check that skipped CMSG_CAST_SPELL packet under certain conditions, missing a target change
...
Closes #21390
2018-02-14 23:11:38 -03:00
ariel-
93cbe815cb
Core/Spells: fixed server being too overzealous with autoshot
...
- Interrupting it when casting another spell and switching targets
Ref #21390
2018-02-14 23:10:41 -03:00
ariel-
1edd81f9d5
Core/Scripts: fix Healing Stream Totem coefficient and animation
2018-02-14 22:07:06 -03:00
ariel-
4101bc287d
DB/Spell: clear spell_bonus_data of redundant entries, now read from DBCs
...
Ref #21415
2018-02-14 05:58:56 -03:00
ariel-
1826437c09
Core/Spells: implemented bonus SP coefficient from DBC
...
Ref #21415
2018-02-14 05:58:56 -03:00
Treeston
264d4e1d30
Entities/GO: Add forceRespawnTimer support to DespawnOrUnsummon. Use it in SAI.
2018-02-14 02:24:13 +01:00
Treeston
f071fa9e93
Entities/GO: GameObjects now support (delayed) despawning in a reasonable manner. Closes #21406 .
2018-02-13 22:08:49 +01:00
Treeston
2cd5992f37
oops, now it builds (and a bonus refactor that annoyed me)
2018-02-13 18:42:28 +01:00
Treeston
6fb0bc1038
Scripts/SmartAI: Forward invoker to invoked action list actions. Also JustAppeared -> InitializeAI.
2018-02-13 18:29:38 +01:00
Treeston
482328bddf
Scripts/SmartAI: SMART_TARGET_INVOKER cleanup step 1. The core will now log errors on start-up if SMART_TARGET_INVOKER abuse is found, but will continue to load the scripts as deprecated for now.
...
Note that a lot of these scripts may either not currently work, not work reliably, or may be prone to breaking unexpectedly when core internals change. SMART_TARGET_INVOKER is undefined behavior on any event that doesn't directly specify its invoker.
(We are considering options for allowing INVOKER to make sense in timed action lists in a reliable fashion, so they are exempted at this time.)
2018-02-13 16:59:32 +01:00
ccrs
28c6db0807
Core/Movement: fe1ba18905 followup
...
ref fe1ba18905 (r27507316)
plus I noticed a logic error on speedchange call
2018-02-12 23:44:18 +01:00
ariel-
59fb0a581c
Core/Spells: fix Vampiric touch dispel effect inheriting damage done pct twice
2018-02-12 19:32:59 -03:00
ariel-
c7095375c3
Core/Unit: kill unused parameter from SpellxxxBonusTaken
2018-02-12 18:36:10 -03:00
ariel-
404240fb68
Core/Scripts: remove Tenacity hack, implemented with proper aura
2018-02-12 18:35:06 -03:00
tkrokli
57553ed96a
Build fix (unused parameter 'stack' in Unit.cpp)
...
Ref. commit 4d14f613f3
2018-02-12 22:22:34 +01:00
ariel-
4d14f613f3
Core/Unit: corrected calculation for SPELL_AURA_MOD_DAMAGE_TAKEN/SPELL_AURA_MOD_HEALING auras
...
- Spell bonus calculation and penalty was done twice, but it's simply flat +SP, which should be taken into account before other bonuses
- Fixed missing code from SpellDamageBonusDone/SpellHealingBonusDone and killed multiplication by stack amount twice for default coefficient spells (already multiplied on level penalty)
2018-02-12 16:52:59 -03:00
ariel-
e73bfe8df8
Core/Spells: implemented SpellPriority field from SpellEntry to cleanup charged mod proc behaviour
...
- Only one charged mod will be consumed per SpellMod apply, and it'll be compared against other mod priority
- This is proper way of handling Backdraft/Backlash and Deathchill/Killing Machine
Thanks to killerwife for info
2018-02-12 03:09:22 -03:00
ariel-
dfa861593e
Core/Spells: add log on load about improper use of attribute PROC_ATTR_REQ_SPELLMOD
2018-02-12 00:21:26 -03:00
ariel-
546a605bd0
Core/Spells: implement SPELLVALUE_CRIT_CHANCE and SPELL_ATTR4_INHERIT_CRIT_FROM_AURA
...
Closes #18813
2018-02-12 00:21:26 -03:00
ariel-
52873a7072
Core/Spells: calculate crit chance only for spells that do damage/healing
...
Refs #18813
2018-02-12 00:21:26 -03:00
Treeston
e4e6e2209c
Core/AI: EscortAI init logic moved from JustAppeared to InitializeAI. There are no escort NPCs using compatibility mode anymore, so this is equivalent.
...
As a result, inheriting scripts calling Start in on-create hooks (like JustSummoned) will now work properly again.
Tagging #20310 .
2018-02-12 03:25:05 +01:00
Treeston
fe1ba18905
Core/Movement: WaypointMovementGenerator cleanup
2018-02-12 02:57:55 +01:00
Treeston
d02f481d9a
Core/Movement: Creatures' idle movement generator can no longer override player mover control.
...
Tagging #20310 , partial fix.
2018-02-12 01:50:36 +01:00
ariel-
9d0e90829c
Core/Auras: fix periodic ticks proc after previous commit
2018-02-11 21:09:41 -03:00
ariel-
b42ade918a
Core/Spells: require phasemask set for periodic damage procflag
...
Closes #21379
2018-02-11 20:42:06 -03:00
jackpoz
3576a38f6c
Core/Player: Add some asserts
...
Assert PlayerInfo for race/class pair in a few Player functions
2018-02-11 17:43:12 +01:00
Treeston
b456915f9a
Game/AI: InvalidAIException internal cleanup
2018-02-09 18:07:57 +01:00
ariel-
303efcf0e4
Core/Spells: remove 'Vanish Purge' hack, the spell is present on DB and is copy of one in vanilla DBC
...
Thanks to killerwife for the heads-up
2018-02-08 23:18:45 -03:00
Shauren
713bf944ae
Build fix
2018-02-05 21:08:09 +01:00
Shauren
2fd9dc2edb
Core/Scripts: Fixed ENSURE_AI assertion failures when used in Reset()/InitializeAI() hooks with hotswap
...
Updates #20727
2018-02-05 20:52:19 +01:00
ariel-
ed931cfa19
Core/ScriptSystem: AfterHit hook can't modify damage/healing, so log it
...
- Also added const to getter members
2018-02-05 14:43:11 -03:00
ariel-
650a92dc9f
Core/Channel: properly notify client about invalid channel names
...
Closes #16190
2018-02-05 13:45:52 -03:00
ariel-
65709e1c30
Core/Spells: fix logic error causing near teleports to drop combat for players
...
Closes #21362
2018-02-04 22:47:53 -03:00
ariel-
e979a58d17
Core/Spells: remove duplicated LowerPlayerDamageReq call on reflected spells
...
- It is already called at Unit::DealDamage
2018-02-04 22:07:10 -03:00
Treeston
4cb13af4fa
Core/Threat: Custom ThreatListIterator that transparently iterates over the backing map (instead of using heap iterators) when working with the unsorted threat list. This greatly reduces the range of actions that can cause iterator invalidation.
...
Also some minor adjustments to .debug threat, which no longer hides certain invalid states from view.
2018-02-05 01:33:41 +01:00
ariel-
2d2c43f4b9
Core/Spells: fix SPELLMOD_DAMAGE application order for melee spells
...
Closes #20597
2018-02-04 21:28:15 -03:00
ariel-
9fc732eb97
Core/Spells: kill unused parameter from Spell constructor
...
Added in 1f2292af79
2018-02-04 20:15:38 -03:00
jackpoz
71feb2149e
Core/Misc: Fix no-pch build
2018-02-04 21:54:06 +01:00
jackpoz
95a76a83fc
Core/AI: Fix assertion triggered with PetAI derived scripts ( #21254 )
...
* Core/AI: Fix assertion triggered with PetAI derived scripts
Fix an assertion triggered when spawning through ".npc add" or from SQL db table a Creature with AI set to a custom AI inheriting from PetAI.
2018-02-04 21:47:45 +01:00
Treeston
6e0df9fce1
AI/SmartAI: Remove a silly incorrect piece of code that was breaking react state swaps on SAI creatures. Fixes #21353 .
2018-02-04 15:03:05 +01:00
Killyana
8f71307e56
Spell/Script: Torch 52953 and 58121 must hit only one target
2018-01-30 13:04:25 +01:00
Treeston
1acfefb973
Core/Creature: Adjust SelectVictim behavior: (PR #21324 )
...
- No more automatic combat -> threat promotion. This matches anecdotal retail behavior - spells already in transit will not cause mob to chase you if its primary target vanishes before the spell hits.
- Prevent mobbing by stopping creatures from auto-acquiring a nearby target just because the primary target vanished.
2018-01-29 23:14:46 +01:00
Treeston
2402406228
Combat/Threat: Now set engaged state for all units on offline reference registration (vanished/invis'd units). For non-PASSIVE units, this will immediately cause an evade.
...
This fixes an exploit where creating the reference as offline (by vanishing while a spell was mid-flight) you could damage a creature further without it ever engaging you.
2018-01-29 03:07:43 +01:00
Treeston
c69584a967
Game/AI: Remove some unused old logic.
2018-01-29 01:57:31 +01:00
Treeston
0ee14845ae
typo
2018-01-28 02:41:33 +01:00