diff options
| -rw-r--r-- | data/sql/updates/db_world/2025_12_14_00.sql (renamed from data/sql/updates/pending_db_world/tasty-reef-school.sql) | 1 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_15_00.sql | 9 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_16_00.sql | 24 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_16_01.sql | 3 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_16_02.sql | 3 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_17_00.sql | 5 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_17_01.sql | 2 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_17_02.sql | 3 | ||||
| -rw-r--r-- | data/sql/updates/db_world/2025_12_17_03.sql | 35 | ||||
| -rw-r--r-- | src/server/game/Battlegrounds/Battleground.cpp | 27 | ||||
| -rw-r--r-- | src/server/game/Reputation/ReputationMgr.cpp | 2 | ||||
| -rw-r--r-- | src/server/game/Spells/SpellMgr.cpp | 2 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_generic.cpp | 3 |
13 files changed, 116 insertions, 3 deletions
diff --git a/data/sql/updates/pending_db_world/tasty-reef-school.sql b/data/sql/updates/db_world/2025_12_14_00.sql index 7ecceb8831..35c2fad938 100644 --- a/data/sql/updates/pending_db_world/tasty-reef-school.sql +++ b/data/sql/updates/db_world/2025_12_14_00.sql @@ -1,3 +1,4 @@ +-- DB update 2025_12_12_02 -> 2025_12_14_00 SET @GUID = 2337; DELETE FROM `gameobject` WHERE `id` = 186949 AND `guid` BETWEEN 57686 AND 57694; diff --git a/data/sql/updates/db_world/2025_12_15_00.sql b/data/sql/updates/db_world/2025_12_15_00.sql new file mode 100644 index 0000000000..ab6f52d306 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_15_00.sql @@ -0,0 +1,9 @@ +-- DB update 2025_12_14_00 -> 2025_12_15_00 + +-- Set SmartAI +UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 27241; + +DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 27241); +INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(27241, 0, 0, 0, 25, 0, 100, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Risen Gryphon - On Reset - Set Reactstate Passive'), +(27241, 0, 1, 0, 6, 0, 100, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 204, 27268, 0, 0, 0, 0, 0, 0, 0, 'Risen Gryphon - On Just Died - Despawn Instant'); diff --git a/data/sql/updates/db_world/2025_12_16_00.sql b/data/sql/updates/db_world/2025_12_16_00.sql new file mode 100644 index 0000000000..b0c89138d8 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_16_00.sql @@ -0,0 +1,24 @@ +-- DB update 2025_12_15_00 -> 2025_12_16_00 +-- Sets the chests in "Brackwell Pumpkin Patch" to 15 mins (validated in Classic Era and TBC PTR). +UPDATE `gameobject` SET `rotation0`= 0,`rotation1`= 0,`rotation2`= 0,`rotation3`= 0, `spawntimesecs` = 900, `animprogress` = 255, `VerifiedBuild` = 64907 WHERE `id` = 106318 AND `guid` IN (85745, 85756, 85879, 26916); + +-- The below Rotation Values are Most probably related to one of the Rotation0 - 3 +-- GameObject Rotation: X: 0 Y: 0 Z: 0.9996567 W: 0.026201647 +UPDATE `gameobject` SET `position_x` = -9711.927, `position_y` = -943.4976, `position_z` = 38.416466, `orientation` = 3.0891833, `Comment` = "Brackwell Pumpkin Patch - Inside Barn" WHERE `id` = 106318 AND `guid` = 26916; +-- GameObject Rotation: X: 0 Y: 0 Z: -0.19936752 W: 0.9799248 +UPDATE `gameobject` SET `position_x` = -9796.159, `position_y` = -929.679, `position_z` = 39.13272, `orientation` = 5.8817606, `Comment` = "Brackwell Pumpkin Patch - Outside Trio House" WHERE `id` = 106318 AND `guid` = 85756; +-- GameObject Rotation: X: 0 Y: 0 Z: 0.47715855 W: 0.87881726 +UPDATE `gameobject` SET `position_x` = -9804.657, `position_y` = -934.9581, `position_z` = 39.855556, `orientation` = 0.99483716, `Comment` = "Brackwell Pumpkin Patch - Inside Trio House" WHERE `id` = 106318 AND `guid` = 85879; +-- GameObject Rotation: X: 0 Y: 0 Z: 0.6883545 W: 0.72537446 +UPDATE `gameobject` SET `position_x` = -9739.496, `position_y` = -934.5089, `position_z` = 38.918198, `orientation` = 1.5184362, `Comment` = "Brackwell Pumpkin Patch - Outside Barn" WHERE `id` = 106318 AND `guid` = 85745; + +DELETE FROM `pool_template` WHERE `entry` = 143; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(143, 1, "Brackwell Pumpkin Patch - Battered Chest (106319)"); -- 1 out 4 possible spawns. + +DELETE FROM `pool_gameobject` WHERE `pool_entry` = 143 AND `guid` IN (85745, 85756, 85879, 26916); +INSERT INTO `pool_gameobject` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(26916, 143, 15, "Brackwell Pumpkin Patch - Battered Chest (106319)"), +(85756, 143, 35, "Brackwell Pumpkin Patch - Battered Chest (106319)"), +(85879, 143, 35, "Brackwell Pumpkin Patch - Battered Chest (106319)"), +(85745, 143, 15, "Brackwell Pumpkin Patch - Battered Chest (106319)"); diff --git a/data/sql/updates/db_world/2025_12_16_01.sql b/data/sql/updates/db_world/2025_12_16_01.sql new file mode 100644 index 0000000000..a7f08ebb9b --- /dev/null +++ b/data/sql/updates/db_world/2025_12_16_01.sql @@ -0,0 +1,3 @@ +-- DB update 2025_12_16_00 -> 2025_12_16_01 +-- Raven's Wood Ent shouldn't exist in world, only spawnable via a spell. +DELETE FROM `creature` WHERE `id1` = 21853; diff --git a/data/sql/updates/db_world/2025_12_16_02.sql b/data/sql/updates/db_world/2025_12_16_02.sql new file mode 100644 index 0000000000..bfdbd2eb7c --- /dev/null +++ b/data/sql/updates/db_world/2025_12_16_02.sql @@ -0,0 +1,3 @@ +-- DB update 2025_12_16_01 -> 2025_12_16_02 +-- PrevQuestID 11009 to 0, The Crystals doesn't have Ogre Heaven as a requirement +UPDATE `quest_template_addon` SET `PrevQuestID` = 0 WHERE (`ID` = 11025); diff --git a/data/sql/updates/db_world/2025_12_17_00.sql b/data/sql/updates/db_world/2025_12_17_00.sql new file mode 100644 index 0000000000..8fc9cda411 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_17_00.sql @@ -0,0 +1,5 @@ +-- DB update 2025_12_16_02 -> 2025_12_17_00 +-- +-- Faerie Fire group +-- SPELL_GROUP_STACK_RULE_EXCLUSIVE_SAME_EFFECT 'Same effects of spells will not stack, yet auras will remain on a target' +UPDATE `spell_group_stack_rules` SET `stack_rule`=3 WHERE `group_id`=1016; diff --git a/data/sql/updates/db_world/2025_12_17_01.sql b/data/sql/updates/db_world/2025_12_17_01.sql new file mode 100644 index 0000000000..54bab41816 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_17_01.sql @@ -0,0 +1,2 @@ +-- DB update 2025_12_17_00 -> 2025_12_17_01 +UPDATE `creature_template` SET `unit_flags` = 2147746560 WHERE `entry` IN (34952, 34953); diff --git a/data/sql/updates/db_world/2025_12_17_02.sql b/data/sql/updates/db_world/2025_12_17_02.sql new file mode 100644 index 0000000000..e38abcef84 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_17_02.sql @@ -0,0 +1,3 @@ +-- DB update 2025_12_17_01 -> 2025_12_17_02 +-- prevent 'Plagued Scavenger' from flying up to Dalaran +DELETE FROM `waypoint_data` WHERE `id` = 1006640 AND `point` = 8; diff --git a/data/sql/updates/db_world/2025_12_17_03.sql b/data/sql/updates/db_world/2025_12_17_03.sql new file mode 100644 index 0000000000..a1bf80f6c6 --- /dev/null +++ b/data/sql/updates/db_world/2025_12_17_03.sql @@ -0,0 +1,35 @@ +-- DB update 2025_12_17_02 -> 2025_12_17_03 +-- Lykul Wasp +DELETE FROM `creature_template_model` WHERE (`CreatureID` = 17732); +INSERT INTO `creature_template_model` (`CreatureID`, `Idx`, `CreatureDisplayID`, `DisplayScale`, `Probability`, `VerifiedBuild`) VALUES +(17732, 0, 18722, 1, 1, 51831), +(17732, 1, 6633, 1, 0, 51831), +(17732, 2, 7350, 1, 0, 51831), +(17732, 3, 11091, 1, 0, 51831); +DELETE FROM `smart_scripts` WHERE (`entryorguid` = 17732) AND (`source_type` = 0) AND (`id` IN (3)); + +-- Underbog Lord +DELETE FROM `creature_template_model` WHERE (`CreatureID` = 17734); +INSERT INTO `creature_template_model` (`CreatureID`, `Idx`, `CreatureDisplayID`, `DisplayScale`, `Probability`, `VerifiedBuild`) VALUES +(17734, 0, 17758, 1, 1, 51831), +(17734, 1, 12293, 1, 0, 51831); +DELETE FROM `smart_scripts` WHERE (`entryorguid` = 17734) AND (`source_type` = 0) AND (`id` IN (3)); + +-- Lykul Stinger +DELETE FROM `creature_template_model` WHERE (`CreatureID` = 19632); +INSERT INTO `creature_template_model` (`CreatureID`, `Idx`, `CreatureDisplayID`, `DisplayScale`, `Probability`, `VerifiedBuild`) VALUES +(19632, 0, 19367, 1, 1, 51831), +(19632, 1, 6633, 1, 0, 51831), +(19632, 2, 7350, 1, 0, 51831), +(19632, 3, 11091, 1, 0, 51831); +DELETE FROM `smart_scripts` WHERE (`entryorguid` = 19632) AND (`source_type` = 0) AND (`id` IN (2)); + +-- Behemothon, King of the Colossi +DELETE FROM `creature_template_model` WHERE `CreatureID` = 22054; +INSERT INTO `creature_template_model` (`CreatureID`, `Idx`, `CreatureDisplayID`, `DisplayScale`, `Probability`, `VerifiedBuild`) VALUES +(22054, 0, 20261, 1, 0, 51831), +(22054, 1, 20577, 1, 1, 51831); +DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 22054); +INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(22054, 0, 0, 0, 11, 0, 100, 0, 0, 0, 0, 0, 0, 0, 48, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Behemothon, King of the Colossi - On Respawn - Set Active On'), +(22054, 0, 1, 0, 38, 0, 100, 0, 1, 1, 60000, 60000, 0, 0, 80, 2205400, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Behemothon, King of the Colossi - On Data Set 1 1 - Run Script'); diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp index 70b8a90670..326caf426f 100644 --- a/src/server/game/Battlegrounds/Battleground.cpp +++ b/src/server/game/Battlegrounds/Battleground.cpp @@ -920,6 +920,33 @@ void Battleground::EndBattleground(PvPTeamId winnerTeamId) if (!player->GetRandomWinner()) player->SetRandomWinner(true); + + // Achievement 908 / 909 "Call to Arms!" + switch (GetBgTypeID(true)) + { + case BATTLEGROUND_AB: + // Call to Arms: Arathi Basin + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11335); + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11339); + break; + case BATTLEGROUND_AV: + // Call to Arms: Alterac Valley + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11336); + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11340); + break; + case BATTLEGROUND_EY: + // Call to Arms: Eye of the Storm + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11337); + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11341); + break; + case BATTLEGROUND_WS: + // Call to Arms: Warsong Gulch + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11338); + player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUEST, 11342); + break; + default: + break; + } } player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_WIN_BG, player->GetMapId()); diff --git a/src/server/game/Reputation/ReputationMgr.cpp b/src/server/game/Reputation/ReputationMgr.cpp index c9061158cd..a02c3b604a 100644 --- a/src/server/game/Reputation/ReputationMgr.cpp +++ b/src/server/game/Reputation/ReputationMgr.cpp @@ -432,7 +432,7 @@ bool ReputationMgr::SetOneFactionReputation(FactionEntry const* factionEntry, fl if (new_rank <= REP_HOSTILE) SetAtWar(&itr->second, true); - if (old_rank == REP_HOSTILE && new_rank >= REP_UNFRIENDLY && factionEntry->CanBeSetAtWar()) + if (old_rank <= REP_HOSTILE && new_rank >= REP_UNFRIENDLY && factionEntry->CanBeSetAtWar()) SetAtWar(&itr->second, false); if (new_rank > old_rank) diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp index ba297d4588..4940d2350e 100644 --- a/src/server/game/Spells/SpellMgr.cpp +++ b/src/server/game/Spells/SpellMgr.cpp @@ -193,7 +193,7 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellInfo const* spellproto, { // Storm, Earth and Fire - Earthgrab if (spellproto->SpellFamilyFlags[2] & 0x4000) - return DIMINISHING_NONE; + return DIMINISHING_CONTROLLED_ROOT; break; } case SPELLFAMILY_DEATHKNIGHT: diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 38f669693f..c146303d24 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -2028,7 +2028,8 @@ class spell_gen_animal_blood : public AuraScript return; if (Unit* owner = GetUnitOwner()) - owner->CastSpell(owner, SPELL_SPAWN_BLOOD_POOL, true); + if (owner->IsInWater()) + owner->CastSpell(owner, SPELL_SPAWN_BLOOD_POOL, true); } void Register() override |
