[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Создание своих событий
Вторник, 30.09.2014, 13:17 | Сообщение # 1

Ранг
Центурион
Сообщений:
1124
Статус:
Награды:
473
дравствуйте! Когда-то задался таким вопросом: "Как можно создать событие (эвент)?". Это же облегчает всю работу эвентерам и повышает интерес и занятость игроков. Много где искал что-то подобное, но ничего толкового не нашел. Поэтому решил создать эту тему. 
И так, что же нам будет нужно? Да всего ничего, так, несколько мелочей, а именно: Руки, голова, в которой есть мозг ну и Navicat (скачать его можно где хочешьТЫК
А теперь приступим к самому процессу выполнения. 
Первое, что нам нужно будет сделать - это запустить Navicat, два раза кликнув ЛКМ по ярлыку. 
Далее открываем наш коннект (как создать коннект вы можете узнать тут: ТЫК
Открываем коннект мы видим нашу базу под названием "world", открываем её 

Теперь находим таблицу game_event, которая, собственно, и отвечает за создание эвентов, и кликаем 2 раза 

Там видим очень много всяких значений и колонок. Листаем до конца и создаем свою колонку (чтобы создать свою колонку: нажмите на последние значение ЛКМ и потом нажмите один раз Tab на клавиатуре и у вас появится такая строка: 

Теперь разберемся с колонками. Как мы видим: 
1) Первая колонка - eventEntry. Отвечает за айди эвента и, после создание эвента вы сможете его запустить с помощью комманды .event start id (энтри айди того эвента, который вы создали). ОБРАТИТЕ ВНИМАНИЕ: значения там можно вводить небольшие, т.к. там стоит ограничение! Лучше ставьте последующее значение. Или же уберите ограничение. 
2) Вторая колонка - Start_Time. Отвечает за начало эвента. Указывается в формате: год-месяц-число часы-минуты-секунды. Если нажать на любую строку в этой колонке, то там вы увидите значек "...", который вызывает календарик, подробнее на скрине: 

3) Третья колонка - End_time. Отвечает за время окончания эвента. Его структура точно такая же, как и Star_Time. 
4) Четвертая колонка - Occurence. Отвечает за повторяемость эвента, указывается в минутах. К примеру, один день - 1440 минут 
5) Пятая колонка - Lenght. Отвечает за продолжительность эвента, тоже указывается в минутах. 
6) Шестая - Holiday. Никогда не вникал в значение этой колонки, только приблезительно понимаю, что именно она делает, поэтому тут лучше будем ставить "0" или, но, если вы, все же, хотите разобраться, то тут ставим айди взятое из Holidays.dbc. 
7) Седьмая колонка - Description. Отвечает за описание (название) эвента. Если у вас установлен и включен Эвент аннонсер, то текст, введенный в эту колонку, будет аннонсировать ваш аннонсер. 
8) Восьмая колонка - World_Event. Не знаю, за что отвечает и лучше к ней не лезть. 
Ну, вот и все, с значениями колонок мы разобрались, можете смело создавать свое событие! 
Но, создание события это только половина дела! Ведь то, что мы с вами рассмотрели - это просто "название с временем", а ведь оно должно что-то делать, не так ли? 
Поэтому мы перейдем ко второй части урока, а именно: расстановка мобов при запуске события. 
Для этого нам нужна будет таблица game_event_creature 

Тут уже всего 2 колонки, давайте рассмотрим их: 
1) Первая колонка - eventEntry. Отвечает за айди события. Сюда нужно ввести тот энтри, который вы вводили в таблице game_event в первой колонке, которая тоже называется eventEntry. 
2) Вторая колонка - guid. GUID - уникальное значение, которое отвечает за местоположение моба в мире. Берется из таблицы creature 

Чтобы узнать, какой GUID у моба, которого вы поставили (да, именно которого вы поставили, т.к. GUID появляется только тогда, когда НПЦ поставлен в мире) найдите его ID (вторая колонка таблицы creature) в таблице creature и уже рядом вы сможете увидеть его GUID, если одинаковых мобов в мире несколько, то у них, соответственно будут и разные GUID. Если же одинаковых мобов там реально много и вы потерялись в GUIDах, то не отчаивайтесь, есть другой способ узнать GUID моба. А именно: войдите в игру, нажмите ЛКМ на нужного вам моба и пропишите комманду .npc info, там вам выбьет очень много разнообразных значений, найдите там "GUID: значение " Вместо слова "значение" там, естественно, будут какие-то цифры, они и будут вашим GUID. 
Теперь берем это значение и вписываем в колонку GUID в таблице game_event_creature. Все, теперь это НПЦ будет спавнится каждый раз, когда будет начинаться эвент за теми координатами, которые были указаны в GUID (а именно там, где он когда-то стоял). Если вы зашли, а моба нету, то не паникуйте! Когда эвент не активен моб пропадает! Чтобы активировать эвент просто напишите .event start ID и моб снова появиться! Либо просто дождитесь начала эвента. 
И с этим, думаю, разобрались. Теперь рассмотрим вариант, как же сделать появление квестов у мобов при старте эвента. Для этого нам нужна будет таблице game_event_creature_quest. 

Теперь, можно сказать "традиционно", рассмотрим, что же значат колонки в этой таблице: 
1) Первая колонка - eventEntry. Отвечает за айди события. Сюда нужно ввести тот энтри, который вы вводили в таблице game_event в первой колонке, которая тоже называется eventEntry. 
2) Вторая колонка - id. Отвечает за Entry моба, в котором будет квест. 
3) Третья колонка - quest. Отвечает за айди нужного вам квеста. 
Ну и с этим тоже, я думаю, теперь все понятно. 

И, уже на сам конец, скажем так, изюминка мануала: спавн объектов при старте события. 
Для этого нам понадобиться таблица game_event_gameobject. 
Тут, на самом деле, все так же просто, как и с НПЦ, а точнее все так же само. 
Колонки те же, вот только значение GUID уже берется с таблицы gameobject. Или в игре, стаете напротив объекта и пишите .gobject targ 

Ну что ж, на этом все, удачи вам в ваших свершениях! 


  • Страница 1 из 1
  • 1
Поиск:


immortals
Наверх

copyright 2024 immortals сообщество людей и Warcraft

Мобильная версияЭтот сайт защищен «Site Guard» Мы в Контакте
Les immortals ©2013- 2024.