• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
Форум » ArcEmu » ArcEmu » заставляем моба кастовать (обновление от 17.1.12)
заставляем моба кастовать
moJitoice
Капрал

и так ,на ascent есть способы заставить кастовать мобов с помощью бд либо же через lua.
И так первый способ через бд :

Code


- для начала открываем нашу базу данных через "мускул"-navicat for my SQL .
- заходим в таблицу "ai_agents"
- прописываем id нашего моба ( которого вы хотите заставить кастовать)
- Event: 0
- chance- тут пишем шанс того что бос прокастует спел на игрока
- Maxcount: 0
- Spell: ID спела который нпс должен кастовать
- Spell Type: 8
- Targettype_overwrite: 1
- Cooldown_overwrite: кулдаун спела( время восстановления) в МС , то есть 1000= 1 секунда
- FloatMisc1: 0
- Misc2: 0
это самый просто , а также по моему мнению самый не эффективный способ) подходит когда бос кастует максимум пару спелов))

второй способ не такойто и лёгкий =/ но всёже поддержка LUA это не " хухры-мухры" вам smile
я покажу вам это уже на конкретном примере


вот это пример реализации кастов надеюсь всем известного нпс Doomwalker.
А сейчас я поясню вам , что нужно менять чтобы сделать свой луа ( самый простой : каст-речь) для вашего боса /моба.
и так приступим :
Code


function Doomwalker_Enrage(Unit, event, miscunit, misc)
if Unit:GetHealthPct() < 20 and Didthat == 0 then
Unit:FullCastSpell(34670)
Didthat = 1
else
end
end

что мы видим тут? ответ прост. когда хп думвалкера опускаются ниже 20% он делает каст спела [url=http://old.wowhead.com/spell=34670]34670[/url]
разбераемся дальше :

function Doomwalker_Earthquake(Unit, event, miscunit, misc)
                 print "Doomwalker Earthquake"
                 Unit:FullCastSpellOnTarget(32686,Unit:GetClosestPlayer())
                 Unit:SendChatMessage(11, 0, "Earthquake...")
end
                    
                в чат отправляется сообщение которое сокрыт в кавычках "Earthquake..." , так же идёт каст спела [url=http://old.wowhead.com/spell=32686]32686[/url] ну тут вродебы всё понятно, также таргет спела идёт на танка не смотря на то что спел АОЕ- массовый)                 

идём дальше:

function Doomwalker_Chain_Light(Unit, event, miscunit, misc)
                 print "Doomwalker Chain_Light"
                 Unit:FullCastSpellOnTarget(28167,Unit:GetRandomPlayer())
                 Unit:SendChatMessage(11, 0, "Now a Chain Lightning...")
end
                      
ну тут тоже самое)  он орёт  "Now a Chain Lightning..."  и кастует спел  [url=http://old.wowhead.com/spell=28167]28167[/url]  ( тут опять неправильный посравнению с вовхедом спел в близе  другая молния кастуется)

function Doomwalker_Overrun(Unit, event, miscunit, misc)
                 print "Doomwalker Charge"
                 Unit:FullCastSpellOnTarget(32637,Unit:GetRandomPlayer())
                 Unit:SendChatMessage(11, 0, "Now you will die...")
end

тут даже обьяснять не буду ,  думаю вы всё понимаете уже

function Doomwalker(unit, event, miscunit, misc)
                 print "Doomwalker"
                 unit:RegisterEvent("Doomwalker_Enrage",1000,1)
                 unit:RegisterEvent("Doomwalker_Earthquake",10000,0)
                 unit:RegisterEvent("Doomwalker_Chain_Light",17000,0)
                 unit:RegisterEvent("Doomwalker_Overrun",23000,0)
end

вот тут-то самое интерестное . выставляется  таймер каста спелов    вы видите   unit:RegisterEvent("Doomwalker_Chain_Light",17000,0)  тут написано что молния кастуется  каждые 17 секунд !

RegisterUnitEvent(17711,1,"Doomwalker")

ну это собственно регистрация lua скрипта за нпс    вписывается айдишник ( заместо 17711)

возможности LUA безграничны. госсип, вехиклы, квестинг, ачивы, модификации список можно продолжать бесконечно
вот вики по lua конкретно для эмулятора ascent wiki ^_^ тут вы найдёте всю интересующую вас информацию. если что-то не понятно то пишите в темку)


Добавлено (13.01.2012, 14:30)
---------------------------------------------
решил добавить ещё 1 скрипт, на его примере вы можете рассмотреть фазирование боса 3 фазы+ады с 1 фазой. расписывать что тут в скрипте я не буду. вы можете закинуть себе на сервер, слепить двух мобов и проверить что будет происходить сами, но всё-же если будут вопросы , то отписывайте
Сообщение # 1 отредактировано moJitoice - Вторник, 17.01.2012, 17:25
TrinityCore
Нагибатор
moJitoice, норм , и еще скинь танцующих персов biggrin
Бесплатная накрутка лайков ВКОНТАКТЕ ,установка любых серверов WoW.
Ищешь стабильный Фан сервер без рисовок ? Тебе сюда

Сообщение # 2 написано 14.01.2012 в 23:36
moJitoice
Капрал
обновление, добавлен скрипт с фазированием мобов
Сообщение # 3 написано 17.01.2012 в 17:25
макс27
Скаут
Quote (moJitoice)
на ascent


на мангос зделай и подробно опиши как зделать!!!!
Сообщение # 4 написано 17.02.2012 в 08:03
Форум » ArcEmu » ArcEmu » заставляем моба кастовать (обновление от 17.1.12)
  • Страница 1 из 1
  • 1
Поиск: