Commit Graph

29647 Commits

Author SHA1 Message Date
Shauren
814c5c3a4b Dep/fmt: Upgrade to 10.2.1
(cherry picked from commit 2aedd8ecdb)
2024-05-28 16:49:58 +02:00
Meji
63931da5ff Core/Creatures: Ignore validation of AppearanceModId 0 in equipment (#29916)
(cherry picked from commit 22e657eac1)
2024-05-28 16:49:54 +02:00
Meji
a0958831c8 Core/Creatures: Allow profession tools to be used as equipment (#29915)
(cherry picked from commit 2238844f56)
2024-05-28 16:49:49 +02:00
Ovahlord
228ae7e885 Core/Combat: reset the ThreatManager update interval upon engaging the creature and move ThreatClear packet sending into the update cycle to mimic retail behavior (#29949)
(cherry picked from commit 24bda9c73d)
2024-05-28 16:49:26 +02:00
Shauren
2ceae541cc Core/Misc: Minor fixes in preparation to support fmt v10
(cherry picked from commit 39fc9f8000)
2024-05-28 16:49:12 +02:00
Shauren
3cf1aaaf56 Core/Misc: Refactor loading process to remove exit() calls that cause deadlocks because threads are terminated without proper cleanup
(cherry picked from commit 8e3024a96a)
2024-05-28 16:47:32 +02:00
Shauren
beb9b4607d Core/Proto: Regenerate LoginResult to include next_url
(cherry picked from commit 9dcc6c0207)
2024-05-28 16:45:49 +02:00
Phaneron
59798e3319 Core/Proto: Added missing 'next_url' field to Login.proto
(cherry picked from commit e32ef420fa)
2024-05-28 16:45:45 +02:00
Ovahlord
ffac60879b Core/Creatures: moved combat pulse into heartbeat handling and implemented CREATURE_STATIC_FLAG_2_FORCE_PARTY_MEMBERS_INTO_COMBAT (#29946)
(cherry picked from commit 11f32a2427)
2024-05-28 16:45:41 +02:00
Shauren
33eb662bcc Scripts/Items: Updated Amalgam's Seventh Spine script - fixed auras lingering after removal and added new case for evokers
(cherry picked from commit 250984a7b7)
2024-05-28 16:45:37 +02:00
Ovahlord
cbc6aed437 Core/Auras: Implemented OnHeartbeat AuraScript hook and refactored an aurascript to use it as example (#29945)
* Updated Amalgam's Seventh Spine dummy aura script to use the new AuraScript hook

(cherry picked from commit 55ce5b150f)
2024-05-28 16:45:30 +02:00
Ovahlord
4de6799403 Core/Units: moved Vignette updating into Heartbeat handling
(cherry picked from commit 253f306a41)
2024-05-28 16:45:26 +02:00
Ovahlord
42a5176190 Core/Auras: implemented PROC_FLAG_HEARTBEAT and moved food/drink emote mechanic into heartbeat handling (#29943)
* also fixed an false assumption that only one of the food emotes can be played. They can in fact be both done at the same time.

(cherry picked from commit d60b4e5b19)
2024-05-28 16:45:22 +02:00
Ovahlord
f280117358 Core/Creature: implement overriding creature static flags based on spawnId and difficultyId (#29940)
(cherry picked from commit b5ce4a66df)
2024-05-28 16:45:11 +02:00
Aqua Deus
2ee8c63d93 Scripts/Spells: Fix Crusader's Might cooldown reduction effect (#29938)
(cherry picked from commit a361d3f587)
2024-05-28 16:45:07 +02:00
Ovahlord
69778a4414 Core/Player: moved indoors/outdoors aura interrupting mechanic into heartbeat and movement handling
(cherry picked from commit 5a169f6eae)
2024-05-28 16:45:03 +02:00
Ovahlord
f7ea6f55dc Core/Units: moved cyclic spline synchronization mechanic heartbeat handling
(cherry picked from commit c2fedbb6cc)
2024-05-28 16:44:59 +02:00
Ovahlord
c4684fb2d6 Core/Player: moved the periodic group update mechanic into heartbeat handling
(cherry picked from commit 80d72a2c91)
2024-05-28 16:44:55 +02:00
Ovahlord
2a5733d0b1 Core/Objects: implement internal heartbeat timer for WorldObjects (#29941)
This is the first step of porting the functionality of #25822 by cutting each change into a nicely self-contained commit

---------

Co-authored-by: Mykhailo Redko <ovitnez@gmail.com>
(cherry picked from commit bf9cd88ceb)
2024-05-28 16:44:51 +02:00
Shauren
0d65725551 Core/Movement: Migrate scripts using GetMotionMaster()->MoveSmoothPath to GetMotionMaster()->MovePath and kill it (they now have the same capabilities)
(cherry picked from commit dad976beb4)

# Conflicts:
#	src/server/scripts/BrokenIsles/zone_orderhall_warrior.cpp
2024-05-28 16:44:37 +02:00
Shauren
b7677bf211 Core/Movement: Enable Catmullrom spline flag by default for flying waypoint paths
(cherry picked from commit e0e1b6a409)
2024-05-28 16:44:26 +02:00
Shauren
86fb1fc161 Core/Movement: Fixed spline packed deltas validation check
(cherry picked from commit ad6ef5237d)
2024-05-28 16:44:22 +02:00
Shauren
a0a6f9563c Build fix for clang <= 14
(cherry picked from commit 5f31d7cb88)
2024-05-28 16:44:17 +02:00
Shauren
6be8724264 Core/Movement: Change default spline flags - Steering replaces SmoothGroundPath
(cherry picked from commit 3af5cafec7)
2024-05-28 16:44:14 +02:00
Shauren
d4e18bdef4 Core/Movement: Refactor MoveSplineFlag to get rid of undefined behavior (cast in raw()) and unify enum to string formatting for it
(cherry picked from commit a02804fa02)
2024-05-28 16:44:09 +02:00
Shauren
10df0cba8e Core/Units: Name new spline flag and linked npc flag
(cherry picked from commit 8c0b031c07)
2024-05-28 16:43:58 +02:00
Shauren
78805e49c0 Core/Misc: Support boost 1.85
(cherry picked from commit cfa838df5d)
2024-05-28 16:43:54 +02:00
Aqua Deus
3f6153f9d9 Scripts/Spells: Add new script for spells with feign death with all flags except uninteractible (#29922)
(cherry picked from commit f4ef6f769b)
2024-05-28 16:43:50 +02:00
ModoX
4a18194fc0 Core/Movement: Fixed data sent in cyclic spline related packets
(cherry picked from commit a28facb956)
2024-05-28 16:43:38 +02:00
Shauren
cbcbe5d965 Core/Movement: Switch to uncompressed paths in spline packets automatically when too large or too small delta between points is detected
(cherry picked from commit 377b51f768)
2024-05-28 16:43:34 +02:00
Shauren
1c565c0db1 Core/Movement: Implemented alternative method of smoothing waypoint paths (send new point 1.5 before arrival) and make that the default
* Sending whole path at once is still supported with WaypointPathFlags::ExactSplinePath

(cherry picked from commit cf1ab7b414)
2024-05-28 16:43:31 +02:00
ModoX
2a84a9e090 Core/Spells: Fixed SpellInfo::GetSpellXSpellVisualId for nonplayer casters (#29927)
(cherry picked from commit 8d8a54db25)
2024-05-28 16:43:22 +02:00
Shauren
3241bcfdce Core/Movement: Merge waypoints without delay into a single movement packet
(cherry picked from commit 204f65684c)
2024-05-28 16:43:17 +02:00
Shauren
0cea1c1dfb Core/Movement: Added functions to MoveSplineInit to enable steering flag
(cherry picked from commit cf4c3b5467)
2024-05-28 16:43:13 +02:00
Shauren
651f71b138 Core/Movement: Store delay in WaypointNode as Milliseconds instead of raw integer and revert c5097114d1
(cherry picked from commit e1f43900d1)
2024-05-28 16:43:09 +02:00
Shauren
8f50096d92 Core/Movement: Minor cleanup in WaypointMovementGenerator - local variable for GetPath() (not a true trivial accessor)
(cherry picked from commit ff9db332f5)
2024-05-28 16:43:05 +02:00
Shauren
d5d90d7849 Core/Movement: Fixed pauses on waypoint movement happening at wrong times when FollowPathBackwardsFromEndToStart is set and creature is going from end to start
(cherry picked from commit c5097114d1)
2024-05-28 16:43:01 +02:00
Shauren
b1c0c0a5ce Core/Movement: Minor refactors in WaypointMovementGenerator
* Removed unneccessary _loadedFromDB member (handled by variant index already)
* Apply some const
* Replace stringstream formatting in GetDebugInfo with Trinity::StringFormat
* Moved MovementGeneratorCreator::Create implementations to source files whose movement they create

(cherry picked from commit b5dceafad7)
2024-05-28 16:42:57 +02:00
Shauren
6ab79caf0f Core/Pathfinding: Allow using PathGenerator with any source location, not only objects current position
(cherry picked from commit e5beb25d25)
2024-05-28 16:42:54 +02:00
Jeremy
d80fb502f6 Scripts/Battlegrounds: Implement Twin Peaks (#29924)
Closes #8894

(cherry picked from commit 091094aa13)
2024-05-28 16:42:50 +02:00
Shauren
a57e30b1f5 Core/Achievements: Fixed achievement SMSG_ACHIEVEMENT_EARNED not being sent to self
(cherry picked from commit 0384d90663)
2024-05-28 16:42:41 +02:00
Shauren
9fd90aaa4f Core/SAI: Implement waiting for actions on action list to finish before continuing the action list
This is enabled by setting event_flags to SMART_EVENT_FLAG_ACTIONLIST_WAITS on the action that is waited for

Supported actions:
* SMART_ACTION_TALK
* SMART_ACTION_SIMPLE_TALK
* SMART_ACTION_CAST
* SMART_ACTION_SELF_CAST
* SMART_ACTION_INVOKER_CAST
* SMART_ACTION_MOVE_OFFSET
* SMART_ACTION_WP_START
* SMART_ACTION_MOVE_TO_POS
* SMART_ACTION_CROSS_CAST
* SMART_ACTION_ACTIVATE_TAXI
* SMART_ACTION_JUMP_TO_POS
* SMART_ACTION_START_CLOSEST_WAYPOINT

(cherry picked from commit 5dfac0ef14)
2024-05-28 16:42:31 +02:00
Shauren
998068e8ec Core/Conditions: Added startup error log for conditions using invalid effect index on CONDITION_AURA
(cherry picked from commit 325cfd047d)
2024-05-28 16:42:22 +02:00
Shauren
139d80373d Core/Items: Implemented CreateTime item field and changed refund/soulbound trade timers to also count time offline
(cherry picked from commit 69da702b93)

# Conflicts:
#	sql/base/characters_database.sql
2024-05-28 16:41:52 +02:00
Gosha
a1d892195f Core/Items: Fix loading secondaryItemModifiedAppearanceSpec5 (#29917)
(cherry picked from commit 8c274a8e8d)
2024-05-28 16:41:30 +02:00
Shauren
8b6df512bb Core/Spells: Fixed TARGET_UNIT_AREA_THREAT_LIST and TARGET_UNIT_AREA_TAP_LIST
(cherry picked from commit 66abcaff14)
2024-05-28 16:41:09 +02:00
Meji
2c56ee9ce1 Core/SAI: Added support for StringIds to creature and gameobject targets (#29910)
Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 2ce4068459)
2024-05-28 16:40:53 +02:00
Shauren
125b6d2ed7 Core/Entities: Fixed m_stringIds[0] invalidation when reloading creature_template with a gm command
(cherry picked from commit bec5bdb61b)
2024-05-28 16:40:48 +02:00
ModoX
32243eb1c1 Core/Entities: Added possibility to inherit StringIds from other entities (#29908)
* also implicitly do so for personal summons

(cherry picked from commit 88bbd27f8d)
2024-05-28 16:40:42 +02:00
Shauren
2d1c2c79ab Core/DBLayer: Support retrieving DATE/DATETIME/TIMESTAMP column values directly without casting in sql
(cherry picked from commit 404bb5b3c2)
2024-05-28 16:40:35 +02:00