Ovahlord
f70bd515f3
Scripts/HoO: scripted all trash groups in Tomb of the Earthrager
2021-02-22 14:05:07 +01:00
Ovahlord
768704187c
Scripts/TotFW: fixed an edge case in which Rohash wouldn't cast his Storm Shield on heroic difficulty when his energy went above 30 between the checks
2021-02-20 23:47:35 +01:00
Ovahlord
1e1ebf16bd
Scripts/HoO: scripted Sun-Touched Servants
2021-01-29 21:27:31 +01:00
Ovahlord
0bb7e3a385
Scripts/LCT: reworked Siamat encounter
...
* Modernized code all across the board
* Wailing Winds are now much closer to retail behavior
* Minions of Siamat are no longer chasing players and properly transform into clouds when possible instead of abruptly interrupting all actions
* Fixed an edge in which Siamat absorbed clouds but did not get his Gathered Storms effect
* Dropped all hacks
2021-01-26 23:19:02 +01:00
Ovahlord
9e50267eae
Scripts/LCT: fixed Siamat's availability check
2021-01-26 18:13:11 +01:00
Ovahlord
38b4485e09
Scripts/LCT: reworked High Prophet Barim encounter
...
* modernized code style
* corrected behaivior of Blaze of the Heaven
* improved Plague of Age's spread reliability so it wont target already infected players
2021-01-18 18:15:41 +01:00
Ovahlord
1edd5e8c12
Scripts/FL:
...
* corrected Clump Check functionality to reflect retail behaivior
* Leaping Flames will now prefer nontank targets if available
2020-11-25 15:16:09 +01:00
Ovahlord
aff2bad534
Scripts/FL: implement Majordomo Staghelm encounter
2020-11-25 10:07:37 +01:00
Ovahlord
7be90a5bc7
Scripts/FL: modernize instance script to latest standards
2020-11-25 10:07:36 +01:00
Ovahlord
754c138f89
Core/Spells: ported CastSpell unclusterfucking from 3.3.5 branch
2020-11-04 22:37:11 +01:00
Ovahlord
90e5e85afd
Core/Misc: updated a bunch of packets to packet class
2020-10-21 12:04:13 +02:00
Ovahlord
84760e8a10
Scripts/VP: fixed a warning
2020-09-28 19:39:08 +02:00
Ovahlord
df60a4d848
Scripts/VP: minor cleanups and improved Holwing Gale behaivior
...
* Howling Gale will no longer get stuck in combat when applying periodic damage effects on them
* When damaging a Howling Gale, the target will now stop casting any knockbacks for 10 seconds before slowly starting to build up again
2020-09-28 19:36:22 +02:00
Ovahlord
c9afa1a6ed
Core/Units: renamed SetInFront to SetOrientationTowards to clarify its actual functionality and added comments to SetOrientationTowards, SetFacingTo and SetFacingToObject
2020-09-23 20:48:44 +02:00
Ovahlord
e871d2f0eb
Fixed build
2020-09-11 15:23:53 +02:00
Ovahlord
d78cfb2843
Scripts/DS: corrected damage reduction formula logic for Elementium Blast
2020-09-10 15:02:31 +02:00
Warpten
2b2fc5fb8a
Core/Spells: remove PrepareSpellScript and PrepareAuraScript macros and make Hooklist use emplace behaivior ( #174 )
2020-08-28 15:40:26 +02:00
Shauren
44e0d6c0f9
Scripts/Spells: Replace RegisterAuraScript with RegisterSpellScript and remove it
2020-08-23 17:44:48 +02:00
Ovahlord
1507ca0179
Fixed build
2020-08-22 18:46:57 +02:00
Ovahlord
12a1f5ce6e
Scripts/DS: fixed a oversight in Concentration spell script that was causing Deathwing's focused limbs to get stuck in their flying anim tier state when the Concentration gets removed
2020-08-09 18:56:04 +02:00
Ovahlord
e334e60103
fixed warnings
2020-08-04 21:35:59 +02:00
Ovahlord
1fbd50db16
Scripts/ET:
...
* moved Nozdormu's script to a seperate file
* scripted Moruzond's respawn mechanism
2020-08-04 21:31:11 +02:00
Ovahlord
f42d242996
Core/Spells: implement and enable SMSG_MISSILE_CANCEL and use it in Murozond encounter
2020-08-04 16:53:59 +02:00
Ovahlord
d099e16acb
Scripts/ET: initial work on Murozond encounter
2020-08-04 11:43:53 +02:00
Ovahlord
f87eefafbf
Scripts/AQ40: fixed a warning
2020-07-25 18:31:30 +02:00
Ovahlord
929c71578f
Scripts/AQ40: fixed Skeram's door not opening after defeating him
2020-07-25 18:30:37 +02:00
Ovahlord
6961041d34
Scripts/AQ40: modernize instance script and nuke Ouro's script and scripted spawning sequence for him. This will make him at least attackable killable
2020-07-25 18:10:16 +02:00
Keader
b4ecbe3154
Scripts/Temple of Ahn Qiraj: Scripted doors of AQ40
...
Doors added in https://github.com/TrinityCore/TrinityCore/commit/1ba09572b5a49d5cd247cdca47109d3325ec12f3
# Conflicts:
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_bug_trio.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_cthun.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_fankriss.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/instance_temple_of_ahnqiraj.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/temple_of_ahnqiraj.h
2020-07-25 16:44:30 +02:00
Shauren
07099840db
Scripts: Fix rbac permission for skipping default boss sequencing check
...
# Conflicts:
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_drakkisath.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_gizrul_the_slavener.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_halycon.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_lord_valthalak.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_overlord_wyrmthalak.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_quartermaster_zigris.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_rend_blackhand.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_shadow_hunter_voshgajin.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_the_beast.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_urok_doomhowl.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/boss_warmaster_voone.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_azshir_the_sleepless.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_bloodmage_thalnos.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_herod.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_houndmaster_loksey.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_interrogator_vishas.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_mograine_and_whitemane.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_scorn.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_darkmaster_gandling.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_doctor_theolen_krastinov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_illucia_barov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_instructor_malicia.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_kirtonos_the_herald.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_lord_alexei_barov.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_lorekeeper_polkelt.cpp
# src/server/scripts/EasternKingdoms/Scholomance/boss_the_ravenian.cpp
# src/server/scripts/EasternKingdoms/ShadowfangKeep/shadowfang_keep.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_akilzon.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_halazzi.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_hexlord.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_janalai.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_nalorakk.cpp
# src/server/scripts/EasternKingdoms/ZulAman/boss_zuljin.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_arlokk.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_gahzranka.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_grilek.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_hakkar.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_hazzarah.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_jeklik.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_jindo.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_marli.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_renataki.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_thekal.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_venoxis.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_wushoolay.cpp
# src/server/scripts/Kalimdor/BlackfathomDeeps/boss_aku_mai.cpp
# src/server/scripts/Kalimdor/BlackfathomDeeps/boss_gelihast.cpp
# src/server/scripts/Kalimdor/CavernsOfTime/BattleForMountHyjal/boss_archimonde.cpp
# src/server/scripts/Kalimdor/RazorfenDowns/boss_amnennar_the_coldbringer.cpp
# src/server/scripts/Kalimdor/RazorfenDowns/boss_tuten_kash.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_ouro.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_sartura.cpp
# src/server/scripts/Kalimdor/TempleOfAhnQiraj/boss_twinemperors.cpp
# src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_amanitar.cpp
# src/server/scripts/Northrend/AzjolNerub/Ahnkahet/boss_jedoga_shadowseeker.cpp
# src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp
# src/server/scripts/Northrend/FrozenHalls/PitOfSaron/boss_krickandick.cpp
# src/server/scripts/Northrend/Gundrak/boss_eck.cpp
# src/server/scripts/Northrend/IcecrownCitadel/boss_sister_svalna.cpp
# src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp
# src/server/scripts/Northrend/Naxxramas/boss_grobbulus.cpp
# src/server/scripts/Northrend/Naxxramas/boss_loatheb.cpp
# src/server/scripts/Northrend/Naxxramas/boss_maexxna.cpp
# src/server/scripts/Northrend/Nexus/Oculus/boss_urom.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_algalon_the_observer.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_auriaya.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp
# src/server/scripts/Northrend/Ulduar/Ulduar/boss_xt002.cpp
# src/server/scripts/Northrend/VaultOfArchavon/boss_toravon.cpp
# src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_anzu.cpp
# src/server/scripts/Outland/Auchindoun/SethekkHalls/boss_darkweaver_syth.cpp
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_blackheart_the_inciter.cpp
# src/server/scripts/Outland/Auchindoun/ShadowLabyrinth/boss_grandmaster_vorpil.cpp
# src/server/scripts/Outland/BlackTemple/boss_gurtogg_bloodboil.cpp
# src/server/scripts/Outland/BlackTemple/boss_illidan.cpp
# src/server/scripts/Outland/BlackTemple/boss_illidari_council.cpp
# src/server/scripts/Outland/BlackTemple/boss_mother_shahraz.cpp
# src/server/scripts/Outland/BlackTemple/boss_supremus.cpp
# src/server/scripts/Outland/BlackTemple/boss_teron_gorefiend.cpp
# src/server/scripts/Outland/BlackTemple/boss_warlord_najentus.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_ahune.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_mennu_the_betrayer.cpp
# src/server/scripts/Outland/CoilfangReservoir/TheSlavePens/boss_rokmar_the_crackler.cpp
# src/server/scripts/Outland/HellfireCitadel/HellfireRamparts/boss_watchkeeper_gargolmar.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_gatewatcher_gyrokill.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_nethermancer_sepethrea.cpp
# src/server/scripts/Outland/TempestKeep/Mechanar/boss_pathaleon_the_calculator.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_dalliah_the_doomsayer.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_wrath_scryer_soccothrates.cpp
2020-07-24 13:08:04 +02:00
Treeston
d2df9bdf15
Scripts/Hyjal: Seriously, who calls EnterEvadeMode in a AI constructor????
2020-07-22 19:21:03 +02:00
Treeston
c7c4f267c4
Core/AI: Finally move the "is creature engaged" flag to be a property of the creature AI, where it honestly always belonged. Fixes #17981 and #23602 for real this time.
2020-07-22 19:14:52 +02:00
Treeston
db3282e65a
Combat/Threat: Split ThreatManager::NotifyDisengaged off from ThreatManager::ClearAllThreat. NotifyDisengaged signifies intent to clear the engagement flag, and should only be called from AI. Fixes #23490 .
...
# Conflicts:
# src/server/game/AI/CreatureAI.cpp
# src/server/game/AI/ScriptedAI/ScriptedFollowerAI.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter5.cpp
# src/server/scripts/Kalimdor/zone_desolace.cpp
# src/server/scripts/Northrend/zone_borean_tundra.cpp
2020-07-22 18:38:35 +02:00
Ovahlord
de6a514ec5
Core/Misc: fixed build
2020-07-22 18:35:41 +02:00
Treeston
d9e6e82c7d
Core/Unit: UNIT_FLAG renames
...
[UNIT_FLAG_PLAYER_CONTROLLED -> UNIT_FLAG_POSSESSED]
[UNIT_FLAG_PVP_ATTACKABLE -> UNIT_FLAG_PLAYER_CONTROLLED]
Signed off by: Shauren, Warlockbugs.
# Conflicts:
# src/server/game/Entities/Object/Object.cpp
# src/server/game/Entities/Pet/Pet.cpp
# src/server/game/Entities/Unit/UnitDefines.h
# src/server/game/Spells/Auras/SpellAuraEffects.cpp
# src/server/game/Spells/Spell.cpp
2020-07-22 17:32:51 +02:00
Treeston
942c3a77da
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 .
2020-07-22 16:49:37 +02:00
treeston
a09db6b4ba
Hi, I'm Treeston, and welcome to Combat PR Prep Refactors.
...
Today, we're moving UNIT_FLAG_IMMUNE_TO_PC and UNIT_FLAG_IMMUNE_TO_NPC to higher-level abstraction so combat manager can react to it.
New methods on Unit:
- void SetImmuneTo<All/PC/NPC>(apply, keepCombat = false);
- bool IsImmuneTo<All/PC/NPC>() const;
# Conflicts:
# src/server/game/AI/ScriptedAI/ScriptedEscortAI.cpp
# src/server/game/Entities/Unit/Unit.cpp
# src/server/game/Spells/SpellEffects.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_tomb_of_seven.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp
# src/server/scripts/EasternKingdoms/ScarletEnclave/chapter2.cpp
# src/server/scripts/EasternKingdoms/ShadowfangKeep/instance_shadowfang_keep.cpp
# src/server/scripts/EasternKingdoms/ZulAman/zulaman.cpp
# src/server/scripts/EasternKingdoms/ZulGurub/boss_mandokir.cpp
# src/server/scripts/EasternKingdoms/zone_tirisfal_glades.cpp
# src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp
# src/server/scripts/Kalimdor/WailingCaverns/wailing_caverns.cpp
# src/server/scripts/Kalimdor/zone_dustwallow_marsh.cpp
# src/server/scripts/Kalimdor/zone_stonetalon_mountains.cpp
# src/server/scripts/Kalimdor/zone_tanaris.cpp
# src/server/scripts/Northrend/IcecrownCitadel/icecrown_citadel.cpp
# src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
# src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
# src/server/scripts/Outland/TempestKeep/arcatraz/boss_harbinger_skyriss.cpp
2020-07-22 14:35:53 +02:00
treeston
f2592116ae
Some more refactoring prep for combat/threat ( #19930 ).
...
# Conflicts:
# src/server/game/Combat/ThreatManager.h
# src/server/scripts/Kalimdor/RuinsOfAhnQiraj/boss_moam.cpp
# src/server/scripts/Northrend/FrozenHalls/HallsOfReflection/halls_of_reflection.cpp
2020-07-22 13:48:18 +02:00
Treeston
ec04d3b2cd
[3.3.5] Combat/Threat rewrite - prep & refactor ( #19966 )
...
* Combat/Threat rewrite (PR #19930 ) prep work. Mostly refactors, and a compatibility layer on ThreatManager/HostileReference that allows scripts to be changed already.
2020-07-22 13:43:23 +02:00
Ovahlord
e1d74d4dc6
Core/Misc: added more fallthrough attributes and added some missing breaks reported by CI
2020-07-19 12:24:58 +02:00
Peter Keresztes Schmidt
cbd6fb2315
Build: Enable -Wimplicit-fallthrough on clang ( #25056 )
...
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs
Related: #25006
* Misc: Add some missing breaks (no-ops) to satisfy clang
Related: #25006
Closes #25055
* Build: Enable -Wimplicit-fallthrough on clang
Closes #25006
# Conflicts:
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Spells/SpellInfo.cpp
# src/server/scripts/Battlefield/BattlefieldWG.cpp
# src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp
# src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
# src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp
# src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
# src/server/shared/DataStores/DBCDatabaseLoader.cpp
2020-07-18 22:47:52 +02:00
Ovahlord
f8091d6aac
Core/Movement: made SetDisableGravity and SetHover virtual and handle anim tiers in their new override inside of the Creature class.
...
* no longer set anim tiers when the target is rooted
2020-07-13 14:07:59 +02:00
Ovahlord
fac96b99b5
Scripts/TotFW: removed far visible and setActive calls as the new aoi types now handle this
2020-07-13 12:09:00 +02:00
Ovahlord
0ce8d44288
Scripts/LCT: reworked General Husam encounter
...
* corrected timer layout
* corrected timers for Bad Intention hurls and Shockwave damage
* corrected movement speed and distance values for the Shockwave dummy npcs
* dropped unneeded creature scripts
* moved encounter related creatures that were scripted in SAI to C++ for consistency
* updated all scripts to modern model
2020-07-09 19:08:26 +02:00
Ovahlord
14f3143f76
Scripts/HoO: simplified GetHallsOfOriginationAI helper to support multiple object types in one method
2020-07-09 14:53:38 +02:00
Ovahlord
c0eae1322b
Scripts/DS: removed a debug output from Madness of Deathwing script
2020-07-07 14:28:54 +02:00
Ovah
b09d6e2330
Core/Movement: reimplement follow movement ( #124 )
2020-06-26 21:22:21 +02:00
Warpten
0af44ccc01
Core/Spells: implement DoT clipping
...
* Core/Spells: Implementation of DoT clipping.
* Core/Utilities: Backport "EnumFlags v3.0" from master.
* Core/Spells: Switch AURA_REMOVE_MODE to a flag set.
2020-06-04 18:16:03 +02:00
Ovahlord
b8d53951b5
Scripts/VP: rewrite Lurking Tempest mechanics and fixed all scenarios in which players could get stuck in combat with the tempests
2020-06-04 01:52:03 +02:00
Warpten
5cb747620a
Core/Movement: Fixed Animation Tier handling ( #113 )
2020-06-03 00:49:18 +02:00
Ovahlord
e64a3bcd90
Scripts/HoO: implement Ammunae encounter
2020-05-04 00:14:06 +02:00