Skip to content

Commit 5f163ff

Browse files
authored
Merge branch 'vmangos:development' into chestaggro
2 parents d55f3ef + fb91fcc commit 5f163ff

84 files changed

Lines changed: 4003 additions & 2650 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/db_check.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,19 @@ jobs:
2525
sudo docker pull mysql
2626
sudo docker run --name mysqldb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6 --max_allowed_packet=128M
2727
sudo docker start mysqldb
28-
until nc -z localhost 3306 ; do sleep 5 ; echo "Waiting for database availability..." ; done
29-
28+
echo "Waiting for database availability..."
29+
max_attempts=30
30+
attempt=0
31+
until docker exec mysqldb mysqladmin -u root -proot ping --silent &> /dev/null; do
32+
attempt=$((attempt+1))
33+
if [ $attempt -gt $max_attempts ]; then
34+
echo "Database failed to become ready in time!"
35+
exit 1
36+
fi
37+
echo "Waiting for database to be ready... (attempt $attempt/$max_attempts)"
38+
sleep 5
39+
done
40+
echo "Database is ready!"
3041
3142
- name: Checkout update sql
3243
uses: actions/checkout@v4

.github/workflows/db_dump.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,19 @@ jobs:
2828
sudo docker pull mysql
2929
sudo docker run --name mysqldb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6 --max_allowed_packet=128M
3030
sudo docker start mysqldb
31-
until nc -z localhost 3306 ; do sleep 5 ; echo "Waiting for database availability..." ; done
32-
31+
echo "Waiting for database availability..."
32+
max_attempts=30
33+
attempt=0
34+
until docker exec mysqldb mysqladmin -u root -proot ping --silent &> /dev/null; do
35+
attempt=$((attempt+1))
36+
if [ $attempt -gt $max_attempts ]; then
37+
echo "Database failed to become ready in time!"
38+
exit 1
39+
fi
40+
echo "Waiting for database to be ready... (attempt $attempt/$max_attempts)"
41+
sleep 5
42+
done
43+
echo "Database is ready!"
3344
3445
- name: Checkout update sql
3546
uses: actions/checkout@v4
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
DROP PROCEDURE IF EXISTS add_migration;
2+
delimiter ??
3+
CREATE PROCEDURE `add_migration`()
4+
BEGIN
5+
DECLARE v INT DEFAULT 1;
6+
SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20231215165730');
7+
IF v=0 THEN
8+
INSERT INTO `migrations` VALUES ('20231215165730');
9+
-- Add your query below.
10+
11+
-- 500: Distance Between Targets Is Equal Or Greater Than 8 Yards
12+
INSERT INTO `conditions` (`condition_entry`, `type`, `value1`, `value2`, `value3`, `value4`, `flags`) VALUES (500, 38, 8, 1, 0, 0, 0);
13+
14+
-- Removing unused creature spell lists for Venom Stalker
15+
DELETE FROM `creature_spells` WHERE `entry`=159760;
16+
UPDATE `creature_template` SET `spell_list_id`=0 WHERE `entry`=15976;
17+
18+
-- Events list for Venom Stalker
19+
DELETE FROM `creature_ai_events` WHERE `creature_id`=15976;
20+
INSERT INTO `creature_ai_events` (`id`, `creature_id`, `condition_id`, `event_type`, `event_inverse_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `action1_script`, `action2_script`, `action3_script`, `comment`) VALUES (1597601, 15976, 0, 0, 0, 100, 1, 5000, 15000, 28000, 32000, 1597601, 0, 0, 'Venom Stalker - Cast Poison Charge');
21+
DELETE FROM `creature_ai_scripts` WHERE `id`=1597601;
22+
INSERT INTO `creature_ai_scripts` (`id`, `delay`, `priority`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES
23+
(1597601, 0, 0, 15, 28431, 0, 0, 0, 1, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 500, 'Venom Stalker - Cast Poison Charge');
24+
UPDATE `creature_template` SET `ai_name`='EventAI' WHERE `entry`=15976;
25+
26+
-- Removing unused creature spell lists for Necro Stalker
27+
DELETE FROM `creature_spells` WHERE `entry`=164530;
28+
UPDATE `creature_template` SET `spell_list_id`=0 WHERE `entry`=16453;
29+
30+
-- Events list for Necro Stalker
31+
DELETE FROM `creature_ai_events` WHERE `creature_id`=16453;
32+
INSERT INTO `creature_ai_events` (`id`, `creature_id`, `condition_id`, `event_type`, `event_inverse_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `action1_script`, `action2_script`, `action3_script`, `comment`) VALUES (1645301, 16453, 0, 0, 0, 100, 1, 5000, 15000, 28000, 32000, 1645301, 0, 0, 'Necro Stalker - Cast Poison Charge');
33+
DELETE FROM `creature_ai_scripts` WHERE `id`=1645301;
34+
INSERT INTO `creature_ai_scripts` (`id`, `delay`, `priority`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES
35+
(1645301, 0, 0, 15, 28431, 0, 0, 0, 1, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 500, 'Necro Stalker - Cast Poison Charge');
36+
UPDATE `creature_template` SET `ai_name`='EventAI' WHERE `entry`=16453;
37+
38+
39+
40+
-- End of migration.
41+
END IF;
42+
END??
43+
delimiter ;
44+
CALL add_migration();
45+
DROP PROCEDURE IF EXISTS add_migration;
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
DROP PROCEDURE IF EXISTS add_migration;
2+
DELIMITER ??
3+
CREATE PROCEDURE `add_migration`()
4+
BEGIN
5+
DECLARE v INT DEFAULT 1;
6+
SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20250303170125');
7+
IF v = 0 THEN
8+
INSERT INTO `migrations` VALUES ('20250303170125');
9+
-- Add your query below.
10+
11+
-- Spell script for Tonk Control Console (24934)
12+
UPDATE `spell_template` SET `script_name`='spell_darkmoon_steam_tonk_control_console' WHERE `entry`=24934;
13+
14+
-- End of migration.
15+
END IF;
16+
END??
17+
DELIMITER ;
18+
CALL add_migration();
19+
DROP PROCEDURE IF EXISTS add_migration;
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
DROP PROCEDURE IF EXISTS add_migration;
2+
DELIMITER ??
3+
CREATE PROCEDURE `add_migration`()
4+
BEGIN
5+
DECLARE v INT DEFAULT 1;
6+
SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20250313124002');
7+
IF v = 0 THEN
8+
INSERT INTO `migrations` VALUES ('20250313124002');
9+
-- Add your query below.
10+
11+
-- AQ40
12+
DELETE FROM `script_texts` WHERE `entry` = -1531041; -- %s begins to slow!
13+
DELETE FROM `script_texts` WHERE `entry` = -1531042; -- %s is freezing up!
14+
DELETE FROM `script_texts` WHERE `entry` = -1531043; -- %s is frozen solid!
15+
DELETE FROM `script_texts` WHERE `entry` = -1531044; -- %s begins to crack!
16+
DELETE FROM `script_texts` WHERE `entry` = -1531045; -- %s looks ready to shatter!
17+
18+
-- End of migration.
19+
END IF;
20+
END??
21+
DELIMITER ;
22+
CALL add_migration();
23+
DROP PROCEDURE IF EXISTS add_migration;
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
DROP PROCEDURE IF EXISTS add_migration;
2+
DELIMITER ??
3+
CREATE PROCEDURE `add_migration`()
4+
BEGIN
5+
DECLARE v INT DEFAULT 1;
6+
SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20250318184639');
7+
IF v = 0 THEN
8+
INSERT INTO `migrations` VALUES ('20250318184639');
9+
-- Add your query below.
10+
11+
-- Enrage Trigger
12+
INSERT INTO `spell_script_target` (`entry`, `type`, `targetEntry`, `conditionId`, `inverseEffectMask`, `build_min`, `build_max`) VALUES
13+
(19515, 1, 12057, 0, 0, 0, 5875);
14+
15+
-- End of migration.
16+
END IF;
17+
END??
18+
DELIMITER ;
19+
CALL add_migration();
20+
DROP PROCEDURE IF EXISTS add_migration;
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
DROP PROCEDURE IF EXISTS add_migration;
2+
DELIMITER ??
3+
CREATE PROCEDURE `add_migration`()
4+
BEGIN
5+
DECLARE v INT DEFAULT 1;
6+
SET v = (SELECT COUNT(*) FROM `migrations` WHERE `id`='20250319170825');
7+
IF v = 0 THEN
8+
INSERT INTO `migrations` VALUES ('20250319170825');
9+
-- Add your query below.
10+
11+
12+
-- Inserted 2 new target types after TARGET_T_HOSTILE_RANDOM_NOT_TOP (5).
13+
UPDATE `creature_ai_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
14+
UPDATE `creature_movement_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
15+
UPDATE `creature_spells_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
16+
UPDATE `event_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
17+
UPDATE `generic_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
18+
UPDATE `gossip_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
19+
UPDATE `gameobject_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
20+
UPDATE `spell_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
21+
UPDATE `quest_end_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
22+
UPDATE `quest_start_scripts` SET `target_type`=`target_type`+2 WHERE `target_type`>5;
23+
-- SCRIPT_COMMAND_TEMP_SUMMON_CREATURE (10)
24+
UPDATE `creature_ai_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
25+
UPDATE `creature_movement_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
26+
UPDATE `creature_spells_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
27+
UPDATE `event_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
28+
UPDATE `generic_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
29+
UPDATE `gossip_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
30+
UPDATE `gameobject_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
31+
UPDATE `spell_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
32+
UPDATE `quest_end_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
33+
UPDATE `quest_start_scripts` SET `dataint3`=`dataint3`+2 WHERE `dataint3`>5 && `command`=10;
34+
-- SCRIPT_COMMAND_MODIFY_THREAT (29)
35+
UPDATE `creature_ai_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
36+
UPDATE `creature_movement_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
37+
UPDATE `creature_spells_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
38+
UPDATE `event_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
39+
UPDATE `generic_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
40+
UPDATE `gossip_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
41+
UPDATE `gameobject_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
42+
UPDATE `spell_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
43+
UPDATE `quest_end_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
44+
UPDATE `quest_start_scripts` SET `datalong`=`datalong`+2 WHERE `datalong`>5 && `command`=29;
45+
-- Spell list targets.
46+
UPDATE `creature_spells` SET `castTarget_1`=`castTarget_1`+2 WHERE `castTarget_1`>5;
47+
UPDATE `creature_spells` SET `castTarget_2`=`castTarget_2`+2 WHERE `castTarget_2`>5;
48+
UPDATE `creature_spells` SET `castTarget_3`=`castTarget_3`+2 WHERE `castTarget_3`>5;
49+
UPDATE `creature_spells` SET `castTarget_4`=`castTarget_4`+2 WHERE `castTarget_4`>5;
50+
UPDATE `creature_spells` SET `castTarget_5`=`castTarget_5`+2 WHERE `castTarget_5`>5;
51+
UPDATE `creature_spells` SET `castTarget_6`=`castTarget_6`+2 WHERE `castTarget_6`>5;
52+
UPDATE `creature_spells` SET `castTarget_7`=`castTarget_7`+2 WHERE `castTarget_7`>5;
53+
UPDATE `creature_spells` SET `castTarget_8`=`castTarget_8`+2 WHERE `castTarget_8`>5;
54+
55+
-- Venom Stalker
56+
DELETE FROM `creature_ai_scripts` WHERE `id`=1597601;
57+
INSERT INTO `creature_ai_scripts` (`id`, `delay`, `priority`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES
58+
(1597601, 0, 0, 15, 28431, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 500, 'Venom Stalker - Cast Poison Charge');
59+
-- Necro Stalker
60+
DELETE FROM `creature_ai_scripts` WHERE `id`=1645301;
61+
INSERT INTO `creature_ai_scripts` (`id`, `delay`, `priority`, `command`, `datalong`, `datalong2`, `datalong3`, `datalong4`, `target_param1`, `target_param2`, `target_type`, `data_flags`, `dataint`, `dataint2`, `dataint3`, `dataint4`, `x`, `y`, `z`, `o`, `condition_id`, `comments`) VALUES
62+
(1645301, 0, 0, 15, 28431, 0, 0, 0, 1, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 500, 'Necro Stalker - Cast Poison Charge');
63+
64+
65+
-- End of migration.
66+
END IF;
67+
END??
68+
DELIMITER ;
69+
CALL add_migration();
70+
DROP PROCEDURE IF EXISTS add_migration;

0 commit comments

Comments
 (0)