|
MaNGOSZero (1.12.X) Любителям древности. Всё для клиента 1.12.Х |
|
Опции темы | Поиск в этой теме | Опции просмотра |
23.03.2011, 16:48 | #1 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
ВзрывоОвца)
Наблюдал как в свое время на 3.3.5 когда игрался ради фана у когот там на шарде.
Так и у себя когда сейчас собираю посмотреть мир, потестить ммапы. Взрывоовца должна при контакте с противником подрываться на 135-165 дамаги, ну или в течении 3х минут исчезнуть. У нас имеется следующая ситуация, овца 33 лвл, никуда не торопится взрываться а тупо лупит мобов, игрок при этом получает экспу. Овца выносит порядка 40-60 на хит, что скажем на собранном твинке на 10 лвле очень таки неплохо для прокачки. Ну и соответственно если играться твинком на бг в том же 19 брекете скажем, то овца 33 лвл доставит еще в довесок проблем противникам. |
26.03.2011, 15:17 | #2 |
Ученый
|
Нужен скрипт на нпц(овца) что при контакте с противником у неё срабатывает спел взрыва.
Последний раз редактировалось Mayss; 26.03.2011 в 15:23. |
27.03.2011, 14:43 | #3 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Попробовал реализовать через EAI но тут столкнулся с такой вот ситуацией.
Дело в том, что итем 4384 Explosive Sheep - при использовании кастует спелл 4074 и появляется да - овца. Но не та, что в базе под ид 2675, на которую я пробовал написать скрипт. Дело в том, что еще сегодня по утру, залез в бд, желая сделать это дело и подправил овечку, она по умолчанию в бд была прописана 30 уровня с 1.5к хп примерно, но не суть важно, опустил ее до 14 лвла с 315 хп. привязал к EAI скрипту написанному, сейчас вот зашел затестить как получилось, добавил итем, использовал его, и появилось ни что иное, как овца. Но у овцы 33 лвл, уйма хп, и это явно не то, что прописано в базе. ПС: Нужна помощь! ПСПС: не меняются только характеристики овцы, EAI срабатывает, спелл нужный все равно убивает кричера игнорируя лвл и нанося нужный урон. Пытался сделать каст через расстояние до цели, не срабатывает, может косячу где. О_о insert into `creature_ai_scripts` values('5000001','2675','9','0','100','0','1','5', '0','0', '11','4050','0','2','0','0','0','0','0','0','0','0 ','explosive sheep'); Если делаю по аггро то овца сразу подрывается и все удачно, в особенности если близко к цели стою. Но пробовал именно по дистанции до цели и никак. пспспс Утро вечера мудренее, буду разбираца в новом дне) Последний раз редактировалось BloodWarrior; 27.03.2011 в 20:52. |
27.03.2011, 22:02 | #4 |
Гость
Сообщений: n/a
|
|
28.03.2011, 04:16 | #5 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
2 Unid
Изменение параметров мин-макс дистанции вообще никак не влияло. Вчера ушел по ночи дрыхнуть уже а не мучать мозг, работа и все такое. Но последняя идея в том, что овца таки не берет моба в таргет, она просто видит его, добегает до него и встает как вкопанная, без там таргета или атак. В общем я не знаю пока как конкретно и в чем дело, но по этому параметру, по 9ке влияния 0 Ну по крайней мере у меня понимание еаи скрипта такое - что если моб попадает в зону от 5 до 1 ярда пока к нему бежит овца то овца хлопает, данные значения были взяты от фанаря, просто первоначально там вообще мелкие были у меня, но в итоге при попадании в эту зону не происходит у овцы каст 4050 на себя. ----- Попытался разбить пофазно По условию 0 при аггро цели, начинать автоатаку и переводить в фазу 1 1 проверка расстояния до цели, при 0-2 каст 40-50 на себя мгновенно. - оказалось провальным, сразу происходит переход в фазу 1 и подрыв на месте при суммоне. При любом аггро, идет игнор расстояния до противника. Т-е расстояние до голема на котором тестировал было много больше чем его аггро и перс соответственно не был в аггро, овца сагрилась - поломилась и подорвалась практически сразу-же. Кроме того добавил условие еще одно. По таймеру вне боя. Минимальное время поставил 1800000 Максимальное время 1800000 на повторы - 0 каст заклинания 4050 на себя - не сработало по истечению времени. ----- Так видимо подрыв идет не по игнору аггро в первом случае. Заспавнил НПС - овцу под ид 2675. Она появилась с теми параметрами что и в базе 14 лвл итд. Но агрессивная для игрока, и именно игрок является обьектом для ее атаки. Возможно таким макаром организовано следование за игроком, - данные берутся из базы но насильно устанавливается флаг для того чтобы при постоянном таргете игрока и по сути аггро на нем овца не била а таким образом следовала за ним, и кидалать на всех встречных-поперечных. Но беда в том, что скрипт на подрыв срабатывает именно из за расстояния до игрока а не до цели к которой ломится. Важно - в первоначальном варианте - без использования еаи овца кидается на любого нпс являющегося противником игроку и бьет его автоатакой, после смерти непися вновь держит путь до игрока или бежит к следующей цели. Но после использования скрипта в условии - овца добегает до первого агрессивного противника и встает как вкопанная, ее не трогают, она не трогает.. Так-же перестает следовать за игроком, начинает следовать за мобом к которому добежала, и остается на месте, если его убить. и еще вешается кд неспадающий на все взрывчатки после вызова овцы. О_о Последний раз редактировалось BloodWarrior; 28.03.2011 в 07:58. |
28.03.2011, 08:58 | #6 |
Гость
Сообщений: n/a
|
На вовхеде вообще есть комменты о том, что на БГ овца сама вдруг начинала бежать и врезалась в рогу в стелсе.
А ты все-таки пошамань с тем условием...других то там нет. И еще, может я конечно считать не умею, но 1800000 это 1800 секунд. И еще, я надеюсь, что при добавлении новой строки в eai_scripts ты ребутишь серв... |
28.03.2011, 09:12 | #7 |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
Господи, скрипт простейший, ща напишу попробую.
__________________
SpellWork Qt4 |
28.03.2011, 09:12 | #8 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
1 секунда = 1000 миллисекунд.
60 сек - 60000 милисеккунд. овца существует 3 минуты - 180 сек - 180000, я конечно пролетел в описании выше, когда из таблицы брал значения на целый ноль) но все равно даже с таким значением не срабатывало, хотя может у меня тут гоны какие-то с другими условиями или в базе что не так пошло) Но таки) С обратным отсчетом сам пролетел. Указал в таблице не то значение) 2ку, - отсчет по времени в бою, поправил и без поя спустя 3 минуты овца лопнула. Нашел где сам закосячил свою овцу, пока красноглазил вчера с этим непонятным ее лвлом и копанием в кричер темплейт сделал жуть) Вернул, овца следует и правильно агрится на нужные цели, тока опять милилупит) Последний раз редактировалось BloodWarrior; 28.03.2011 в 09:50. |
28.03.2011, 11:44 | #9 | |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
Цитата:
Кэп злой.
__________________
SpellWork Qt4 |
|
28.03.2011, 11:56 | #10 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
В любом случае..
(5000000,2675,1,0,100,0,180000,180000,0,0,11,4050, 0,0,0,0,0,0,0,0,0,0,'ovca'); - корректно срабатывает, спустя три минуты - овца бух. (5000001,2675,4,0,100,0,0,0,0,0,20,0,0,0,23,1,0,0, 0,0,0,0,'ovca'),(5000002,2675,9,1,100,0,0,2,0,0,11 ,4050,0,0,0,0,0,0,0,0,0,0,'ovca'); - некорректно срабатывает, несется на моба и подрывается от пересчета радиуса игрока Если только так: (5000002,2675,9,0,100,0,0,2,0,0,11,4050,0,0,0,0,0, 0,0,0,0,0,'ovca'); - то подрыв овцы вообще не срабатывает. Да и кд так и повисает к черту на всей взрывчатке. Думалось мне что повисает пока работает скрипт на овечку и возможно надо задавать еще фазу на проверку - если призванный кричер мертв то деспавн его, или даже хз что пока, не смотрел дальше, работы море не потестить не посмотреть. |
28.03.2011, 12:13 | #11 |
Администратор
|
|
28.03.2011, 17:08 | #12 |
Гость
Сообщений: n/a
|
|
28.03.2011, 18:24 | #13 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
насколько я понимаю тип события 04 и все его внутренние условия начинают работать при аггро цели выбранного непися?
Но тогда возникает вопрос почему он не срабатывает с овцой, даже когда она бьет. ------ Попытался сделать через чтение заклинания INSERT INTO `creature_ai_scripts` VALUES ('5000001', '2675', '8', '0', '100', '0', '6603', '-1', '0', '0', '11', '4050', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', 'explosive sheep'); Но вот жеж беда, автоатака активируется на любом расстоянии, когда цель взята в таргет, овца сразу бухает( ------- Можно было бы сделать подобие если бы в типах события было событие срабатывающее при получении урона или нанесении урона, но такого события просто нет( ПСПС Баг с неспадающим кд на всю взрывчатку при использовании ЕАИ сохраняется даже после деспавна тушки мертвой овцы. КД просто повисает намертво в точке отсчета. |
29.03.2011, 14:58 | #14 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
По поводу типа события 8 вопрос.
По идее он должен срабатывать ведь при уроне спеллом а не при активации оного? |
29.03.2011, 16:21 | #15 |
Администратор
|
Из документации по АИ, которая есть в исходниках ядра:
Код:
--------------------- 8 = EVENT_T_SPELLHIT: --------------------- Parameter 1: SpellID - The Spell ID that will trigger the event to occur (NOTE: If you use Spell School as the trigger set this value to 0) Parameter 2: School - Spell School to trigger the event (NOTE: If you use a SpellID then set this value to -1) - *See Below for Spell School Bitmask Values* Parameter 3: RepeatMin - Minimum Time used to calculate Random Repeat Expire Parameter 4: RepeatMax - Maximum Time used to calculate Random Repeat Expire BOTH - Expires upon Spell hit. If (param1) is set will only expire on that spell OR If (param2) is set it will only expire on spells of that school. Will repeat every (Param3) and (Param4). This Event is commonly used for NPC's who can do special things when you cast a spell (Or specific spell) on them. (Name ==> School ==> School Bitmask Values) ------------------------------------------- SPELL_SCHOOL_NORMAL = 0 ==> 1 SPELL_SCHOOL_HOLY = 1 ==> 2 SPELL_SCHOOL_FIRE = 2 ==> 4 SPELL_SCHOOL_NATURE = 3 ==> 8 SPELL_SCHOOL_FROST = 4 ==> 16 SPELL_SCHOOL_SHADOW = 5 ==> 32 SPELL_SCHOOL_ARCANE = 6 ==> 64 Use These Bitmask Values For Schoolmask (Param2) or Any Combinations Of These Schoolmasks for Multiple Schools. Если кастуемый спелл имеет в качестве цели скриптуемого нпц, то действие произойдет. |
Пользователь сказал cпасибо: | BloodWarrior (29.03.2011) |
29.03.2011, 16:59 | #16 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
В общем фиг с носиком, через ЕАИ как не корячусь постоянно ложные срабатывания и повисающий кд.
Если мои мысли верны то данного кричера можно заставить то что нужно делать только патчем в ядро. Если комрады со мной согласны, и молча своим авторитетным словом подтвердят что еаи тут копать бесполезно то прошу направить в каком .ccp в сурсах мне искать что мне нужно. Буду учиться как править изнутри. Если я не прав, то прошу направить мысли в нужное русло по реализации ЕАИ, делать за меня все не прошу, появился просто спортивный интерес сделать самому) |
29.03.2011, 18:03 | #17 |
Почетный флудер
Старожил
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
|
Я скрипт на овцу полгода как нарисовал, работает. Еще там кролик такого же типа и что-то еще. Но с КД проблема - очень сильно надо текущие структуры корежить Так и бросил...
|
29.03.2011, 18:34 | #18 |
Администратор
|
Скрипт на СД2, возможно, в /src/bindings/scriptdev2/scripts/world/npcs_special.cpp
|
Пользователь сказал cпасибо: | BloodWarrior (29.03.2011) |