diff --git a/.travis.yml b/.travis.yml index 24f3fc92d96..a0ba819d935 100644 --- a/.travis.yml +++ b/.travis.yml @@ -33,7 +33,7 @@ install: - mysql -uroot -e 'create database test_mysql;' - mkdir bin - cd bin - - cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=dynamic -DSERVERS=1 -DNOJEM=1 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_C_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_CXX_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_INSTALL_PREFIX=check_install + - cmake ../ -DWITH_WARNINGS=1 -DWITH_COREDEBUG=0 -DUSE_COREPCH=1 -DUSE_SCRIPTPCH=1 -DTOOLS=1 -DSCRIPTS=dynamic -DSERVERS=1 -DNOJEM=0 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-Werror" -DCMAKE_CXX_FLAGS="-Werror" -DCMAKE_C_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_CXX_FLAGS_DEBUG="-DNDEBUG" -DCMAKE_INSTALL_PREFIX=check_install - cd .. - chmod +x contrib/check_updates.sh diff --git a/dep/jemalloc/CMakeLists.txt b/dep/jemalloc/CMakeLists.txt index 4b1106fd79a..6362714f2ee 100644 --- a/dep/jemalloc/CMakeLists.txt +++ b/dep/jemalloc/CMakeLists.txt @@ -10,6 +10,8 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND NOT NOJEM) # We need to generate the jemalloc_def.h header based on platform-specific settings + CHECK_SYMBOL_EXISTS(MADV_FREE "sys/mman.h" HAVE_MADV_FREE) + if (PLATFORM EQUAL 32) set(JEM_SIZEDEF 2) set(JEM_TLSMODEL) @@ -20,6 +22,12 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux" AND NOT NOJEM) set(JEM_VADDRBITS 48) endif() + if (HAVE_MADV_FREE) + set(JEM_MADFREE_DEF "#define") + else() + set(JEM_MADFREE_DEF "#undef") + endif() + # Create the header, so we can use it configure_file( "${CMAKE_SOURCE_DIR}/dep/jemalloc/jemalloc_internal_defs.h.in.cmake" diff --git a/dep/jemalloc/jemalloc_internal_defs.h.in.cmake b/dep/jemalloc/jemalloc_internal_defs.h.in.cmake index 214435283d6..1527fa2c2fe 100644 --- a/dep/jemalloc/jemalloc_internal_defs.h.in.cmake +++ b/dep/jemalloc/jemalloc_internal_defs.h.in.cmake @@ -268,7 +268,7 @@ * MADV_FREE, though typically with higher * system overhead. */ -#define JEMALLOC_PURGE_MADVISE_FREE +@JEM_MADFREE_DEF@ JEMALLOC_PURGE_MADVISE_FREE #define JEMALLOC_PURGE_MADVISE_DONTNEED #define JEMALLOC_PURGE_MADVISE_DONTNEED_ZEROS 1 diff --git a/sql/base/characters_database.sql b/sql/base/characters_database.sql index 017243bbb91..19eb0e0926a 100644 --- a/sql/base/characters_database.sql +++ b/sql/base/characters_database.sql @@ -181,6 +181,30 @@ LOCK TABLES `arena_team_member` WRITE; /*!40000 ALTER TABLE `arena_team_member` ENABLE KEYS */; UNLOCK TABLES; +-- +-- Table structure for table `auctionbidders` +-- + +DROP TABLE IF EXISTS `auctionbidders`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `auctionbidders` ( + `id` INT(10) unsigned NOT NULL DEFAULT '0', + `bidderguid` INT(10) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`id`,`bidderguid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `auctionbidders` +-- + +LOCK TABLES `auctionbidders` WRITE; +/*!40000 ALTER TABLE `auctionbidders` DISABLE KEYS */; +/*!40000 ALTER TABLE `auctionbidders` ENABLE KEYS */; +UNLOCK TABLES; + + -- -- Table structure for table `auctionhouse` -- @@ -2848,7 +2872,8 @@ INSERT INTO `updates` VALUES ('2017_09_17_00_characters.sql','48AF8F4A6A656EF0CCEA406B4AEF71A54A5DA98E','ARCHIVED','2017-09-17 00:00:00',0), ('2017_10_16_00_characters.sql','74500AFF41A5FB2EEE24B0BFAD750C988136BA6B','ARCHIVED','2017-10-16 00:00:00',0), ('2017_11_15_00_characters.sql','22D0C3854EE6D0983CD8C43DF0AC4269386F587C','ARCHIVED','2017-11-15 00:00:00',0), -('2017_11_26_00_characters.sql','4609CDC122E0A7F27A09C2605B329A06FC7FB7C2','ARCHIVED','2017-11-27 00:00:00',0); +('2017_11_26_00_characters.sql','4609CDC122E0A7F27A09C2605B329A06FC7FB7C2','ARCHIVED','2017-11-27 00:00:00',0), +('2017_11_28_00_characters.sql','6FF1F84B8985ADFC7FF97F0BF8E53403CF13C320','ARCHIVED','2017-11-28 00:00:00',0); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; UNLOCK TABLES; diff --git a/sql/base/dev/world_database.sql b/sql/base/dev/world_database.sql index 4fafb166f17..3f526a77e57 100644 --- a/sql/base/dev/world_database.sql +++ b/sql/base/dev/world_database.sql @@ -2665,6 +2665,24 @@ CREATE TABLE `quest_details` ( ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; +-- +-- Table structure for table `quest_greeting` +-- + +DROP TABLE IF EXISTS `quest_greeting`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!40101 SET character_set_client = utf8 */; +CREATE TABLE `quest_greeting` ( + `ID` mediumint(8) unsigned NOT NULL DEFAULT '0', + `Type` tinyint(3) unsigned NOT NULL DEFAULT '0', + `GreetEmoteType` smallint(5) unsigned NOT NULL DEFAULT '0', + `GreetEmoteDelay` int(10) unsigned NOT NULL DEFAULT '0', + `Greeting` text, + `VerifiedBuild` smallint(5) NOT NULL DEFAULT '0', + PRIMARY KEY (`ID`,`Type`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +/*!40101 SET character_set_client = @saved_cs_client */; + -- -- Table structure for table `quest_offer_reward` -- diff --git a/sql/updates/characters/4.3.4/2017_11_28_00_characters.sql b/sql/updates/characters/4.3.4/2017_11_28_00_characters.sql new file mode 100644 index 00000000000..21c7192f0b2 --- /dev/null +++ b/sql/updates/characters/4.3.4/2017_11_28_00_characters.sql @@ -0,0 +1,9 @@ +DROP TABLE IF EXISTS `auctionbidders`; +CREATE TABLE `auctionbidders` ( + `id` INT(10) UNSIGNED NOT NULL DEFAULT '0', + `bidderguid` INT(10) UNSIGNED NOT NULL DEFAULT '0', + PRIMARY KEY (`id`, `bidderguid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +INSERT INTO `auctionbidders` (`id`, `bidderguid`) +SELECT DISTINCT `id`, `buyguid` FROM `auctionhouse` WHERE `buyguid` != 0; diff --git a/sql/updates/world/4.3.4/2017_11_28_00_world_from_335_was_2017_11_28_00_world.sql b/sql/updates/world/4.3.4/2017_11_28_00_world_from_335_was_2017_11_28_00_world.sql new file mode 100644 index 00000000000..d1f855e6323 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_00_world_from_335_was_2017_11_28_00_world.sql @@ -0,0 +1,169 @@ +SET @CGUID:=144950; +SET @EVENT1:=6; -- New Year's Eve +SET @EVENT2:=72; -- Fireworks Spectacular + +DELETE FROM `creature_template_addon` WHERE `entry` = 15724; +INSERT INTO `creature_template_addon` (`entry`, `auras`) VALUES +(15724, '26115'); + +DELETE FROM `creature` WHERE `guid` BETWEEN @CGUID+0 AND @CGUID+40; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@CGUID+0 , 15724, 0, 0, 0, 1, 1, 0, 0, -14303.2, 442.825, 28.34243, 4.363323, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+1 , 15724, 0, 0, 0, 1, 1, 0, 0, -14304.99, 433.2847, 29.36503, 1.396263, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+2 , 15724, 0, 0, 0, 1, 1, 0, 0, -14272.64, 421.7396, 36.33361, 2.032897, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+3 , 15724, 0, 0, 0, 1, 1, 0, 0, -14314.71, 474.2673, 18.35473, 1.095548, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+4 , 15724, 0, 0, 0, 1, 1, 0, 0, -14280.88, 424.5142, 35.37117, 2.526357, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+5 , 15724, 0, 0, 0, 1, 1, 0, 0, -14278.35, 553.1927, 8.983554, 3.909538, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+6 , 15724, 0, 0, 0, 1, 1, 0, 0, -14302.29, 511.1232, 8.829531, 3.860822, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+7 , 15724, 0, 0, 0, 1, 1, 0, 0, -14286.46, 540.7466, 9.004538, 1.972222, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+8 , 15724, 0, 0, 0, 1, 1, 0, 0, -14293.2, 557.6228, 8.855279, 5.218534, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+9 , 15724, 0, 0, 0, 1, 1, 0, 0, -14343.7, 450.156, 7.633924, 5.585053, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1578) (Auras: 26115 - 26115) +(@CGUID+10, 15724, 0, 0, 0, 1, 1, 0, 0, -14366.24, 426.8889, 7.443278, 1.780236, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+11, 15724, 0, 0, 0, 1, 1, 0, 0, -14415.8, 518.922, 5.104904, 3.176499, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+12, 15724, 0, 0, 0, 1, 1, 0, 0, -14390.88, 414.8611, 22.82784, 2.740167, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+13, 15724, 0, 0, 0, 1, 1, 0, 0, -14427.25, 456.5104, 15.42189, 4.485496, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+14, 15724, 0, 0, 0, 1, 1, 0, 0, -14400.63, 413.0382, 7.934666, 0.7126135, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+15, 15724, 0, 0, 0, 1, 1, 0, 0, -14437.55, 462.809, 3.976888, 3.560472, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+16, 15724, 0, 0, 0, 1, 1, 0, 0, -14432.76, 509.2965, 7.009702, 4.28674, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+17, 15724, 0, 0, 0, 1, 1, 0, 0, -14405.37, 410.5955, 27.81997, 0.8901179, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+18, 15724, 0, 0, 0, 1, 1, 0, 0, -14386, 399.288, 6.645936, 2.408554, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+19, 15724, 0, 0, 0, 1, 1, 0, 0, -14426.78, 523.7899, 5.075222, 5.72468, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 35) (Auras: 26115 - 26115) +(@CGUID+20, 15724, 0, 0, 0, 1, 1, 0, 0, -14441.94, 481.1354, 15.273, 4.572762, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+21, 15724, 0, 0, 0, 1, 1, 0, 0, -14423.59, 424.6684, 21.85322, 3.719135, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+22, 15724, 0, 0, 0, 1, 1, 0, 0, -14445.73, 519.0208, 26.399, 5.340707, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+23, 15724, 0, 0, 0, 1, 1, 0, 0, -14442.65, 454.5469, 3.817722, 0.5235988, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+24, 15724, 0, 0, 0, 1, 1, 0, 0, -14438.98, 436.3958, 20.50878, 3.071779, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+25, 15724, 0, 0, 0, 1, 1, 0, 0, -14450.99, 462.4686, 15.43489, 3.682765, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+26, 15724, 0, 0, 0, 1, 1, 0, 0, -14448.31, 448.5817, 20.47261, 5.001486, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+27, 15724, 0, 0, 0, 1, 1, 0, 0, -14451.06, 454.7153, 20.54233, 0.7504916, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+28, 15724, 0, 0, 0, 1, 1, 0, 0, -14457.22, 494.8703, 26.35823, 1.029744, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+29, 15724, 0, 0, 0, 1, 1, 0, 0, -14458.1, 488.625, 15.20773, 1.937315, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+30, 15724, 0, 0, 0, 1, 1, 0, 0, -14449.02, 436.2082, 3.889718, 1.064651, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+31, 15724, 0, 0, 0, 1, 1, 0, 0, -14376.58, 386.1563, 22.67363, 4.852015, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+32, 15724, 0, 0, 0, 1, 1, 0, 0, -14461.74, 478.2934, 26.94364, 3.508112, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+33, 15724, 0, 0, 0, 1, 1, 0, 0, -14434.82, 416.8488, 8.818702, 0.6616975, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+34, 15724, 0, 0, 0, 1, 1, 0, 0, -14465.08, 474.9278, 15.03919, 6.038839, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+35, 15724, 0, 0, 0, 1, 1, 0, 0, -14460.96, 502.9427, 15.2055, 4.764749, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+36, 15724, 0, 0, 0, 1, 1, 0, 0, -14463.32, 502.349, 26.35558, 5.707227, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+37, 15724, 0, 0, 0, 1, 1, 0, 0, -14448.88, 429.5278, 15.10494, 3.735005, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+38, 15724, 0, 0, 0, 1, 1, 0, 0, -14471.41, 468.4601, 36.53928, 4.29351, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+39, 15724, 0, 0, 0, 1, 1, 0, 0, -14472.04, 483.9948, 20.465, 0.6283185, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0), -- 15724 (Area: 1759) (Auras: 26115 - 26115) +(@CGUID+40, 15724, 0, 0, 0, 1, 1, 0, 0, -14472.41, 486.0102, 26.77704, 5.547335, 120, 0, 0, 0, 0, 0, 0, 0, 0, '', 0); -- 15724 (Area: 1759) (Auras: 26115 - 26115) + +DELETE FROM `game_event_creature` WHERE `guid` BETWEEN @CGUID+0 AND @CGUID+40 AND `eventEntry`=@EVENT1; +INSERT INTO `game_event_creature` SELECT @EVENT1, creature.guid FROM `creature` WHERE creature.guid BETWEEN @CGUID+0 AND @CGUID+40; + +DELETE FROM `game_event_creature` WHERE `guid` BETWEEN @CGUID+0 AND @CGUID+40 AND `eventEntry`=@EVENT2; +INSERT INTO `game_event_creature` SELECT @EVENT2, creature.guid FROM `creature` WHERE creature.guid BETWEEN @CGUID+0 AND @CGUID+40; + +-- 6 New Year's Eve & 72 Fireworks Spectacular +-- Despawn Booty Bay Bruiser but not 718, 680, 653 +DELETE FROM `game_event_creature` WHERE `guid` IN +(76,77,160,161,162,163,164,165,178,182,589,590,591,592,593,594,595,596,597,598,599,649,650,651,652,654,655,656,657,679,681,682,683,686,687,688,689,692,693, +694,695,696,697,698,699,700,715,716,717,719,2164,2167) AND `eventEntry` IN (-@EVENT1, -@EVENT2); + +INSERT INTO `game_event_creature` (`eventEntry`, `guid`) VALUES +(-@EVENT1, 76), +(-@EVENT1, 77), +(-@EVENT1, 160), +(-@EVENT1, 161), +(-@EVENT1, 162), +(-@EVENT1, 163), +(-@EVENT1, 164), +(-@EVENT1, 165), +(-@EVENT1, 178), +(-@EVENT1, 182), +(-@EVENT1, 589), +(-@EVENT1, 590), +(-@EVENT1, 591), +(-@EVENT1, 592), +(-@EVENT1, 593), +(-@EVENT1, 594), +(-@EVENT1, 595), +(-@EVENT1, 596), +(-@EVENT1, 597), +(-@EVENT1, 598), +(-@EVENT1, 599), +(-@EVENT1, 649), +(-@EVENT1, 650), +(-@EVENT1, 651), +(-@EVENT1, 652), +(-@EVENT1, 654), +(-@EVENT1, 655), +(-@EVENT1, 656), +(-@EVENT1, 657), +(-@EVENT1, 679), +(-@EVENT1, 681), +(-@EVENT1, 682), +(-@EVENT1, 683), +(-@EVENT1, 686), +(-@EVENT1, 687), +(-@EVENT1, 688), +(-@EVENT1, 689), +(-@EVENT1, 692), +(-@EVENT1, 693), +(-@EVENT1, 694), +(-@EVENT1, 695), +(-@EVENT1, 696), +(-@EVENT1, 697), +(-@EVENT1, 698), +(-@EVENT1, 699), +(-@EVENT1, 700), +(-@EVENT1, 715), +(-@EVENT1, 716), +(-@EVENT1, 717), +(-@EVENT1, 719), +(-@EVENT1, 2164), +(-@EVENT1, 2167), +(-@EVENT2, 76), +(-@EVENT2, 77), +(-@EVENT2, 160), +(-@EVENT2, 161), +(-@EVENT2, 162), +(-@EVENT2, 163), +(-@EVENT2, 164), +(-@EVENT2, 165), +(-@EVENT2, 178), +(-@EVENT2, 182), +(-@EVENT2, 589), +(-@EVENT2, 590), +(-@EVENT2, 591), +(-@EVENT2, 592), +(-@EVENT2, 593), +(-@EVENT2, 594), +(-@EVENT2, 595), +(-@EVENT2, 596), +(-@EVENT2, 597), +(-@EVENT2, 598), +(-@EVENT2, 599), +(-@EVENT2, 649), +(-@EVENT2, 650), +(-@EVENT2, 651), +(-@EVENT2, 652), +(-@EVENT2, 654), +(-@EVENT2, 655), +(-@EVENT2, 656), +(-@EVENT2, 657), +(-@EVENT2, 679), +(-@EVENT2, 681), +(-@EVENT2, 682), +(-@EVENT2, 683), +(-@EVENT2, 686), +(-@EVENT2, 687), +(-@EVENT2, 688), +(-@EVENT2, 689), +(-@EVENT2, 692), +(-@EVENT2, 693), +(-@EVENT2, 694), +(-@EVENT2, 695), +(-@EVENT2, 696), +(-@EVENT2, 697), +(-@EVENT2, 698), +(-@EVENT2, 699), +(-@EVENT2, 700), +(-@EVENT2, 715), +(-@EVENT2, 716), +(-@EVENT2, 717), +(-@EVENT2, 719), +(-@EVENT2, 2164), +(-@EVENT2, 2167); diff --git a/sql/updates/world/4.3.4/2017_11_28_01_world_from_335_was_2017_11_28_01_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_01_world_from_335_was_2017_11_28_01_world_335.sql new file mode 100644 index 00000000000..ce519cfc7d6 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_01_world_from_335_was_2017_11_28_01_world_335.sql @@ -0,0 +1,2 @@ +-- +-- UPDATE `creature` SET `position_x`=-8850.944336, `position_y`=716.976990, `position_z`=97.425034, `Orientation`=1.968332, `MovementType`=0, `spawndist`=0 WHERE `guid`=120682 AND `id`=68; diff --git a/sql/updates/world/4.3.4/2017_11_28_02_world_from_335_was_2017_11_28_02_world.sql b/sql/updates/world/4.3.4/2017_11_28_02_world_from_335_was_2017_11_28_02_world.sql new file mode 100644 index 00000000000..524a82a691a --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_02_world_from_335_was_2017_11_28_02_world.sql @@ -0,0 +1,13 @@ +-- Naias +UPDATE `event_scripts` SET `x`= -12132.446289, `y`=964.982422, `z`= 5.194236, `o`= 5.130559 WHERE `id`=10554; +SET @ENTRY := 17207; +UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry`=@ENTRY; +DELETE FROM `smart_scripts` WHERE `source_type`=0 AND `entryorguid`=@ENTRY; +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`,`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 +(@ENTRY,0,0,0,0,0,100,0,5000,5000,12000,13000,11,37054,0,0,0,0,0,2,0,0,0,0,0,0,0,'Naias - IC - cast Water Bolt'), +(@ENTRY,0,1,0,0,0,100,0,2000,6000,10000,14000,11,34828,0,0,0,0,0,2,0,0,0,0,0,0,0,'Naias - IC -cast Water Shield'), +(@ENTRY,0,2,0,54,0,100,0,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,'Naias - just summoned - say text'); + +DELETE FROM `creature_text` WHERE `CreatureID`=17207; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(17207, 0, 0, 'Who challenges Naias? Puny $r, you are little better than those mindless trolls I have played against each other like so many pieces on a game board!', 12, 0, 100, 0, 0, 0, 13560, 0, 'Naias'); diff --git a/sql/updates/world/4.3.4/2017_11_28_03_world_from_335_was_2017_11_28_03_world.sql b/sql/updates/world/4.3.4/2017_11_28_03_world_from_335_was_2017_11_28_03_world.sql new file mode 100644 index 00000000000..7dbfe96e263 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_03_world_from_335_was_2017_11_28_03_world.sql @@ -0,0 +1,5 @@ +-- "Stinky" Ignatz +DELETE FROM `creature_text` WHERE `CreatureID`=4880 AND `GroupID`=10 AND `ID` IN (2,3); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4880,10,2,"Look out! The $n attacks!",12,0,100,0,0,0,1628,0,"\"Stinky\" Ignatz"), +(4880,10,3,"I'm glad you're here! Because I need your help!!",12,0,100,0,0,0,1631,0,"\"Stinky\" Ignatz"); diff --git a/sql/updates/world/4.3.4/2017_11_28_04_world_from_335_was_2017_11_28_04_world.sql b/sql/updates/world/4.3.4/2017_11_28_04_world_from_335_was_2017_11_28_04_world.sql new file mode 100644 index 00000000000..f3e27cadbbe --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_04_world_from_335_was_2017_11_28_04_world.sql @@ -0,0 +1,5 @@ +-- Grenka Bloodscreech +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4490; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4490 AND `source_type`=0; +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`, `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 +(4490,0,0,0,0,0,100,0,3000,5000,12000,15000,11,3589,0,0,0,0,0,1,0,0,0,0,0,0,0,"Grenka Bloodscreech - In Combat - Cast Deafening Screech"); diff --git a/sql/updates/world/4.3.4/2017_11_28_05_world_from_335_was_2017_11_28_05_world.sql b/sql/updates/world/4.3.4/2017_11_28_05_world_from_335_was_2017_11_28_05_world.sql new file mode 100644 index 00000000000..55274e9631a --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_05_world_from_335_was_2017_11_28_05_world.sql @@ -0,0 +1,19 @@ +-- Kin'weelay +DELETE FROM `creature_text` WHERE `CreatureID`=2519 AND `GroupID` IN (2,3,4); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(2519,2,0,"I am eager to hear what so angry an orc has to say...",12,0,100,1,0,0,1664,0,"Kin'weelay"), +(2519,3,0,"%s places Marg's head in the cauldron.",16,0,100,0,0,0,1665,0,"Kin'weelay"), +(2519,4,0,"Peer into the cauldron, $n. Marg wishes to speak...",12,0,100,1,0,0,1666,0,"Kin'weelay"); + +DELETE FROM `smart_scripts` WHERE `entryorguid`=2519 AND `source_type`=0 AND `id`=1; +DELETE FROM `smart_scripts` WHERE `entryorguid`=251901 AND `source_type`=9; +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`, `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 +(2519,0,1,0,20,0,100,0,1240,0,0,0,80,251901,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Quest 'The Troll Witchdoctor' Finished - Run Script"), +(251901,9,0,0,0,0,100,0,0,0,0,0,105,16,0,0,0,0,0,14,6783,2076,0,0,0,0,0,"Kin'weelay - On Script - Add Gameobject Flag"), +(251901,9,1,0,0,0,100,0,0,0,0,0,83,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Remove Npc Flag Questgiver"), +(251901,9,2,0,0,0,100,0,1000,1000,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Say Line 2"), +(251901,9,3,0,0,0,100,0,3000,3000,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Say Line 3"), +(251901,9,4,0,0,0,100,0,2000,2000,0,0,11,3644,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Cast Speak with Heads"), +(251901,9,5,0,0,0,100,0,6000,6000,0,0,1,4,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Say Line 4"), +(251901,9,6,0,0,0,100,0,0,0,0,0,82,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kin'weelay - On Script - Add Npc Flag Questgiver"), +(251901,9,7,0,0,0,100,0,0,0,0,0,106,16,0,0,0,0,0,14,6783,2076,0,0,0,0,0,"Kin'weelay - On Script - Remove Gameobject Flag"); diff --git a/sql/updates/world/4.3.4/2017_11_28_06_world_from_335_was_2017_11_28_06_world.sql b/sql/updates/world/4.3.4/2017_11_28_06_world_from_335_was_2017_11_28_06_world.sql new file mode 100644 index 00000000000..ac84289e082 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_06_world_from_335_was_2017_11_28_06_world.sql @@ -0,0 +1,17 @@ +-- Kravel Koalbeard +DELETE FROM `creature_text` WHERE `CreatureID`=4452 AND `GroupID` IN (0,1,2); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4452,0,0,"%s places the crate of parts on the ground.",16,0,100,0,0,0,1479,0,"Kravel Koalbeard"), +(4452,1,0,"%s grabs a part and puts it in his pocket...",16,0,100,0,0,0,1477,0,"Kravel Koalbeard"), +(4452,2,0,"There, that should do it...",12,0,100,0,0,0,1478,0,"Kravel Koalbeard"); + +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4452; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4452 AND `source_type`=0 AND `id`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=445200 AND `source_type`=9; +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`, `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 +(4452,0,0,0,20,0,100,0,1112,0,0,0,80,445200,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Quest 'Parts for Kravel' Finished - Run Script"), +(445200,9,0,0,0,0,100,0,0,0,0,0,83,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Remove Npc Flag Questgiver"), +(445200,9,1,0,0,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 0"), +(445200,9,2,0,0,0,100,0,4000,4000,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 1"), +(445200,9,3,0,0,0,100,0,2000,2000,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 2"), +(445200,9,4,0,0,0,100,0,2000,2000,0,0,82,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Add Npc Flag Questgiver"); diff --git a/sql/updates/world/4.3.4/2017_11_28_07_world_from_335_was_2017_11_28_07_world.sql b/sql/updates/world/4.3.4/2017_11_28_07_world_from_335_was_2017_11_28_07_world.sql new file mode 100644 index 00000000000..721eb0c9f8b --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_07_world_from_335_was_2017_11_28_07_world.sql @@ -0,0 +1,35 @@ +-- Martek the Exiled +DELETE FROM `creature_text` WHERE `CreatureID`=4618; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4618,0,0,"%s takes the indurium flakes to his forge.",16,0,100,0,0,0,1500,0,"Martek the Exiled"), +(4618,1,0,"Now let's heat up these flakes...",12,0,100,0,0,0,1501,0,"Martek the Exiled"), +(4618,2,0,"So far they're holding. Let's turn up the heat...",12,0,100,1,0,0,1502,0,"Martek the Exiled"), +(4618,3,0,"By Orgrim! This indurium can withstand massive heat!",12,0,100,5,0,0,1503,0,"Martek the Exiled"), +(4618,4,0,"A successful test! $n, this indurium is some amazing stuff.",12,0,100,1,0,0,1504,0,"Martek the Exiled"); + +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4618; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4618 AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (461800,461801) AND `source_type`=9; +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`, `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 +(4618,0,0,0,20,0,100,0,1108,0,0,0,80,461800,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Quest 'Indurium' Finished - Run Script"), +(4618,0,1,0,40,0,100,0,1,4618,0,0,80,461801,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Waypoint 1 Reached - Run Script"), +(4618,0,2,0,40,0,100,0,2,4618,0,0,66,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Waypoint 2 Reached - Set Orientation"), +(461800,9,0,0,0,0,100,0,0,0,0,0,83,3,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Remove Npc Flag Questgiver+Gossip"), +(461800,9,1,0,0,0,100,0,1000,1000,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Say Line 0"), +(461800,9,2,0,0,0,100,0,0,0,0,0,53,0,4618,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Start Waypoint"), +(461801,9,0,0,0,0,100,0,0,0,0,0,54,19000,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Pause Waypoint"), +(461801,9,1,0,0,0,100,0,0,0,0,0,66,0,0,0,0,0,0,8,0,0,0,0,0,0,1.24047,"Martek the Exiled - On Script - Set Orientation"), +(461801,9,2,0,0,0,100,0,1000,1000,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Say Line 1"), +(461801,9,3,0,0,0,100,0,0,0,0,0,17,69,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Set Emote State 69"), +(461801,9,4,0,0,0,100,0,3000,3000,0,0,17,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Set Emote State 0"), +(461801,9,5,0,0,0,100,0,1000,1000,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Say Line 2"), +(461801,9,6,0,0,0,100,0,3000,3000,0,0,17,69,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Set Emote State 69"), +(461801,9,7,0,0,0,100,0,3000,3000,0,0,17,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Set Emote State 0"), +(461801,9,8,0,0,0,100,0,1000,1000,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Say Line 3"), +(461801,9,9,0,0,0,100,0,5000,5000,0,0,1,4,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Say Line 4"), +(461801,9,10,0,0,0,100,0,5000,5000,0,0,82,3,0,0,0,0,0,1,0,0,0,0,0,0,0,"Martek the Exiled - On Script - Add Npc Flag Questgiver+Gossip"); + +DELETE FROM `waypoints` WHERE `entry`=4618; +INSERT INTO `waypoints` (`entry`, `pointid`, `position_x`, `position_y`, `position_z`, `point_comment`) VALUES +(4618,1,-6764.09,-3126.58,241.756,""), +(4618,2,-6763.39,-3129.3,241.384,""); diff --git a/sql/updates/world/4.3.4/2017_11_28_08_world_from_335_was_2017_11_28_08_world.sql b/sql/updates/world/4.3.4/2017_11_28_08_world_from_335_was_2017_11_28_08_world.sql new file mode 100644 index 00000000000..ef6cf8dba8e --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_08_world_from_335_was_2017_11_28_08_world.sql @@ -0,0 +1,15 @@ +-- Fizzle Brassbolts +DELETE FROM `creature_text` WHERE `CreatureID`=4454; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4454,0,0,"%s listens as $n tells him of $ghis:her; adventures in the Badlands.",16,0,100,0,0,0,1495,0,"Fizzle Brassbolts"), +(4454,1,0,"Astounding! So then indurium is the key!",12,0,100,4,0,0,1496,0,"Fizzle Brassbolts"); + +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4454; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4454 AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=445400 AND `source_type`=9; +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`, `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 +(4454,0,0,0,20,0,100,0,1137,0,0,0,80,445400,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fizzle Brassbolts - On Quest 'News for Fizzle' Finished - Run Script"), +(445400,9,0,0,0,0,100,0,0,0,0,0,83,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fizzle Brassbolts - On Script - Remove Npc Flag Questgiver"), +(445400,9,1,0,0,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fizzle Brassbolts - On Script - Say Line 0"), +(445400,9,2,0,0,0,100,0,3000,3000,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fizzle Brassbolts - On Script - Say Line 1"), +(445400,9,3,0,0,0,100,0,2000,2000,0,0,82,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fizzle Brassbolts - On Script - Add Npc Flag Questgiver"); diff --git a/sql/updates/world/4.3.4/2017_11_28_09_world_from_335_was_2017_11_28_09_world.sql b/sql/updates/world/4.3.4/2017_11_28_09_world_from_335_was_2017_11_28_09_world.sql new file mode 100644 index 00000000000..4b751b3c19c --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_09_world_from_335_was_2017_11_28_09_world.sql @@ -0,0 +1,20 @@ +DELETE FROM `creature_text` WHERE `CreatureID`=773; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(773,0,0,"%s snorts a speck of dream dust up his nose...",16,0,100,0,0,0,1548,0,"Krazek"), +(773,1,0,"%s is dazed...",16,0,100,0,0,0,1549,0,"Krazek"), +(773,2,0,"ACHOO!",12,0,100,33,0,0,1550,0,"Krazek"), +(773,3,0,"Wow! $n, that dream dust is powerful stuff!",12,0,100,5,0,0,1551,0,"Krazek"); + +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=773; +DELETE FROM `smart_scripts` WHERE `entryorguid`=773 AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=77300 AND `source_type`=9; +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`, `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 +(773,0,0,0,20,0,100,0,1116,0,0,0,80,77300,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Quest 'Dream Dust in the Swamp' Finished - Run Script"), +(77300,9,0,0,0,0,100,0,0,0,0,0,83,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Remove Npc Flag Questgiver"), +(77300,9,1,0,0,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Say Line 0"), +(77300,9,2,0,0,0,100,0,2000,2000,0,0,11,6903,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Cast Krazek's Drug"), +(77300,9,3,0,0,0,100,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Say Line 1"), +(77300,9,4,0,0,0,100,0,11000,11000,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Say Line 2"), +(77300,9,5,0,0,0,100,0,2000,2000,0,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Say Line 2"), +(77300,9,6,0,0,0,100,0,3000,3000,0,0,1,3,0,0,0,0,0,7,0,0,0,0,0,0,0,"Krazek - On Script - Say Line 3"), +(77300,9,7,0,0,0,100,0,2000,2000,0,0,82,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Krazek - On Script - Add Npc Flag Questgiver"); diff --git a/sql/updates/world/4.3.4/2017_11_28_10_world_from_335_was_2017_11_28_10_world.sql b/sql/updates/world/4.3.4/2017_11_28_10_world_from_335_was_2017_11_28_10_world.sql new file mode 100644 index 00000000000..64708e7a29e --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_10_world_from_335_was_2017_11_28_10_world.sql @@ -0,0 +1,16 @@ +-- Kravel Koalbeard +DELETE FROM `creature_text` WHERE `CreatureID`=4452 AND `GroupID` IN (3,4,5); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4452,3,0,"This stout sure smells strong!",12,0,100,0,0,0,1489,0,"Kravel Koalbeard"), +(4452,4,0,"Let's have just a small taste...",12,0,100,7,0,0,1491,0,"Kravel Koalbeard"), +(4452,5,0,"Wait! What am I thinking! We have a job to do with this stuff.",12,0,100,5,0,0,1492,0,"Kravel Koalbeard"); + +DELETE FROM `smart_scripts` WHERE `entryorguid`=4452 AND `source_type`=0 AND `id`=1; +DELETE FROM `smart_scripts` WHERE `entryorguid`=445201 AND `source_type`=9; +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`, `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 +(4452,0,1,0,20,0,100,0,1119,0,0,0,80,445201,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Quest 'Zanzil's Mixture and a Fool's Stout' Finished - Run Script"), +(445201,9,0,0,0,0,100,0,0,0,0,0,83,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Remove Npc Flag Questgiver"), +(445201,9,1,0,0,0,100,0,1000,1000,0,0,1,3,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 3"), +(445201,9,2,0,0,0,100,0,4000,4000,0,0,1,4,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 4"), +(445201,9,3,0,0,0,100,0,3000,3000,0,0,1,5,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Say Line 5"), +(445201,9,4,0,0,0,100,0,2000,2000,0,0,82,2,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kravel Koalbeard - On Script - Add Npc Flag Questgiver"); diff --git a/sql/updates/world/4.3.4/2017_11_28_11_world_from_335_was_2017_11_28_11_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_11_world_from_335_was_2017_11_28_11_world_335.sql new file mode 100644 index 00000000000..04f3556fb2b --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_11_world_from_335_was_2017_11_28_11_world_335.sql @@ -0,0 +1,13 @@ +/* +DELETE FROM `quest_greeting` WHERE `ID` IN (10537,4046,4452,2216,2706,5412,5641,4498,2817); +INSERT INTO `quest_greeting` (`ID`, `Type`, `GreetEmoteType`, `GreetEmoteDelay`, `Greeting`, `VerifiedBuild`) VALUES +(10537,0,0,0,"We cannot take care of all the threats in this area alone. We could use another fighting hand, $n.",0), -- Cliffwatcher Longhorn +(2216,0,0,0,"We are but so close to developing the New Plague that our Dark Lady desires with such fervor.",0), -- Apothecary Lydon +(4452,0,0,0,"Come a little closer. We have important matters to discuss, you and I.$B$BAnd some of them we don't want everyone to hear...",0), -- Kravel Koalbeard +(4046,0,1,0,"You must listen, young $c. Listen to the whisperings in the darkness, for they offer guidance in these troubled times.",0), -- Magatha Grimtotem +(2706,0,0,0,"Thanks to the Warchief, even here in the ruins of our former prison some hope remains, and the Horde rises anew.",0), -- Tor'gan +(5412,0,0,0,"The centaur clans rule the wastes of Desolace. If united, they would be a terrible force. It is then good that the centaur clans are not united but instead bicker and war amongst themselves.",0), -- Gurda Wildmane +(5641,0,1,0,"The main threat Thrall wishes dealt with is the Burning Blade---members of the Horde that have given their loyalty to the demons. They seek to practice their dark magic and care little for Thrall's visions of the Horde's future here in Kalimdor.",0), -- Takata Steelblade +(4498,0,0,0,"Greetings, $c.",0), -- Maurin Bonesplitter +(2817,0,0,0,"You must be hard up to be wandering this Badlands, $c. A hard up like me.$B$BOr maybe you're here because you're crazy. Crazy, like me.",0); -- Rigglefuzz +*/ diff --git a/sql/updates/world/4.3.4/2017_11_28_12_world_from_335_was_2017_11_28_12_world.sql b/sql/updates/world/4.3.4/2017_11_28_12_world_from_335_was_2017_11_28_12_world.sql new file mode 100644 index 00000000000..0c667dfc5bd --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_12_world_from_335_was_2017_11_28_12_world.sql @@ -0,0 +1,5 @@ +-- +DELETE FROM `creature_text` WHERE `CreatureID`=35476 AND `GroupID`=0 AND `ID` IN (2,3); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(35476,0,2,'It won''t be long before Fizzlebang is a household word, used to scare children into bed! "Beware, or Fizzlebang will summon a mighty demon to eat you!"',12,0,100,1,0,0,35817,0,"Wilfred Fizzlebang"), +(35476,0,3,'I, Wilfred Fizzlebang, have been invited to this quaint tournament to make use of my extensive knowledge of the summoning arts. What better choice?',12,0,100,1,0,0,35815,0,"Wilfred Fizzlebang"); diff --git a/sql/updates/world/4.3.4/2017_11_28_13_world_from_335_was_2017_11_28_13_world.sql b/sql/updates/world/4.3.4/2017_11_28_13_world_from_335_was_2017_11_28_13_world.sql new file mode 100644 index 00000000000..fcff9e52d6d --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_13_world_from_335_was_2017_11_28_13_world.sql @@ -0,0 +1,11 @@ +-- Gnome Pit Boss & Goblin Pit Boss +DELETE FROM `creature_text` WHERE `CreatureID` IN (4495,4496); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4495,0,0,"Look at what $n brought us! Let's drink up!",12,0,100,22,0,0,8242,0,"Gnome Pit Boss"), +(4496,0,0,"$n brought us booze! Let's party!",12,0,100,22,0,0,8244,0,"Goblin Pit Boss"); + +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry` IN (4495,4496); +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (4495,4496) AND `source_type`=0; +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`, `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 +(4495,0,0,0,20,0,100,0,1120,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,"Kravel Koalbeard - On Quest 'Get the Gnomes Drunk' Finished - Say Line 0"), +(4496,0,0,0,20,0,100,0,1121,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,0,0,0,"Kravel Koalbeard - On Quest 'Get the Goblins Drunk' Finished - Say Line 0"); diff --git a/sql/updates/world/4.3.4/2017_11_28_14_world_from_335_was_2017_11_28_14_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_14_world_from_335_was_2017_11_28_14_world_335.sql new file mode 100644 index 00000000000..89341c74a72 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_14_world_from_335_was_2017_11_28_14_world_335.sql @@ -0,0 +1,227 @@ +/* +-- Forsaken Raider +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=17108; +DELETE FROM `smart_scripts` WHERE `entryorguid`=17108 AND `source_type`=0; +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`, `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 +(17108,0,0,0,0,0,100,0,3000,7000,11000,15000,11,7992,32,0,0,0,0,2,0,0,0,0,0,0,0,"Forsaken Raider - In Combat - Cast Slowing Poison"), +(17108,0,1,0,25,0,100,0,0,0,0,0,11,6718,0,0,0,0,0,1,0,0,0,0,0,0,0,"Forsaken Raider - On Reset - Cast Phasing Stealth"); + +-- Forest Moss Creeper +DELETE FROM `smart_scripts` WHERE `entryorguid`=2350 AND `source_type`=0; +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`, `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 +(2350,0,0,0,0,0,100,0,3000,6000,31000,36000,11,3396,0,0,0,0,0,2,0,0,0,0,0,0,0,"Forest Moss Creeper - In Combat - Cast Corrosive Poison"); + +-- Giant Moss Creeper +DELETE FROM `smart_scripts` WHERE `entryorguid`=2349 AND `source_type`=0; +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`, `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 +(2349,0,0,0,0,0,100,0,3000,6000,31000,36000,11,3396,0,0,0,0,0,2,0,0,0,0,0,0,0,"Giant Moss Creeper - In Combat - Cast Corrosive Poison"); + +-- Mudsnout Shaman +DELETE FROM `smart_scripts` WHERE `entryorguid`=2373 AND `source_type`=0 AND `id`=1; +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`, `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 +(2373,0,1,0,14,0,100,0,400,40,14000,19000,11,11014,0,0,0,0,0,7,0,0,0,0,0,0,0,"Mudsnout Shaman - Friendly At 400 Health - Cast Healing Wave"); + +-- Mudsnout Gnoll +DELETE FROM `smart_scripts` WHERE `entryorguid`=2372 AND `source_type`=0 AND `id`=1; +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`, `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 +(2372,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Mudsnout Gnoll - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Hillsbrad Councilman +UPDATE `smart_scripts` SET `event_param2`=8, `comment`="Hillsbrad Councilman - Within 0-8 Range - Cast 'Frost Nova'" WHERE `entryorguid`=2387 AND `source_type`=0 AND `id`=2; + +-- Magistrate Burnside +UPDATE `smart_scripts` SET `action_param2`=2 WHERE `entryorguid`=2335 AND `source_type`=0 AND `id` IN (1,2); + +-- Syndicate Shadow Mage +UPDATE `smart_scripts` SET `event_param3`=3400, `event_param4`=4800 WHERE `entryorguid`=2244 AND `source_type`=0 AND `id`=0; + +-- Syndicate Watchman +DELETE FROM `smart_scripts` WHERE `entryorguid`=2261 AND `source_type`=0; +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`, `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 +(2261,0,0,0,25,0,100,0,0,0,0,0,11,3582,0,0,0,0,0,1,0,0,0,0,0,0,0,"Syndicate Watchman - On Reset - Cast Torch Burst"), +(2261,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Syndicate Watchman - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Syndicate Rogue +DELETE FROM `smart_scripts` WHERE `entryorguid`=2260 AND `source_type`=0; +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`, `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 +(2260,0,0,0,67,0,100,0,6000,8000,0,0,11,37685,0,0,0,0,0,2,0,0,0,0,0,0,0,"Syndicate Rogue - On Behind Target - Cast Backstab"), +(2260,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Syndicate Rogue - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Dun Garok Priest +DELETE FROM `smart_scripts` WHERE `entryorguid`=2346 AND `source_type`=0 AND `id`=1; +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`, `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 +(2346,0,1,0,14,0,100,0,250,40,15000,21000,11,11642,0,0,0,0,0,7,0,0,0,0,0,0,0,"Dun Garok Priest - Friendly At 250 Health - Cast Heal"); + +-- Remove wrong texts from Jailor Marlgen +DELETE FROM `creature_text` WHERE `CreatureID`=2428; +DELETE FROM `smart_scripts` WHERE `entryorguid`=2428 AND `source_type`=0 AND `id`=0; + +-- Random movement for some creatures +UPDATE `creature` SET `spawndist`=5, `MovementType`=1 WHERE `guid` IN (15959,15954,15962,15956,16025,16027); +UPDATE `creature` SET `spawndist`=15, `MovementType`=1 WHERE `guid` IN (15839,15974,90785); + +-- Add emote for Hillsbrad Apprentice Blacksmith +UPDATE `creature_addon` SET `emote`=233 WHERE `guid`=15958; + +-- Fix bytes2 for Dun Garok Riflemen +UPDATE `creature_addon` SET `bytes2`=2 WHERE `guid` IN (15686,15858,15869,15874,16105,16113,16167,16179,16180,15699,16183); + +-- Pooling for Creepthess +SET @GUID := 40492; +DELETE FROM `creature` WHERE `guid` IN (@GUID, @GUID+1); +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,14279,0,0,0,1,1,0,0,-747.954,278.299,48.0277,6.23466,72000,15,0,665,0,1,0,0,0,"",0), +(@GUID+1,14279,0,0,0,1,1,0,0,-729.424,-202.325,39.7752,3.78422,72000,15,0,665,0,1,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1111; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1111,1,"Creepthess"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1111; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1111,0,"Creepthess (14279) - Spawn 1"), +(@GUID+1,1111,0,"Creepthess (14279) - Spawn 2"), +(90785,1111,0,"Creepthess (14279) - Spawn 3"); + +-- Pooling for Big Samras +SET @GUID := 40494; +DELETE FROM `creature` WHERE `guid` IN (@GUID, @GUID+1, @GUID+2); +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,14280,0,0,0,1,1,0,0,-636.669,-1651.57,60.7494,0.490619,43200,15,0,665,0,1,0,0,0,"",0), +(@GUID+1,14280,0,0,0,1,1,0,0,-281.772,-1664.94,95.4076,3.78422,43200,15,0,665,0,1,0,0,0,"",0), +(@GUID+2,14280,0,0,0,1,1,0,0,-206.604,-1252.77,114.217,1.35927,43200,15,0,665,0,1,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1112; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1112,1,"Big Samras"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1112; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1112,0,"Big Samras (14280) - Spawn 1"), +(@GUID+1,1112,0,"Big Samras (14280) - Spawn 2"), +(@GUID+2,1112,0,"Big Samras (14280) - Spawn 3"), +(15839,1112,0,"Big Samras (14280) - Spawn 4"); + +-- Pathing for Lady Zephris +UPDATE `creature` SET `position_x`=-1276.08, `position_y`=-976, `position_z`=-0.561754, `spawndist`=0, `MovementType`=2 WHERE `guid`=16047; +DELETE FROM `creature_addon` WHERE `guid`=16047; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(16047,160470,0,0,1,0,""); + +DELETE FROM `waypoint_data` WHERE `id`=160470; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +(160470,1,-1276.08,-976,-0.561754,0,0,0,0,100,0), +(160470,2,-1258.03,-950.293,1.1057,0,0,0,0,100,0), +(160470,3,-1245.88,-925.964,0.299947,0,0,0,0,100,0), +(160470,4,-1241.09,-902.986,0.176827,0,0,0,0,100,0), +(160470,5,-1216.54,-879.045,-0.012203,0,0,0,0,100,0), +(160470,6,-1204.1,-862.604,-0.022923,0,0,0,0,100,0), +(160470,7,-1177.1,-836.439,0.405907,0,0,0,0,100,0), +(160470,8,-1155.64,-807.945,-0.769681,0,0,0,0,100,0), +(160470,9,-1134.61,-785.771,-0.684184,0,0,0,0,100,0), +(160470,10,-1111.14,-792.039,-0.047394,0,0,0,0,100,0), +(160470,11,-1120.56,-803.641,2.45509,0,0,0,0,100,0), +(160470,12,-1149.99,-814.86,1.4159,0,0,0,0,100,0), +(160470,13,-1170.68,-831.741,0.905636,0,0,0,0,100,0), +(160470,14,-1186.74,-842.143,-0.424433,0,0,0,0,100,0), +(160470,15,-1205.23,-862.842,-0.181762,0,0,0,0,100,0), +(160470,16,-1221.71,-885.192,-0.091555,0,0,0,0,100,0), +(160470,17,-1244.15,-916.463,0.404305,0,0,0,0,100,0), +(160470,18,-1261.29,-949.49,0.631858,0,0,0,0,100,0), +(160470,19,-1277.74,-975.288,-0.7961,0,0,0,0,100,0), +(160470,20,-1290.77,-995.08,-0.895832,0,0,0,0,100,0), +(160470,21,-1313.06,-1004.87,-1.52388,0,0,0,0,100,0), +(160470,22,-1344.6,-1026.51,0.392506,0,0,0,0,100,0), +(160470,23,-1366.78,-1036.92,2.69835,0,0,0,0,100,0), +(160470,24,-1392.12,-1048.81,3.73084,0,0,0,0,100,0), +(160470,25,-1414.89,-1059.5,4.62124,0,0,0,0,100,0), +(160470,26,-1433.06,-1083.33,8.08795,0,0,0,0,100,0), +(160470,27,-1441.77,-1091.69,9.71514,0,0,0,0,100,0), +(160470,28,-1457.46,-1095.82,3.53264,0,0,0,0,100,0), +(160470,29,-1468.13,-1097.07,-1.56115,0,0,0,0,100,0), +(160470,30,-1472.68,-1080.05,-1.56115,0,0,0,0,100,0), +(160470,31,-1458.45,-1062.96,-1.56115,0,0,0,0,100,0), +(160470,32,-1451.28,-1056.44,-1.56115,0,0,0,0,100,0), +(160470,33,-1432.58,-1051.24,-0.703612,0,0,0,0,100,0), +(160470,34,-1409.8,-1040.14,-0.755762,0,0,0,0,100,0), +(160470,35,-1385.61,-1038.06,0.275001,0,0,0,0,100,0), +(160470,36,-1357.3,-1024.25,-0.809856,0,0,0,0,100,0), +(160470,37,-1326.17,-1014.01,-1.29519,0,0,0,0,100,0), +(160470,38,-1303.49,-997.97,-1.23017,0,0,0,0,100,0); + +-- Pathing for Scargil +UPDATE `creature` SET `position_x`=-1172.77, `position_y`=123.663, `position_z`=0.157823, `spawndist`=0, `MovementType`=2 WHERE `guid`=15970; +DELETE FROM `creature_addon` WHERE `guid`=15970; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(15970,159700,0,0,1,0,""); + +DELETE FROM `waypoint_data` WHERE `id`=159700; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +(159700,1,-1172.77,123.663,0.157823,0,0,0,0,100,0), +(159700,2,-1172.87,118.873,0.322706,0,0,0,0,100,0), +(159700,3,-1164.9,111.492,3.19687,0,0,0,0,100,0), +(159700,4,-1159.58,90.6803,1.9422,0,0,0,0,100,0), +(159700,5,-1152.25,56.6911,0.424014,0,0,0,0,100,0), +(159700,6,-1151.73,33.0373,-0.172392,0,0,0,0,100,0), +(159700,7,-1151.24,14.382,-0.125738,0,0,0,0,100,0), +(159700,8,-1144.4,0.226702,-0.029557,0,0,0,0,100,0), +(159700,9,-1133.86,-10.8596,-0.189161,0,0,0,0,100,0), +(159700,10,-1104.63,-13.0749,0.554654,0,0,0,0,100,0), +(159700,11,-1081.96,-16.5233,1.19604,0,0,0,0,100,0), +(159700,12,-1073.98,-31.1868,0.77585,0,0,0,0,100,0), +(159700,13,-1089.35,-31.3077,-1.07762,0,0,0,0,100,0), +(159700,14,-1115.1,-22.2406,-1.09916,0,0,0,0,100,0), +(159700,15,-1138.02,-7.81281,-0.156224,0,0,0,0,100,0), +(159700,16,-1150.51,10.8034,-0.153825,0,0,0,0,100,0), +(159700,17,-1154.11,26.389,-0.769621,0,0,0,0,100,0), +(159700,18,-1154.74,64.912,0.486252,0,0,0,0,100,0), +(159700,19,-1150.34,95.8842,3.87744,0,0,0,0,100,0), +(159700,20,-1143.77,109.315,7.45656,0,0,0,0,100,0), +(159700,21,-1146.89,127.139,5.36332,0,0,0,0,100,0), +(159700,22,-1163.18,154.262,0.071613,0,0,0,0,100,0), +(159700,23,-1151.92,184.312,0.078821,0,0,0,0,100,0), +(159700,24,-1138.85,210.151,0.64674,0,0,0,0,100,0), +(159700,25,-1120.27,230.815,2.71415,0,0,0,0,100,0), +(159700,26,-1103.25,257.063,3.6444,0,0,0,0,100,0), +(159700,27,-1088.66,273.3,2.29494,0,0,0,0,100,0), +(159700,28,-1067.18,270.992,2.63842,0,0,0,0,100,0), +(159700,29,-1033.01,278.171,0.676006,0,0,0,0,100,0), +(159700,30,-1007.7,280.798,1.6107,0,0,0,0,100,0), +(159700,31,-989.369,301.059,0.846009,0,0,0,0,100,0), +(159700,32,-981.966,323.582,-1.07191,0,0,0,0,100,0), +(159700,33,-975.038,334.123,-1.3281,0,0,0,0,100,0), +(159700,34,-963.251,334.046,2.5684,0,0,0,0,100,0), +(159700,35,-960.338,322.978,6.63507,0,0,0,0,100,0), +(159700,36,-967.984,309.869,5.90922,0,0,0,0,100,0), +(159700,37,-992.889,300.466,0.063592,0,0,0,0,100,0), +(159700,38,-1009.43,291.063,-1.3482,0,0,0,0,100,0), +(159700,39,-1032.87,284.953,-1.52593,0,0,0,0,100,0), +(159700,40,-1049.37,280.662,-0.629822,0,0,0,0,100,0), +(159700,41,-1078.16,282.367,-0.724659,0,0,0,0,100,0), +(159700,42,-1095.26,287.094,-1.10337,0,0,0,0,100,0), +(159700,43,-1105.95,283.475,-0.136028,0,0,0,0,100,0), +(159700,44,-1117.02,277.427,-0.169369,0,0,0,0,100,0), +(159700,45,-1121.42,258.795,0.527346,0,0,0,0,100,0), +(159700,46,-1130.18,237.408,-0.735995,0,0,0,0,100,0), +(159700,47,-1142.05,208.455,-0.004859,0,0,0,0,100,0), +(159700,48,-1155.78,174.963,-0.17143,0,0,0,0,100,0), +(159700,49,-1163.85,152.053,0.127761,0,0,0,0,100,0), +(159700,50,-1169.17,136.967,0.156267,0,0,0,0,100,0); + +-- Pathing for Tamra Stormpike +UPDATE `creature` SET `position_x`=-1316.82, `position_y`=-1212.59, `position_z`=49.9032, `spawndist`=0, `MovementType`=2 WHERE `guid`=90783; +DELETE FROM `creature_addon` WHERE `guid`=90783; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(90783,907830,0,0,1,0,""); + +DELETE FROM `waypoint_data` WHERE `id`=907830; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +(907830,1,-1316.82,-1212.59,49.9032,0,0,0,0,100,0), +(907830,2,-1353.08,-1242.71,49.9048,0,0,0,0,100,0), +(907830,3,-1357.06,-1248.49,49.9033,0,0,0,0,100,0), +(907830,4,-1329.89,-1278.96,49.9017,0,0,0,0,100,0), +(907830,5,-1289.34,-1243.49,49.9032,0,0,0,0,100,0), +(907830,6,-1331.07,-1278.83,49.9017,0,0,0,0,100,0), +(907830,7,-1357.24,-1246.72,49.9025,0,0,0,0,100,0), +(907830,8,-1334.4,-1227.01,49.9047,0,0,0,0,100,0); +*/ diff --git a/sql/updates/world/4.3.4/2017_11_28_15_world_from_335_was_2017_11_28_15_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_15_world_from_335_was_2017_11_28_15_world_335.sql new file mode 100644 index 00000000000..9522a89e41b --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_15_world_from_335_was_2017_11_28_15_world_335.sql @@ -0,0 +1,232 @@ +/* +-- Demon Spirit +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=11876; +DELETE FROM `smart_scripts` WHERE `entryorguid`=11876 AND `source_type`=0; +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`, `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 +(11876,0,0,0,11,0,100,0,0,0,0,0,11,7741,0,0,0,0,0,1,0,0,0,0,0,0,0,"Demon Spirit - On Respawn - Cast Summoned Demon"), +(11876,0,1,0,11,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,20,0,0,0,0,0,0,"Demon Spirit - On Respawn - Start Attacking"); + +-- Khan Dez'hepah +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=5600; +DELETE FROM `smart_scripts` WHERE `entryorguid`=5600 AND `source_type`=0; +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`, `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 +(5600,0,0,0,4,0,100,0,0,0,0,0,11,7165,0,0,0,0,0,1,0,0,0,0,0,0,0,"Khan Dez'hepah - On Aggro - Cast Battle Stance"), +(5600,0,1,0,0,0,100,0,5000,7000,6000,10000,11,25710,0,0,0,0,0,2,0,0,0,0,0,0,0,"Khan Dez'hepah - In Combat - Cast Heroic Strike"), +(5600,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Khan Dez'hepah - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Khan Hratha +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=5402; +DELETE FROM `smart_scripts` WHERE `entryorguid`=5402 AND `source_type`=0; +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`, `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 +(5402,0,0,0,0,0,100,0,1000,5000,12000,18000,11,9128,0,0,0,0,0,1,0,0,0,0,0,0,0,"Khan Hratha - In Combat - Cast Battle Shout"), +(5402,0,1,0,0,0,100,0,5000,7000,7000,11000,11,15496,0,0,0,0,0,2,0,0,0,0,0,0,0,"Khan Hratha - In Combat - Cast Cleave"); + +-- Khan Shaka +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=5602; +DELETE FROM `smart_scripts` WHERE `entryorguid`=5602 AND `source_type`=0; +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`, `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 +(5602,0,0,0,4,0,100,0,0,0,0,0,11,7165,0,0,0,0,0,1,0,0,0,0,0,0,0,"Khan Shaka - On Aggro - Cast Battle Stance"), +(5602,0,1,0,0,0,100,0,5000,7000,12000,15000,11,9080,0,0,0,0,0,2,0,0,0,0,0,0,0,"Khan Shaka - In Combat - Cast Hamstring"), +(5602,0,2,0,0,0,100,0,6000,9000,18000,21000,11,11977,0,0,0,0,0,2,0,0,0,0,0,0,0,"Khan Shaka - In Combat - Cast Rend"); + +-- Kolkar Centaur +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4632; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4632 AND `source_type`=0; +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`, `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 +(4632,0,0,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Centaur - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Kolkar Destroyer +DELETE FROM `smart_scripts` WHERE `entryorguid`=4637 AND `source_type`=0 AND `id`=2; +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`, `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 +(4637,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Destroyer - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Kolkar Mauler +DELETE FROM `smart_scripts` WHERE `entryorguid`=4634 AND `source_type`=0 AND `id`=1; +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`, `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 +(4634,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Mauler - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Kolkar Scout +DELETE FROM `smart_scripts` WHERE `entryorguid`=4633 AND `source_type`=0 AND `id`=1; +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`, `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 +(4633,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Scout - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Kolkar Windchaser +DELETE FROM `smart_scripts` WHERE `entryorguid`=4635 AND `source_type`=0 AND `id`=2; +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`, `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 +(4635,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Windchaser - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Kolkar Battle Lord +DELETE FROM `smart_scripts` WHERE `entryorguid`=4636 AND `source_type`=0 AND `id`=3; +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`, `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 +(4636,0,3,0,2,0,100,1,0,20,0,0,39,30,1,0,0,0,0,1,0,0,0,0,0,0,0,"Kolkar Battle Lord - Between 0-20% Health - Call For Help (No Repeat)"); + +-- Magram Outrunner +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4639; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4639 AND `source_type`=0; +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`, `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 +(4639,0,0,0,2,0,100,1,0,20,0,0,39,30,1,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Outrunner - Between 0-20% Health - Call For Help (No Repeat)"); + +-- Magram Wrangler +DELETE FROM `smart_scripts` WHERE `entryorguid`=4640 AND `source_type`=0 AND `id`=1; +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`, `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 +(4640,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Wrangler - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Magram Scout +DELETE FROM `smart_scripts` WHERE `entryorguid`=4638 AND `source_type`=0 AND `id`=1; +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`, `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 +(4638,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Scout - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Magram Mauler +DELETE FROM `smart_scripts` WHERE `entryorguid`=4645 AND `source_type`=0 AND `id`=1; +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`, `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 +(4645,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Mauler - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Magram Stormer +DELETE FROM `smart_scripts` WHERE `entryorguid`=4642 AND `source_type`=0 AND `id`=3; +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`, `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 +(4642,0,3,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Stormer - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Magram Windchaser +DELETE FROM `smart_scripts` WHERE `entryorguid`=4641 AND `source_type`=0 AND `id`=2; +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`, `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 +(4641,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Windchaser - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Magram Marauder +DELETE FROM `smart_scripts` WHERE `entryorguid`=4644 AND `source_type`=0 AND `id`=2; +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`, `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 +(4644,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Magram Marauder - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Mauler +DELETE FROM `smart_scripts` WHERE `entryorguid`=4652 AND `source_type`=0 AND `id`=1; +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`, `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 +(4652,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Mauler - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Earthcaller +DELETE FROM `smart_scripts` WHERE `entryorguid`=4651 AND `source_type`=0 AND `id`=2; +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`, `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 +(4651,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Earthcaller - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Scout +DELETE FROM `smart_scripts` WHERE `entryorguid`=4647 AND `source_type`=0 AND `id`=1; +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`, `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 +(4647,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Scout - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Stamper +DELETE FROM `smart_scripts` WHERE `entryorguid`=4648 AND `source_type`=0 AND `id`=1; +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`, `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 +(4648,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Stamper - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Windchaser +DELETE FROM `smart_scripts` WHERE `entryorguid`=4649 AND `source_type`=0 AND `id`=2; +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`, `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 +(4649,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Windchaser - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Marauder +DELETE FROM `smart_scripts` WHERE `entryorguid`=4653 AND `source_type`=0 AND `id`=2; +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`, `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 +(4653,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Marauder - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Gelkis Outrunner +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=4646; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4646 AND `source_type`=0; +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`, `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 +(4646,0,0,0,2,0,100,1,0,20,0,0,39,30,1,0,0,0,0,1,0,0,0,0,0,0,0,"Gelkis Outrunner - Between 0-20% Health - Call For Help (No Repeat)"); + +-- Slitherblade Naga +DELETE FROM `smart_scripts` WHERE `entryorguid`=4711 AND `source_type`=0 AND `id`=1; +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`, `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 +(4711,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Naga - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Slitherblade Sorceress +DELETE FROM `smart_scripts` WHERE `entryorguid`=4712 AND `source_type`=0 AND `id`=2; +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`, `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 +(4712,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Sorceress - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Slitherblade Myrmidon +DELETE FROM `smart_scripts` WHERE `entryorguid`=4714 AND `source_type`=0 AND `id`=1; +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`, `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 +(4714,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Myrmidon - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Slitherblade Razortail +DELETE FROM `smart_scripts` WHERE `entryorguid`=4715 AND `source_type`=0 AND `id`=1; +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`, `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 +(4715,0,1,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Razortail - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Slitherblade Oracle +DELETE FROM `smart_scripts` WHERE `entryorguid`=4718 AND `source_type`=0 AND `id`=2; +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`, `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 +(4718,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Oracle - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Slitherblade Sea Witch +DELETE FROM `smart_scripts` WHERE `entryorguid`=4719 AND `source_type`=0 AND `id`=2; +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`, `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 +(4719,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Slitherblade Sea Witch - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Add equipments to some creatures +DELETE FROM `creature_equip_template` WHERE `CreatureID` IN (4641,4645); +INSERT INTO `creature_equip_template` (`CreatureID`, `ID`, `ItemID1`, `ItemID2`, `ItemID3`, `VerifiedBuild`) VALUES +(4641,1,5303,0,0,0), +(4645,1,5281,0,0,0); + +-- Pathing for Centaur Pariah +UPDATE `creature` SET `position_x`=-2145.71, `position_y`=1966.42, `position_z`=84.4919, `spawndist`=0, `MovementType`=2 WHERE `guid`=29069; + +DELETE FROM `creature_addon` WHERE `guid`=29069; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(29069,290690,0,0,1,0,""); + +DELETE FROM `waypoint_data` WHERE `id`=290690; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +(290690,1,-2145.71,1966.42,84.4919,0,0,0,0,100,0), +(290690,2,-2148.35,1973.16,84.0701,0,0,0,0,100,0), +(290690,3,-2156.93,1972.24,80.9217,0,0,0,0,100,0), +(290690,4,-2158.67,1959.92,78.2252,0,0,0,0,100,0), +(290690,5,-2161.1,1953.68,76.6696,0,0,0,0,100,0), +(290690,6,-2159.54,1948.01,74.4792,0,0,0,0,100,0), +(290690,7,-2166.39,1942.92,69.9358,0,0,0,0,100,0), +(290690,8,-2165.94,1938.13,66.2389,0,0,0,0,100,0), +(290690,9,-2167.71,1935.14,63.539,0,0,0,0,100,0), +(290690,10,-2173.82,1935.16,61.1357,0,0,0,0,100,0), +(290690,11,-2185.89,1953.4,61.0883,0,0,0,0,100,0), +(290690,12,-2181.04,1971.95,63.0648,0,0,0,0,100,0), +(290690,13,-2185.23,1996.62,64.0418,0,0,0,0,100,0), +(290690,14,-2184.85,2019.55,64.0418,0,0,0,0,100,0), +(290690,15,-2182.58,2034.38,64.3299,0,0,0,0,100,0), +(290690,16,-2187.89,2045.21,65.1992,0,0,0,0,100,0), +(290690,17,-2175.83,2065.84,63.6989,0,0,0,0,100,0), +(290690,18,-2165.2,2087.16,64.4523,0,0,0,0,100,0), +(290690,19,-2156.65,2104.11,61.6077,0,0,0,0,100,0), +(290690,20,-2151.67,2118.24,60.7861,0,0,0,0,100,0), +(290690,21,-2148.89,2129.81,63.6364,0,0,0,0,100,0), +(290690,22,-2144.39,2148.28,65.8843,0,0,0,0,100,0), +(290690,23,-2141.23,2166.66,66.9008,0,0,0,0,100,0), +(290690,24,-2139.35,2184.03,66.5107,0,0,0,0,100,0), +(290690,25,-2134.91,2204.03,65.2096,0,0,0,0,100,0), +(290690,26,-2131.41,2219.61,64.1073,0,0,0,0,100,0), +(290690,27,-2128.85,2237.09,64.7163,0,0,0,0,100,0), +(290690,28,-2128.27,2222.75,63.9388,0,0,0,0,100,0), +(290690,29,-2133.74,2204.02,65.2261,0,0,0,0,100,0), +(290690,30,-2137.84,2186.67,66.0619,0,0,0,0,100,0), +(290690,31,-2141.6,2170.8,67.1661,0,0,0,0,100,0), +(290690,32,-2147.93,2144.09,66.0683,0,0,0,0,100,0), +(290690,33,-2152.54,2124.61,62.9209,0,0,0,0,100,0), +(290690,34,-2154.5,2116.3,61.1993,0,0,0,0,100,0), +(290690,35,-2160.27,2091.94,63.4087,0,0,0,0,100,0), +(290690,36,-2171.46,2076.47,64.0607,0,0,0,0,100,0), +(290690,37,-2180,2055.74,63.8618,0,0,0,0,100,0), +(290690,38,-2187.17,2043.48,65.118,0,0,0,0,100,0), +(290690,39,-2182.03,2025.33,64.3237,0,0,0,0,100,0), +(290690,40,-2185.91,2006.41,64.0427,0,0,0,0,100,0), +(290690,41,-2184.03,1990.34,64.0427,0,0,0,0,100,0), +(290690,42,-2182.62,1974.82,63.3536,0,0,0,0,100,0), +(290690,43,-2185.55,1962.21,62.0913,0,0,0,0,100,0), +(290690,44,-2182.01,1945.01,60.5147,0,0,0,0,100,0), +(290690,45,-2174.77,1934.49,61.1065,0,0,0,0,100,0), +(290690,46,-2165.66,1935.02,64.5662,0,0,0,0,100,0), +(290690,47,-2166.1,1945.12,71.6517,0,0,0,0,100,0), +(290690,48,-2159.56,1948.89,74.686,0,0,0,0,100,0), +(290690,49,-2159.53,1958.33,77.9476,0,0,0,0,100,0), +(290690,50,-2156.65,1975.9,81.5158,0,0,0,0,100,0), +(290690,51,-2145.71,1971.54,84.3149,0,0,0,0,100,0), +(290690,52,-2143.66,1964.77,84.0694,0,0,0,0,100,0); +*/ diff --git a/sql/updates/world/4.3.4/2017_11_28_16_world_from_335_was_2017_11_28_17_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_16_world_from_335_was_2017_11_28_17_world_335.sql new file mode 100644 index 00000000000..f7614c9a469 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_16_world_from_335_was_2017_11_28_17_world_335.sql @@ -0,0 +1,144 @@ +/* +-- Molok the Crusher +SET @GUID := 43465; +DELETE FROM `creature` WHERE `guid`=@GUID; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2604,0,0,0,1,1,0,1,-2056.97,-2785.61,68.571,5.47225,54000,0,0,1678,0,0,0,0,0,"",0); + +-- Foulbelly +SET @GUID := 84200; +DELETE FROM `creature` WHERE `guid`=@GUID; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2601,0,0,0,1,1,0,1,-1777.47,-1568.15,53.0089,3.82291,172800,0,0,6605,1381,0,0,0,0,"",0); + +-- Ruul Onestone +SET @GUID := 84227; +DELETE FROM `creature` WHERE `guid`=@GUID; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2602,0,0,0,1,1,0,1,-1797.35,-1507.83,99.3938,6.12074,180000,0,0,3540,3708,0,0,0,0,"",0); + +UPDATE `creature_template` SET `ManaModifier`=3 WHERE `entry`=2602; + +-- Darbel Montrose +SET @GUID := 84258; +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID AND @GUID+3; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2598,0,0,0,1,1,0,1,-1590.25,-1889.45,68.5119,1.52227,57600,0,0,2360,2472,0,0,0,0,"",0), +(@GUID+1,2598,0,0,0,1,1,0,1,-1631.82,-1875.26,81.3837,2.99489,57600,5,0,2360,2472,1,0,0,0,"",0), +(@GUID+2,2598,0,0,0,1,1,0,1,-1622.46,-1775.05,81.3642,3.78814,57600,0,0,2360,2472,0,0,0,0,"",0), +(@GUID+3,2598,0,0,0,1,1,0,1,-1683.51,-1853.98,86,3.05772,57600,0,0,2360,2472,0,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1114; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1114,1,"Darbel Montrose"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1114; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1114,0,"Darbel Montrose (2598) - Spawn 1"), +(@GUID+1,1114,0,"Darbel Montrose (2598) - Spawn 2"), +(@GUID+2,1114,0,"Darbel Montrose (2598) - Spawn 3"), +(@GUID+3,1114,0,"Darbel Montrose (2598) - Spawn 4"); + +-- Kovork +SET @GUID := 84230; +DELETE FROM `creature` WHERE `guid` IN (@GUID, @GUID+1); +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2603,0,0,0,1,1,0,1,-1190.7,-2055.29,42.9287,3.88181,27000,0,0,1469,0,0,0,0,0,"",0), +(@GUID+1,2603,0,0,0,1,1,0,1,-1185.5,-1959.2,24.088,2.65659,27000,3,0,1469,0,1,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1115; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1115,1,"Kovork"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1115; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1115,0,"Kovork (2603) - Spawn 1"), +(@GUID+1,1115,0,"Kovork (2603) - Spawn 2"); + +-- Zalas Witherbark +SET @GUID := 84293; +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID AND @GUID+3; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2605,0,0,0,1,1,0,0,-2019.19,-3306.55,54.216,5.47616,252000,0,0,1410,2566,0,0,0,0,"",0), +(@GUID+1,2605,0,0,0,1,1,0,0,-2057.33,-3274,49.8653,4.51998,252000,0,0,1410,2566,2,0,0,0,"",0), +(@GUID+2,2605,0,0,0,1,1,0,0,-2042.3,-3364.3,60.2045,0.712735,252000,0,0,1410,2566,0,0,0,0,"",0), +(@GUID+3,2605,0,0,0,1,1,0,0,-2072.1,-3297.35,67.0706,1.54131,252000,0,0,1410,2566,0,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1116; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1116,1,"Zalas Witherbark"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1116; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1116,0,"Zalas Witherbark (2605) - Spawn 1"), +(@GUID+1,1116,0,"Zalas Witherbark (2605) - Spawn 2"), +(@GUID+2,1116,0,"Zalas Witherbark (2605) - Spawn 3"), +(@GUID+3,1116,0,"Zalas Witherbark (2605) - Spawn 4"); + +DELETE FROM `creature_template_addon` WHERE `entry`=2605; +INSERT INTO `creature_template_addon` (`entry`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(2605,0,0,8,1,0,""); -- Standstate Kneel for Zalas Witherbark + +DELETE FROM `creature_addon` WHERE `guid`=@GUID+1; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(@GUID+1,(@GUID+1)*10,0,0,1,0,""); -- Pathing for Zalas Witherbark (Spawn 2) + +DELETE FROM `waypoint_data` WHERE `id`=(@GUID+1)*10; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +((@GUID+1)*10,1,-2056.85,-3271.49,49.4426,0,0,0,0,100,0), +((@GUID+1)*10,2,-2061.19,-3271.54,50.2861,0,0,0,0,100,0), +((@GUID+1)*10,3,-2083.62,-3276.01,51.4356,0,0,0,0,100,0), +((@GUID+1)*10,4,-2098.75,-3286.29,51.7022,0,0,0,0,100,0), +((@GUID+1)*10,5,-2106.52,-3322.71,56.8964,0,0,0,0,100,0), +((@GUID+1)*10,6,-2115.63,-3344.91,58.7511,0,0,0,0,100,0), +((@GUID+1)*10,7,-2109.39,-3369.78,61.0127,0,0,0,0,100,0), +((@GUID+1)*10,8,-2091.81,-3381.89,59.4361,0,0,0,0,100,0), +((@GUID+1)*10,9,-2095.79,-3366.71,59.3,0,0,0,0,100,0), +((@GUID+1)*10,10,-2093.88,-3364.27,59.1176,0,0,0,0,100,0), +((@GUID+1)*10,11,-2099.47,-3360.35,59.2716,0,0,0,0,100,0), +((@GUID+1)*10,12,-2102.05,-3333.13,58.104,0,0,0,0,100,0), +((@GUID+1)*10,13,-2095.42,-3295.27,52.4655,0,0,0,0,100,0), +((@GUID+1)*10,14,-2078.4,-3272.51,51.7336,0,0,0,0,100,0), +((@GUID+1)*10,15,-2055.61,-3271.22,49.3672,0,0,0,0,100,0); + +-- Nimar the Slayer +SET @GUID := 84402; +DELETE FROM `creature` WHERE `guid` BETWEEN @GUID AND @GUID+3; +INSERT INTO `creature` (`guid`, `id`, `map`, `zoneId`, `areaId`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`, `ScriptName`, `VerifiedBuild`) VALUES +(@GUID,2606,0,0,0,1,1,0,0,-1902.16,-3193.09,56.5808,5.63212,27000,0,0,1537,0,0,0,0,0,"",0), +(@GUID+1,2606,0,0,0,1,1,0,0,-1672.56,-3246.93,25.7297,4.51998,27000,0,0,1537,0,2,0,0,0,"",0), +(@GUID+2,2606,0,0,0,1,1,0,0,-1701.21,-3509.16,60.2556,6.26748,27000,0,0,1537,0,0,0,0,0,"",0), +(@GUID+3,2606,0,0,0,1,1,0,0,-1810.14,-3417.2,45.4232,0.985671,27000,0,0,1537,0,0,0,0,0,"",0); + +DELETE FROM `pool_template` WHERE `entry`=1113; +INSERT INTO `pool_template` (`entry`, `max_limit`, `description`) VALUES +(1113,1,"Nimar the Slayer"); + +DELETE FROM `pool_creature` WHERE `pool_entry`=1113; +INSERT INTO `pool_creature` (`guid`, `pool_entry`, `chance`, `description`) VALUES +(@GUID,1113,0,"Nimar the Slayer (2606) - Spawn 1"), +(@GUID+1,1113,0,"Nimar the Slayer (2606) - Spawn 2"), +(@GUID+2,1113,0,"Nimar the Slayer (2606) - Spawn 3"), +(@GUID+3,1113,0,"Nimar the Slayer (2606) - Spawn 4"); + +DELETE FROM `creature_addon` WHERE `guid`=@GUID+1; +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(@GUID+1,(@GUID+1)*10,0,0,1,0,""); -- Pathing for Nimar the Slayer (Spawn 2) + +DELETE FROM `waypoint_data` WHERE `id`=(@GUID+1)*10; +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `orientation`, `delay`, `move_type`, `action`, `action_chance`, `wpguid`) VALUES +((@GUID+1)*10,1,-1672.56,-3246.93,25.7297,0,0,0,0,100,213867), +((@GUID+1)*10,2,-1673.33,-3252.4,25.7306,0,60000,0,0,100,213868), +((@GUID+1)*10,3,-1679.78,-3257.49,25.5371,0,0,0,0,100,213869), +((@GUID+1)*10,4,-1678.29,-3264.48,24.3447,0,0,0,0,100,213870), +((@GUID+1)*10,5,-1650.41,-3263.6,26.8072,0,0,0,0,100,213871), +((@GUID+1)*10,6,-1642.67,-3252.82,31.5431,0,0,0,0,100,213872), +((@GUID+1)*10,7,-1645.48,-3241.07,33.4071,0,0,0,0,100,213873), +((@GUID+1)*10,8,-1654.84,-3232.66,33.5165,0,0,0,0,100,213874), +((@GUID+1)*10,9,-1670.32,-3228.45,34.6906,0,0,0,0,100,213875), +((@GUID+1)*10,10,-1693.22,-3231.79,29.2882,0,0,0,0,100,213876), +((@GUID+1)*10,11,-1693.78,-3246.29,26.4924,0,0,0,0,100,213877), +((@GUID+1)*10,12,-1672.47,-3263.53,25.0571,0,0,0,0,100,213878), +((@GUID+1)*10,13,-1668.16,-3255.58,25.73,0,0,0,0,100,213879), +((@GUID+1)*10,14,-1673.27,-3253.71,25.7309,0,0,0,0,100,213880); +*/ diff --git a/sql/updates/world/4.3.4/2017_11_28_17_world_from_335_was_2017_11_28_18_world_335.sql b/sql/updates/world/4.3.4/2017_11_28_17_world_from_335_was_2017_11_28_18_world_335.sql new file mode 100644 index 00000000000..a8eede717fe --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_17_world_from_335_was_2017_11_28_18_world_335.sql @@ -0,0 +1,291 @@ +/* +-- Highland Thrasher +DELETE FROM `smart_scripts` WHERE `entryorguid`=2560 AND `source_type`=0; +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`, `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 +(2560,0,0,0,25,0,100,0,0,0,0,0,11,8876,0,0,0,0,0,1,0,0,0,0,0,0,0,"Highland Thrasher - On Reset - Cast Thrash"); + +-- Mesa Buzzard +DELETE FROM `smart_scripts` WHERE `entryorguid`=2579 AND `source_type`=0; +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`, `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 +(2579,0,0,0,0,0,100,0,4000,12000,10000,18000,11,8139,32,0,0,0,0,2,0,0,0,0,0,0,0,"Mesa Buzzard - In Combat - Cast Fevered Fatigue"); + +-- Elder Mesa Buzzard +DELETE FROM `smart_scripts` WHERE `entryorguid`=2580 AND `source_type`=0; +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`, `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 +(2580,0,0,0,0,0,100,0,4000,12000,10000,18000,11,8139,32,0,0,0,0,2,0,0,0,0,0,0,0,"Elder Mesa Buzzard - In Combat - Cast Fevered Fatigue"); + +-- Plains Creeper +DELETE FROM `smart_scripts` WHERE `entryorguid`=2563 AND `source_type`=0; +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`, `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 +(2563,0,0,0,25,0,100,0,0,0,0,0,11,3616,0,0,0,0,0,1,0,0,0,0,0,0,0,"Plains Creeper - On Reset - Cast Poison Proc"), +(2563,0,1,0,0,0,100,0,5000,14000,16000,23000,11,4962,0,0,0,0,0,2,0,0,0,0,0,0,0,"Plains Creeper - In Combat - Cast Encasing Webs"); + +-- Giant Plains Creeper +DELETE FROM `smart_scripts` WHERE `entryorguid`=2565 AND `source_type`=0; +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`, `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 +(2565,0,0,0,25,0,100,0,0,0,0,0,11,3616,0,0,0,0,0,1,0,0,0,0,0,0,0,"Giant Plains Creeper - On Reset - Cast Poison Proc"), +(2565,0,1,0,0,0,100,0,5000,14000,16000,23000,11,4962,0,0,0,0,0,2,0,0,0,0,0,0,0,"Giant Plains Creeper - In Combat - Cast Encasing Webs"); + +-- Boulderfist Ogre +DELETE FROM `smart_scripts` WHERE `entryorguid`=2562 AND `source_type`=0; +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`, `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 +(2562,0,0,0,4,0,15,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,"Boulderfist Ogre - On Aggro - Say Line 0"), +(2562,0,1,0,2,0,100,0,0,30,16000,22000,11,4955,2,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Ogre - Between 0-30% Health - Cast Fist of Stone"); + +-- Boulderfist Enforcer +DELETE FROM `smart_scripts` WHERE `entryorguid`=2564 AND `source_type`=0; +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`, `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 +(2564,0,0,0,4,0,15,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,"Boulderfist Enforcer - On Aggro - Say Line 0"), +(2564,0,1,0,2,0,100,0,0,30,16000,22000,11,4955,2,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Enforcer - Between 0-30% Health - Cast Fist of Stone"), +(2564,0,2,0,0,0,100,0,5000,11000,30000,35000,11,13730,0,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Enforcer - In Combat - Cast Demoralizing Shout"); + +-- Boulderfist Brute +DELETE FROM `smart_scripts` WHERE `entryorguid`=2566 AND `source_type`=0 AND `id` IN (0,2); +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`, `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 +(2566,0,0,0,4,0,15,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,"Boulderfist Brute - On Aggro - Say Line 0"), +(2566,0,2,0,2,0,100,0,0,30,16000,22000,11,4955,2,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Brute - Between 0-30% Health - Cast Fist of Stone"); + +-- Boulderfist Mauler +DELETE FROM `smart_scripts` WHERE `entryorguid`=2569 AND `source_type`=0; +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`, `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 +(2569,0,0,0,4,0,15,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,"Boulderfist Mauler - On Aggro - Say Line 0"), +(2569,0,1,0,0,0,100,0,6000,14000,16000,24000,11,4955,2,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Mauler - In Combat - Cast Fist of Stone"); + +-- Boulderfist Magus +DELETE FROM `smart_scripts` WHERE `entryorguid`=2567 AND `source_type`=0 AND `id`=3; +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`, `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 +(2567,0,3,0,9,0,100,0,0,8,15000,23000,11,11831,1,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Magus - Within 0-8 Range - Cast Frost Nova"); + +-- Boulderfist Shaman +DELETE FROM `smart_scripts` WHERE `entryorguid`=2570 AND `source_type`=0 AND `id`=2; +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`, `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 +(2570,0,2,0,0,0,100,0,8000,12000,41000,45000,11,6364,0,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Shaman - In Combat - Cast Searing Totem"); + +-- Boulderfist Lord +DELETE FROM `smart_scripts` WHERE `entryorguid`=2571 AND `source_type`=0; +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`, `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 +(2571,0,0,0,4,0,15,0,0,0,0,0,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,"Boulderfist Lord - On Aggro - Say Line 0"), +(2571,0,1,0,4,0,100,0,0,0,0,0,11,8258,0,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Lord - On Aggro - Cast Devotion Aura"), +(2571,0,2,0,0,0,100,0,6000,14000,16000,24000,11,4955,2,0,0,0,0,1,0,0,0,0,0,0,0,"Boulderfist Lord - In Combat - Cast Fist of Stone"); + +DELETE FROM `creature_text` WHERE `CreatureID`=2571; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(2571,0,0,"Raaar!!! Me smash $r!",12,0,100,0,0,0,1925,0,"Boulderfist Lord"), +(2571,0,1,"Me smash! You die!",12,0,100,0,0,0,1926,0,"Boulderfist Lord"), +(2571,0,2,"Ill crush you!",12,0,100,0,0,0,1927,0,"Boulderfist Lord"); + +-- Witherbark Troll +DELETE FROM `smart_scripts` WHERE `entryorguid`=2552 AND `source_type`=0 AND `id`=0; +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`, `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 +(2552,0,0,0,0,0,100,0,4000,12000,8000,16000,11,4974,32,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Troll - In Combat - Cast Wither Touch"); + +-- Witherbark Shadowcaster +UPDATE `smart_scripts` SET `event_chance`=100 WHERE `entryorguid`=2553 AND `source_type`=0 AND `id`=0; + +-- Witherbark Axe Thrower +DELETE FROM `smart_scripts` WHERE `entryorguid`=2554 AND `source_type`=0 AND `id`=1; +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`, `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 +(2554,0,1,0,0,0,100,0,4000,12000,8000,16000,11,4974,32,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Axe Thrower - In Combat - Cast Wither Touch"); + +-- Witherbark Headhunter +DELETE FROM `smart_scripts` WHERE `entryorguid`=2556 AND `source_type`=0 AND `id` IN (0,1); +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`, `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 +(2556,0,0,0,0,0,100,0,6000,10000,18000,24000,11,6533,0,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Headhunter - In Combat - Cast Net"), +(2556,0,1,0,0,0,100,0,4000,12000,8000,16000,11,4974,32,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Headhunter - In Combat - Cast Wither Touch"); + +-- Witherbark Witch Doctor +DELETE FROM `smart_scripts` WHERE `entryorguid`=2555 AND `source_type`=0 AND `id` IN (0,1); +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`, `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 +(2555,0,0,0,0,0,100,0,5000,7000,19000,22000,11,8190,0,0,0,0,0,1,0,0,0,0,0,0,0,"Witherbark Witch Doctor - In Combat - Cast Magma Totem"), +(2555,0,1,0,0,0,100,0,12000,14000,32000,35000,11,5605,0,0,0,0,0,1,0,0,0,0,0,0,0,"Witherbark Witch Doctor - In Combat - Cast Healing Ward"); + +-- Witherbark Shadow Hunter +DELETE FROM `smart_scripts` WHERE `entryorguid`=2557 AND `source_type`=0 AND `id` IN (0,1,2); +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`, `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 +(2557,0,0,0,0,0,100,0,2000,6000,19000,23000,11,992,0,0,0,0,0,5,0,0,0,0,0,0,0,"Witherbark Shadow Hunter - In Combat - Cast Shadow Word: Pain"), +(2557,0,1,0,0,0,100,0,4000,8000,28000,35000,11,7646,32,0,0,0,0,5,0,0,0,0,0,0,0,"Witherbark Shadow Hunter - In Combat - Cast Curse of Weakness"), +(2557,0,2,0,0,0,100,0,9000,14000,31000,36000,11,6726,0,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Shadow Hunter - In Combat - Cast Silence"); + +-- Witherbark Berserker +DELETE FROM `smart_scripts` WHERE `entryorguid`=2558 AND `source_type`=0 AND `id`=0; +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`, `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 +(2558,0,0,0,0,0,100,0,4000,12000,8000,16000,11,4974,32,0,0,0,0,2,0,0,0,0,0,0,0,"Witherbark Berserker - In Combat - Cast Wither Touch"); + +-- Dabyrie Laborer +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=2582; +DELETE FROM `smart_scripts` WHERE `entryorguid`=2582 AND `source_type`=0; +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`, `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 +(2582,0,0,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Dabyrie Laborer - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Fardel Dabyrie +DELETE FROM `smart_scripts` WHERE `entryorguid`=4479 AND `source_type`=0 AND `id`=0; +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`, `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 +(4479,0,0,0,25,0,100,0,0,0,0,0,11,12787,0,0,0,0,0,1,0,0,0,0,0,0,0,"Fardel Dabyrie - On Reset - Cast Thrash"); + +-- Drywhisker Digger +DELETE FROM `smart_scripts` WHERE `entryorguid`=2574 AND `source_type`=0 AND `id`=0; +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`, `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 +(2574,0,0,0,0,0,100,0,1000,3000,180000,180000,11,7164,0,0,0,0,0,1,0,0,0,0,0,0,0,"Drywhisker Digger - In Combat - Cast Defensive Stance"); + +-- Drywhisker Surveyor +DELETE FROM `smart_scripts` WHERE `entryorguid`=2573 AND `source_type`=0 AND `id`=2; +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`, `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 +(2573,0,2,0,9,0,100,0,0,8,15000,22000,11,865,1,0,0,0,0,1,0,0,0,0,0,0,0,"Drywhisker Surveyor - Within 0-8 Range - Cast Frost Nova"); + +-- Thundering Exile +DELETE FROM `smart_scripts` WHERE `entryorguid`=2762 AND `source_type`=0; +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`, `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 +(2762,0,0,0,0,0,100,0,0,0,3300,6600,11,9532,64,0,0,0,0,2,0,0,0,0,0,0,0,"Thundering Exile - In Combat - Cast Lightning Bolt"), +(2762,0,1,0,0,0,100,0,4000,8000,16000,24000,11,11824,0,0,0,0,0,2,0,0,0,0,0,0,0,"Thundering Exile - In Combat - Cast Shock"), +(2762,0,2,0,8,0,100,512,4132,0,0,0,41,500,0,0,0,0,0,1,0,0,0,0,0,0,0,"Thundering Exile - On Spellhit - Despawn"); + +-- Rumbling Exile +DELETE FROM `smart_scripts` WHERE `entryorguid`=2592 AND `source_type`=0; +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`, `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 +(2592,0,0,0,0,0,100,0,3000,12000,12000,21000,11,6524,0,0,0,0,0,1,0,0,0,0,0,0,0,"Rumbling Exile - In Combat - Cast Ground Tremor"); + +-- Cresting Exile +DELETE FROM `smart_scripts` WHERE `entryorguid`=2761 AND `source_type`=0 AND `id`=1; +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`, `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 +(2761,0,1,0,0,0,100,0,4000,9000,16000,22000,11,865,0,0,0,0,0,1,0,0,0,0,0,0,0,"Cresting Exile - In Combat - Cast Frost Nova"); + +-- Syndicate Thief +UPDATE `creature_template` SET `AIName`="SmartAI" WHERE `entry`=24477; +DELETE FROM `smart_scripts` WHERE `entryorguid`=24477 AND `source_type`=0; +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`, `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 +(24477,0,0,0,67,0,100,0,4000,6000,0,0,11,7159,0,0,0,0,0,2,0,0,0,0,0,0,0,"Syndicate Thief - On Behind Target - Cast Backstab"), +(24477,0,1,0,0,0,100,0,5000,9000,18000,24000,11,6713,0,0,0,0,0,2,0,0,0,0,0,0,0,"Syndicate Thief - In Combat - Cast Disarm"), +(24477,0,2,0,25,0,100,0,0,0,0,0,11,3616,0,0,0,0,0,1,0,0,0,0,0,0,0,"Syndicate Thief - On Reset - Cast Poison Proc"), +(24477,0,3,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Syndicate Thief - Between 0-15% Health - Flee For Assist (No Repeat)"); + +-- Syndicate Prowler +DELETE FROM `smart_scripts` WHERE `entryorguid`=2588 AND `source_type`=0 AND `id` IN (2,3); +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`, `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 +(2588,0,2,0,0,0,100,0,4000,10000,16000,22000,11,14873,0,0,0,0,0,2,0,0,0,0,0,0,0,"Syndicate Prowler - In Combat - Cast Sinister Strike"), +(2588,0,3,0,0,0,100,0,8000,14000,22000,28000,11,6713,0,0,0,0,0,2,0,0,0,0,0,0,0,"Syndicate Prowler - In Combat - Cast Disarm"); + +-- Otto +DELETE FROM `smart_scripts` WHERE `entryorguid`=2599 AND `source_type`=0; +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`, `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 +(2599,0,0,0,0,0,100,0,9000,15000,12000,20000,11,6253,0,0,0,0,0,2,0,0,0,0,0,0,0,"Otto - In Combat - Cast Backhand"), +(2599,0,1,0,0,0,100,0,6000,11000,14000,19000,11,12555,0,0,0,0,0,2,0,0,0,0,0,0,0,"Otto - In Combat - Cast Pummel"), +(2599,0,2,0,2,0,100,1,0,15,0,0,25,1,0,0,0,0,0,0,0,0,0,0,0,0,0,"Otto - Between 0-15% Health - Flee For Assist"); + +-- Lord Falconcrest +DELETE FROM `smart_scripts` WHERE `entryorguid`=2597 AND `source_type`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=259700 AND `source_type`=9; +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`, `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 +(2597,0,0,0,1,0,100,0,5000,15000,150000,180000,80,259700,0,0,0,0,0,1,0,0,0,0,0,0,0,"Lord Falconcrest - Out of Combat - Run Script"), +(2597,0,1,0,0,0,100,0,2000,5000,6000,9000,11,32064,32,0,0,0,0,1,0,0,0,0,0,0,0,"Lord Falconcrest - In Combat - Cast Battle Shout"), +(2597,0,2,0,0,0,100,0,5000,10000,16000,26000,11,6713,0,0,0,0,0,2,0,0,0,0,0,0,0,"Lord Falconcrest - In Combat - Cast Disarm"), +(259700,9,0,0,0,0,100,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,"Lord Falconcrest - On Script - Say Line 0"), +(259700,9,1,0,0,0,100,0,8000,8000,0,0,1,0,0,0,0,0,0,19,2599,0,0,0,0,0,0,"Lord Falconcrest - On Script - Say Line 0 (Otto)"); + +-- Stromgarde Troll Hunter +DELETE FROM `smart_scripts` WHERE `entryorguid`=2583 AND `source_type`=0 AND `id`=0; +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`, `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 +(2583,0,0,0,0,0,100,0,2000,5000,19000,23000,11,2767,0,0,0,0,0,2,0,0,0,0,0,0,0,"Stromgarde Troll Hunter - In Combat - Cast Shadow Word: Pain"); + +-- Feeboz +UPDATE `smart_scripts` SET `target_type`=1 WHERE `entryorguid`=4063 AND `source_type`=0 AND `id`=0; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4063 AND `source_type`=0 AND `id`=3; +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`, `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 +(4063,0,3,0,1,0,100,0,5000,15000,65000,75000,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Feeboz - Out of Combat - Say Line 1"); + +DELETE FROM `creature_text` WHERE `CreatureID`=4063 AND `GroupID`=0 AND `ID`>2; +DELETE FROM `creature_text` WHERE `CreatureID`=4063 AND `GroupID`=1; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(4063,0,3,"Arent you a little short for your kind?",12,0,100,0,0,0,809,0,"Feeboz"), +(4063,0,4,"My life means nothing! Our sacred task is all!",12,0,100,0,0,0,810,0,"Feeboz"), +(4063,0,5,"If you mean to free Myzrael, you will be sorry!",12,0,100,0,0,0,811,0,"Feeboz"), +(4063,0,6,"Stand firm, brothers. And dont worry! Size is on our side!",12,0,100,0,0,0,812,0,"Feeboz"), +(4063,0,7,"Take that! The Drywhiskers will prevail!",12,0,100,0,0,0,814,0,"Feeboz"), +(4063,1,0,"May I bask in your shadow forever!",12,0,100,0,0,0,799,0,"Feeboz"), +(4063,1,1,"Master, your wisdom is matched only by your hugeness!",12,0,100,0,0,0,800,0,"Feeboz"), +(4063,1,2,"If I had a copper for each of your great deeds, Id be a rich kobold!",12,0,100,0,0,0,801,0,"Feeboz"), +(4063,1,3,"You will keep us safe from the evil mistress, yes!",12,0,100,0,0,0,802,0,"Feeboz"), +(4063,1,4,"Oh, praise! Your vigilance keeps Myzrael deep in the earth!",12,0,100,0,0,0,803,0,"Feeboz"), +(4063,1,5,"My only wish is to serve you, great one, until I die by your foot!",12,0,100,0,0,0,804,0,"Feeboz"), +(4063,1,6,"Your strength is of the mountain. Your grace is of the winds!",12,0,100,0,0,0,805,0,"Feeboz"), +(4063,1,7,"My feet hurt...",12,0,100,0,0,0,806,0,"Feeboz"); + +-- Znort +DELETE FROM `smart_scripts` WHERE `entryorguid`=2765 AND `source_type`=0 AND `id` IN (1,3); +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`, `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 +(2765,0,1,0,0,0,100,0,5000,7000,7000,10000,11,845,0,0,0,0,0,2,0,0,0,0,0,0,0,"Znort - In Combat - Cast Cleave"), +(2765,0,3,0,1,0,100,0,25000,35000,65000,75000,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Znort - Out of Combat - Say Line 1"); + +DELETE FROM `creature_text` WHERE `CreatureID`=2765 AND `GroupID`=0 AND `ID`>2; +DELETE FROM `creature_text` WHERE `CreatureID`=2765 AND `GroupID`=1; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(2765,0,3,"Arent you a little short for your kind?",12,0,100,0,0,0,809,0,"Znort"), +(2765,0,4,"My life means nothing! Our sacred task is all!",12,0,100,0,0,0,810,0,"Znort"), +(2765,0,5,"If you mean to free Myzrael, you will be sorry!",12,0,100,0,0,0,811,0,"Znort"), +(2765,0,6,"Die! You will not free Myzrael!",12,0,100,0,0,0,807,0,"Znort"), +(2765,0,7,"Take that! The Drywhiskers will prevail!",12,0,100,0,0,0,814,0,"Znort"), +(2765,1,0,"May I bask in your shadow forever!",12,0,100,0,0,0,799,0,"Znort"), +(2765,1,1,"Master, your wisdom is matched only by your hugeness!",12,0,100,0,0,0,800,0,"Znort"), +(2765,1,2,"If I had a copper for each of your great deeds, Id be a rich kobold!",12,0,100,0,0,0,801,0,"Znort"), +(2765,1,3,"You will keep us safe from the evil mistress, yes!",12,0,100,0,0,0,802,0,"Znort"), +(2765,1,4,"Oh, praise! Your vigilance keeps Myzrael deep in the earth!",12,0,100,0,0,0,803,0,"Znort"), +(2765,1,5,"My only wish is to serve you, great one, until I die by your foot!",12,0,100,0,0,0,804,0,"Znort"), +(2765,1,6,"Your strength is of the mountain. Your grace is of the winds!",12,0,100,0,0,0,805,0,"Znort"), +(2765,1,7,"My feet hurt...",12,0,100,0,0,0,806,0,"Znort"); + +-- Sleeby +DELETE FROM `smart_scripts` WHERE `entryorguid`=2764 AND `source_type`=0 AND `id` IN (4); +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`, `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 +(2764,0,4,0,1,0,100,0,45000,55000,65000,75000,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,"Sleeby - Out of Combat - Say Line 1"); + +DELETE FROM `creature_text` WHERE `CreatureID`=2764 AND `GroupID`=0 AND `ID`>1; +DELETE FROM `creature_text` WHERE `CreatureID`=2764 AND `GroupID`=1; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(2764,0,2,"The Great One will smash you!",12,0,100,0,0,0,808,0,"Sleeby"), +(2764,0,3,"Arent you a little short for your kind?",12,0,100,0,0,0,809,0,"Sleeby"), +(2764,0,4,"My life means nothing! Our sacred task is all!",12,0,100,0,0,0,810,0,"Sleeby"), +(2764,0,5,"If you mean to free Myzrael, you will be sorry!",12,0,100,0,0,0,811,0,"Sleeby"), +(2764,0,6,"Die! You will not free Myzrael!",12,0,100,0,0,0,807,0,"Sleeby"), +(2764,0,7,"No! Leave us! We must not fail our task!",12,0,100,0,0,0,815,0,"Sleeby"), +(2764,1,0,"May I bask in your shadow forever!",12,0,100,0,0,0,799,0,"Sleeby"), +(2764,1,1,"Master, your wisdom is matched only by your hugeness!",12,0,100,0,0,0,800,0,"Sleeby"), +(2764,1,2,"If I had a copper for each of your great deeds, Id be a rich kobold!",12,0,100,0,0,0,801,0,"Sleeby"), +(2764,1,3,"You will keep us safe from the evil mistress, yes!",12,0,100,0,0,0,802,0,"Sleeby"), +(2764,1,4,"Oh, praise! Your vigilance keeps Myzrael deep in the earth!",12,0,100,0,0,0,803,0,"Sleeby"), +(2764,1,5,"My only wish is to serve you, great one, until I die by your foot!",12,0,100,0,0,0,804,0,"Sleeby"), +(2764,1,6,"Your strength is of the mountain. Your grace is of the winds!",12,0,100,0,0,0,805,0,"Sleeby"), +(2764,1,7,"My feet hurt...",12,0,100,0,0,0,806,0,"Sleeby"); + +-- Thenan +DELETE FROM `smart_scripts` WHERE `entryorguid`=2763 AND `source_type`=0 AND `id`=1; +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`, `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 +(2763,0,1,0,11,0,100,0,0,0,0,0,49,0,0,0,0,0,0,21,50,0,0,0,0,0,0,"Thenan - On Respawn - Start Attacking"); + +-- Darbel Montrose +DELETE FROM `smart_scripts` WHERE `entryorguid`=2598 AND `source_type`=0 AND `id`=2; +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`, `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 +(2598,0,2,0,0,0,100,0,4000,7000,18000,21000,11,12741,32,0,0,0,0,2,0,0,0,0,0,0,0,"Darbel Montrose - In Combat - Cast Curse of Weakness"); + +-- Molok the Crusher +DELETE FROM `smart_scripts` WHERE `entryorguid`=2604 AND `source_type`=0; +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`, `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 +(2604,0,0,0,0,0,100,0,7000,11000,9000,13000,11,6253,0,0,0,0,0,2,0,0,0,0,0,0,0,"Molok the Crusher - In Combat - Cast Backhand"); + +-- Zalas Witherbark +DELETE FROM `smart_scripts` WHERE `entryorguid`=2605 AND `source_type`=0; +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`, `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 +(2605,0,0,0,0,0,100,0,3000,5000,23000,27000,11,512,0,0,0,0,0,2,0,0,0,0,0,0,0,"Zalas Witherbark - In Combat - Cast Chains of Ice"), +(2605,0,1,0,0,0,100,0,3000,5000,15000,18000,11,851,2,0,0,0,0,6,0,0,0,0,0,0,0,"Zalas Witherbark - In Combat - Cast Polymorph: Sheep"), +(2605,0,2,0,0,0,100,0,5000,8000,8000,15000,11,9081,0,0,0,0,0,2,0,0,0,0,0,0,0,"Zalas Witherbark - In Combat - Cast Shadowbolt Volley"), +(2605,0,3,0,0,0,100,0,2000,3000,13000,15000,11,4974,32,0,0,0,0,5,0,0,0,0,0,0,0,"Zalas Witherbark - In Combat - Cast Wither Touch"); + +-- Ruul Onestone +DELETE FROM `smart_scripts` WHERE `entryorguid`=2602 AND `source_type`=0; +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`, `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 +(2602,0,0,0,0,0,100,0,4000,6000,12000,14000,11,6219,0,0,0,0,0,2,0,0,0,0,0,0,0,"Ruul Onestone - In Combat - Cast Rain of Fire"), +(2602,0,1,0,0,0,100,0,1000,1000,31000,33000,11,6742,0,0,0,0,0,1,0,0,0,0,0,0,0,"Ruul Onestone - In Combat - Cast Bloodlust"), +(2602,0,2,0,0,0,100,0,2000,3000,3000,5000,11,9532,64,0,0,0,0,2,0,0,0,0,0,0,0,"Ruul Onestone - In Combat - Cast Lightning Bolt"); + +-- Fix movement for some creatures +UPDATE `creature` SET `spawndist`=5, `MovementType`=1 WHERE `guid`=12046; +UPDATE `creature` SET `spawndist`=0, `MovementType`=0 WHERE `guid`=14538; +*/ diff --git a/sql/updates/world/4.3.4/2017_11_28_18_world.sql b/sql/updates/world/4.3.4/2017_11_28_18_world.sql new file mode 100644 index 00000000000..36cc04ef0c6 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_28_18_world.sql @@ -0,0 +1,10 @@ +-- +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (-95560) AND `source_type` IN (0) AND id=7; +DELETE FROM `smart_scripts` WHERE `entryorguid` IN (25636) AND `source_type` IN (0) AND id=1; +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`, `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 +(-95560, 0, 7, 0, 40, 0, 100, 0, 3, 0, 0, 0, 2, 1692, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "Riplash Myrmidon - On WP 4 Reached - set faction"), +(25636, 0, 1, 0, 25, 0, 100, 0, 0, 0, 0, 0, 2, 2047, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, "Captured Tuskarr Prisoner - On reset - set faction"); + +UPDATE `smart_scripts` SET `action_param2`=1 WHERE `entryorguid`=11216 AND `action_type`=7; + +UPDATE `creature_template` SET `minlevel` = 71 WHERE `entry` = 19523; diff --git a/sql/updates/world/4.3.4/2017_11_30_00_world_from_335_was_2017_11_29_00_world.sql b/sql/updates/world/4.3.4/2017_11_30_00_world_from_335_was_2017_11_29_00_world.sql new file mode 100644 index 00000000000..434ebf3d040 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_00_world_from_335_was_2017_11_29_00_world.sql @@ -0,0 +1,140 @@ +-- Spawns that req. phaseMask +UPDATE `creature` SET `phaseMask` = 2 WHERE `id` IN (28559,28560, 28660,28662); -- Citizen of Havenshire and Citizen of New Avalon +UPDATE `creature` SET `phaseMask` = 2 WHERE `guid` = 128752; -- High General Abbendis +UPDATE `creature` SET `phaseMask` = 2 WHERE `guid` IN (128796,129321); -- High Abbot Landgren +UPDATE `creature` SET `phaseMask` = 2 WHERE `id` IN (28530, 28594); -- Scarlet Commander Scarlet Preacher + +-- Havenshire Colt -- Havenshire Mare -- Havenshire Stallion +DELETE FROM `creature` WHERE `guid` IN (84229,84234,84235,84239,84240,84257,84264,84265,84277,84279,84280,84281,84297,84315,84316,84317,84322,84336,84341,84342,84346,84347,84348,84349,84392,84393,84406); +INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `curhealth`, `curmana`, `MovementType`) VALUES +(84229, 28605, 609, 1, 2, 2177.534, -5806.438, 101.4173, 3.543018, 120, 0, 2453, 0, 0), +(84234, 28605, 609, 1, 2, 2221.63, -5881.24, 101.211, 4.74729, 120, 0, 2453, 0, 0), +(84235, 28605, 609, 1, 2, 2206.62, -5840.55, 101.48, 1.43117, 120, 0, 2453, 0, 0), +(84239, 28605, 609, 1, 2, 2209.9, -5840.27, 101.428, 2.35619, 120, 0, 2453, 0, 0), +(84240, 28605, 609, 1, 2, 2204.79, -5840.43, 101.576, 1.13446, 120, 0, 2453, 0, 0), +(84257, 28605, 609, 1, 2, 2199.98, -5871.52, 101.408, 4.34587, 120, 0, 2453, 0, 0), +(84264, 28605, 609, 1, 2, 2228.12, -5818.03, 101.445, 1.43117, 120, 0, 2453, 0, 0), +(84265, 28605, 609, 1, 2, 2232.95, -5814.65, 101.368, 2.35619, 120, 0, 2453, 0, 0), +(84277, 28606, 609, 1, 2, 2172.505, -5810.831, 101.4043, 1.082104, 120, 0, 2453, 0, 0), +(84279, 28606, 609, 1, 2, 2237.33, -5860.84, 101.292, 5.42797, 120, 0, 2453, 0, 0), +(84280, 28606, 609, 1, 2, 2235.99, -5863.17, 101.269, 0.017453, 120, 0, 2453, 0, 0), +(84281, 28606, 609, 1, 2, 2221.94, -5888.14, 101.022, 1.69297, 120, 0, 2453, 0, 0), +(84297, 28606, 609, 1, 2, 2218.83, -5888.31, 100.995, 1.58825, 120, 0, 2453, 0, 0), +(84315, 28606, 609, 1, 2, 2203.25, -5833.98, 101.44, 5.70723, 120, 0, 2453, 0, 0), +(84316, 28606, 609, 1, 2, 2206.26, -5833.58, 101.435, 5.044, 120, 0, 2453, 0, 0), +(84317, 28606, 609, 1, 2, 2185.22, -5867.83, 101.395, 4.85202, 120, 0, 2453, 0, 0), +(84322, 28606, 609, 1, 2, 2197.14, -5870.83, 101.403, 4.57276, 120, 0, 2453, 0, 0), +(84336, 28606, 609, 1, 2, 2225.69, -5815.68, 101.445, 0.488692, 120, 0, 2453, 0, 0), +(84341, 28607, 609, 1, 2, 2212.25, -5881.55, 101.11, 4.59022, 120, 0, 2062, 0, 0), +(84342, 28607, 609, 1, 2, 2176, -5810.381, 101.4176, 2.094395, 120, 0, 2062, 0, 0), +(84346, 28607, 609, 1, 2, 2208.6, -5833.48, 101.428, 4.7822, 120, 0, 2062, 0, 0), +(84347, 28607, 609, 1, 2, 2202.68, -5838.43, 101.498, 0.069813, 120, 0, 2062, 0, 0), +(84348, 28607, 609, 1, 2, 2186.6, -5868.27, 101.39, 4.90438, 120, 0, 2062, 0, 0), +(84349, 28607, 609, 1, 2, 2189.17, -5870.81, 101.378, 2.00713, 120, 0, 2062, 0, 0), +(84392, 28607, 609, 1, 2, 2187.83, -5868.67, 101.387, 4.03171, 120, 0, 2062, 0, 0), +(84393, 28607, 609, 1, 2, 2224.77, -5811.89, 101.434, 0.820305, 120, 0, 2062, 0, 0), +(84406, 28607, 609, 1, 2, 2232.4, -5818.69, 101.392, 2.26893, 120, 0, 2062, 0, 0); + +-- Scarlet Preacher +UPDATE `creature` SET `position_x`=1390.558, `position_y`=-5703.662, `position_z`=136.3209, `Orientation`=2.282122, `MovementType`=0, `spawndist`=0 WHERE `guid`=129171 AND `id`=28594; +UPDATE `creature` SET `position_x`=1390.572, `position_y`=-5703.678, `position_z`=136.3188, `Orientation`=5.372028, `MovementType`=2, `spawndist`=0 WHERE `guid`=129170 AND `id`=28594; +UPDATE `creature` SET `position_x`=1360.449, `position_y`=-5683.808, `position_z`=138.7448, `Orientation`=5.587841, `MovementType`=0, `spawndist`=0 WHERE `guid`=129169 AND `id`=28594; +UPDATE `creature` SET `position_x`=1488.340, `position_y`=-5813.331, `position_z`=131.3350, `Orientation`=1.720976, `MovementType`=2, `spawndist`=0 WHERE `guid`=129165 AND `id`=28594; +UPDATE `creature` SET `position_x`=1484.236, `position_y`=-5850.959, `position_z`=131.3351, `Orientation`=3.808080, `MovementType`=2, `spawndist`=0 WHERE `guid`=129168 AND `id`=28594; + +DELETE FROM `creature_addon` WHERE `guid` IN (129170,129165,129168); +INSERT INTO `creature_addon` (`guid`, `path_id`, `mount`, `bytes1`, `bytes2`, `emote`, `auras`) VALUES +(129170, 1291700,0,0,1, 0,''), +(129165, 1291650,0,0,1, 0,''), +(129168, 1291680,0,0,1, 0,''); + +DELETE FROM `creature_formations` WHERE `leaderGUID` IN (128736,129170); +INSERT INTO `creature_formations` (`leaderGUID`, `memberGUID`, `dist`, `angle`, `groupAI`, `point_1`, `point_2`) VALUES +(128736, 128736, 0, 0, 515, 0, 0), +(128736, 128709, 6, 280, 515, 0, 0), +(128736, 128712, 6, 300, 515, 0, 0), +(128736, 128710, 6, 320, 515, 0, 0), +(128736, 128713, 6, 340, 515, 0, 0), +(128736, 128705, 6, 360, 515, 0, 0), +(128736, 128707, 6, 20, 515, 0, 0), +(128736, 128711, 6, 40, 515, 0, 0), +(128736, 128708, 6, 60, 515, 0, 0), +(128736, 128706, 6, 80, 515, 0, 0), +(129170, 129170, 0, 0, 515, 0, 0), +(129170, 129171, 3, 270, 515, 0, 0); + +-- waypoints +DELETE FROM `waypoint_data` WHERE `id` IN (1291700,1291650,1291680,1287360); +INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `position_z`, `delay`, `action`, `orientation`, `action_chance`, `move_type`) VALUES +-- Scarlet Preacher +(1291700,1,1402.94,-5716.94,133.387,0,0,5.27582,100,0), +(1291700,2,1423.3,-5747.93,131.208,0,0,5.27415,100,0), +(1291700,3,1402.68,-5716.63,133.475,0,0,2.18361,100,0), +(1291700,4,1397.68,-5710.01,135.097,0,0,2.44907,100,0), +(1291700,5,1389.76,-5704.78,136.089,0,0,2.54489,100,0), +(1291700,6,1386.06,-5702.27,138.002,0,0,2.54489,100,0), +(1291700,7,1366.41,-5688.04,137.968,3000,0,2.54489,100,0), +(1291700,8,1386.36,-5702.1,138.001,0,0,5.66684,100,0), +(1291700,9,1390.1,-5704.74,136.054,0,0,5.66684,100,0), +(1291650,1,1484.85,-5802.34,131.228,0,0,2.09093,100,0), +(1291650,2,1474.38,-5788.07,131.232,0,0,2.24565,100,0), +(1291650,3,1451.5,-5759.41,131.232,0,0,2.40901,100,0), +(1291650,4,1438.17,-5750.76,131.21,0,0,2.77606,100,0), +(1291650,5,1425.59,-5747.92,131.21,0,0,3.33919,100,0), +(1291650,6,1416.48,-5752.81,131.263,0,0,3.84342,100,0), +(1291650,7,1410.85,-5760.42,131.447,0,0,4.38253,100,0), +(1291650,8,1397.58,-5797.64,131.217,0,0,4.52391,100,0), +(1291650,9,1398.15,-5805.79,131.242,0,0,5.00299,100,0), +(1291650,10,1402.93,-5815.12,131.215,0,0,5.33678,100,0), +(1291650,11,1431.32,-5846.87,131.209,0,0,5.47815,100,0), +(1291650,12,1439.07,-5853.76,131.21,0,0,5.82529,100,0), +(1291650,13,1449.41,-5855.99,131.22,0,0,0.0101976,100,0), +(1291650,14,1478.43,-5856.03,131.237,0,0,0.0438187,100,0), +(1291650,15,1487.95,-5854.48,131.214,0,0,0.642292,100,0), +(1291650,16,1491.59,-5851.32,131.214,0,0,1.09625,100,0), +(1291650,17,1493.68,-5843.79,131.213,0,0,1.60511,100,0), +(1291650,18,1488.45,-5813.26,131.21,0,0,1.81953,100,0), +(1291680,1,1451.43,-5852.32,131.316,0,0,2.97292,100,0), +(1291680,2,1441.34,-5848.45,131.214,0,0,2.31868,100,0), +(1291680,3,1415.71,-5822.71,131.208,0,0,2.34224,100,0), +(1291680,4,1402.84,-5805.23,131.217,0,0,1.9087,100,0), +(1291680,5,1403.41,-5795.93,131.212,0,0,1.30316,100,0), +(1291680,6,1414.64,-5764.5,131.301,0,0,1.2741,100,0), +(1291680,7,1421.97,-5754.72,131.213,0,0,0.747881,100,0), +(1291680,8,1431.54,-5753.59,131.21,0,0,6.13021,100,0), +(1291680,9,1440.86,-5758.25,131.21,0,0,5.51839,100,0), +(1291680,10,1465.74,-5787.2,131.213,0,0,5.4532,100,0), +(1291680,11,1479.13,-5805.14,131.211,0,0,5.30005,100,0), +(1291680,12,1485.4,-5822.49,131.219,0,0,4.99375,100,0), +(1291680,13,1487.73,-5844.53,131.216,0,0,4.72279,100,0), +(1291680,14,1486.62,-5849.06,131.214,0,0,4.1039,100,0), +(1291680,15,1482.41,-5851.55,131.217,0,0,3.45988,100,0), +(1287360,1,1554.09, -5787.14, 119.562,0,0,3.1587,100,0), -- Scarlet Commander +(1287360,2,1525.3,-5788.32,127.109,0,0,3.34719,100,0), +(1287360,3,1501.55,-5795.64,131.149,0,0,3.56318,100,0), +(1287360,4,1488.25,-5802.89,131.248,0,0,4.43889,100,0), +(1287360,5,1486.45,-5811.1,131.213,0,0,4.81274,100,0), +(1287360,6,1491.52,-5862.06,131.213,0,0,5.16067,100,0), +(1287360,7,1504.88,-5884.58,131.182,0,0,5.78506,100,0), +(1287360,8,1535.07,-5893.31,129.066,0,0,6.08743,100,0), +(1287360,9,1601.17,-5910.01,116.303,0,0,6.00342,100,0), +(1287360,10,1643.02,-5910.12,116.266,0,0,0.520555,100,0), +(1287360,11,1656.36,-5899.57,116.124,0,0,0.587314,100,0), +(1287360,12,1692.02,-5884.95,116.142,0,0,6.01834,100,0), +(1287360,13,1702.86,-5887.94,116.138,0,0,5.62172,100,0), +(1287360,14,1736.57,-5907.02,116.123,0,0,5.80629,100,0), +(1287360,15,1798.79,-5933.78,115.968,0,0,6.01049,100,0), +(1287360,16,1809.37,-5933.87,115.297,0,0,0.343049,100,0), +(1287360,17,1864.98,-5914.6,104.226,0,0,0.331268,100,0), +(1287360,18,1885.84,-5907.43,102.989,0,0,0.778945,100,0), +(1287360,19,1894.42,-5891.76,102.687,0,0,1.25411,100,0), +(1287360,20,1895.85,-5875.9,101.466,0,0,1.51329,100,0), +(1287360,21,1881.66,-5850.79,102.244,0,0,2.27513,100,0), +(1287360,22,1852.78,-5819.59,99.8482,0,0,3.03697,100,0), +(1287360,23,1815.8,-5818.1,105.145,0,0,3.12336,100,0), +(1287360,24,1749.11,-5822.59,116.12,0,0,3.13514,100,0), +(1287360,25,1731.1,-5820.91,116.122,0,0,2.228,100,0), +(1287360,26,1707.71, -5788.65, 114.503,0,0,2.55002,100,0), +(1287360,27,1688.41, -5781.75, 114.617,0,0,2.96235,100,0), +(1287360,28,1652.1, -5780.44, 116.135,0,0,3.13514,100,0), +(1287360,29,1604.93, -5783.24, 116.183,0,0,3.20583,100,0); diff --git a/sql/updates/world/4.3.4/2017_11_30_01_world.sql b/sql/updates/world/4.3.4/2017_11_30_01_world.sql new file mode 100644 index 00000000000..03e275c7276 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_01_world.sql @@ -0,0 +1,3 @@ +-- +DELETE FROM `smart_scripts` WHERE `entryorguid` = 2519; +UPDATE `smart_scripts` SET `action_param1` = 170 WHERE `entryorguid` = 23671 AND `id` = 17; diff --git a/sql/updates/world/4.3.4/2017_11_30_02_world.sql b/sql/updates/world/4.3.4/2017_11_30_02_world.sql new file mode 100644 index 00000000000..f16d9764ee5 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_02_world.sql @@ -0,0 +1,6 @@ +-- +UPDATE `creature_template` SET `faction` = 16 WHERE `entry` = 48815; +UPDATE `creature` SET `PhaseId` = 0 WHERE `id` IN (28390,28391); +UPDATE `creature` SET `PhaseGroup` = 0 WHERE `id` = 49284; +DELETE FROM `game_event_creature` WHERE `guid` NOT IN (SELECT `guid` FROM `creature`); + diff --git a/sql/updates/world/4.3.4/2017_11_30_03_world.sql b/sql/updates/world/4.3.4/2017_11_30_03_world.sql new file mode 100644 index 00000000000..cfd87be6fb8 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_03_world.sql @@ -0,0 +1,30 @@ +DELETE FROM `spell_bonus_data` WHERE `entry` IN (7268, 30451, 1449, 44425, 1463, 543, 133, 2948, 2136, 44614, 11366, 92315, 2120, 11113, 31661, 44457, 11129, 82731, 116, 42208, 120, 122, 30455, 11426, 44572); +INSERT INTO `spell_bonus_data` (`entry`, `direct_bonus`, `dot_bonus`, `ap_bonus`, `ap_dot_bonus`, `comments`) VALUES +-- Arcane +(7268, 0.834, 0, 0, 0, 'Mage - Arcane Missiles'), +(30451, 1, 0, 0, 0, 'Mage - Arcane Blast'), +(1449, 0.186, 0, 0, 0, 'Mage - Arcane Explosion'), +(44425, 0.907, 0, 0, 0, 'Mage - Arcane Barrage'), +(1463, 0.807, 0, 0, 0, 'Mage - Mana Shield'), +(543, 0.807, 0, 0, 0, 'Mage - Mage Ward'), +-- Fire +(133, 1.236, 0, 0, 0, 'Mage - Fireball'), +(2948, 0.512, 0, 0, 0, 'Mage - Scorch'), +(2136, 0.429, 0, 0, 0, 'Mage - Fire Blast'), +(44614, 0.977, 0, 0, 0, 'Mage - Frostfire Bolt'), +(11366, 0.175, 0.18, 0, 0, 'Mage - Pyroblast'), +(92315, 0.175, 0.18, 0, 0, 'Mage - Pyroblast!'), +(2120, 0.146, 0.061, 0, 0, 'Mage - Flamestrike'), +(11113, 0.143, 0, 0, 0, 'Mage - Blast Wave'), +(31661, 0.193, 0, 0, 0, 'Mage - Dragon''s Breath'), +(44457, 0.25, 0.258, 0, 0, 'Mage - Living Bomb'), +(11129, 0.429, 0, 0, 0, 'Mage - Combustion'), -- DoT Damage needs script +(82731, 2.01, 0, 0, 0, 'Mage - Flame Orb'), +-- Frost +(116, 0.943, 0, 0, 0, 'Mage - Frostbolt'), +(42208, 0.162, 0, 0, 0, 'Mage - Frostbolt'), +(120, 0.214, 0, 0, 0, 'Mage - Cone of Cold'), +(122, 0.193, 0, 0, 0, 'Mage - Frost Nova'), +(30455, 0.378, 0, 0, 0, 'Mage - Ice Lance'), +(11426, 0.87, 0, 0, 0, 'Mage - Ice Barrier'), +(44572, 2.058, 0, 0, 0, 'Mage - Deep Freeze'); diff --git a/sql/updates/world/4.3.4/2017_11_30_04_world.sql b/sql/updates/world/4.3.4/2017_11_30_04_world.sql new file mode 100644 index 00000000000..2f4b5187b21 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_04_world.sql @@ -0,0 +1,2 @@ +-- +UPDATE `spell_bonus_data` SET `direct_bonus`= 0.278 WHERE `entry`= 7268; diff --git a/sql/updates/world/4.3.4/2017_11_30_05_world.sql b/sql/updates/world/4.3.4/2017_11_30_05_world.sql new file mode 100644 index 00000000000..7080efc4626 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_05_world.sql @@ -0,0 +1,32 @@ +-- Shaman +DELETE FROM `spell_bonus_data` WHERE `entry` IN (26364, 403, 421, 8042, 8050, 8056, 3606, 8349, 8187, 51490, 51505, 8004, 331, 77472, 1064, 5672, 379, 61295, 73921, 73899, 60103, 77478, 73683, 73682, 73685, 45297, 77451, 45284); +INSERT INTO `spell_bonus_data` (`entry`, `direct_bonus`, `dot_bonus`, `ap_bonus`, `ap_dot_bonus`, `comments`) VALUES +(26364, 0.267, 0, 0, 0, 'Shaman - Lightning Shield'), +(403, 0.714, 0, 0, 0, 'Shaman - Lightning Bolt'), +(421, 0.571, 0, 0, 0, 'Shaman - Chain Lightning'), +(8042, 0.386, 0, 0, 0, 'Shaman - Earth Shock'), +(8050, 0.142, 0.1, 0, 0, 'Shaman - Flame Shock'), +(8056, 0.386, 0, 0, 0, 'Shaman - Frost Shock'), +(3606, 0.167, 0, 0, 0, 'Shaman - Searing Totem'), +(8349, 0.164, 0, 0, 0, 'Shaman - Fire Nova'), +(8187, 0.067, 0, 0, 0, 'Shaman - Magma Totem'), +(51490, 0.571, 0, 0, 0, 'Shaman - Thunderstorm'), +(51505, 0.628, 0, 0, 0, 'Shaman - Lava Burst'), +(8004, 0.483, 0, 0, 0, 'Shaman - Healing Surge'), +(331, 0.302, 0, 0, 0, 'Shaman - Healing Wave'), +(77472, 0.967, 0, 0, 0, 'Shaman - Greater Healing Wave'), +(1064, 0.35, 0, 0, 0, 'Shaman - Chain Heal'), +(5672, 0.0827, 0, 0, 0, 'Shaman - Healing Stream Totem'), +(379, 1, 0, 0, 0, 'Shaman - Earth Shield'), +(61295, 1.113, 0.1125, 0, 0, 'Shaman - Riptide'), +(73921, 0.076, 0, 0, 0, 'Shaman - Healing Rain'), +(32175, 0, 0, 0, 0, 'Shaman - Storm Strike'), +(73899, 0, 0, 0, 0, 'Shaman - Primal Strike'), +(60103, 0, 0, 0, 0, 'Shaman - Lava Lash'), +(77478, 0.11, 0, 0, 0, 'Shaman - Earthquake'), +(73683, 0.429, 0, 0, 0, 'Shaman - Unleash Flame'), +(73682, 0.429, 0, 0, 0, 'Shaman - Unleash Frost'), +(73685, 0.201, 0, 0, 0, 'Shaman - Unleash Life'), +(45297, 0.571, 0, 0, 0, 'Shaman - Chain Lightning Mastery'), +(77451, 0.628, 0, 0, 0, 'Shaman - Lava Burst Mastery'), +(45284, 0.714, 0, 0, 0, 'Shaman - Lightning Bolt Mastery'); diff --git a/sql/updates/world/4.3.4/2017_11_30_06_world.sql b/sql/updates/world/4.3.4/2017_11_30_06_world.sql new file mode 100644 index 00000000000..f0aa01623f9 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_06_world.sql @@ -0,0 +1,3 @@ +-- +UPDATE `creature_template` SET `lootid` = 42938 WHERE `entry` = 42938; +UPDATE `quest_template_addon` SET `ProvidedItemCount` = 1 WHERE `ID` IN (3100, 3101, 3102, 3103, 3104, 3105, 24623, 24813, 26910, 28806, 28808, 28809, 28810, 28811, 28812, 28813); diff --git a/sql/updates/world/4.3.4/2017_11_30_07_world.sql b/sql/updates/world/4.3.4/2017_11_30_07_world.sql new file mode 100644 index 00000000000..1e84ea7e8c1 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_07_world.sql @@ -0,0 +1,7 @@ +-- +DELETE FROM conditions WHERE SourceEntry IN (83445, 91257, 83466, 81350, 91263, 91263, 83235) AND `SourceTypeOrReferenceId`= 13; +INSERT INTO conditions (SourceTypeOrReferenceId, SourceGroup, SourceEntry, SourceId, ElseGroup, ConditionTypeOrReference, ConditionTarget, ConditionValue1, ConditionValue2, ConditionValue3, NegativeCondition, ErrorType, ScriptName, COMMENT) VALUES +(13, 1, 83466, 0, 0, 31, 0, 3, 44712, 0, 0, 0, '', 'Shockwave Searcher - Target Shockwave Visual'), +(13, 1, 83445, 0, 0, 31, 0, 3, 44711, 0, 0, 0, '', 'Shockwave - Target Shockwave Stalker'), +(13, 1, 91257, 0, 0, 31, 0, 3, 44711, 0, 0, 0, '', 'Shockwave - Target Shockwave Stalker'), +(13, 1, 91263, 0, 0, 31, 0, 3, 44796, 0, 0, 0, '', 'Detonate Traps - Target Tolvir Land Mine'); diff --git a/sql/updates/world/4.3.4/2017_11_30_08_world.sql b/sql/updates/world/4.3.4/2017_11_30_08_world.sql new file mode 100644 index 00000000000..16962653ccb --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_08_world.sql @@ -0,0 +1,8 @@ +-- +DELETE FROM `spell_proc` WHERE `SpellID`= 76659; +INSERT INTO `spell_proc` (`SpellID`, `SpellFamilyName`, `SpellFamilyMask0`, `ProcFlags`, `SpellTypeMask`, `SpellPhaseMask`, `AttributesMask`) VALUES +(76659, 9, 0, 0, 1, 1, 0x0000020); + +DELETE FROM `spell_script_names` WHERE `ScriptName`= 'spell_hun_wild_quiver'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(76659, 'spell_hun_wild_quiver'); diff --git a/sql/updates/world/4.3.4/2017_11_30_09_world.sql b/sql/updates/world/4.3.4/2017_11_30_09_world.sql new file mode 100644 index 00000000000..e32eb7d253a --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_09_world.sql @@ -0,0 +1,4 @@ +-- +DELETE FROM `spell_proc` WHERE `SpellId`= 76613; +INSERT INTO `spell_proc` (`SpellId`, `SpellPhaseMask`, `AttributesMask`) VALUES +(76613, 0x00000002, 0x0000010 | 0x0000020); diff --git a/sql/updates/world/4.3.4/2017_11_30_10_world.sql b/sql/updates/world/4.3.4/2017_11_30_10_world.sql new file mode 100644 index 00000000000..9e4063f0c8b --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_10_world.sql @@ -0,0 +1,8 @@ +-- +DELETE FROM `spell_script_names` WHERE `ScriptName`= 'spell_pal_illuminated_healing'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(76669, 'spell_pal_illuminated_healing'); + +DELETE FROM `spell_proc` WHERE `SpellID`= 76669; +INSERT INTO `spell_proc` (`SpellID`, `SpellFamilyName`, `SpellFamilyMask0`, `ProcFlags`, `SpellTypeMask`, `SpellPhaseMask`, `HitMask`, `AttributesMask`) VALUES +(76669, 10, 0, 0x00004000, 2, 2, 0, 0x0000020); diff --git a/sql/updates/world/4.3.4/2017_11_30_11_world.sql b/sql/updates/world/4.3.4/2017_11_30_11_world.sql new file mode 100644 index 00000000000..8f8b248fbae --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_11_world.sql @@ -0,0 +1,8 @@ +-- +DELETE FROM `spell_script_names` WHERE `ScriptName`= 'spell_pri_echo_of_light'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(77485, 'spell_pri_echo_of_light'); + +DELETE FROM `spell_proc` WHERE `SpellID`= 77485; +INSERT INTO `spell_proc` (`SpellID`, `SpellFamilyName`, `SpellFamilyMask0`, `ProcFlags`, `SpellTypeMask`, `SpellPhaseMask`, `HitMask`, `AttributesMask`) VALUES +(77485, 6, 0, 0x00004000, 2, 2, 0, 0x0000020); diff --git a/sql/updates/world/4.3.4/2017_11_30_12_world.sql b/sql/updates/world/4.3.4/2017_11_30_12_world.sql new file mode 100644 index 00000000000..f0c1be6909e --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_12_world.sql @@ -0,0 +1,5 @@ +-- +DELETE FROM `spell_script_names` WHERE `ScriptName`= 'spell_mage_early_frost'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(83162, 'spell_mage_early_frost'), +(83239, 'spell_mage_early_frost'); diff --git a/sql/updates/world/4.3.4/2017_11_30_13_world.sql b/sql/updates/world/4.3.4/2017_11_30_13_world.sql new file mode 100644 index 00000000000..89f19b94b88 --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_13_world.sql @@ -0,0 +1,8 @@ +-- +DELETE FROM `spell_proc` WHERE `SpellID`= 76838; +INSERT INTO `spell_proc` (`SpellID`, `SpellFamilyName`, `SpellFamilyMask0`, `ProcFlags`, `SpellTypeMask`, `SpellPhaseMask`, `AttributesMask`) VALUES +(76838, 4, 0, 0, 1, 1, 0x0000020); + +DELETE FROM `spell_script_names` WHERE `ScriptName` = 'spell_warr_strikes_of_opportunity'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(76838, 'spell_warr_strikes_of_opportunity'); diff --git a/sql/updates/world/4.3.4/2017_11_30_14_world.sql b/sql/updates/world/4.3.4/2017_11_30_14_world.sql new file mode 100644 index 00000000000..9b6a259452d --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_14_world.sql @@ -0,0 +1,8 @@ +-- +DELETE FROM `spell_script_names` WHERE `ScriptName`= 'spell_pal_hand_of_light'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(76672 ,'spell_pal_hand_of_light'); + +DELETE FROM `spell_proc` WHERE `SpellID`= 76672; +INSERT INTO `spell_proc` (`SpellID`, `SpellFamilyName`, `SpellFamilyMask0`, `ProcFlags`, `SpellTypeMask`, `SpellPhaseMask`, `HitMask`, `AttributesMask`) VALUES +(76672 , 10, 0, 0x00000010, 1, 2, 0, 0x0000020); diff --git a/sql/updates/world/4.3.4/2017_11_30_15_world.sql b/sql/updates/world/4.3.4/2017_11_30_15_world.sql new file mode 100644 index 00000000000..7c8cc7d2aae --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_15_world.sql @@ -0,0 +1,4 @@ +-- +UPDATE smart_scripts SET link=0 WHERE entryorguid=46274 AND source_Type=0 AND id=0; +UPDATE smart_scripts SET link=2 WHERE entryorguid=47250 AND source_Type=0 AND id=0; +UPDATE smart_scripts SET event_flags=1 WHERE entryorguid=46942 AND source_Type=0 AND id IN (10,11); diff --git a/sql/updates/world/4.3.4/2017_11_30_16_world.sql b/sql/updates/world/4.3.4/2017_11_30_16_world.sql new file mode 100644 index 00000000000..506c50dce4a --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_16_world.sql @@ -0,0 +1,10 @@ +-- +UPDATE `creature` SET `PhaseGroup`=400 WHERE `phaseMask`=197; -- phasemask 1, 4, 64, 128 (phaseid 169, 171, 175, 176) +UPDATE `creature` SET `PhaseGroup`=404 WHERE `phaseMask`=229; -- phasemask 1, 4, 32, 64, 128 (phaseid 169, 171, 174, 175, 176) +UPDATE `creature` SET `PhaseGroup`=376 WHERE `phaseMask`=487; -- phasemask 1, 2, 4, 32, 64, 128, 256 (phaseid 169, 170, 171, 174, 175, 176,177) +UPDATE `creature` SET `PhaseGroup`=404 WHERE `phaseMask`=231; -- phasemask 1, 2, 4, 32, 64, 128 (phaseid 169, 170, 171, 174, 175, 176) +UPDATE `gameobject` SET `PhaseGroup`=382 WHERE `phaseMask`=131; -- phasemask 1, 2, 128 (phaseid 169, 170, 176) +UPDATE `gameobject` SET `PhaseGroup`=400 WHERE `phaseMask`=197; -- phasemask 1, 4, 64, 128 (phaseid 169, 171, 175, 176) +UPDATE `gameobject` SET `PhaseGroup`=404 WHERE `phaseMask`=229; -- phasemask 1, 4, 32, 64, 128 (phaseid 169, 171, 174, 175, 176) +UPDATE `gameobject` SET `PhaseGroup`=404 WHERE `phaseMask`=231; -- phasemask 1, 2, 4, 32, 64, 128 (phaseid 169, 170, 171, 174, 175, 176) +UPDATE `gameobject` SET `PhaseGroup`=376 WHERE `phaseMask`=487; -- phasemask 1, 2, 4, 32, 64, 128, 256 (phaseid 169, 170, 171, 174, 175, 176, 177) diff --git a/sql/updates/world/4.3.4/2017_11_30_17_world.sql b/sql/updates/world/4.3.4/2017_11_30_17_world.sql new file mode 100644 index 00000000000..c61d90c14cc --- /dev/null +++ b/sql/updates/world/4.3.4/2017_11_30_17_world.sql @@ -0,0 +1,14 @@ +-- +DELETE FROM `playercreateinfo_skills` WHERE `skill` IN (795, 796, 797, 798, 799, 800, 801, 802, 803, 804); +INSERT INTO `playercreateinfo_skills` (`raceMask`, `classMask`, `skill`, `comment`) VALUES +(0, 4, 795, 'Hunter - General'), +(0, 32, 796, 'Death Knight - General'), +(0, 8, 797, 'Rogue - General'), +(0, 1024, 798, 'Druid - General'), +(0, 128, 799, 'Mage - General'), +(0, 2, 800, 'Paladin - General'), +(0, 64, 801, 'Shaman - General'), +(0, 256, 802, 'Warlock - General'), +(0, 1, 803, 'Warrior - General'), +(0, 16, 804, 'Priest - General'); + diff --git a/src/server/database/Database/Implementation/CharacterDatabase.cpp b/src/server/database/Database/Implementation/CharacterDatabase.cpp index ef5cb36b5ad..38e8d29adeb 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.cpp +++ b/src/server/database/Database/Implementation/CharacterDatabase.cpp @@ -126,6 +126,9 @@ void CharacterDatabaseConnection::DoPrepareStatements() PrepareStatement(CHAR_SEL_AUCTIONS, "SELECT id, houseid, itemguid, itemEntry, count, itemowner, buyoutprice, time, buyguid, lastbid, startbid, deposit FROM auctionhouse ah INNER JOIN item_instance ii ON ii.guid = ah.itemguid", CONNECTION_SYNCH); PrepareStatement(CHAR_INS_AUCTION, "INSERT INTO auctionhouse (id, houseid, itemguid, itemowner, buyoutprice, time, buyguid, lastbid, startbid, deposit) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", CONNECTION_ASYNC); PrepareStatement(CHAR_DEL_AUCTION, "DELETE FROM auctionhouse WHERE id = ?", CONNECTION_ASYNC); + PrepareStatement(CHAR_SEL_AUCTION_BIDDERS, "SELECT id, bidderguid FROM auctionbidders", CONNECTION_SYNCH); + PrepareStatement(CHAR_INS_AUCTION_BIDDERS, "INSERT IGNORE INTO auctionbidders (id, bidderguid) VALUES (?, ?)", CONNECTION_ASYNC); + PrepareStatement(CHAR_DEL_AUCTION_BIDDERS, "DELETE FROM auctionbidders WHERE id = ?", CONNECTION_ASYNC); PrepareStatement(CHAR_UPD_AUCTION_BID, "UPDATE auctionhouse SET buyguid = ?, lastbid = ? WHERE id = ?", CONNECTION_ASYNC); PrepareStatement(CHAR_INS_MAIL, "INSERT INTO mail(id, messageType, stationery, mailTemplateId, sender, receiver, subject, body, has_items, expire_time, deliver_time, money, cod, checked) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", CONNECTION_ASYNC); PrepareStatement(CHAR_DEL_MAIL_BY_ID, "DELETE FROM mail WHERE id = ?", CONNECTION_ASYNC); diff --git a/src/server/database/Database/Implementation/CharacterDatabase.h b/src/server/database/Database/Implementation/CharacterDatabase.h index 2e3ea79a2e2..bb3c4da5d70 100644 --- a/src/server/database/Database/Implementation/CharacterDatabase.h +++ b/src/server/database/Database/Implementation/CharacterDatabase.h @@ -114,6 +114,9 @@ enum CharacterDatabaseStatements CHAR_DEL_AUCTION, CHAR_UPD_AUCTION_BID, CHAR_SEL_AUCTIONS, + CHAR_SEL_AUCTION_BIDDERS, + CHAR_INS_AUCTION_BIDDERS, + CHAR_DEL_AUCTION_BIDDERS, CHAR_INS_MAIL, CHAR_DEL_MAIL_BY_ID, CHAR_INS_MAIL_ITEM, diff --git a/src/server/game/AI/SmartScripts/SmartScript.cpp b/src/server/game/AI/SmartScripts/SmartScript.cpp index 77eaa865e72..1dd6a70694f 100644 --- a/src/server/game/AI/SmartScripts/SmartScript.cpp +++ b/src/server/game/AI/SmartScripts/SmartScript.cpp @@ -333,16 +333,17 @@ void SmartScript::ProcessAction(SmartScriptHolder& e, Unit* unit, uint32 var0, u if (me && e.action.questOffer.directAdd == 0) { if (pTarget->CanTakeQuest(q, true)) - if (WorldSession* session = pTarget->GetSession()) - { - PlayerMenu menu(session); - menu.SendQuestGiverQuestDetails(q, me->GetGUID(), true); - TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_OFFER_QUEST: Player guidLow %u - offering quest %u", pTarget->GetGUID().GetCounter(), e.action.questOffer.questID); - } + { + pTarget->PlayerTalkClass->SendQuestGiverQuestDetails(q, pTarget->GetGUID(), true, false); + TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_OFFER_QUEST: Player guidLow %u - offered quest %u", + pTarget->GetGUID().GetCounter(), e.action.questOffer.questID); + } } else { - (*itr)->ToPlayer()->AddQuestAndCheckCompletion(q, nullptr); + pTarget->AddQuestAndCheckCompletion(q, nullptr); + if (q->IsAutoAccept()) + pTarget->PlayerTalkClass->SendQuestGiverQuestDetails(q, pTarget->GetGUID(), true, true); TC_LOG_DEBUG("scripts.ai", "SmartScript::ProcessAction:: SMART_ACTION_OFFER_QUEST: Player guidLow %u - quest %u added", pTarget->GetGUID().GetCounter(), e.action.questOffer.questID); } diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp index 9f8c5146572..b5b0c3b3357 100644 --- a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp +++ b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp @@ -354,21 +354,37 @@ void AuctionHouseMgr::LoadAuctions() uint32 oldMSTime = getMSTime(); PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_AUCTIONS); - PreparedQueryResult result = CharacterDatabase.Query(stmt); + PreparedQueryResult resultAuctions = CharacterDatabase.Query(stmt); - if (!result) + if (!resultAuctions) { TC_LOG_INFO("server.loading", ">> Loaded 0 auctions. DB table `auctionhouse` is empty."); return; } - uint32 count = 0; + // parse bidder list + std::unordered_map> biddersByAuction; + PreparedStatement* stmt2 = CharacterDatabase.GetPreparedStatement(CHAR_SEL_AUCTION_BIDDERS); + uint32 countBidders = 0; + if (PreparedQueryResult resultBidders = CharacterDatabase.Query(stmt2)) + { + do + { + Field* fields = resultBidders->Fetch(); + biddersByAuction[fields[0].GetUInt32()].insert(ObjectGuid::Create(fields[1].GetUInt32())); + ++countBidders; + } + while (resultBidders->NextRow()); + } + + // parse auctions from db + uint32 countAuctions = 0; SQLTransaction trans = CharacterDatabase.BeginTransaction(); do { - Field* fields = result->Fetch(); + Field* fields = resultAuctions->Fetch(); AuctionEntry* aItem = new AuctionEntry(); if (!aItem->LoadFromDB(fields)) @@ -378,14 +394,17 @@ void AuctionHouseMgr::LoadAuctions() continue; } + auto it = biddersByAuction.find(aItem->Id); + if (it != biddersByAuction.end()) + aItem->bidders = std::move(it->second); + GetAuctionsMapByHouseId(aItem->houseId)->AddAuction(aItem); - ++count; - } while (result->NextRow()); + ++countAuctions; + } while (resultAuctions->NextRow()); CharacterDatabase.CommitTransaction(trans); - TC_LOG_INFO("server.loading", ">> Loaded %u auctions in %u ms", count, GetMSTimeDiffToNow(oldMSTime)); - + TC_LOG_INFO("server.loading", ">> Loaded %u auctions with %u bidders in %u ms", countAuctions, countBidders, GetMSTimeDiffToNow(oldMSTime)); } void AuctionHouseMgr::AddAItem(Item* it) @@ -655,7 +674,7 @@ void AuctionHouseObject::BuildListBidderItems(WorldPacket& data, Player* player, for (AuctionEntryMap::const_iterator itr = AuctionsMap.begin(); itr != AuctionsMap.end(); ++itr) { AuctionEntry* Aentry = itr->second; - if (Aentry && Aentry->bidder == player->GetGUID().GetCounter()) + if (Aentry && Aentry->bidders.find(player->GetGUID()) != Aentry->bidders.end()) { if (itr->second->BuildAuctionInfo(data)) ++count; @@ -862,7 +881,13 @@ uint32 AuctionEntry::GetAuctionOutBid() const void AuctionEntry::DeleteFromDB(SQLTransaction& trans) const { - PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_AUCTION); + PreparedStatement* stmt; + + stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_AUCTION); + stmt->setUInt32(0, Id); + trans->Append(stmt); + + stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_AUCTION_BIDDERS); stmt->setUInt32(0, Id); trans->Append(stmt); } @@ -912,6 +937,7 @@ bool AuctionEntry::LoadFromDB(Field* fields) TC_LOG_ERROR("misc", "Auction %u has not a existing item : %u", Id, itemGUIDLow); return false; } + return true; } std::string AuctionEntry::BuildAuctionMailSubject(MailAuctionAnswers response) const diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.h b/src/server/game/AuctionHouse/AuctionHouseMgr.h index 520d8074b72..1e54a6edb1b 100644 --- a/src/server/game/AuctionHouse/AuctionHouseMgr.h +++ b/src/server/game/AuctionHouse/AuctionHouseMgr.h @@ -85,6 +85,7 @@ struct TC_GAME_API AuctionEntry ObjectGuid::LowType bidder; uint32 deposit; //deposit can be calculated only when creating auction uint32 etime; + std::unordered_set bidders; AuctionHouseEntry const* auctionHouseEntry; // in AuctionHouse.dbc // helpers @@ -161,7 +162,6 @@ class TC_GAME_API AuctionHouseMgr AuctionHouseObject* GetAuctionsMap(uint32 factionTemplateId); AuctionHouseObject* GetAuctionsMapByHouseId(uint8 auctionHouseId); - AuctionHouseObject* GetBidsMap(uint32 factionTemplateId); Item* GetAItem(ObjectGuid::LowType id) { diff --git a/src/server/game/Entities/Creature/GossipDef.cpp b/src/server/game/Entities/Creature/GossipDef.cpp index cf170cbf434..d257978ba70 100644 --- a/src/server/game/Entities/Creature/GossipDef.cpp +++ b/src/server/game/Entities/Creature/GossipDef.cpp @@ -396,7 +396,7 @@ void PlayerMenu::SendQuestGiverStatus(uint32 questStatus, ObjectGuid npcGUID) co TC_LOG_DEBUG("network", "WORLD: Sent SMSG_QUESTGIVER_STATUS NPC=%s, status=%u", npcGUID.ToString().c_str(), questStatus); } -void PlayerMenu::SendQuestGiverQuestDetails(Quest const* quest, ObjectGuid npcGUID, bool activateAccept) const +void PlayerMenu::SendQuestGiverQuestDetails(Quest const* quest, ObjectGuid npcGUID, bool autoLaunched, bool displayPopup) const { std::string questTitle = quest->GetTitle(); std::string questDetails = quest->GetDetails(); @@ -439,11 +439,11 @@ void PlayerMenu::SendQuestGiverQuestDetails(Quest const* quest, ObjectGuid npcGU data << questTurnTargetName; // 4.x data << uint32(quest->GetQuestGiverPortrait()); // 4.x data << uint32(quest->GetQuestTurnInPortrait()); // 4.x - data << uint8(activateAccept ? 1 : 0); // auto finish + data << uint8(autoLaunched); // auto finish data << uint32(quest->GetFlags() & (sWorld->getBoolConfig(CONFIG_QUEST_IGNORE_AUTO_ACCEPT) ? ~QUEST_FLAGS_AUTO_ACCEPT : ~0)); // 3.3.3 questFlags data << uint32(quest->GetSuggestedPlayers()); data << uint8(0); // IsFinished? value is sent back to server in quest accept packet - data << uint8(quest->IsStartAtAreaTrigger() ? 1 : 0); // 4.x Starts at AreaTrigger? + data << uint8(displayPopup); // 4.x Starts at AreaTrigger? data << uint32(quest->GetRequiredSpell()); // 4.x quest->BuildExtraQuestInfo(data, _session->GetPlayer()); @@ -630,7 +630,7 @@ void PlayerMenu::SendQuestQueryResponse(Quest const* quest) const TC_LOG_DEBUG("network", "WORLD: Sent SMSG_QUEST_QUERY_RESPONSE questid=%u", quest->GetQuestId()); } -void PlayerMenu::SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUID, bool enableNext) const +void PlayerMenu::SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUID, bool autoLaunched) const { std::string questTitle = quest->GetTitle(); std::string questOfferRewardText = quest->GetOfferRewardText(); @@ -669,7 +669,7 @@ void PlayerMenu::SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUI data << uint32(quest->GetQuestGiverPortrait()); data << uint32(quest->GetQuestTurnInPortrait()); - data << uint8(enableNext ? 1 : 0); // Auto Finish + data << uint8(autoLaunched); // Auto Finish data << uint32(quest->GetFlags()); // 3.3.3 questFlags data << uint32(quest->GetSuggestedPlayers()); // SuggestedGroupNum @@ -694,7 +694,7 @@ void PlayerMenu::SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUI TC_LOG_DEBUG("network", "WORLD: Sent SMSG_QUESTGIVER_OFFER_REWARD NPC=%s, questid=%u", npcGUID.ToString().c_str(), quest->GetQuestId()); } -void PlayerMenu::SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGUID, bool canComplete, bool closeOnCancel) const +void PlayerMenu::SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGUID, bool canComplete, bool autoLaunched) const { // We can always call to RequestItems, but this packet only goes out if there are actually // items. Otherwise, we'll skip straight to the OfferReward @@ -735,7 +735,7 @@ void PlayerMenu::SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGU data << quest->GetIncompleteEmote(); // Close Window after cancel - data << uint32(closeOnCancel); + data << uint32(autoLaunched); data << uint32(quest->GetFlags()); // 3.3.3 questFlags data << uint32(quest->GetSuggestedPlayers()); // SuggestedGroupNum diff --git a/src/server/game/Entities/Creature/GossipDef.h b/src/server/game/Entities/Creature/GossipDef.h index 68011cec7f9..da94463f652 100644 --- a/src/server/game/Entities/Creature/GossipDef.h +++ b/src/server/game/Entities/Creature/GossipDef.h @@ -282,10 +282,10 @@ class TC_GAME_API PlayerMenu void SendQuestGiverQuestList(QEmote const& eEmote, const std::string& Title, ObjectGuid npcGUID); void SendQuestQueryResponse(Quest const* quest) const; - void SendQuestGiverQuestDetails(Quest const* quest, ObjectGuid npcGUID, bool activateAccept) const; + void SendQuestGiverQuestDetails(Quest const* quest, ObjectGuid npcGUID, bool autoLaunched, bool displayPopup) const; - void SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUID, bool enableNext) const; - void SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGUID, bool canComplete, bool closeOnCancel) const; + void SendQuestGiverOfferReward(Quest const* quest, ObjectGuid npcGUID, bool autoLaunched) const; + void SendQuestGiverRequestItems(Quest const* quest, ObjectGuid npcGUID, bool canComplete, bool autoLaunched) const; static void AddQuestLevelToTitle(std::string &title, int32 level); diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index a27203ca70d..cca7f89496e 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -14579,7 +14579,7 @@ void Player::SendPreparedQuest(ObjectGuid guid) if (quest->IsAutoComplete() && quest->IsRepeatable() && !quest->IsDailyOrWeekly()) PlayerTalkClass->SendQuestGiverRequestItems(quest, guid, CanCompleteRepeatableQuest(quest), true); else - PlayerTalkClass->SendQuestGiverQuestDetails(quest, guid, true); + PlayerTalkClass->SendQuestGiverQuestDetails(quest, guid, true, false); } } } @@ -23213,7 +23213,7 @@ void Player::SendInitialPacketsAfterAddToMap() if (GetPlayerSharingQuest()) { if (Quest const* quest = sObjectMgr->GetQuestTemplate(GetSharedQuestID())) - PlayerTalkClass->SendQuestGiverQuestDetails(quest, GetGUID(), true); + PlayerTalkClass->SendQuestGiverQuestDetails(quest, GetGUID(), true, false); else ClearQuestSharingInfo(); } diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 0b46936e7ea..ff5af332fbe 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6676,10 +6676,29 @@ float Unit::SpellDamagePctDone(Unit* victim, SpellInfo const* spellProto, Damage } } + // Add SPELL_AURA_MOD_DAMAGE_FROM_MANA percent bonus + AuraEffectList const& mDamageFromManaPct = owner->GetAuraEffectsByType(SPELL_AURA_MOD_DAMAGE_FROM_MANA); + for (AuraEffectList::const_iterator i = mDamageFromManaPct.begin(); i != mDamageFromManaPct.end(); ++i) + { + if (GetPower(POWER_MANA)) + { + uint32 masteryBonus = (*i)->GetAmount(); + float manaPct = 100.f * GetPower(POWER_MANA) / GetMaxPower(POWER_MANA); + AddPct(DoneTotalMod, CalculatePct(masteryBonus, manaPct)); + } + } + // Custom scripted damage switch (spellProto->SpellFamilyName) { case SPELLFAMILY_MAGE: + // Mastery: Frostburn + if (AuraEffect* aurEff = GetAuraEffect(76613, 0)) + if (victim->HasAuraState(AURA_STATE_FROZEN)) + if (aurEff->IsAffectingSpell(spellProto)) + AddPct(DoneTotalMod, aurEff->GetAmount()); + + // Ice Lance if (spellProto->SpellIconID == 186) if (victim->HasAuraState(AURA_STATE_FROZEN, spellProto, this)) diff --git a/src/server/game/Handlers/AuctionHouseHandler.cpp b/src/server/game/Handlers/AuctionHouseHandler.cpp index a535bd2ea8d..43e81eb8b3d 100644 --- a/src/server/game/Handlers/AuctionHouseHandler.cpp +++ b/src/server/game/Handlers/AuctionHouseHandler.cpp @@ -537,6 +537,16 @@ void WorldSession::HandleAuctionPlaceBid(WorldPacket& recvData) stmt->setUInt32(2, auction->Id); trans->Append(stmt); + if (auction->bidders.find(player->GetGUID()) == auction->bidders.end()) + { + // save new bidder in list, and save record to db + auction->bidders.insert(player->GetGUID()); + stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_AUCTION_BIDDERS); + stmt->setUInt32(0, auction->Id); + stmt->setUInt32(1, auction->bidder); + trans->Append(stmt); + } + SendAuctionCommandResult(auction, AUCTION_PLACE_BID, ERR_AUCTION_OK); } else diff --git a/src/server/game/Handlers/QuestHandler.cpp b/src/server/game/Handlers/QuestHandler.cpp index 55853d59b18..2acaa287a7a 100644 --- a/src/server/game/Handlers/QuestHandler.cpp +++ b/src/server/game/Handlers/QuestHandler.cpp @@ -243,7 +243,7 @@ void WorldSession::HandleQuestgiverQueryQuestOpcode(WorldPacket& recvData) if (quest->IsAutoComplete()) _player->PlayerTalkClass->SendQuestGiverRequestItems(quest, object->GetGUID(), _player->CanCompleteQuest(quest->GetQuestId()), true); else - _player->PlayerTalkClass->SendQuestGiverQuestDetails(quest, object->GetGUID(), true); + _player->PlayerTalkClass->SendQuestGiverQuestDetails(quest, object->GetGUID(), true, false); } } @@ -321,7 +321,7 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPacket& recvData) if (nextQuest->IsAutoAccept() && _player->CanAddQuest(nextQuest, true)) _player->AddQuestAndCheckCompletion(nextQuest, object); - _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, guid, true); + _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, guid, true, false); } } @@ -344,7 +344,7 @@ void WorldSession::HandleQuestgiverChooseRewardOpcode(WorldPacket& recvData) if (nextQuest->IsAutoAccept() && _player->CanAddQuest(nextQuest, true)) _player->AddQuestAndCheckCompletion(nextQuest, object); - _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, guid, true); + _player->PlayerTalkClass->SendQuestGiverQuestDetails(nextQuest, guid, true, false); } } @@ -637,7 +637,7 @@ void WorldSession::HandlePushQuestToParty(WorldPacket& recvPacket) else { receiver->SetQuestSharingInfo(sender->GetGUID(), questId); - receiver->PlayerTalkClass->SendQuestGiverQuestDetails(quest, receiver->GetGUID(), true); + receiver->PlayerTalkClass->SendQuestGiverQuestDetails(quest, receiver->GetGUID(), true, false); } } } diff --git a/src/server/game/Spells/Auras/SpellAuraDefines.h b/src/server/game/Spells/Auras/SpellAuraDefines.h index 527f9a43d7e..c34b3216510 100644 --- a/src/server/game/Spells/Auras/SpellAuraDefines.h +++ b/src/server/game/Spells/Auras/SpellAuraDefines.h @@ -415,7 +415,7 @@ enum AuraType SPELL_AURA_MOD_CAMOUFLAGE = 353, // NYI SPELL_AURA_MOD_HEALING_FROM_TARGET_HEALTH = 354, // Restoration Shaman mastery - mod healing based on target's health (less = more healing) SPELL_AURA_355 = 355, - SPELL_AURA_356 = 356, // Arcane Mage mastery - mod damage based on current mana + SPELL_AURA_MOD_DAMAGE_FROM_MANA = 356, // Arcane Mage mastery - mod damage based on current mana SPELL_AURA_ENABLE_BOSS1_UNIT_FRAME = 357, SPELL_AURA_WORGEN_ALTERED_FORM = 358, SPELL_AURA_359 = 359, diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 076ed25c55c..f39d50a23f6 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -414,7 +414,7 @@ pAuraEffectHandler AuraEffectHandler[TOTAL_AURAS]= &AuraEffect::HandleNULL, //353 SPELL_AURA_MOD_CAMOUFLAGE &AuraEffect::HandleNoImmediateEffect, //354 SPELL_AURA_MOD_HEALING_FROM_TARGET_HEALTH implemented in Unit::SpellHealingPctDone &AuraEffect::HandleUnused, //355 unused (4.3.4) - &AuraEffect::HandleNULL, //356 SPELL_AURA_356 + &AuraEffect::HandleNoImmediateEffect, //356 SPELL_AURA_MOD_DAMAGE_FROM_MANA implemented in Unit::SpellDamagePctDone &AuraEffect::HandleNULL, //357 SPELL_AURA_ENABLE_BOSS1_UNIT_FRAME &AuraEffect::HandleNULL, //358 SPELL_AURA_358 &AuraEffect::HandleNULL, //359 SPELL_AURA_359 diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 81726c54dcd..81ba81c4376 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -6406,44 +6406,6 @@ SpellCastResult Spell::CheckItems(uint32* param1 /*= nullptr*/, uint32* param2 / } } } - - // check totem-item requirements (items presence in inventory) - uint32 totems = 2; - for (uint8 i = 0; i < 2; ++i) - { - if (m_spellInfo->Totem[i] != 0) - { - if (player->HasItemCount(m_spellInfo->Totem[i])) - { - totems -= 1; - continue; - } - } - else - totems -= 1; - } - - if (totems != 0) - return SPELL_FAILED_TOTEMS; - - // Check items for TotemCategory (items presence in inventory) - uint32 totemCategory = 2; - for (uint8 i = 0; i < 2; ++i) - { - if (m_spellInfo->TotemCategory[i] != 0) - { - if (player->HasItemTotemCategory(m_spellInfo->TotemCategory[i])) - { - totemCategory -= 1; - continue; - } - } - else - totemCategory -= 1; - } - - if (totemCategory != 0) - return SPELL_FAILED_TOTEM_CATEGORY; } // special checks for spell effects diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 38a204f354d..fe67a8b221a 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -5179,9 +5179,12 @@ void Spell::EffectQuestStart(SpellEffIndex effIndex) return; if (quest->IsAutoAccept() && player->CanAddQuest(quest, false)) + { player->AddQuestAndCheckCompletion(quest, player); - - player->PlayerTalkClass->SendQuestGiverQuestDetails(quest, player->GetGUID(), true); + player->PlayerTalkClass->SendQuestGiverQuestDetails(quest, player->GetGUID(), true, true); + } + else + player->PlayerTalkClass->SendQuestGiverQuestDetails(quest, player->GetGUID(), true, false); } } diff --git a/src/server/scripts/Spells/spell_hunter.cpp b/src/server/scripts/Spells/spell_hunter.cpp index 5d306c32f26..0044fdea04c 100644 --- a/src/server/scripts/Spells/spell_hunter.cpp +++ b/src/server/scripts/Spells/spell_hunter.cpp @@ -57,6 +57,7 @@ enum HunterSpells SPELL_HUNTER_STEADY_SHOT_FOCUS = 77443, SPELL_HUNTER_IMPROVED_STEADY_SHOT_TRIGGERED = 53220, SPELL_HUNTER_THRILL_OF_THE_HUNT = 34720, + SPELL_HUNTER_WILD_QUIVER_DAMAGE = 76663, SPELL_LOCK_AND_LOAD_TRIGGER = 56453, SPELL_LOCK_AND_LOAD_MARKER = 67544 }; @@ -1204,6 +1205,47 @@ class spell_hun_tnt : public SpellScriptLoader } }; +// 76659 - Wild Quiver +class spell_hun_wild_quiver : public SpellScriptLoader +{ + public: + spell_hun_wild_quiver() : SpellScriptLoader("spell_hun_wild_quiver") { } + + class spell_hun_wild_quiver_AuraScript : public AuraScript + { + PrepareAuraScript(spell_hun_wild_quiver_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_HUNTER_WILD_QUIVER_DAMAGE }); + } + + bool CheckProc(ProcEventInfo& /*eventInfo*/) + { + return roll_chance_i(GetEffect(EFFECT_0)->GetAmount()); + } + + void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + if (Unit* target = eventInfo.GetActionTarget()) + caster->CastSpell(target, SPELL_HUNTER_WILD_QUIVER_DAMAGE, true, nullptr, aurEff); + } + + void Register() override + { + DoCheckProc += AuraCheckProcFn(spell_hun_wild_quiver_AuraScript::CheckProc); + OnEffectProc += AuraEffectProcFn(spell_hun_wild_quiver_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_hun_wild_quiver_AuraScript(); + } +}; + void AddSC_hunter_spell_scripts() { new spell_hun_ancient_hysteria(); @@ -1232,4 +1274,5 @@ void AddSC_hunter_spell_scripts() new spell_hun_target_only_pet_and_owner(); new spell_hun_thrill_of_the_hunt(); new spell_hun_tnt(); + new spell_hun_wild_quiver(); } diff --git a/src/server/scripts/Spells/spell_mage.cpp b/src/server/scripts/Spells/spell_mage.cpp index 9aa8f3cd5e3..4ed7919d0a4 100644 --- a/src/server/scripts/Spells/spell_mage.cpp +++ b/src/server/scripts/Spells/spell_mage.cpp @@ -44,6 +44,11 @@ enum MageSpells SPELL_MAGE_BLAZING_SPEED = 31643, SPELL_MAGE_BURNOUT = 29077, SPELL_MAGE_COLD_SNAP = 11958, + SPELL_MAGE_EARLY_FROST_R1 = 83049, + SPELL_MAGE_EARLY_FROST_R2 = 83050, + SPELL_MAGE_EARLY_FROST_TRIGGERED_R1 = 83162, + SPELL_MAGE_EARLY_FROST_TRIGGERED_R2 = 83239, + SPELL_MAGE_EARLY_FROST_VISUAL = 94315, SPELL_MAGE_FOCUS_MAGIC_PROC = 54648, SPELL_MAGE_FROST_NOVA = 122, SPELL_MAGE_FROST_WARDING_R1 = 11189, @@ -101,6 +106,8 @@ enum MageIcons ICON_MAGE_IMPROVED_FREEZE = 94, ICON_MAGE_INCANTER_S_ABSORPTION = 2941, ICON_MAGE_IMPROVED_MANA_GEM = 1036, + ICON_MAGE_EARLY_FROST_SKILL = 189, + ICON_MAGE_EARLY_FROST = 2114, SPELL_ICON_MAGE_LIVING_BOMB = 3000 }; @@ -614,6 +621,37 @@ class spell_mage_frostbolt : public SpellScriptLoader { PrepareSpellScript(spell_mage_frostbolt_SpellScript); + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo( + { + SPELL_MAGE_EARLY_FROST_R1, + SPELL_MAGE_EARLY_FROST_R2, + SPELL_MAGE_EARLY_FROST_TRIGGERED_R1, + SPELL_MAGE_EARLY_FROST_TRIGGERED_R2, + SPELL_MAGE_EARLY_FROST_VISUAL + }); + } + + void HandleEarlyFrost() + { + if (Unit* caster = GetCaster()) + { + if (AuraEffect* aurEff = caster->GetAuraEffect(SPELL_AURA_ADD_FLAT_MODIFIER, SPELLFAMILY_MAGE, ICON_MAGE_EARLY_FROST_SKILL, 0)) + { + if (!caster->GetAuraEffect(SPELL_AURA_ADD_FLAT_MODIFIER, SPELLFAMILY_MAGE, ICON_MAGE_EARLY_FROST, 0)) + { + if (aurEff->GetId() == SPELL_MAGE_EARLY_FROST_R1) + caster->CastSpell(caster, SPELL_MAGE_EARLY_FROST_TRIGGERED_R1, true); + else if (aurEff->GetId() == SPELL_MAGE_EARLY_FROST_R2) + caster->CastSpell(caster, SPELL_MAGE_EARLY_FROST_TRIGGERED_R2, true); + + caster->RemoveAurasDueToSpell(SPELL_MAGE_EARLY_FROST_VISUAL); + } + } + } + } + void RecalculateDamage(SpellEffIndex /*effIndex*/) { if (GetHitUnit() && GetHitUnit()->HasAuraState(AURA_STATE_FROZEN, GetSpellInfo(), GetCaster())) @@ -627,8 +665,9 @@ class spell_mage_frostbolt : public SpellScriptLoader } } - void Register() + void Register() override { + OnCast += SpellCastFn(spell_mage_frostbolt_SpellScript::HandleEarlyFrost); OnEffectHitTarget += SpellEffectFn(spell_mage_frostbolt_SpellScript::RecalculateDamage, EFFECT_1, SPELL_EFFECT_SCHOOL_DAMAGE); } }; @@ -1008,13 +1047,18 @@ class spell_mage_nether_vortex : public SpellScriptLoader bool Validate(SpellInfo const* /*spellInfo*/) override { - if (!sSpellMgr->GetSpellInfo(SPELL_MAGE_SLOW)) - return false; - return true; + return ValidateSpellInfo( + { + SPELL_MAGE_SLOW, + SPELL_MAGE_ARCANE_BLAST + }); } bool DoCheck(ProcEventInfo& eventInfo) { + if (eventInfo.GetProcSpell()->GetSpellInfo()->Id != SPELL_MAGE_ARCANE_BLAST) + return false; + if (Aura* aura = eventInfo.GetProcTarget()->GetAura(SPELL_MAGE_SLOW)) if (aura->GetCasterGUID() != GetTarget()->GetGUID()) return false; @@ -1609,6 +1653,38 @@ public: } }; +class spell_mage_early_frost : public SpellScriptLoader +{ +public: + spell_mage_early_frost() : SpellScriptLoader("spell_mage_early_frost") { } + + class spell_mage_early_frost_AuraScript : public AuraScript + { + PrepareAuraScript(spell_mage_early_frost_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_MAGE_EARLY_FROST_VISUAL }); + } + + void AfterRemove(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) + { + if (Unit* caster = GetCaster()) + caster->CastSpell(caster, SPELL_MAGE_EARLY_FROST_VISUAL , true, NULL, aurEff); + } + + void Register() override + { + AfterEffectRemove += AuraEffectRemoveFn(spell_mage_early_frost_AuraScript::AfterRemove, EFFECT_0, SPELL_AURA_ADD_FLAT_MODIFIER, AURA_EFFECT_HANDLE_REAL); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_mage_early_frost_AuraScript(); + } +}; + void AddSC_mage_spell_scripts() { new spell_mage_arcane_potency(); @@ -1619,6 +1695,7 @@ void AddSC_mage_spell_scripts() new spell_mage_cone_of_cold(); new spell_mage_conjure_refreshment(); RegisterAuraScript(spell_mage_dragon_breath); + new spell_mage_early_frost(); new spell_mage_fire_frost_ward(); new spell_mage_focus_magic(); new spell_mage_frostbolt(); diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp index b0b95fa11a7..56b391db900 100644 --- a/src/server/scripts/Spells/spell_paladin.cpp +++ b/src/server/scripts/Spells/spell_paladin.cpp @@ -39,6 +39,7 @@ enum PaladinSpells SPELL_PALADIN_BLESSING_OF_LOWER_CITY_PRIEST = 37880, SPELL_PALADIN_BLESSING_OF_LOWER_CITY_SHAMAN = 37881, SPELL_PALADIN_CONCENTRACTION_AURA = 19746, + SPELL_PALADIN_CRUSADER_STRIKE = 35395, SPELL_PALADIN_DIVINE_PURPOSE_PROC = 90174, SPELL_PALADIN_DIVINE_SACRIFICE = 64205, SPELL_PALADIN_DIVINE_STORM = 53385, @@ -48,11 +49,13 @@ enum PaladinSpells SPELL_PALADIN_EYE_FOR_AN_EYE_DAMAGE = 25997, SPELL_PALADIN_FORBEARANCE = 25771, SPELL_PALADIN_GLYPH_OF_SALVATION = 63225, + SPELL_PALADIN_HAND_OF_LIGHT = 96172, SPELL_PALADIN_HAND_OF_SACRIFICE = 6940, SPELL_PALADIN_HOLY_LIGHT = 635, SPELL_PALADIN_HOLY_SHOCK_R1 = 20473, SPELL_PALADIN_HOLY_SHOCK_R1_DAMAGE = 25912, SPELL_PALADIN_HOLY_SHOCK_R1_HEALING = 25914, + SPELL_PALADIN_ILLUMINATED_HEALING = 86273, SPELL_PALADIN_IMMUNE_SHIELD_MARKER = 61988, SPELL_PALADIN_IMPROVED_CONCENTRACTION_AURA = 63510, SPELL_PALADIN_IMPROVED_DEVOTION_AURA = 63514, @@ -64,7 +67,8 @@ enum PaladinSpells SPELL_PALADIN_SANCTIFIED_WRATH = 57318, SPELL_PALADIN_SANCTIFIED_WRATH_TALENT_R1 = 53375, SPELL_PALADIN_SEAL_OF_RIGHTEOUSNESS = 25742, - SPELL_PALADIN_SWIFT_RETRIBUTION_R1 = 53379 + SPELL_PALADIN_SWIFT_RETRIBUTION_R1 = 53379, + SPELL_PALADIN_TEMPLARS_VERDICT = 85256 }; enum MiscSpells @@ -1271,6 +1275,101 @@ class spell_pal_seal_of_righteousness : public SpellScriptLoader } }; +// 76669 - Illuminated Healing +class spell_pal_illuminated_healing : public SpellScriptLoader +{ + public: + spell_pal_illuminated_healing() : SpellScriptLoader("spell_pal_illuminated_healing") { } + + class spell_pal_illuminated_healing_AuraScript : public AuraScript + { + PrepareAuraScript(spell_pal_illuminated_healing_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_PALADIN_ILLUMINATED_HEALING }); + } + + void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + { + if (Unit* target = eventInfo.GetProcTarget()) + { + uint32 shieldAmount = CalculatePct(eventInfo.GetHealInfo()->GetHeal(), aurEff->GetAmount()); + caster->CastCustomSpell(SPELL_PALADIN_ILLUMINATED_HEALING, SPELLVALUE_BASE_POINT0, shieldAmount, target, true, nullptr, aurEff); + } + } + } + + void Register() override + { + OnEffectProc += AuraEffectProcFn(spell_pal_illuminated_healing_AuraScript::HandleProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_pal_illuminated_healing_AuraScript(); + } +}; + +// 76672 - Hand of Light +class spell_pal_hand_of_light : public SpellScriptLoader +{ + public: + spell_pal_hand_of_light() : SpellScriptLoader("spell_pal_hand_of_light") { } + + class spell_pal_hand_of_light_AuraScript : public AuraScript + { + PrepareAuraScript(spell_pal_hand_of_light_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo( + { + SPELL_PALADIN_TEMPLARS_VERDICT, + SPELL_PALADIN_CRUSADER_STRIKE, + SPELL_PALADIN_DIVINE_STORM + }); + } + + bool CheckProc(ProcEventInfo& eventInfo) + { + if (eventInfo.GetProcSpell()->GetSpellInfo()->Id == SPELL_PALADIN_TEMPLARS_VERDICT || + eventInfo.GetProcSpell()->GetSpellInfo()->Id == SPELL_PALADIN_CRUSADER_STRIKE || + eventInfo.GetProcSpell()->GetSpellInfo()->Id == SPELL_PALADIN_DIVINE_STORM) + return true; + + return false; + } + + void HandleProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + { + if (Unit* target = eventInfo.GetProcTarget()) + { + uint32 damageAmount = CalculatePct(eventInfo.GetDamageInfo()->GetDamage(), aurEff->GetAmount()); + caster->CastCustomSpell(SPELL_PALADIN_HAND_OF_LIGHT, SPELLVALUE_BASE_POINT0, damageAmount, target, true, NULL, aurEff); + } + } + } + + void Register() override + { + DoCheckProc += AuraCheckProcFn(spell_pal_hand_of_light_AuraScript::CheckProc); + OnEffectProc += AuraEffectProcFn(spell_pal_hand_of_light_AuraScript::HandleProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_pal_hand_of_light_AuraScript(); + } +}; void AddSC_paladin_spell_scripts() { @@ -1286,8 +1385,10 @@ void AddSC_paladin_spell_scripts() new spell_pal_eye_for_an_eye(); new spell_pal_glyph_of_holy_light(); new spell_pal_grand_crusader(); + new spell_pal_hand_of_light(); new spell_pal_hand_of_sacrifice(); new spell_pal_holy_shock(); + new spell_pal_illuminated_healing(); new spell_pal_improved_aura_effect("spell_pal_improved_concentraction_aura_effect"); new spell_pal_improved_aura_effect("spell_pal_improved_devotion_aura_effect"); new spell_pal_improved_aura_effect("spell_pal_sanctified_retribution_effect"); diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp index 9d9955591e3..2408abe20d0 100644 --- a/src/server/scripts/Spells/spell_priest.cpp +++ b/src/server/scripts/Spells/spell_priest.cpp @@ -37,6 +37,7 @@ enum PriestSpells SPELL_PRIEST_DISPEL_MAGIC_HOSTILE = 97691, SPELL_PRIEST_DIVINE_AEGIS = 47753, SPELL_PRIEST_DIVINE_TOUCH = 63544, + SPELL_PRIEST_ECHO_OF_LIGHT = 77489, SPELL_PRIEST_GLYPH_OF_CIRCLE_OF_HEALING = 55675, SPELL_PRIEST_GLYPH_OF_DISPEL_MAGIC = 55677, SPELL_PRIEST_GLYPH_OF_DISPEL_MAGIC_HEAL = 56131, @@ -68,7 +69,8 @@ enum PriestSpellIcons { PRIEST_ICON_ID_BORROWED_TIME = 2899, PRIEST_ICON_ID_DIVINE_TOUCH_TALENT = 3021, - PRIEST_ICON_ID_PAIN_AND_SUFFERING = 2874 + PRIEST_ICON_ID_PAIN_AND_SUFFERING = 2874, + PRIEST_ICON_ID_SHIELD_DISCIPLINE = 566 }; enum MiscSpells @@ -928,6 +930,10 @@ class spell_pri_power_word_shield : public SpellScriptLoader // Focused Power amount *= caster->GetTotalAuraMultiplier(SPELL_AURA_MOD_HEALING_DONE_PERCENT); + + // Mastery: Shield Discipline + if (AuraEffect const* shieldDiscipline = caster->GetDummyAuraEffect(SPELLFAMILY_HUNTER, PRIEST_ICON_ID_SHIELD_DISCIPLINE, EFFECT_0)) + AddPct(amount, shieldDiscipline->GetAmount()); } } @@ -1242,6 +1248,47 @@ class spell_pri_vampiric_touch : public SpellScriptLoader } }; +class spell_pri_echo_of_light : public SpellScriptLoader +{ + public: + spell_pri_echo_of_light() : SpellScriptLoader("spell_pri_echo_of_light") { } + + class spell_pri_echo_of_light_AuraScript : public AuraScript + { + PrepareAuraScript(spell_pri_echo_of_light_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_PRIEST_ECHO_OF_LIGHT }); + } + + void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + { + if (Unit* target = eventInfo.GetProcTarget()) + { + uint32 healAmount = CalculatePct(eventInfo.GetHealInfo()->GetHeal(), aurEff->GetAmount()); + uint8 tickNumber = sSpellMgr->GetSpellInfo(SPELL_PRIEST_ECHO_OF_LIGHT)->GetMaxTicks(); + if (healAmount && tickNumber) + caster->CastCustomSpell(SPELL_PRIEST_ECHO_OF_LIGHT, SPELLVALUE_BASE_POINT0, healAmount / tickNumber, target, true, NULL, aurEff); + } + } + } + + void Register() override + { + OnEffectProc += AuraEffectProcFn(spell_pri_echo_of_light_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_pri_echo_of_light_AuraScript(); + } +}; + void AddSC_priest_spell_scripts() { new spell_pri_body_and_soul(); @@ -1249,6 +1296,7 @@ void AddSC_priest_spell_scripts() new spell_pri_dispel_magic(); new spell_pri_divine_aegis(); new spell_pri_divine_hymn(); + new spell_pri_echo_of_light(); new spell_pri_glyph_of_prayer_of_healing(); new spell_pri_hymn_of_hope(); new spell_pri_improved_power_word_shield(); diff --git a/src/server/scripts/Spells/spell_warrior.cpp b/src/server/scripts/Spells/spell_warrior.cpp index d5578d320d4..30950f76914 100644 --- a/src/server/scripts/Spells/spell_warrior.cpp +++ b/src/server/scripts/Spells/spell_warrior.cpp @@ -44,6 +44,7 @@ enum WarriorSpells SPELL_WARRIOR_JUGGERNAUT_CRIT_BONUS_TALENT = 64976, SPELL_WARRIOR_LAST_STAND_TRIGGERED = 12976, SPELL_WARRIOR_MORTAL_STRIKE = 12294, + SPELL_WARRIOR_OPPORTUNITY_STRIKE = 76858, SPELL_WARRIOR_RALLYING_CRY = 97463, SPELL_WARRIOR_REND = 94009, SPELL_WARRIOR_RETALIATION_DAMAGE = 22858, @@ -1056,6 +1057,48 @@ class spell_warr_vigilance_trigger : public SpellScriptLoader } }; +// 76838 - Strikes of Opportunity +class spell_warr_strikes_of_opportunity : public SpellScriptLoader +{ + public: + spell_warr_strikes_of_opportunity() : SpellScriptLoader("spell_warr_strikes_of_opportunity") { } + + class spell_warr_strikes_of_opportunity_AuraScript : public AuraScript + { + PrepareAuraScript(spell_warr_strikes_of_opportunity_AuraScript); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_WARRIOR_OPPORTUNITY_STRIKE }); + } + + bool CheckProc(ProcEventInfo& /*eventInfo*/) + { + return roll_chance_i(GetEffect(EFFECT_0)->GetAmount()); + } + + void HandleEffectProc(AuraEffect const* aurEff, ProcEventInfo& eventInfo) + { + PreventDefaultAction(); + if (Unit* caster = GetCaster()) + if (Unit* target = eventInfo.GetActionTarget()) + caster->CastSpell(target, SPELL_WARRIOR_OPPORTUNITY_STRIKE, true, nullptr, aurEff); + } + + void Register() override + { + DoCheckProc += AuraCheckProcFn(spell_warr_strikes_of_opportunity_AuraScript::CheckProc); + OnEffectProc += AuraEffectProcFn(spell_warr_strikes_of_opportunity_AuraScript::HandleEffectProc, EFFECT_0, SPELL_AURA_DUMMY); + } + }; + + AuraScript* GetAuraScript() const override + { + return new spell_warr_strikes_of_opportunity_AuraScript(); + } +}; + + void AddSC_warrior_spell_scripts() { new spell_warr_bloodthirst(); @@ -1077,6 +1120,7 @@ void AddSC_warrior_spell_scripts() new spell_warr_second_wind_trigger(); new spell_warr_shattering_throw(); new spell_warr_slam(); + new spell_warr_strikes_of_opportunity(); new spell_warr_sudden_death(); new spell_warr_sweeping_strikes(); new spell_warr_sword_and_board();