virusav
28.02.2010, 15:49
Создавал тему http://getmangos.com/community/showthread.php?12729-Areatriggers, но там ответа не последовало, дублирую здесь.
Есть http://ru.wowhead.com/?quest=11686 и подобные ему, где надо открыть несколько точек.
В кеше условия на убийство нпц (киллкредит).
На текущий момент для таких квестов расставлялись нпц с номерами киллкредитов, на них вешался АИ-скрипт, который при приближении заставлял умирать нпц.
Например, этот квест можно реализовать через ареатриггеры:
#q11686
DELETE FROM `creature_template_addon` WHERE `entry` IN (25669,25671,25672);
DELETE FROM `creature` WHERE `id` IN (25669,25671,25672);
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4871, `quest`=11686;
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4872, `quest`=11686;
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4873, `quest`=11686;
Но в таком варианте в логе вылезает ошибка:
2010-02-28 14:38:37 Table `areatrigger_involvedrelation` has record (id: 4871) for not quest 11686, but quest not have flag QUEST_MANGOS_FLAGS_EXPLORATION_OR_EVENT. Trigger or quest flags must be fixed, quest modified to require objective.
Если поставить `specialflags`=2, то ошибки не будет, но квест нельзя будет сдать.
Получается, что аретриггеры можно использовать для зачета киллкредита, но ядро не позволяет этого сделать.
1. Можно ли реализовать использование ареатриггеров без жесткой привязки к флагам: для зачета киллкредита?
2. Можно ли разрешить использовать ареатриггер для разных квестов (альянс/орда):
ALTER TABLE `areatrigger_involvedrelation` ADD PRIMARY KEY (`id`,`quest`), DROP PRIMARY KEY;
Насколько я понимаю, удаление из мира расставленных нпц, которые на самом деле киллкредиты, должно снизить нагрузку при обработке игрового мира.
Есть http://ru.wowhead.com/?quest=11686 и подобные ему, где надо открыть несколько точек.
В кеше условия на убийство нпц (киллкредит).
На текущий момент для таких квестов расставлялись нпц с номерами киллкредитов, на них вешался АИ-скрипт, который при приближении заставлял умирать нпц.
Например, этот квест можно реализовать через ареатриггеры:
#q11686
DELETE FROM `creature_template_addon` WHERE `entry` IN (25669,25671,25672);
DELETE FROM `creature` WHERE `id` IN (25669,25671,25672);
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4871, `quest`=11686;
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4872, `quest`=11686;
REPLACE INTO `areatrigger_involvedrelation` SET `id`=4873, `quest`=11686;
Но в таком варианте в логе вылезает ошибка:
2010-02-28 14:38:37 Table `areatrigger_involvedrelation` has record (id: 4871) for not quest 11686, but quest not have flag QUEST_MANGOS_FLAGS_EXPLORATION_OR_EVENT. Trigger or quest flags must be fixed, quest modified to require objective.
Если поставить `specialflags`=2, то ошибки не будет, но квест нельзя будет сдать.
Получается, что аретриггеры можно использовать для зачета киллкредита, но ядро не позволяет этого сделать.
1. Можно ли реализовать использование ареатриггеров без жесткой привязки к флагам: для зачета киллкредита?
2. Можно ли разрешить использовать ареатриггер для разных квестов (альянс/орда):
ALTER TABLE `areatrigger_involvedrelation` ADD PRIMARY KEY (`id`,`quest`), DROP PRIMARY KEY;
Насколько я понимаю, удаление из мира расставленных нпц, которые на самом деле киллкредиты, должно снизить нагрузку при обработке игрового мира.