Commit Graph
722 Commits
Author SHA1 Message Date
ariel- 0ae1ebedfe Core/Spells: explicitly disable non proccing auras when generating default procs
Closes #21529

(cherry picked from commit ad796318e8c34df177a935892f27c6a7b4f2f901)
2021-08-18 23:22:46 +02:00
ariel- 6c642f33b5 Core/Auras: added sanity checks for area auras having a different owner unit than caster
Closes #21517

(cherry picked from commit 54e841888621ce2ea6fbfde2f86842ec088cd575)
2021-08-18 22:57:52 +02:00
Traesh fb6761c273 Core/Spells Implement targets 133, 134, 135 : TARGET_UNIT_LINE_CASTER_TO_DEST_*** (#26786) 2021-08-15 11:09:46 +02:00
ariel- 3582bacc4a Core/Spells: add log on load about improper use of attribute PROC_ATTR_REQ_SPELLMOD
(cherry picked from commit dfa861593ea3adf06a52cbddbe9e60131dcfe626)
2021-06-19 23:34:15 +02:00
ariel- 13be704cb4 Core/Spells: implement SPELLVALUE_CRIT_CHANCE
(cherry picked from commit 546a605bd0cd0e828def81e26697f1c116a3f1b7)
2021-06-19 23:33:44 +02:00
ariel- 85e5509e91 Core/Spells: calculate crit chance only for spells that do damage/healing
Refs #18813

(cherry picked from commit 52873a7072ceb1f88d9caeefdda6084e6bb1d4af)
2021-06-19 23:33:38 +02:00
ariel- 91fa279bdf Core/Spells: require phasemask set for periodic damage procflag
Closes #21379

(cherry picked from commit b42ade918a7c68c6916450cf2eac1fc0ad4d78de)
2021-06-19 23:33:38 +02:00
Killyana 854abdbfb6 Spell/Script: Torch 52953 and 58121 must hit only one target
(cherry picked from commit 8f71307e5619c8ef1801488812e20d07714fd733)
2021-06-19 01:35:41 +02:00
ariel- d0f4310c44 Core/Entities: don't allow client control if player is still affected by any lose of control state
(cherry picked from commit e315e41d36061fc88dfa09bfa0da1fbc0c00826f)
2021-06-16 21:26:57 +02:00
ariel- fccf1a8c62 Core/Auras: removed caster dependency from core
- Decoupled Unit logic: split of spell critical chance into done (caster bonuses) and taken (target bonuses), this allows to precalculate caster bonuses on aura apply and then check victim's auras on damage/healing calc
- Made static a bunch of methods (they no longer have this pointer because they are now called from periodic handlers which may or may not have an active caster in world)
- Simplified all AuraEffect bonuses into AuraEffect::_amount, no more duplicated code
- Critical chance and whether or not caster is player owned unit (for resilience calcs) is now saved one level upper, on Aura itself (it's impossible as of 3.3.5 to have different effects with different critical chances)
- Minor cleanup of SPELL_DAMAGE_CLASS_NONE and Arcane Potency (#18813) crit handling

Closes #19876

(cherry picked from commit cb9e72e521d3cc415dd15bf6912c87f89e41b92a)
2021-06-13 00:59:13 +02:00
Shauren e1f3f1254c Core/Spells: Load spell label data for future use 2021-06-04 21:18:29 +02:00
xinef1 1912999b9e Core/Spells: Defined and implemented some new spell attributes (#18950)
(cherry picked from commit 23823f5147e808928e1d8cd31b6cdf31753ef14d)
2021-05-16 21:56:07 +02:00
Matan Shukry 3b578fc6b9 Core/Chat: Load chat language data from db2 and implement serverside chat translations 2021-05-03 23:53:24 +02:00
Treeston 9b141207d1 [3.3.5] CastSpell unclusterfucking (that's a word now) (#21123)
Core/Spell: The giant CastSpell unclusterfucking (that's a word now) of this generation.

- CastSpell now always takes three arguments - target, spellId, and a struct containing extra arguments
- This struct (CastSpellExtraArgs, see SpellDefines.h) serves as a conglomerate of every previous combination of the 20 billion different CastSpell overloads, all merged into one
  - It has some great utility constructors - check them out! All of these can be used to implicitly construct the ExtraArgs object.
- A gajillion refactors to make everything behave the way it always has

(cherry picked from commit d507a7e3388382960108b24143da48e5f912b4a7)
2021-04-16 15:22:42 +02:00
ariel- 16ec008290 Core/Spells: fix some DB errors
Ref #18542

- Implemented Choking Vines transformation at 5 stacks
- Implemented periodic Aura of Fear ticks
- Fixed Savage Rend passive proccing on anything (raptor pets)

(cherry picked from commit de9f9042699e849af38363430cd9aa390c62d1a2)
(cherry picked from commit 32e2207ab9863b9d79b994afd929730ca04bbce8)
(cherry picked from commit 9934a43e0948b6dfd46bd549e6a1c7028c40e22d)
2021-04-15 05:53:27 +02:00
Shauren 07a47947e2 Core/Spells: Defined and implemented new spell interrupt flags 2021-03-24 23:36:53 +01:00
Shauren 9b5a46ca2b Core/Auras: Defined and implemented many new interrupt flags 2021-03-21 12:05:32 +01:00
Shauren c7d1cf7457 Core/Spells: Fixed startup crash and log any future attempts to apply data corrections to nonexisting spell effects 2021-03-16 00:07:34 +01:00
Matan Shukry 0c73895826 Scripts/Spells: corrections to Death Knight spell Blood Mastery (#26082) 2021-03-15 22:53:30 +01:00
jackpoz 2364aa59d8 Core/Spells: Fixed Naxx Anub Scarab Summoning Spell
Reduce spell radius of 28864 and 29105 from 100 yards to 10 yards to spawn scarabs closer

(cherry picked from commit 72e97d330bd4d696255eee7046a27a9f8b3d6ae1)
2021-03-15 20:17:31 +01:00
ariel- 44c8ccadd7 Core/Auras: periodics refactor part 5: ported periodic trigger spell auras to scripts
(cherry picked from commit a36e804ae4639be40be17282e6c79fad9a769517)
2021-03-15 20:17:31 +01:00
ariel- 5f9e0d92d5 Core/Auras: periodics refactor part 1:
- Don't skip ticks if diff is greater than amplitude
- Fixed spells without ampltude in DBC

(cherry picked from commit 5d91beb1dbc795382a12ec05f6e72c76b195b141)
2021-03-15 20:17:31 +01:00
Shauren da77b300f4 Core/Spells: Small refactor to ServersideSpellName to make private parts actually private 2021-03-14 14:45:01 +01:00
Shauren deed58f080 Core/Spells: Check if serverside spells don't overwrite db2 spells 2021-03-12 22:25:47 +01:00
Shauren 2bd70b41eb Core/Spells: Restore serverside spells fuinctionality 2021-03-12 21:59:10 +01:00
Shauren b4aa698acb Core/Auras: Convert most rules from Aura::CanBeSaved to a custom spell attribute 2021-03-06 23:47:30 +01:00
Shauren ad479e8fa0 Core/Spells: Implemented spell effect 202 SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS 2021-02-28 22:08:58 +01:00
Shauren c1ad297a72 Core/Spells: Fixed accessing freed memory after reloading spell_area
(cherry picked from commit d011097ab0f0c4763108547ba5667e8de5768ef6)
2021-02-25 18:50:55 +01:00
Matan Shukry 9e948ff4bd Core/Spells: Corrected the spell id source used in the learn spells map when loading SpellLearnSpell.db2 data (#26140) 2021-02-24 20:20:14 +01:00
Killyana 33279199d4 Spell: Remove a phase hack for The Eye of Acherus
Npcs are now spawned on phase 2, some spawns still missing on phase 1 and 2, need to wait for future commits.

(cherry picked from commit f3a00a1822bfbdf0a14eaf3afc503e034d9d56c6)
2021-02-15 19:13:25 +01:00
Traesh e11067a398 Core/Auras: Handle SPELL_AURA_MOD_SCHOOL_MASK_DAMAGE_FROM_CASTER
(cherry picked from commit AshamaneProject/AshamaneCore@458d0f2a53)
2021-02-07 19:43:13 +01:00
Ryzen cafa00b5d0 Scripts/Spells: Mage Ice Lance (draft)
Missing/todo the following:

- x3 damage on frozen target
- lower damage of second lance triggered by Splitting Ice to 80% (now it deals 100%)
- Chain Reaction.
2020-12-24 15:55:30 +01:00
Shauren 089fd5575d Core/Spells: Removed spellinfo corrections for non-existing spells 2020-09-06 15:39:28 +02:00
Demonid fa762826e9 Scripts/Icecrown Citadel: Fixed Lord Marrowgar - Coldflame to not ignore resistances (#20146)
Closes #13240

(cherry picked from commit 7b747848ede0bdb7e12374d3560059ec708e177a)
2020-08-23 01:16:17 +02:00
Demonid 6130a775fe Scripts/ICC: Minor Fixes for Lich King (#20120)
- Fixed Shadow Trap and Defile Targets
- Fixed Shadow Trap Summon Delay and Duration
- Fixed Berserk Timer (15 Minutes)
- Fixed Shadow Trap Despawn when Snowstorm starts

(cherry picked from commit 9fa68855d7d0d5f37112ce21c919a16ed8724ac2)
2020-08-22 20:48:06 +02:00
Shauren 1c52d5fff7 Core/Misc: Replace NULL with nullptr 2020-08-14 17:06:03 +02:00
Shauren 176c75e8db Core/Spells: Include more than first 2 spell effects when determining if a spell is negative 2020-06-26 00:23:46 +02:00
Shauren c3dcbe04dc Core/Spells: Assign spell effect handles for new apply aura effects 2020-06-22 11:04:57 +02:00
Shauren fce9fca900 Core/Spells: Implemented new target types
* TARGET_UNIT_TARGET_ALLY_OR_RAID
* TARGET_UNIT_CASTER_AND_SUMMONS
* TARGET_UNIT_AREA_THREAT_LIST
* TARGET_UNIT_AREA_TAP_LIST
* TARGET_DEST_CASTER_GROUND
* TARGET_DEST_SUMMONER
* TARGET_DEST_TARGET_ALLY

Closes #18558
Closes #18867
Closes #24295
2020-06-21 15:59:43 +02:00
ariel- e2bc8c5383 Core/Scripts: improvements on the Thorim script
Improvements done to initial work by joschiwald:

- Fixed stormhammer casting and visuals
- Fixed spell credits
- Implemented removal of Impale when HP is higher than 90%
- Corrected faction templates for the pre combat creatures
- Implemeted Leap on the arena adds (thanks to joschiwald for implementing conditions)
- Scripted lighting charge using AuraScript periodic
- Fixed timings
- Corrections on the hallway encounters (added knockback immunity to minibosses too)
- Fixed multiple blizzards issue
- Lever will now reset properly, should players fail to get inside. This allows the door to be opened more than once during the combat
- Corrections in the outro event
- Implemented paralytic field traps on the hallway.
- Implemented Ancient Gate of the Keepers opening.
- Changed blizzard bunny targetting to conditions entirely.
- Removed obsolete scripts
- Standards: delete spell script names by ScriptName instead of spell_id
- Swapped factions for pre-adds (alliance should get horde trash and vs)
- Fixed Leap setting home position for adds
- Removed a bunch of magic numbers
- Runic Colossus should finish current Runic Explosion before beginning to attack
- Fixed UpdateAI logic to put it in line with other scripts (ie don't stop casts)

Special thanks to:
- chaodhib for the blizzard trigger waypoints and investigation on spell radius
- Malcrom for creating the Conditions Creator :P

Closes #15008
Closes #17072

(cherry picked from commit 4a69f5bda58fe3af5ec6000e0ec10a3b0732969a)
2020-06-14 23:49:01 +02:00
Shauren c7306439e7 Core/Spells: Implement using different difficulty data from all spell related db2s, not just SpellEffect and SpellPower 2020-06-12 01:29:18 +02:00
Shauren 4d69cc1c56 Core/Misc: GCC build and warning fixes 2020-05-21 22:15:58 +02:00
Keader 08635c740a Core/Spells: Fixed Chilled to the Bone
Closes #19417
thanks ariel-

(cherry picked from commit 164af391c9662732dfc9cfe677c48bd3f927c2be)
2020-04-29 21:11:17 +02:00
ariel- 677df56d2d Core/Auras: don't skip stack rule check whenever spells have same ID
- The auras might not have the same amounts due to spellmods

Closes #1626

(cherry picked from commit 9414f50f5c60b03871b4bd8d147786f77476ea04)
2020-04-27 14:31:29 +02:00
ariel- 1edfd0d064 Core/Spell: fix broken Unit::GetHighestExclusiveSameEffectSpellGroupValue
- Affects 3 aura effects currently, should be rewritten with GetTotalAuraModifier maybe?

(cherry picked from commit d44a44abacdf3f9fabc37e62806970f97e06332b)
2020-04-27 14:31:29 +02:00
ariel- 60824d8c7a Core/Spell: fix nopch build x2
(cherry picked from commit abaa9d635a6c52f78ec5eb87a5a39890645d5649)
2020-04-27 14:31:29 +02:00
ariel- 52e00746cf Core/Spell: fixed SPELL_GROUP_STACK_RULE_EXCLUSIVE_SAME_EFFECT to actually check effects
- This commit enables stack rule 3 to be properly used to fix auras that should be active but only one providing effects, even if the spell has multiple auras

Closes #19454

(cherry picked from commit 9900899dd9d7f685a1c862bc75e7614e3f0a3ce6)
2020-04-27 14:31:21 +02:00
Ovah 030d942efe Scripts/Antorus: implement Garothi Worldbreaker encounter for normal and heroic difficulty
* added base script support for the encounter for normal and heroic difficulty
* added instance script for Antorus the Burning Throne
* added sniffed template data for involved gameobjects
* added encounter related spawns to Antorus the Burning Throne
* added instance encounter entry for Garothi Worldbreaker
2020-04-25 19:04:31 +02:00
Gustavo 6f523b4fb6 Core/Scripts: minor fixes in boss_the_lich_king (#19311)
Closes #4427
Closes #7091

(cherry picked from commit 2792046dc7a229180d27dfdc4ce37ccfb84c8a27)
2020-04-24 17:18:49 +02:00
ariel- e44d0c8873 Core/Spell: fix an issue with vehicle spells changing orientation of base vehicle
Closes #17234

(cherry picked from commit 4096b02a560499d2cb2f40c67ac0b30ed4c48ffd)
2020-04-24 17:18:49 +02:00