Уже очень давно замечал, что даже самые банальные триггеры типа: "Юнит заюзал Волну силы - Создать дамми и юзнуть аналогичный скилл" не работают у ботов. Как это возможно? Неужели игроки-компьютеры не активируют события? Бред же. Пример на скрине, срабатывает только замедление, а не стан, но если играет человек, то всё работает как надо.

Принятый ответ

EnergyFrost, дамик надо создавать для 15 игрока
0
15
10 лет назад
0
Появилась мысль, что даммики под управлением ботов получают другие приказы. Но ведь у них есть способность москиты!
0
15
10 лет назад
Отредактирован EnergyFrost
0
  1. Hero_slardar- это какой игрок?
  2. проверь создается ли даммик вообще? (поставь текстуру обратно).
  3. проверь правильность приказов, ибо stomp, насколько я помню -это не молот бурь, это громовая поступь.
  4. возможно у тебя стоит задержка на заклинаниях пременения> чем таймер жизни юнита.
  5. у даммика, возможно отсутствует мана, а заклинания ее требуют.
  6. ???????
  7. PROFIT
А вот еще смотри недавно был такой вопрос:
Пишу в коде:
call CreateUnit( Player(PLAYER_NEUTRAL_PASSIVE), 1, 0.00, 0.00, bj_UNIT_FACING)
или же:
call CreateUnitAtLoc( Player(PLAYER_NEUTRAL_PASSIVE), 1, GetRectCenter(GetPlayableMapRect()), bj_UNIT_FACING)
Но юнит не создаётся и не появляется на карте. Почему?
Лучший ответ:
HolyMoon, твой вариант тоже не работает. Собственно, ты просто скопировал то, что написано в "blizzard.j". Я кажется выяснил проблему: если вместо "Player(PLAYER_NEUTRAL_PASSIVE)" написать например "Player(0)" или любой другой номер от 1 до 15 будет работать. Т.е. проблема была с указателем.
ЗЫ события в Гуи активируются для игроков 0-15 т.е от 0 до bj_MAX_PLAYER_SLOTS (exitwhen index==16)
0
15
10 лет назад
0
EnergyFrost, так ведь если я играю этим героем, то всё работает прекрасно, но у бота всё не так.
Так что с дамми проблем нет.
0
15
10 лет назад
0
скинь карту
0
15
10 лет назад
0
Дело не в карте, я часто с таким сталкиваюсь, тем более я показал скрин с типичным скиллом.
0
28
10 лет назад
0
Audes, ты показал скрин с ужасным не муи гуи
за такое руки надо отрывать
0
15
10 лет назад
Отредактирован EnergyFrost
0
nvc123:
Audes, ты показал скрин с ужасным не муи гуи
за такое руки надо отрывать
кстати, точно. Я проверил. К примеру. На моем юните это работает, а если я его передаю компьютеру, то это перестает работать
boolean Trig_skill_oh_3_Conditions (){
return IsUnitIllusion(GetAttacker()) == false and GetUnitTypeId(GetAttacker()) == 'E000' and GetUnitAbilityLevel(GetAttacker(),'A00K') != 0 and GetRandomInt(1, 100) <= ( ( GetUnitAbilityLevel(GetAttacker(),'A00K') * 5 ) + 5 )
}

void Trig_skill_oh_3_Actions(){
lcu=CreateUnit( GetOwningPlayer(GetAttacker()),'n02A', xx(GetAttacker()),yy(GetAttacker()), bj_UNIT_FACING)
UnitAddAbility(lcu,'A00A' )
SetUnitAbilityLevel(lcu, 'A00A',  gual(GetAttacker(),'A00K') )
IssueTargetOrderById( lcu, 852274,  GetAttacker() )
adead(lcu)
}

void InitTrig_skill_oh_3 (){
gg_trg_skill_oh_3 = CreateTrigger(  )
ate(gg_trg_skill_oh_3,EVENT_PLAYER_UNIT_ATTACKED) 
TriggerAddCondition( gg_trg_skill_oh_3, function Trig_skill_oh_3_Conditions )
TriggerAddAction( gg_trg_skill_oh_3, function Trig_skill_oh_3_Actions )
}
сорри, что с дефайнами, но там понятно по аргумам
0
28
10 лет назад
0
отладка где?
0
15
10 лет назад
Отредактирован EnergyFrost
0
nvc123:
отладка где?
Дело не в ней. Это из-за владельца. Возможно какой-то ИИ
Понял в чем соль. Все работает нормально (через отладку делал, дебаг) Но у даммик какго-то фига отказываетя кастить! Он создается, ему дается абилка, лвл устанавливается, есть цель, но сбивается приказ
0
15
10 лет назад
0
EnergyFrost:
nvc123:
отладка где?
Дело не в ней. Это из-за владельца. Возможно какой-то ИИ
Понял в чем соль. Все работает нормально (через отладку делал, дебаг) Но у даммик какго-то фига отказываетя кастить! Он создается, ему дается абилка, лвл устанавливается, есть цель, но сбивается приказ
Выбранный юнит в зоне видимости? Он существует как выбранный? Может цели нет?
0
28
10 лет назад
0
EnergyFrost, дамик надо создавать для 15 игрока
Принятый ответ
0
15
10 лет назад
0
nvc123, муи мне не нужен, а убого т.к. это лишь для проверки.
EnergyFrost, вот и я о том же.
Ethernet, с целями и видимостью всё в норме (карта без тумана войны и инвизов).
nvc123, может можно проще? ну забирать контроль у бота?
0
28
10 лет назад
0
Audes, проще чем написать Player(15)?
0
28
10 лет назад
0
Попробуй поставить тип игрока боту не Компьютер, а Нейтральный.
0
8
10 лет назад
0
На ботах никогда не проверял, но на нейтралах точно всегда работает. так что возможно ошибки в условиях.
0
15
10 лет назад
0
nvc123, а почему именно 15?
2
28
10 лет назад
2
Audes, 15 это нейтрально пассивный
0
15
10 лет назад
0
Хорошо, всем спасибо!
Чтобы оставить комментарий, пожалуйста, войдите на сайт.