|
|
Модератор форума: Dimitro |
Форум TrinityCore Установка / Настройка TrinityCore [Мануал] Создание своего портала (Портал) |
[Мануал] Создание своего портала |
Здравствуйте Ув. пользователи портала Wowjp. Расскажу как сделать свой портал с 0 для версии 3.3.5.
Что нам понадобится: Цитата Подключение к БД и немного времени. Начнём с создание скрипта для портала. Открываем таблицу event_scripts и разберём каждый столбик: Цитата id - ид нашего скрипта (должен быть уникальным) delay - время перед тем как сработает наш скрипт ( 0=мгновенно) command - Тип действия, выполняемые скриптом (нам нужно значение 6= TELEPORT_TO) Другие значения datalong - Target Map ID datalong2 - ставим 0 dataint - тоже 0 х - координаты х у - координаты у z - координаты z o - ориентация (узнать координаты можно через команду .gps) Ну вот приблизительно так будет выглядеть наш скрипт: Наш скрипт готов, теперь приступаем к созданию самого портала, открываем таблицу gameobject_template и разбираем эту таблицу: Цитата entry - ид самого портала (должен быть уникальным) type - ставим 10 ( Остальные значения ) displayID - как будет выглядеть наш портал (пример: 1327) name - Название портала faction - ставим 0 flags - тоже ставим 0 ( Другие значения ) size - размер портала data2 - пишем ид нашего скрипта (у меня он 100000) data6- ставим -1 (cooldown (time is seconds)) Остальные поля заполняем нулями ( другие значения смотрим Тут ) Вот примерно так будет выглядеть наш скрипт: Вот и всё, наш портал готов (ставить портал командой .gob add id). |
еще один способ(не smartai)
для этого на понадобиться - Gameobject template - Spell dbc - Spell target position разберем на примере TrinityCore 4.3.4 - портал в Вайш'ир... и так, поехали! Цитата 1) создаем спелл - попадаем в таблицу `spell_dbc` - `Id` = ваш спелл(ВНИМАНИЕ! его не должно быть в Spell.dbc) - `SpellAuraOptionsId` = 38 (пускай будет 38, без всяких там вопросов после) - `Comment` = ваш комментарий к спеллу - все остальное нули (как должно получиться - ниже) Код INSERT IGNORE INTO `spell_dbc` (`Id`, `CastingTimeIndex`, `RangeIndex`, `SpellAuraOptionsId`, `Comment`) VALUES (90244, 0, 0, 38, 'Teleport to Vashj\'ir serverside spell'); Цитата 2) создаем эффект к спеллу - заходим в таблицу `spelleffect_dbc` - `Id` = скажем так - это `guid` вашего спела - `Effect` = эффект вашего спела(в нашем случаи это SPELL_EFFECT_TELEPORT_UNITS(5) - `EffectSpellId` = ID вашего созданного спела - `EffectImplicitTargetA` = TARGET_UNIT_TARGET_ANY(25) и `EffectImplicitTargetB` = TARGET_DEST_DB(17) - это таргет эффекта + возможность использовать таблицу `spell_target_position` - `EffectIndex` = ID эффекта(так как у нашего спела только один эфеект - оставляем '0') - все остальное нули (как должно получиться - ниже) Код INSERT IGNORE INTO `spelleffect_dbc` (`Id`, `Effect`, `EffectSpellId`, `EffectImplicitTargetA`, `EffectImplicitTargetB`, `EffectIndex`) VALUES (154004, 5, 90244, 25, 17, 0); Цитата 3) создаем координаты телепорта - все как и везде, заполняем map, x, y, z, и orientation - `id` = ID вашего спелла - `effIndex` = ID эффекта пример: Код INSERT IGNORE INTO `spell_target_position` (`id`, `effIndex`, `target_map`, `target_position_x`, `target_position_y`, `target_position_z`, `target_orientation`) VALUES (90244, 0, 0, -6561.97, 6140.03, -671.06, 1.14835); Цитата 4) создаем ГО(ну это все умеют) - ставим ему тип GAMEOBJECT_TYPE_SPELLCASTER(22) - в ячейку `data0` вписываем ID вашего спела(в данном случаи это спелл 90244) ... все, ваш портал готов, осталось его только добавить в мир вроде ничего не забыл, и довольна понятно объяснил(хотя я в этом не мастер) всем спасибо, спасибо за то что прочитали мой бред(может быть полезный бред) p.s пожалуйста, не |
Я думаю мой способ намного проще чем твой.
Сообщение # 5 написано 29.09.2013 в 19:09
|
Сообщение # 11 написано 21.11.2013 в 18:45
|
Здравствуйте! Подскажите пожалуйста как на сервере убрать ограничение на портал в Выжженные земли. По умолчанию через него можно проходить достигнув 58 лвл но как сделать чтоб проход был разрешен на любом уровне??? Пробовал настроить через worldserver.conf (Instance.IgnoreLevel = 1) но сумел только разрешить проход в рейдовые и высокоуровневые подземелья на портал это не повлияло.
Сообщение # 12 написано 09.05.2016 в 23:01
|
| |||
| |||