Skip to content

Commit 4e4e83c

Browse files
Merge AzerothCore 3.3.5 to ElunaAzerothcore [skip ci]
2 parents 86bfc4c + 9c6a69d commit 4e4e83c

22 files changed

Lines changed: 171 additions & 56 deletions

File tree

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
-- DB update 2026_03_30_00 -> 2026_04_03_00
2+
--
3+
CREATE TABLE `spam_reports` (
4+
`ID` INT UNSIGNED NOT NULL AUTO_INCREMENT,
5+
`SpamType` TINYINT UNSIGNED NOT NULL COMMENT '0 = mail, 1 = chat, 2 = calendar',
6+
`SpammerGuid` INT UNSIGNED NOT NULL DEFAULT '0',
7+
`Unk1` INT UNSIGNED NULL DEFAULT '0',
8+
`MailIdOrMessageType` INT UNSIGNED NULL DEFAULT '0',
9+
`ChannelId` INT UNSIGNED NULL COMMENT 'Only used if SpamType = 1',
10+
`SecondsSinceMessage` INT UNSIGNED NULL COMMENT 'Only used if SpamType = 1',
11+
`Description` LONGTEXT NULL DEFAULT NULL COLLATE 'utf8mb4_unicode_ci',
12+
`Time` INT NULL DEFAULT NULL COMMENT 'Time of report',
13+
PRIMARY KEY (`ID`) USING BTREE
14+
)
15+
CHARSET = utf8mb4
16+
COLLATE = utf8mb4_unicode_ci
17+
ENGINE = InnoDB
18+
ROW_FORMAT = DEFAULT
19+
;
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-- DB update 2026_03_31_00 -> 2026_04_03_00
2+
--
3+
-- from mechanic_immune_mask 646000477 to school=0x10(FROST)
4+
UPDATE `creature_template` SET `CreatureImmunitiesId`=-6 WHERE `entry`=510;
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
-- DB update 2026_04_03_00 -> 2026_04_03_01
2+
DELETE FROM `waypoint_data` WHERE `id` = 2669000;
3+
INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES
4+
(2669000, 1, 478.743, -505.576, 104.724, 0, 0, 1, 0, 100, 0),
5+
(2669000, 2, 318.177, -503.8898, 104.5326, 0, 0, 1, 0, 100, 0);
6+
7+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 26690 AND `source_type` = 0 AND `id` IN (2);
8+
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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
9+
(26690, 0, 2, 0, 109, 0, 100, 0, 0, 2669000, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Ymirjar Warrior - On Path 2669000 Finished - Set In Combat With Zone');
10+
11+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 26691 AND `source_type` = 0 AND `id` IN (2);
12+
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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
13+
(26691, 0, 2, 0, 109, 0, 100, 0, 0, 2669000, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Ymirjar Witch Doctor - On Path 2669000 Finished - Set In Combat With Zone');
14+
15+
DELETE FROM `smart_scripts` WHERE `entryorguid` = 26692 AND `source_type` = 0 AND `id` IN (3);
16+
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`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
17+
(26692, 0, 3, 0, 109, 0, 100, 0, 0, 2669000, 0, 0, 0, 38, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Ymirjar Harpooner - On Path 2669000 Finished - Set In Combat With Zone');
18+
19+
UPDATE `spell_area` SET `gender` = 2 WHERE `spell` = 47546;
20+
21+
DELETE FROM `waypoint_data` WHERE `id` IN (2689303, 2689304);
22+
INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES
23+
(2689303, 1, 520.483, -541.563, 119.842, 0, 0, 2, 0, 100, 0),
24+
(2689303, 2, 496.434, -517.578, 120, 0, 0, 2, 0, 100, 0),
25+
(2689304, 1, 520.483, -541.563, 119.842, 0, 0, 2, 0, 100, 0),
26+
(2689304, 2, 500.243, -501.693, 120, 0, 0, 2, 0, 100, 0);
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
-- DB update 2026_04_03_01 -> 2026_04_03_02
2+
-- Add CREATURE_FLAG_EXTRA_CANNOT_ENTER_COMBAT to Toxic Tunnel (Naxxramas)
3+
UPDATE `creature_template` SET `flags_extra` = `flags_extra` | 0x00002000 WHERE `entry` = 16400;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
-- DB update 2026_04_03_02 -> 2026_04_03_03
2+
-- Fix Skadi Poisoned Spear not applying periodic DOT in Heroic mode.
3+
-- Spell 59331 is the heroic variant of 50255 (mapped via spelldifficulty_dbc),
4+
-- but the spell script was only registered for the normal version.
5+
DELETE FROM `spell_script_names` WHERE `spell_id` = 59331 AND `ScriptName` = 'spell_skadi_poisoned_spear';
6+
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES (59331, 'spell_skadi_poisoned_spear');

src/server/apps/worldserver/worldserver.conf.dist

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -612,6 +612,15 @@ AllowLoggingIPAddressesInDatabase = 1
612612

613613
Allow.IP.Based.Action.Logging = 0
614614

615+
#
616+
# LogSpamReports
617+
# Description: Allow logging spam reports from players in the chat, mail or calendar into the database.
618+
# Default: 1 - (Enabled)
619+
# 0 - (Disabled)
620+
#
621+
622+
LogSpamReports = 1
623+
615624
#
616625
# Appender config values: Given an appender "name"
617626
# Appender.name

src/server/database/Database/Implementation/CharacterDatabase.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,7 @@ void CharacterDatabaseConnection::DoPrepareStatements()
353353
PrepareStatement(CHAR_UPD_REM_AT_LOGIN_FLAG, "UPDATE characters set at_login = at_login & ~ ? WHERE guid = ?", CONNECTION_ASYNC);
354354
PrepareStatement(CHAR_UPD_ALL_AT_LOGIN_FLAGS, "UPDATE characters SET at_login = at_login | ?", CONNECTION_ASYNC);
355355
PrepareStatement(CHAR_INS_BUG_REPORT, "INSERT INTO bugreport (type, content) VALUES(?, ?)", CONNECTION_ASYNC);
356+
PrepareStatement(CHAR_INS_SPAM_REPORT, "INSERT INTO spam_reports (SpamType, SpammerGuid, Unk1, MailIdOrMessageType, ChannelId, SecondsSinceMessage, Description, Time) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", CONNECTION_ASYNC);
356357
PrepareStatement(CHAR_UPD_PETITION_NAME, "UPDATE petition SET name = ? WHERE petition_id = ?", CONNECTION_ASYNC);
357358
PrepareStatement(CHAR_INS_PETITION_SIGNATURE, "INSERT INTO petition_sign (ownerguid, petition_id, playerguid, player_account) VALUES (?, ?, ?, ?)", CONNECTION_ASYNC);
358359
PrepareStatement(CHAR_UPD_ACCOUNT_ONLINE, "UPDATE characters SET online = 0 WHERE account = ?", CONNECTION_ASYNC);

src/server/database/Database/Implementation/CharacterDatabase.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,6 +277,7 @@ enum CharacterDatabaseStatements : uint32
277277
CHAR_UPD_REM_AT_LOGIN_FLAG,
278278
CHAR_UPD_ALL_AT_LOGIN_FLAGS,
279279
CHAR_INS_BUG_REPORT,
280+
CHAR_INS_SPAM_REPORT,
280281
CHAR_UPD_PETITION_NAME,
281282
CHAR_INS_PETITION_SIGNATURE,
282283
CHAR_UPD_ACCOUNT_ONLINE,

src/server/game/Entities/Creature/Creature.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -666,6 +666,8 @@ bool Creature::UpdateEntry(uint32 Entry, const CreatureData* data, bool changele
666666
ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_ATTACK_ME, true);
667667
}
668668

669+
SetIsCombatDisallowed(cInfo->HasFlagsExtra(CREATURE_FLAG_EXTRA_CANNOT_ENTER_COMBAT));
670+
669671
SetDetectionDistance(cInfo->detection_range);
670672

671673
// Update movement

src/server/game/Entities/Creature/CreatureData.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ enum CreatureFlagsExtra : uint32
5656
CREATURE_FLAG_EXTRA_GHOST_VISIBILITY = 0x00000400, // creature will only be visible to dead players
5757
CREATURE_FLAG_EXTRA_USE_OFFHAND_ATTACK = 0x00000800, // creature will use offhand attacks
5858
CREATURE_FLAG_EXTRA_NO_SELL_VENDOR = 0x00001000, // players can't sell items to this vendor
59-
CREATURE_FLAG_EXTRA_IGNORE_COMBAT = 0x00002000,
59+
CREATURE_FLAG_EXTRA_CANNOT_ENTER_COMBAT = 0x00002000, // creature is not allowed to enter combat
6060
CREATURE_FLAG_EXTRA_WORLDEVENT = 0x00004000, // custom flag for world event creatures (left room for merging)
6161
CREATURE_FLAG_EXTRA_GUARD = 0x00008000, // Creature is guard
6262
CREATURE_FLAG_EXTRA_IGNORE_FEIGN_DEATH = 0x00010000, // creature ignores feign death

0 commit comments

Comments
 (0)