Commit Graph

3095 Commits

Author SHA1 Message Date
avarishd
7d08758f1f fix(Core/Totem): Totems shouldn't be immune to intervene. (#19372)
* fix(Core/Totem): Totems shouldn't be immune to intervene

* cs is my enemy
2024-07-09 14:39:05 -03:00
Jelle Meeus
ee4d728573 fix(Core/Pets): Correct Pet size for pets 3 (#19319)
* revert

* override maxScale for some families

add more families

sort

* add turtle
2024-07-09 14:16:30 -03:00
sudlud
37e3d89f91 fix(CI): linux-build: add -Werror parameter (#19240)
* fix(CI): linux-build: add -Werror parameter

* add KI

tzunu

* Revert "feat(CI): enable fail-fast for pch/nopch (#19058)"

This reverts commit 564cbca7d3.

* Update midsummer.cpp - drop unused variable

* initialize variable

* Update core-build-nopch.yml - drop gcc12

* fix(Core/CalendarMgr): do not use element after delete, but before

* attempt to fix Socket.h error

* Revert "attempt to fix Socket.h error"

This reverts commit c1a59145ed3c49d0f76be2f81925434ea969db97.

* fix Socket.h error - attempt 2

* Update Socket.h

* Update Socket.h

* npc_shattrath_daily_quest: init variable templateID

* fix(Scripts/Karazhan): use size_t within loop in boss_shade_of_aran:Reset()

* boss_archimonde: drop unused variable

* Revert "fix(Scripts/Karazhan): use size_t within loop in boss_shade_of_aran:Reset()"

This reverts commit 1f71aaef256990c5cdc16561676be302c954ea9d.

* SmartScripts: SMART_TARGET_RANDOM_POINT: fix unintended fallthrough

* Revert "Revert "feat(CI): enable fail-fast for pch/nopch (#19058)""

This reverts commit d13df293624e0f50d9374272bfd05ab56242511d.

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-07-07 22:00:24 +02:00
avarishd
3db58e7086 fix(Core/Spells): Greater Fireball should ignore resistances (#19326)
* fix(Core/Spells): Greater Fireball should ignore resistances

* SPELL_ATTR4_IGNORE_ALL_RESISTANCES

* Revert "SPELL_ATTR4_IGNORE_ALL_RESISTANCES"

This reverts commit 2480fac3d5b295121a79989b4257ab990fd90f5e.
2024-07-07 18:59:59 +02:00
Kitzunu
ebf5f6710a feat(Core/Chat): Provide a fully-formed protocol for addons to intera… (#19305)
* feat(Core/Chat): Provide a fully-formed protocol for addons to interact with GM commands

* Send success/fail state, allow interleaving, and indicate end of output. Add framework for supporting non-human-readable output in commands.

* cherry-pick commit (508c9d2fc1)

This PR implements a well-formed protocol for addons to communicate with the server, outlined below:

- All communication happens over the addon channel (`LANG_ADDON` in terms of the core, `CHAT_MSG_ADDON`/`SendAddonMessage` for the client). The prefix used for all messages is `AzerothCore` (in client terms - in core terms, every message starts with `AzerothCore\t`).
- In each message, the first character is the opcode. The following four characters are a unique identifier for the invocation in question, and will be echoed back by the server in every message related to that invocation. Following is the message body, if any.
- The following opcodes are supported:
    - Client to server:
        - `p` - Ping request. The core will always respond by ACKing with the passed identifier. No body.
        - `i` or `h` - Command invocation. The message body is the command text without prefix. `i` requests machine-readable output, `h` requests human-readable.
    - Server to client:
        - `a` - ACK. The first message sent in response to any invocation (before any output). No body.
        - `m` - Message. Sent once per line of output the server generates. Body = output line.
        - `o` - OK. Indicates that the command finished processing with no errors. No body.
        - `f` - Failed. Indicates that command processing is done, but there was an error. No body.

Expected overhead is minimal, and this integrates seamlessly with existing command scripts (no changes necessary).

PS: There's also a client-side addon library that exposes this protocol in a developer-friendly way over at https://github.com/azerothcore/LibAzerothCore-1.0

---------

Co-authored-by: Treeston <14020072+Treeston@users.noreply.github.com>
2024-07-06 19:13:24 +02:00
Kitzunu
3c50b1a135 fix(Core/Player): Vertical Message distance (#19302)
* cherry-pick commit (297541e9c9)

* Get rid of unused param

* Merge SendMessageToSetInRange_OwnTeam into SendMessageToSetInRange

Co-authored-by: Badgersson <83663557+dekz120@users.noreply.github.com>
2024-07-06 10:05:34 -03:00
Kitzunu
f42ed2efa5 feat(Core/SAI): SetData now has invoker (#19296)
* cherry-pick commit (cfc77fd843)

* cherry-pick commit (beb333738d)

* Move IsSmart function from headerfile

Co-authored-by: Treeston <14020072+Treeston@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
2024-07-06 13:46:10 +02:00
Kitzunu
fc8b67bbe4 chore(Scripts/Commands): QOL server debug (#19297)
* chore(Scripts/Commands): QOL server debug

* England

* might as well do updatetime while we are at it. Consistency right?

* Hey let's sneak this ENGLAND in
2024-07-06 01:18:38 +02:00
Anton Popovichenko
04acfd96a0 fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick. (#19287)
* fix(Core/Unit): Invalidate update object cache when changing health in the same world update tick.

Should fix an issue when the client sees dead NPCs when they are not.

* Fix styling

* Another codestyle fix
2024-07-05 15:42:22 -03:00
Gultask
89a6996628 fix(Scripts/SmartAI): Rewrite ACTION_MOVE_TO_POS (#19190)
* init

* Update SmartScript.cpp

* combatReach

* Update SmartScript.cpp
2024-07-05 15:07:56 -03:00
Benjamin Jackson
620c40b010 fix(Core/Handlers): Adjust start swing handler. (#19267)
* Init.

* Flesh out packet info.

https: //github.com/TrinityCore/TrinityCore/commit/af6d207addfef177fb5ac3e7fa61ec93ced83d16
Co-Authored-By: ForesterDev <11771800+ForesterDev@users.noreply.github.com>

---------

Co-authored-by: ForesterDev <11771800+ForesterDev@users.noreply.github.com>
2024-07-05 07:45:26 -03:00
Jelle Meeus
37431cd7a6 fix(Core/Pets): Correct Pet size for bigger pets 2 (#18867)
* scale displayInfo, cap scale to maxScale

* prevent scaling with displayInfo if scale is already increasing the size
2024-07-04 16:34:14 -03:00
Kitzunu
8bca8a45ed chore(Core/Spells): Fix compile warning (#19278)
* chore(Core/Spells): Fix compile warning

* s
2024-07-04 14:47:36 -03:00
Kitzunu
bd29e9e1b3 fix(Core/Spell): Implement SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT (#19254)
feat(Core/Spell): Implement SPELL_ATTR1_AURA_STAYS_AFTER_COMBAT

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/19248
2024-07-04 14:30:59 -03:00
Kitzunu
aebb99ecda fix(Core/Character): TeleportTo() in HandlePlayerLoginFromDB() causes… (#19237)
fix(Core/Character): TeleportTo() in HandlePlayerLoginFromDB() causes breakdown in the network communication

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/16307
2024-07-04 14:30:25 -03:00
Kitzunu
385d7fd515 chore(Core/DBC): define unused unknown dbc fields (#19262)
* chore(Core/DBC): define unused unknown dbc fields

* Name unused unknown dbc fields using WDBX and wowdev.wiki

* rename SpellShapeshiftEntry to SpellShapeshiftFormEntry to properly match the DBC used

* rename sSpellShapeshiftStore to sSpellShapeshiftFormStore to properly match the DBC used

* Comment out unused field for GlyphPropertiesEntry

* Comment out unused field for MapEntry

* forgot one

* SpellShapeshiftfmt to SpellShapeshiftFormfmt

* SpellShapeshiftFormEntryfmt
2024-07-04 14:23:25 -03:00
Kitzunu
193e906a84 fix(Core/Spells): Shapeshift should show in Old Hillsbrad Foothills a… (#19274)
fix(Core/Spells): Shapeshift should show in Old Hillsbrad Foothills as horde
2024-07-04 14:21:33 -03:00
Kitzunu
8745ac9c2e fix(Core/Loot): implement automatic pass in group loot for items that… (#19272)
* fix(Core/Loot): implement automatic pass in group loot for items that cannot be looted

* cherry-pick commit (00fdf6e99a)

* closes https://github.com/chromiecraft/chromiecraft/issues/4523

Co-Authored-By: Wyrserth <43747507+Wyrserth@users.noreply.github.com>

* whoopise

---------

Co-authored-by: Wyrserth <43747507+Wyrserth@users.noreply.github.com>
2024-07-04 14:21:00 -03:00
Kitzunu
e878cedb7f feat(Core/SAI): implement new removeObjectFromWorld param for SMART_A… (#19275)
feat(Core/SAI): implement new removeObjectFromWorld param for SMART_ACTION_FORCE_DESPAWN
2024-07-04 14:20:41 -03:00
Jelle Meeus
cf1185551d fix(Core/Pet): prevent LoadPetFromDB to trigger a fake summon spell cast in most cases (#19277)
* add CategoryRecoveryTime check

* add RecoveryTime check
2024-07-04 14:20:24 -03:00
Kitzunu
d5ba5e0168 fix(Core/Quest): typo in RewardQuest makes LFG quests not reward if dead (#19271)
fix(Core/Quest): typo in RewardQuest

* Allow LFG quests to be rewarded even when dead
2024-07-04 09:41:53 -03:00
thomasjteachey
fa8680746e fix(Core/Arena): Check to see if other members in your arena team are queued or in a r… (#18808)
* Check to see if other members in your arena team are queued or in a rated arena already and, if so, do not allow queue to go through

* Accidentally put team party check inside the for loop

* some basic logic efficiency changes

* minor syntax issue
2024-07-04 08:42:36 -03:00
sudlud
60be029e4c fix(Core/Scripting): fix OnBeforeCreateInstanceScript hook (#19252)
- to me this hook should obviously provide an option to overwrite
  the InstanceScript pointer
- this is e.g. beeing used by mod-eluna (but currently broken)
2024-07-03 14:54:45 -03:00
Kitzunu
e839581649 fix(Core/Player): Allow players to enter the world (#19261) 2024-07-03 12:06:48 +02:00
Kitzunu
0a8175ef03 refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load (#19259)
* refactor(Core/ObjectMgr): Handle Profanity & Reserved Names in load

* closes https://github.com/azerothcore/azerothcore-wotlk/issues/18556

* Update ObjectMgr.cpp

* Update ObjectMgr.cpp

* I swear I am not drunk

* We already check all of these

* fix build

* Forgot we dont send the responsecode in senderrormessage

* last commit I swear
2024-07-03 00:23:32 +02:00
Kitzunu
f96d4c8670 Revert "Add (core\db): Support for Homebind Orientation (#13389)" (#19257)
* Revert "Add (core\db): Support for Homebind Orientation (#13389)"

This reverts commit 2e6f6e26da.

 Changes to be committed:
	modified:   src/server/database/Database/Implementation/CharacterDatabase.cpp
	modified:   src/server/game/DungeonFinding/LFGScripts.cpp
	modified:   src/server/game/Entities/Player/Player.cpp
	modified:   src/server/game/Entities/Player/Player.h
	modified:   src/server/game/Entities/Player/PlayerStorage.cpp
	modified:   src/server/game/Entities/Player/PlayerUpdates.cpp
	modified:   src/server/game/Handlers/CharacterHandler.cpp
	modified:   src/server/game/Handlers/MiscHandler.cpp
	modified:   src/server/game/Handlers/MovementHandler.cpp
	modified:   src/server/game/Maps/Map.cpp
	modified:   src/server/game/Spells/Spell.cpp
	modified:   src/server/scripts/Commands/cs_misc.cpp
	modified:   src/server/scripts/Commands/cs_tele.cpp
	modified:   src/server/scripts/Northrend/VaultOfArchavon/instance_vault_of_archavon.cpp

 Untracked files:
	data/sql/updates/pending_db_world/rev_1719945200692175000.sql

* Revert "Add (core\db): Support for Homebind Orientation (#13389)"

* whoops
2024-07-02 22:02:15 +02:00
Kitzunu
5a4692e45a chore(Core/Misc): #include cleanup (#19255) 2024-07-02 15:52:02 +02:00
Kitzunu
1289e351a2 fix(Script/Commands): output lookup quest and npc near (#19243)
* close https://github.com/azerothcore/azerothcore-wotlk/issues/19216
2024-07-01 07:24:54 -03:00
Jelle Meeus
ed38e6e550 fix(Scripts/Naxxramas): Gothik missing visuals at minions death (#18666)
* add sql rev

* enable NPC_TRIGGER

* add npc_gothik_trigger

* add rest of script

* spell info correction

* fix compile issue

* fix desummon call

* remove comment

* access gothik by GUID

* add missing function overrides

* add braces

* add missing trigger, adjust CGUID value

* fixup! add missing trigger, adjust CGUID value

* select skulls based on coordinates

style

invert remove

remove CGUID comment

fix remove_if check, use correct def

* JustSummoned: target same side with mapLOS

* select random initial target on the same side

* add REACT_AGGRESSIVE and increase CallForHelp radius

* refactor spellscript

* style
2024-06-29 15:12:12 -03:00
Jelle Meeus
75582eb34b fix(Core/Spell): implement taunt DR CREATURE_FLAG_EXTRA_OBEYS_TAUNT_DIMINISHING_RETURNS (#19128)
* skip other effects in case of taunt DR

* set flags_extra creature_template

fe38b78c87

Co-authored-by: offl <offl@users.noreply.github.com>

* update query to only entries found in acore_world.creature_template

* add name as comment

* fix ci codestyle

---------

Co-authored-by: offl <offl@users.noreply.github.com>
2024-06-29 11:59:16 -03:00
avarishd
63c8c6480e fix(Core/Spells): Eye of Grillok improvements (#19148)
* fix(Core/Spells): Eye of Grillok improvements

* my eyes

* discovery of RegisterSpellAndAuraScriptPair

* comment
2024-06-29 07:33:23 -03:00
Walter Pagani
77be5bb19d fix(Spells/SpellInfoCorrections) Remove friendly mask on goblins (#18912)
Co-authored-by: Jelle Meeus <sogladev@gmail.com>
2024-06-29 00:28:29 -03:00
Jelle Meeus
29f376f9bc fix(Core/Spells): Midsummer spinning visual interrupt on gossip (#19211)
* handle removal in periodic effect

* do removal with aurascript

* Revert "do removal with aurascript"

This reverts commit 383dd7b255e18d52f5fbecbfcb47ac08331ba626.

* Revert "handle removal in periodic effect"

This reverts commit ab6984e95613df3fa32d45489f607650c9700ff7.

* add AURA_INTERRUPT_FLAG_TALK to 45406
2024-06-28 13:41:47 -03:00
avarishd
5b2a088da0 fix(Core/Auras): Add SPELL_ATTR0_CU_ONLY_ONE_AREA_AURA (#19209)
https: //github.com/azerothcore/azerothcore-wotlk/pull/19208

Co-authored-by: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com>
2024-06-28 05:23:38 -03:00
Greg Wilkinson
2835f883c8 fix(Core/Misc): fmt (#19192)
Update LOG_ERROR for Model data query.
2024-06-27 18:06:40 +02:00
Andrew
c9725dd4b2 fix(Core/AI): Don't set boss state to none if already complete (#19139) 2024-06-26 22:40:04 +02:00
Jelle Meeus
40b63666ad feat(Core/Movement): implement Pause and Resume to WaypointMovementGenerator (#19176)
* implement Pause and Resume for WaypointMovementGenerator

Co-authored-by: ccrs <ccrs@users.noreply.github.com>

* prevent restart from external sources if wp is paused

* don't update stopmove on every update

SetFacing breaks otherwise

* timer args not used

---------

Co-authored-by: ccrs <ccrs@users.noreply.github.com>
2024-06-26 22:24:59 +02:00
Jelle Meeus
77d3eb52df fix(Core/Spell): Bladestorm remove reset swing and allow meleeSwingSpell during (#19093)
* remove reset swing

* allow meleeswingspell on PLAYER_ALLOW_ONLY_ABILITY
2024-06-26 22:23:09 +02:00
sudlud
b3f21d909a fix(Core/PlayerQuest): Introduce flag QUEST_SPECIAL_FLAGS_CAN_FAIL_IN… (#19116)
fix(Core/PlayerQuest): Introduce flag QUEST_SPECIAL_FLAGS_CAN_FAIL_IN_ANY_STATE

- this allows flagging quests so that they are allowed to fail in Player::FailQuest()
  independant of their current state
- update quest 853 accordingly as a first use case
2024-06-22 03:04:56 -03:00
Benjamin Jackson
af722d4e88 fix(Core/Spells): Partially revert spell cancel behavior change. (#19101)
Init.
2024-06-20 14:16:21 -03:00
Jelle Meeus
0d977c986e fix(Core/SmartAI): add prevent almost infinite spinning of mutual target to pets (#19090)
fix(Core/SmartAI)petspin
2024-06-19 21:13:34 -03:00
Benjamin Jackson
8ea13ca778 fix(Scripts/Spells): Implement damage scaling based off DoT stack count for Seal of Vengeance and Corruption. (#19073)
* Init.

* Whoops.

* Move comment.

Someone should fix this darn CI.

* Logic adjustment.

* Revert logic adjustment.

This reverts commit ee09ee55df47c9a66ecf536be58a4a040f384b72.

* Requested changes?
2024-06-19 00:45:02 +02:00
atrapalis
dea3748629 fix(Core/Quest): Correct XP Display when modified by SPELL_AURA_MOD_XP_QUEST_PCT (#19060)
* fix(Core): Correct Quest XP Display when modified by SPELL_AURA_MOD_XP_QUEST_PCT

The quest XP displayed on the gossip window was not modified for auras that increase quest XP gain (e.g. spell ID 57353). This commit corrects the quest XP display when accepting/returning quests.

* refactor(Entities/Player): Added a `CalculateQuestRewardXP()` function to reduce duplicated code

* cleanup(Entities/Creature): Removed now unused variable `playerLevel`

* Apply suggestions from code review

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

---------

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-19 00:41:39 +02:00
avarishd
2cf95ca6cb fix(Core/Spells): Don't send SMSG_CAST_FAILED for interrupted spells … (#19082)
fix(Core/Spells): Don't send SMSG_CAST_FAILED for interrupted spells after they were launched or channelling was started (this clears cooldown on client)

https: //github.com/TrinityCore/TrinityCore/commit/63bc405faeb7afcf99de6f7531e4ea59065165f4

Co-authored-by: Shauren <shauren.trinity@gmail.com>
2024-06-17 21:26:18 -03:00
Lyuboslav Kotsev
10892a519d fix(core/spell): Presence of Mind should not apply cooldown mods on c… (#17890)
fix(core/spell): Presence of Mind should not apply cooldown mods on category spells.

Mage T4 set 4 set bonus puts cooldown reduction on Presence of Mind which should not be passed down to category spells,
because in case of infinity cooldown on Arcane Power it does not get reset when you lose the Presence of Mind aura and Arcane Power stays forever in cooldown
or more specifically for 1 month(infinity cooldown).

Closes https://github.com/azerothcore/azerothcore-wotlk/issues/17800
Patch 3.0.9 https://wowpedia.fandom.com/wiki/Patch_3.0.9

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-17 22:05:07 +02:00
AnchyDev
e0cf15db93 fix(Scripts/Misc) CanExecuteCommand renamed and moved to be executed for all commands. (#19081)
* Fix CanExecuteCommand only being executed on command failure.

* Updated for style guide.

* Removed pointless hook call.

* Modified the name of the hook to better reflect function and moved the call to trigger for non-existent commands.

* Updated to OnTryExecuteCommand because Foe has a special place in my heart.

* Forgot to change these 2 areas.
2024-06-17 21:39:11 +02:00
Andrew
9e122a0cad fix(Core/AI): Fix bosses being stuck IN_PROGRESS if despawnonevade fl… (#19070)
fix(Core/AI): Fix bosses being stuck IN_PROGRESS if despawnonevade flag is used
2024-06-16 18:57:51 +02:00
Benjamin Jackson
d6d49a9e45 refactor(Core/ObjectMgr): Implement display probabilities. (#19068)
* Init.

Cherry-picked from TC commits 9d210476e5 and c488fb219a

Co-Authored-By: Traesh <9392905+traesh@users.noreply.github.com>
Co-Authored-By: Shauren <shauren.trinity@gmail.com>

* Add brute data.

Needs validation against what existed before, i.e. Classic change prevention.

* Add validation info for brute data.

* Remove incomplete data queries.

* Requested changes.

* Whitespace.

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Requested change.

Table name.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Resolve the funny merge conflicts.

I wonder why git blame doesn't work on a file with 20k lines in it that's odd huh champ.

* Remove unused parameter.

* Remove uses of unused parameter.

* Use unused parameter.

Hopefully?

* I will cry.

* Sobbing endlessly.

* Remove comment.

* Adjust table structure query.

Remove length parameters and allow null for build value.

Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>

* Adjust column datatype and add check constraint.

---------

Co-authored-by: Traesh <9392905+traesh@users.noreply.github.com>
Co-authored-by: Shauren <shauren.trinity@gmail.com>
Co-authored-by: Kitzunu <24550914+Kitzunu@users.noreply.github.com>
2024-06-16 18:12:16 +02:00
Andrew
78aaa136cc fix(Scripts/BlackTemple): Fix Free Friend spell (#19065) 2024-06-15 13:43:30 -03:00
Jelle Meeus
f846d79478 fix(Core/Pet): Warlock pet handling (#19054)
* dismiss summoned non-hunter pets by removing them

* store createdbyspellid

* Revert "dismiss summoned non-hunter pets by removing them"

This reverts commit eb539e841d882a6c90f743792c91304b0d365a5c.
2024-06-13 10:31:35 -03:00