Commit Graph
688 Commits
Author SHA1 Message Date
Shauren a4aa09de52 Core/Creatures: Implemented CREATURE_STATIC_FLAG_2_ALLOW_MOUNTED_COMBAT and overriding default mount from creature addon 2025-03-15 07:07:31 +01:00
offl 4d3b24251d Core/Creatures: moved many Feign Death flags to auras 2025-03-12 18:58:19 +01:00
Meji d0c902ce1f Core/Creatures: Drop dynamic flags from creature and creature_template 2025-03-11 21:29:30 +01:00
Ovahlord 40b206991f Core/Creatures: implement overriding static flags by spawnId and difficulty 2025-03-11 18:47:37 +01:00
ModoX d4804d609d Core/Creature: Allow creature table to override npc- and unitflags to 0 2025-03-11 17:35:41 +01:00
Ovahlord 7ece100da8 Core/Creature: removed a duplicate application of CREATURE_STATIC_FLAG_4_NO_BIRTH_ANIM 2025-03-10 18:26:08 +01:00
Ovahlord f46b6f0797 Core/Units: removed the packetOnly parameter from several movement flag setters 2025-03-10 17:43:42 +01:00
Ovahlord 2953efb7a3 Core/Movement: ported most movement updates from master branch and corrected behavior of CREATURE_STATIC_FLAG_4_PREVENT_SWIM 2025-03-09 20:49:41 +01:00
Ovahlord f9425284ca Core/Units: updated power regeneration handling to get closer to the master version of it 2025-03-09 10:30:07 +01:00
Ovahlord e8588fd5ba Core/Objects: ported Heartbeat implementation fron master branch 2025-03-09 02:40:05 +01:00
Ovahlord 352ce7e1b3 Core/Combat: reset the ThreatManager update interval upon engaging the creature and move ThreatClear packet sending into the update cycle to mimic retail behavior 2025-03-09 00:40:56 +01:00
Ovahlord 6b67cd773e Core/Objects: replaced ObjectUpdateFlags with CreateObjectBits to get closer to how master branch handles their bits 2025-03-09 00:26:00 +01:00
Ovahlord 0927c5af40 Core/Misc: backported most boost changes from master branch 2025-02-27 23:47:52 +01:00
Shauren b5ec59a07e Core/Units: Power handling improvements 2023-12-18 10:02:19 +01:00
Ovahlord 924273363f Core/Pets: ported a couple changes from 3.3.5 branch that went missing and corrected a master branch spell check that was allowing non-charmed player controlled units to bypass the ai movement check exception (pets are not meant to be charmed, only controlled) 2023-12-17 05:17:57 +01:00
Meji 56077b35c3 Core/Creatures: Improved movement interruption while casting spells 2023-10-21 20:41:40 +02:00
funjoker df32b341a5 DB/Creatures: Port master model system
Fixes incorrect displayid for creatures, due to probability
2023-09-15 23:52:51 +02:00
Ovahlord 58302441a2 Core/Creatures: implement CREATURE_STATIC_FLAG_DESPAWN_INSTANTLY 2023-08-27 19:52:09 +02:00
Ovahlord d1e59764da Core/Creatures: implement CREATURE_STATIC_FLAG_4_NO_BIRTH_ANIM 2023-08-27 18:35:02 +02:00
Ovahlord ff575bcef0 Core/Creatures: ported all existing static flag implementations from master branch 2023-08-27 17:16:18 +02:00
Ovahlord 5f808b5247 Core/Entities: modernized several pointers and arrays in Player, Unit and Creature classes 2023-07-08 17:55:25 +02:00
Ovahlord 7d646a7ed2 Core/Creatures: Split creature_addon and creature_template_addon's byte columns into seperate ones
* Instead of dumping raw byte values into these fields, we now only allow setting values which should be accessible to database devs. The remaining byte values should be handled by core internals and spells (pet talents and shapeshifting for example)
2023-01-10 16:23:21 +01:00
Shauren 0f0b283168 Core/Pools: Implemented pooling for instances 2022-12-29 11:56:56 +01:00
ratkosrb 122b52b079 Core/Creature: Use proper name for wander distance 2022-12-20 15:48:37 +01:00
Shauren 21e9854686 Core/Maps & Extractors: Move copypasted map file headers into a single shared file and replace #defines with enums 2022-10-07 22:16:46 +02:00
Ovahlord 566b77387d Core/Creatures: simplified and fixed logic in Creature::IsMovementPreventedByCasting 2022-10-03 20:37:11 +02:00
Ovahlord 09a1987286 Core/Spells: greatly simplified spell focusing based on new attributes implementations and fixed up interrupt flag checks for movement based interrupts 2022-10-03 16:10:06 +02:00
Shauren c3b52fd29f Core/Auras: Improve aura interactions with immunities on spell effect level
* Effects that target is immune to will be suppressed instead of completely removed
2022-09-30 12:49:31 +02:00
Shauren dfc6fe6450 Core/Spells: Cleanup movement checks in spells - use correct interrupt flags 2022-09-30 11:02:52 +02:00
Shauren d1700ba5fa Core/Spells: Rename SpellAttr5 to use official attribute names
* Implemented SPELL_ATTR8_HASTE_AFFECTS_DURATION
2022-09-30 01:30:14 +02:00
Shauren a7dc339a6a SHA-1: 8d16a79dea4c0100d36e13b068c42499a3a48154
* Core/Spells: Rename SpellAttr4 to use official attribute names

* Corrected implementation of SPELL_ATTR4_CLASS_TRIGGER_ONLY_ON_TARGET
* Implemented SPELL_ATTR4_NO_HELPFUL_THREAT
* Implemented SPELL_ATTR4_NO_PARTIAL_IMMUNITY
* Implemented SPELL_ATTR4_ALLOW_PROC_WHILE_SITTING
* Implemented SPELL_ATTR4_USE_FACING_FROM_SPELL
* Implemented SPELL_ATTR4_BOUNCY_CHAIN_MISSILES
* Implemented SPELL_ATTR4_AURA_NEVER_BOUNCES
* Implemented SPELL_ATTR4_AURA_BOUNCE_FAILS_SPELL
* Implemented SPELL_ATTR4_AURA_IS_BUFF
* Implemented SPELL_ATTR5_MELEE_CHAIN_TARGETING

* Implemented SpellEffectAttributes::ChainFromInitialTarget
2022-09-30 01:16:39 +02:00
Shauren ca7d36873f Core/Spells: Rename SpellAttr1 to use official attribute names
* Implemented SPELL_ATTR1_NO_SKILL_INCREASE, SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT, SPELL_ATTR1_DISPEL_ALL_STACKS
2022-09-12 09:15:31 +02:00
ariel- b6fac86b71 Core/Spells: rework part 5: GameObject casting 2022-09-12 09:15:14 +02:00
ariel- 276d6e49f1 Core/Entities: killed Creature::SetInCombatWithZone and replaced with AI version
Closes #12108 (again)

(cherry picked from commit 7c9722a4ae08b5f283f6a085a411e37604a7da9f)

# Conflicts:
#	src/server/game/AI/SmartScripts/SmartScript.cpp
#	src/server/game/Entities/Creature/Creature.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockDepths/boss_coren_direbrew.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/boss_nefarian.cpp
#	src/server/scripts/EasternKingdoms/BlackrockMountain/BlackwingLair/instance_blackwing_lair.cpp
#	src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_northrend_beasts.cpp
#	src/server/scripts/Northrend/Nexus/EyeOfEternity/boss_malygos.cpp
#	src/server/scripts/Northrend/Ulduar/Ulduar/boss_razorscale.cpp
#	src/server/scripts/Northrend/Ulduar/Ulduar/boss_yogg_saron.cpp
#	src/server/scripts/Northrend/VaultOfArchavon/boss_toravon.cpp
#	src/server/scripts/Outland/BlackTemple/boss_illidan.cpp
2022-09-12 09:15:09 +02:00
Ovahlord fd27f0020d Core/Units: defined all faction template flags and properly implemented FactionTemplateFlags::HatesAllExceptFriends
*refactored FactionTemplateEntry helpers to use pointers instead of references since we use datastore pointers in all cases so there is no need to create references
2022-08-10 20:28:47 +02:00
Ovahlord 9ea4f3914d Core/Creatures: always remove UNIT_STATE_FOCUSING when releasing spell focus regardless of the spell's attributes to prevent soft-locking a creatures's orientation 2022-07-02 18:15:16 +02:00
Shauren 25465699f7 Core/GameObjects: Transport (type 11) improvements
* Fully synchronize serverside animation progress with client
* Implemented updating passenger positions on elevators
* Removed visibility hack for elevators that always forced CreateObject packet to be sent to client
2022-06-18 21:36:17 +02:00
Ovahlord 2443d48081 Core/Creatures: no longer restore stored orientation values after a spell focus expires since there is no evidence, that this is ever being used on retail 2022-03-29 21:46:16 +02:00
Chaouki Dhib 17c4d8f6d9 Core/Spells: fix wrong distance calculations in AoE spells [Needs testing] (#16290)
Core/Spells: Fix wrong distance calculations in AoE spells.
Pull request #16290 by chaodhib.
God bless, finally.

(cherry picked from commit a1f2f30c145f6ad9c4baeffeff32618e71ff537c)
2022-02-16 04:49:24 +01:00
xinef1 df9738aaa9 Core/Misc: Fixed player corpse looting, added player corpse loot and some more (#19122)
* Fixed corpse looting in wintergrasp
Added corpse loot for wintergrasp quests and To the Looter Go the Spoils (1166) achievement
Don't generate money for loot if no loot mode is available
Simplified few things

(cherry picked from commit 2412886ef69d305df1bd6e6422ca3134c0ab1449)
2022-02-16 04:49:24 +01:00
xinef1 f431459063 Core/Creatures: Various fixes for creatures, regarding combat conditions, despawning, and few others (#18998)
* Made some changes to kiting mechanics, simplified code and made taunt auras prolong combat no matter the distance from the spawn
Unified some creature despawning code, removed some brutal direct calls in scripts
Don't play death anim on forced despawn
Removed some redundant visibility changes on creature despawn
Fixed possible problem with pet initializing template info from difficulty greater than normal
Properly keep UNIT_FLAG_IN_COMBAT on UpdateEntry call
Moved RegenerateMana function to general Regenerate(Power) function
Fixed increased health regeneration from polymorph for pets
Implemented CREATURE_TYPE_FLAG_GHOST_VISIBLE, those creatures will be properly seen when player is dead also
Removed hackfix from Gaeriyan and Franclorn Forgewright, fixed properly
Simplified ForcedRespawnTime code in ForcedDespawn
Do not allow to assist unit while evading or when enemy is evading
Do not allow to attack other units when evading or when the unit is evading
Corrected distance checking code before creature is allowed to evade, should fix some common problems
Properly return summon position for summoned creatures as their respawn position
Properly stop all moving units on gossip hello, no matter their npc flags

(cherry picked from commit e1f14215d86fc9f0cd041f0e87bf0a689c086329)
2022-02-16 04:49:24 +01:00
Shauren f2b4f2208e Core/Objects: ported master branch handling for properly destroying objects via out of range and destroy object opcode
# Conflicts:
#	src/server/game/Entities/Creature/Creature.cpp
2022-02-02 16:24:42 +01:00
ariel- af98e8516c Core/Auras: reworked multiplicative AuraEffects calculation 2021-11-28 12:14:05 +01:00
Ovahlord 2c70d98449 warning fix² 2021-11-11 17:59:45 +01:00
Ovahlord 5ca475a764 Core/Movement: split SetCanFly for player and creature class and handle their part accordingly 2021-11-10 13:53:14 +01:00
Ovahlord edbbeba5a2 Core/Movement: ported client control logic updates from 335 branch 2021-11-06 23:41:34 +01:00
Ovahlord 7a602d4b44 Core/Creatures: apply database defined movementflags on (re)spawn and on reaching home only
This allows manipulating movementflags without having to block everything via CREATURE_FLAG_EXTRA_NO_MOVE_FLAGS_UPDATE
Yo @keader that flag is your fuckery. gimme feedback
2021-10-31 10:52:45 +01:00
Ovahlord 217299beed Core/Creatures: improved movement flag updating for creatures by taking db values more serious 2021-10-30 22:12:01 +02:00
Ovahlord d3da33dff0 Core/Creatures: store the original entry of a creature instead of the current one as creatures may change their entry during runtime 2021-10-30 15:41:47 +02:00
Ovahlord b10f962ba3 Core/Creatures: several cleanups and improvements to spell focusing to reduce edge case issues 2021-10-21 13:18:24 +02:00