[10910] [fix] Spell::EffectQuestComplete
Сейчас разбирался с квестом и наткнулся на один спелл:
http://ru.wowhead.com/spell=31336 По логике спелла и данным с ВХ - данный спелл должен быть скастован НПС. Попробовал реализовать через EvemtAI, однако квест не засчитался. Механика квеста и самого спелла не позволяет сделать грамотно так, чтобы этот спелл кастовался игроком (квест может выполняться группой игроков (и должен), таргетов у НПС может быть несколько и не обязательно это будет игрок). Решил покопаться и понял. Спелла 31336 имеет второй эффект - квест комплит и целью его должны стать цели: TARGET_ALL_ENEMY_IN_AREA. Почему же не происходит комплит? Стал копать обработки и наткнулся на то, что для мангоса спеллы с комплитом кастует или только игрок или они не обрабатываются вообще, что неверно, учитывая указание цели в самом спелле. Доработал обработчик следующим образом - тогда получается всё верно и есть страховка от ошибки если цель - не игрок: PHP код:
|
Здорово. ;)
А случаев, когда кастер - игрок, чей квест должен завершиться, но цель - не игрок, быть не может? |
Цитата:
Два: неоднократно видел спеллы, завершающие квест, которые должны кастоваться НПС, но базе и скриптам приходится выёживаться вызывая каст спелла именно игроком именно из-за текущей реализации. Три: цель не игроком быть не может, т.к. не игрок не может иметь квеста. |
Ну почему же. Такое бы даже корректно работало раньше. Впрочем, подобных заклинаний нет, и, видимо, так быть не должно. ;)
|
Было бы неплохо узнать, как поведет себя ядро с данным патчем в случае таких целей с данным эффектом:
http://ru.wowhead.com/spell=19719 - TARGET_SELF http://ru.wowhead.com/spell=23658 - TARGET_SINGLE_FRIEND http://ru.wowhead.com/spell=24875 - TARGET_DUELVSPLAYER http://ru.wowhead.com/spell=25201 - TARGET_CASTER_COORDINATES, TARGET_AREAEFFECT_INSTANT http://ru.wowhead.com/spell=30790 - TARGET_CASTER_COORDINATES, TARGET_ALL_ENEMY_IN_AREA http://ru.wowhead.com/spell=31377 - TARGET_CASTER_COORDINATES, TARGET_ALL_FRIENDLY_UNITS_AROUND_CASTER http://ru.wowhead.com/spell=44124 - TARGET_MASTER, TARGET_AREAEFFECT_PARTY Для квеста на поимку Матиса есть спеллы: http://ru.wowhead.com/spell=31336 http://ru.wowhead.com/spell=31337 http://ru.wowhead.com/spell=31339 http://ru.wowhead.com/spell=31377 Может, просто не тот спелл кастуется? Нужен снифф.:) |
Цели для комплита квеста будут определяться точно также как и при касте любого другого спелла с подобными целями.
Да и в любом случае - целью спелла должны быть именно те цели, которые указаны в спелле в дбц. Что-то я не часто вижу, чтобы в спеллах подменялись цели, которые указаны у них в дбц, почему же для этого эффекта делается исключение? Спеллы для поимки Матиса: В текущем варианте работы ядра все эти спеллы должны быть обязательно скастованы от игрока, что даже скриптом SD2 реализовать не так просто будет + ни один из приведённых спеллов не имеет для эффекта комплита цели self, что было бы логично если бы спелл должен был быть скастован игроком. |
31339 - TARGET_DUELVSPLAYER
Может, госсип? Тут уже нужна точная инфа по данному квесту. |
Цитата:
|
Что разработчики скажут по поводу данного фикса?
|
Цитата:
Вот пример квеста, когда игрок должен скастовать (использовать спелл - http://www.wowhead.com/spell=53428), но не на NPC или GO.... а на итем..... не знаю как в мангосе, а в тринити последней ревизии данный квест невыполним (без ремонта ядра). Вот сейчас чистое ядро мангоса откомпилю, посмотрим как там. __________________________________________________ ______________ На мангосе данный квест выполняется нормально... Подскажите где копать в ядре? Где обработка таких квестов находится? |
Цитата:
|
С офф репо триньки, после компила квест не выполняется... значит в офф не исправили данный косяк..
|
Цитата:
SpellEffects.cpp: PHP код:
Кв этот и на тринити 100% работал, а значит был реализован скорее всего скриптом, советую вам копать в этом направлении. |
Спс.... буду копать.... Что интересно.. включил логи - 3 и на мангосе и на тринити....
абсолютно идентичны все вызовы...((( и 53343 есть... |
|
Тема висит давно без единого коммента. Ап!
|
В 10910. Спасибо :)
|
Текущее время: 13:46. Часовой пояс GMT +3. |
ru-mangos.ru - Русское сообщество MaNGOS