YTDB  

Вернуться   YTDB > Баг-репорты (Патчи) / Bug reports (Patches) 4.3.4 > Необходима поддержка скриптов / Needs script support

Необходима поддержка скриптов / Needs script support Все сделать через базу невозможно.

Данный раздел специально выделен для скриптов, реализующих действия, которые невозможно реализовать через базу.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.09.2014, 01:46   #1
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию Крепость Барадин. Относится только к Катаклизму.

http://ru.wowhead.com/zone=5600
Код:
-- Creature id: 47120
UPDATE creature_template SET AIName='EventAI' WHERE entry=47120;
DELETE FROM creature_ai_scripts WHERE creature_id=47120;
INSERT INTO creature_ai_scripts VALUES 
('4712001','47120','0','0','100','6','300000','300000','0','0','11','47008','0','3','1','-53','0','0','0','0','0','0','Argaloth - Cast Berserk and Emote'),
('4712002','47120','0','0','100','7','10000','10000','24000','24000','11','88954','0','0','0','0','0','0','0','0','0','0','Argaloth - Cast Consuming Darkness'),
('4712003','47120','0','0','100','7','15000','15000','15000','15000','11','88942','0','0','0','0','0','0','0','0','0','0','Argaloth - Cast Meteor Slash'),
('4712004','47120','2','0','100','6','66','0','0','0','11','88972','0','1','1','-54','0','0','0','0','0','0','Argaloth - Cast Fel Firestorm and Emote at 66% health'),
('4712005','47120','2','0','100','6','33','0','0','0','11','88972','0','1','1','-54','0','0','0','0','0','0','Argaloth - Cast Fel Firestorm and Emote at 33% health');

-- Creature id: 47829
UPDATE creature_template SET AIName='EventAI' WHERE entry=47829;
DELETE FROM creature_ai_scripts WHERE creature_id=47829;
INSERT INTO creature_ai_scripts VALUES 
('4782901','47829','11','0','100','6','0','0','0','0','11','88973','0','0','0','0','0','0','0','0','0','0','Fel Flames - Cast Fel Firestorm on Spawned');


-- Creature id: 52363
UPDATE creature_template SET AIName='EventAI' WHERE entry=52363;
DELETE FROM creature_ai_scripts WHERE creature_id=52363;
INSERT INTO creature_ai_scripts VALUES 
('5236301','52363','0','0','100','6','300000','300000','0','0','11','47008','0','3','1','-53','0','0','0','0','0','0','Occu\'thar - Cast Berserk and Emote'),
('5236302','52363','0','0','100','7','5000','5000','25000','25000','11','96913','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Searing Shadow'),
('5236303','52363','0','0','100','7','15000','15000','30000','40000','11','96872','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Focused Fire'),
('5236304','52363','0','0','100','7','22000','22000','60000','60000','11','96920','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Eyes of Occu\'thar'),
('5236305','52363','30','0','100','7','5','52369','0','0','11','96884','6','1','0','0','0','0','0','0','0','0','Occu\'thar - Cast Focused Fire on Received AI event from Eyestalk');

-- Creature id: 52369
UPDATE creature_template SET AIName='EventAI' WHERE entry=52369;
DELETE FROM creature_ai_scripts WHERE creature_id=52369;
INSERT INTO creature_ai_scripts VALUES 
('5236901','52369','11','0','100','6','0','0','0','0','45','5','100','0','0','0','0','0','0','0','0','0','Eyestalk - Send AI Event on Spawned');

-- Creature id: 52389
UPDATE creature_template SET AIName='EventAI' WHERE entry=52389;
DELETE FROM creature_ai_scripts WHERE creature_id=52389;
INSERT INTO creature_ai_scripts VALUES 
('5238901','52389','11','0','100','6','0','0','0','0','11','96995','0','0','0','0','0','0','0','0','0','0','Eye of Occu\'thar - Cast Eye of Occu\'thar Visual on Spawned'),
('5238902','52389','0','0','100','7','10000','10000','10000','10000','11','96968','0','0','0','0','0','0','0','0','0','0','Eye of Occu\'thar - Cast Occu\'thar\'s Destruction'),
('5238903','52389','4','0','100','6','0','0','0','0','11','96942','6','0','0','0','0','0','0','0','0','0','Eye of Occu\'thar - Cast Gaze of Occu\'thar on Aggro');


-- Creature id: 55869
UPDATE creature_template SET AIName='EventAI' WHERE entry=55869;
DELETE FROM creature_ai_scripts WHERE creature_id=55869;
INSERT INTO creature_ai_scripts VALUES 
('5586901','55869','10','0','100','6','0','45','0','0','1','-55','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell Intro'),
('5586902','55869','4','0','100','6','0','0','0','0','1','-56','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Aggro'),
('5586903','55869','0','0','100','6','300000','300000','0','0','11','47008','0','3','0','0','0','0','0','0','0','0','Alizabal - Cast Berserk'),
('5586904','55869','0','0','100','39','5000','5000','15000','15000','11','104936','1','0','11','105065','0','0','0','0','0','0','Alizabal - Cast Skewer or Seething Hate'),
('5586905','55869','0','0','100','7','25000','25000','25000','25000','11','106248','0','0','0','0','0','0','0','0','0','0','Alizabal - Cast Blade dance'),
('5586906','55869','5','0','100','7','0','0','0','0','1','-59','-60','-61','0','0','0','0','0','0','0','0','Alizabal - Yell on Kill'),
('5586907','55869','6','0','100','6','0','0','0','0','1','-58','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Death'),
('5586908','55869','21','0','100','6','0','0','0','0','1','-57','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Reached Home');

-- Creature id: 56350
UPDATE creature_template SET AIName='EventAI' WHERE entry=56350;
DELETE FROM creature_ai_scripts WHERE creature_id=56350;
INSERT INTO creature_ai_scripts VALUES 
('5635001','56350','0','0','100','7','15000','15000','15000','15000','11','105859','1','0','0','0','0','0','0','0','0','0','Disciple of Hate - Cast Run Through'),
('5635002','56350','0','0','100','7','25000','25000','25000','25000','11','105855','0','0','0','0','0','0','0','0','0','0','Disciple of Hate - Cast Whirl of Blades');

-- Texts
DELETE FROM creature_ai_texts WHERE entry IN (-53, -54, -55, -56, -57, -58, -59, -60, -61);
INSERT INTO `creature_ai_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`,`emote`) VALUES 
('-53','%s goes into a berserker rage!','0','3','0','Generic - Emote Berserk','0'),
('-54','%s begins to cast Fel Firestorm!','0','3','0','Argaloth - Emote Fel Firestorm','0'),
('-55','How I HATE this place. My captors may be long-dead, but don\'t think I won\'t take it all out on you miserable treasure-hunters.','25779','1','0','Alizabal - Say Intro','0'),
('-56','I hate adventurers.','25777','1','0','Alizabal - Say Aggro','0'),
('-57','I hate incompetent raiders.','25780','1','0','Alizabal - Say Wipe','0'),
('-58','I hate... every one of you...','25778','1','0','Alizabal - Say Death','0'),
('-59','I still hate you.','25781','1','0','Alizabal - Say Slay 1','0'),
('-60','Do you hate me? Good.','25782','1','0','Alizabal - Say Slay 2','0'),
('-61','I hate mercy.','25783','1','0','Alizabal - Say Slay 3','0');

-- Script target
DELETE FROM spell_script_target WHERE entry=96931;
INSERT INTO spell_script_target VALUES
(96931, 1, 52389, 0);
Код:
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 8fcf248..2858d19 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -2949,6 +2949,16 @@ void Spell::EffectDummy(SpellEffectEntry const* effect)
                     m_caster->CastSpell(unitTarget, 74454, true, NULL, NULL, m_caster->GetObjectGuid(), m_spellInfo);
                     return;
                 }
+                case 105065:                                // Seething Hate
+                case 108090:                                // Seething Hate (h)
+                case 106248:                                // Blade Dance
+                {
+                    if (!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER)
+                        return;
+
+                    m_caster->CastSpell(unitTarget, effect->CalculateSimpleValue(), true);
+                    return;
+                }
             }
             break;
         }
@@ -8975,6 +8985,14 @@ void Spell::EffectScriptEffect(SpellEffectEntry const* effect)
                     unitTarget->CastSpell(m_caster, effect->CalculateSimpleValue(), true);
                     return;
                 }
+                case 96931:                                 // Eyes of Occu'thar
+                {
+                    if (!unitTarget)
+                        return;
+
+                    m_caster->CastSpell(unitTarget, effect->CalculateSimpleValue(), true);
+                    return;
+                }
             }
             break;
         }
Автор Xfurry
Вся информация у него со сниффов, так-что тут уж точно без хаков.
Код:
-- Script id: 105065
DELETE FROM dbscripts_on_spell WHERE id=105065;
INSERT INTO dbscripts_on_spell VALUES 
(105065,0,15,105067,0,0,0,10,0,0,0,0,0,0,0,0,'Alizabal - Cast Seething Hate.');

-- Script id: 108090
DELETE FROM dbscripts_on_spell WHERE id=108090;
INSERT INTO dbscripts_on_spell VALUES 
(108090,0,15,105067,0,0,0,10,0,0,0,0,0,0,0,0,'Alizabal - Cast Seething Hate h.');

-- Script id: 106248
DELETE FROM dbscripts_on_spell WHERE id=106248;
INSERT INTO dbscripts_on_spell VALUES 
(106248,0,15,105067,0,0,0,8,0,0,0,0,0,0,0,0,'Alizabal - Cast Blade Dance.');

-- Script id: 96931
DELETE FROM dbscripts_on_spell WHERE id=96931;
INSERT INTO dbscripts_on_spell VALUES 
(96931,0,15,96932,0,0,0,8,0,0,0,0,0,0,0,0,'Occu'thar- Eyes of Occu'thar.');
На основе его патча я решил написать скрипт для спеллов. У него в ядре, у меня через db_script.
Ссылка на github.
https://github.com/scriptdev2/scriptdev2-cata/issues/1
__________________
Ты кто? Зёбра! Ктооооооо?!

Последний раз редактировалось Ulduar; 09.09.2014 в 01:58.
Ulduar вне форума   Ответить с цитированием
Старый 09.09.2014, 01:54   #2
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию



Также относится к этой теме. Метеоритный дождь и Пылающая Ненависть должны распределяться между всеми игроками. Было пофикшено.
__________________
Ты кто? Зёбра! Ктооооооо?!
Ulduar вне форума   Ответить с цитированием
Старый 14.09.2014, 14:59   #3
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию

Код:
-- Creature id: 47120
UPDATE creature_template SET AIName='EventAI' WHERE entry=47120;
DELETE FROM creature_ai_scripts WHERE creature_id=47120;
INSERT INTO creature_ai_scripts VALUES 
('4712001','47120','0','0','100','6','300000','300000','0','0','11','47008','0','3','1','-1800','0','0','0','0','0','0','Argaloth - Cast Berserk and Emote'),
('4712002','47120','0','0','100','7','10000','10000','24000','24000','11','88954','0','0','0','0','0','0','0','0','0','0','Argaloth - Cast Consuming Darkness'),
('4712003','47120','0','0','100','7','15000','15000','15000','15000','11','88942','0','0','0','0','0','0','0','0','0','0','Argaloth - Cast Meteor Slash'),
('4712004','47120','2','0','100','6','66','0','0','0','11','88972','0','1','1','-1801','0','0','0','0','0','0','Argaloth - Cast Fel Firestorm and Emote at 66% health'),
('4712005','47120','2','0','100','6','33','0','0','0','11','88972','0','1','1','-1801','0','0','0','0','0','0','Argaloth - Cast Fel Firestorm and Emote at 33% health');
Код:
-- Creature id: 52363
UPDATE creature_template SET AIName='EventAI' WHERE entry=52363;
DELETE FROM creature_ai_scripts WHERE creature_id=52363;
INSERT INTO creature_ai_scripts VALUES 
('5236301','52363','0','0','100','6','300000','300000','0','0','11','47008','0','3','1','-1800','0','0','0','0','0','0','Occu\'thar - Cast Berserk and Emote'),
('5236302','52363','0','0','100','7','5000','5000','25000','25000','11','96913','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Searing Shadow'),
('5236303','52363','0','0','100','7','15000','15000','30000','40000','11','96872','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Focused Fire'),
('5236304','52363','0','0','100','7','22000','22000','60000','60000','11','96920','0','0','0','0','0','0','0','0','0','0','Occu\'thar - Cast Eyes of Occu\'thar'),
('5236305','52363','30','0','100','7','5','52369','0','0','11','96884','6','1','0','0','0','0','0','0','0','0','Occu\'thar - Cast Focused Fire on Received AI event from Eyestalk');
Код:
-- Creature id: 55869
UPDATE creature_template SET AIName='EventAI' WHERE entry=55869;
DELETE FROM creature_ai_scripts WHERE creature_id=55869;
INSERT INTO creature_ai_scripts VALUES 
('5586901','55869','10','0','100','6','0','45','0','0','1','-1802','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell Intro'),
('5586902','55869','4','0','100','6','0','0','0','0','1','-1803','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Aggro'),
('5586903','55869','0','0','100','6','300000','300000','0','0','11','47008','0','3','0','0','0','0','0','0','0','0','Alizabal - Cast Berserk'),
('5586904','55869','0','0','100','39','5000','5000','15000','15000','11','104936','1','0','11','105065','0','0','0','0','0','0','Alizabal - Cast Skewer or Seething Hate'),
('5586905','55869','0','0','100','7','25000','25000','25000','25000','11','106248','0','0','0','0','0','0','0','0','0','0','Alizabal - Cast Blade dance'),
('5586906','55869','5','0','100','7','0','0','0','0','1','-1806','-1807','-1808','0','0','0','0','0','0','0','0','Alizabal - Yell on Kill'),
('5586907','55869','6','0','100','6','0','0','0','0','1','-1805','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Death'),
('5586908','55869','21','0','100','6','0','0','0','0','1','-1804','0','0','0','0','0','0','0','0','0','0','Alizabal - Yell on Reached Home');
Код:
-- Texts
DELETE FROM creature_ai_texts WHERE entry IN (-1800, -1801, -1802, -1803, -1804, -1805, -1805, -1806, -1807, -1808);
INSERT INTO `creature_ai_texts` (`entry`,`content_default`,`sound`,`type`,`language`,`comment`,`emote`) VALUES 
('-1800','%s goes into a berserker rage!','0','3','0','Generic - Emote Berserk','0'),
('-1801','%s begins to cast Fel Firestorm!','0','3','0','Argaloth - Emote Fel Firestorm','0'),
('-1802','How I HATE this place. My captors may be long-dead, but don\'t think I won\'t take it all out on you miserable treasure-hunters.','25779','1','0','Alizabal - Say Intro','0'),
('-1803','I hate adventurers.','25777','1','0','Alizabal - Say Aggro','0'),
('-1804','I hate incompetent raiders.','25780','1','0','Alizabal - Say Wipe','0'),
('-1805','I hate... every one of you...','25778','1','0','Alizabal - Say Death','0'),
('-1806','I still hate you.','25781','1','0','Alizabal - Say Slay 1','0'),
('-1807','Do you hate me? Good.','25782','1','0','Alizabal - Say Slay 2','0'),
('-1808','I hate mercy.','25783','1','0','Alizabal - Say Slay 3','0');
Подредактировал номера текстов. Также выложил скрипты тех боссов, которые используют тексты, что бы видно было изменения.
__________________
Ты кто? Зёбра! Ктооооооо?!
Ulduar вне форума   Ответить с цитированием
Старый 14.09.2014, 15:07   #4
NeatElves
YTDB dev
 
Аватар для NeatElves
 
Регистрация: 05.11.2009
Сообщений: 5,754
Сказал(а) спасибо: 82
Поблагодарили 5,211 раз(а) в 4,678 сообщениях
NeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспоримаNeatElves Репутация неоспорима
По умолчанию

То есть заливать тупо то что есть, не нужно переделывать ни номера, ни комментарии(согласно примеру, который был вам показан очень давно), понятненько тогда откуда жалобы на непринятие...

Последний раз редактировалось NeatElves; 14.09.2014 в 15:10.
NeatElves вне форума   Ответить с цитированием
Старый 14.09.2014, 15:12   #5
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию

Цитата:
ни комментарии
Я не имею права переделывать то, что делал Xfurry, это его труд.
Цитата:
не нужно переделывать ни номера
Принимать или нет - это ваше право. Моё дело выложить.
__________________
Ты кто? Зёбра! Ктооооооо?!
Ulduar вне форума   Ответить с цитированием
Старый 01.11.2014, 09:53   #6
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию

Цитата:
понятненько тогда откуда жалобы на непринятие...
Их нет и не будет. Не примете - значит не примете. Моя совесть чиста в любом случае(не хочу, чтобы меня обвиняли потом, что я чужие труды ворую).
__________________
Ты кто? Зёбра! Ктооооооо?!

Последний раз редактировалось Ulduar; 01.11.2014 в 10:08.
Ulduar вне форума   Ответить с цитированием
Старый 28.01.2015, 20:40   #7
Ulduar
Ученый
 
Регистрация: 23.11.2012
Сообщений: 196
Сказал(а) спасибо: 68
Поблагодарили 16 раз(а) в 16 сообщениях
Ulduar На верном пути
По умолчанию

Скрипты для дверей реализовали в СД2. Осталось для Ализабаль исправить движение во время каста танца клинков(у неё поведение как у Ребрада во время вихря костей, чарджится в рандомный таргет, но EventAI этого не умеет)
__________________
Ты кто? Зёбра! Ктооооооо?!
Ulduar вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 05:10. Часовой пояс GMT +4.


YTDB - MaNGOS DataBase

Русский форум Мангос - официальный форум RMDC

Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума YTDB будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot