YTDB

Вернуться   YTDB > Корзина / Trash > Архив MaNGOS (пока не было ru-mangos) > Ядро

Ядро Здесь форум по базе, но иногда случается, что вопросы пересекаются.

Но это форум не по ядру Мангос!

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.02.2010, 15:49   #1
virusav
Брянский волк
 
Аватар для virusav
 
Регистрация: 06.11.2009
Сообщений: 588
Сказал(а) спасибо: 30
Поблагодарили 433 раз(а) в 260 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию Ареатриггеры

Создавал тему http://getmangos.com/community/showt...9-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;
Насколько я понимаю, удаление из мира расставленных нпц, которые на самом деле киллкредиты, должно снизить нагрузку при обработке игрового мира.
virusav вне форума   Ответить с цитированием
Старый 28.02.2010, 17:43   #2
timmit
YTDB dev, histori
 
Аватар для timmit
 
Регистрация: 05.11.2009
Сообщений: 1,597
Сказал(а) спасибо: 1
Поблагодарили 1,093 раз(а) в 971 сообщениях
timmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордиться
По умолчанию

Я пока понять не могу, а как аретригер то понимает, что именно этот кредит надо комплилить?
в AreaTrigger.dbc ничего подобного нету
__________________
ars longa vita brevis
timmit вне форума   Ответить с цитированием
Старый 28.02.2010, 17:44   #3
virusav
Брянский волк
 
Аватар для virusav
 
Регистрация: 06.11.2009
Сообщений: 588
Сказал(а) спасибо: 30
Поблагодарили 433 раз(а) в 260 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Согласен, нет такого, но засчитывает все 3 точки через ареатриггеры.
virusav вне форума   Ответить с цитированием
Старый 28.02.2010, 17:52   #4
timmit
YTDB dev, histori
 
Аватар для timmit
 
Регистрация: 05.11.2009
Сообщений: 1,597
Сказал(а) спасибо: 1
Поблагодарили 1,093 раз(а) в 971 сообщениях
timmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордиться
По умолчанию

Надо объяснение Владимира такого факта, как так может, где прописано это. Если где то прописаны соответствие тригеров и кредитов, то это облегчает конечно все
__________________
ars longa vita brevis
timmit вне форума   Ответить с цитированием
Старый 28.02.2010, 18:23   #5
virusav
Брянский волк
 
Аватар для virusav
 
Регистрация: 06.11.2009
Сообщений: 588
Сказал(а) спасибо: 30
Поблагодарили 433 раз(а) в 260 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Для того и написал здесь, т.к. на англоязычном форуме тема ушла уже на треться страницу, вряд ли кто заметит.
virusav вне форума   Ответить с цитированием
Старый 28.02.2010, 19:33   #6
gerald
Guest
 
Сообщений: n/a
По умолчанию

scriptdev2\scripts\world\areatrigger_scripts.cpp
  Ответить с цитированием
Старый 01.03.2010, 10:12   #7
timmit
YTDB dev, histori
 
Аватар для timmit
 
Регистрация: 05.11.2009
Сообщений: 1,597
Сказал(а) спасибо: 1
Поблагодарили 1,093 раз(а) в 971 сообщениях
timmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордитьсяtimmit За него можно гордиться
По умолчанию

Хм и правда, уже сделали скрипты для этого квеста, вот поэтому у тебя вирусав и засчитало
__________________
ars longa vita brevis
timmit вне форума   Ответить с цитированием
Старый 01.03.2010, 10:46   #8
virusav
Брянский волк
 
Аватар для virusav
 
Регистрация: 06.11.2009
Сообщений: 588
Сказал(а) спасибо: 30
Поблагодарили 433 раз(а) в 260 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Уже посмотрел скрипт.
virusav вне форума   Ответить с цитированием
Старый 01.03.2010, 10:59   #9
virusav
Брянский волк
 
Аватар для virusav
 
Регистрация: 06.11.2009
Сообщений: 588
Сказал(а) спасибо: 30
Поблагодарили 433 раз(а) в 260 сообщениях
virusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человекvirusav Реально хороший человек
Отправить сообщение для virusav с помощью ICQ
По умолчанию

Теоретически можно было добавить в таблицу `areatrigger_involvedrelation` столбец со значением киллкредита, если он есть, т.к. это не единичный случай, а код в скрипте однотипный с разницей в пару слов.
В этом случае можно было бы все рулить в базе, а не пересобирать каждый раз СД2 из-за добавления очередного типичного куска, да и на чистом ядре работало бы.
virusav вне форума   Ответить с цитированием
Ответ

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

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

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

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



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


YTDB - MaNGOS DataBase

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

Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума YTDB будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot
Punk's On-Air - Punk, Folk, Blues, Ska Bascinet - реконструкция denw IL-2 Training Книготорговая Компания «А-5» - художественная, учебная литература, скидки, опт и мелкий опт, доставка, дешево, низкие цены издательства