О причинах фризов из-за ИИ, сделанного через редактор ИИ
Как думаете, могут ли быть фризы из-за расхождения инфы между пищей в редакторе ии, и фактической пищей?
Я заметил что фризы точно есть, когда бот пытается что-то купить, и это недоступно. Видимо он нонстопом спамит покупку, и из-за этого появляются фризы.
Я создал бота без героев. Герои покупаются через триггеры. Но настроил лимит пищи бота так, чтобы пищи всегда хватало. Однако фризит все равно.
Мне кажется что призыв героя триггерно вызывает фриз. Но в чём его причина? Может кто знает. Так я смогу устранить причину.
Если усугубть ситуацию и записать покупку ВОЙСК на триггеры, то игра вообще крашит через 5 минут. И фризит до невозможности.
Как я проверил что фризы из-за бота? Элементарно. Просто запустил катку без бота.
Фризы кстати появляются во время контроля бота. Может это связано с тем что у него в отряде есть герой, которого он не нанимал? Или у него слишком много кого в отряде нужно выбрать? В целом логично. Чем больше таких войск у него, тем сильнее фриз.
Как оптимизировать ИИ?
Почему бот фризит всю карту, когда пытается управлять войсками, которые не нанимал?

  1. фризы точно есть, когда бот пытается что-то купить, и это недоступно. Видимо он нонстопом спамит покупку, и из-за этого появляются фризы.
это абсолютно верно. как и в стандартном редакторе WE ии, там просто список приказов, к которым бот возвращается каждый раз пока они не будут доступны. проверяя и проверяя возможности.
  1. Почему бот фризит всю карту, когда пытается управлять войсками, которые не нанимал?
потому что текущие войска не прописаны в его ИИ (если ты редачишь блокнотом). их просто нет у него в файле, а пофакту они есть. это как если бы ты учился в автошколе и получил права водить автомобиль только на автоматической коробке передач, а машина в которую тебя посадили для вождения была бы механика со сцеплением.
ты учился делать одно, что тебе прописали в обучении. а фактически добавляются новые переменные. (если водитель, поймешь о чем я)

  1. Как думаете, могут ли быть фризы из-за расхождения инфы между пищей в редакторе ии, и фактической пищей?
попробуй дать боту сразу 10 ферм (довести пищу до максимума) и потестируй.
в теории, если у тебя найм войск и героев стоит в очереди раньше чем постройка фермы, то такое возможно. бот будет пропускать найм и думать, пока не доберется или не вернется к очереди постройки ферм.
вообщем потести это. я не думаю что проблема фризов из-за пищи. если бот долго думает, значит очередь действий/построек/найма чутка неверная в файле.
если именно фризы - то вероятно потому что ты тригерно вкидываешь юнитов на карту, особенно героев. даже дота при выборе персонажа из таверны дает пролаги.

  1. Я создал бота без героев. Герои покупаются через триггеры. Но настроил лимит пищи бота так, чтобы пищи всегда хватало. Однако фризит все равно.
тогда проблема в том, что героя выдал тригерно. и у бота не прописаны действия с этим героем.
для ИИ героя точно надо выдавать через файл ИИ который ты редачишь. пусть сам нанимает.
через тригеры я бы советовал юзать способности, телепорты, предметы, возможно какие либо апгрейды при определенных условиях.
сам найм и строительство - нужно делать через файл ИИ который редачишь.
`
ОЖИДАНИЕ РЕКЛАМЫ...
32
Вряд-ли, скорее проблема в подгрузке каких нибудь эффектов или чего то еще.
15
quq_CCCP, когда я запускаю карту без ботов, всё нормально работает. Конечно, триггеры не идеально оптимизированы. Но я уже дошёл до того, что вешаю событие юнита на триггер, чтобы комп каждый раз не проверял тыщу условий и не отнимал ресурсы. Но глядя на других картоделов, я понимаю что это через чур запаристый способ. Они по 5 условий кидают на триггер и им норм. А я уже через хэш таблицы прописываю однотипные условия, чтобы лишний раз компу мозг не засрать.
8
Принятый ответ
  1. фризы точно есть, когда бот пытается что-то купить, и это недоступно. Видимо он нонстопом спамит покупку, и из-за этого появляются фризы.
это абсолютно верно. как и в стандартном редакторе WE ии, там просто список приказов, к которым бот возвращается каждый раз пока они не будут доступны. проверяя и проверяя возможности.
  1. Почему бот фризит всю карту, когда пытается управлять войсками, которые не нанимал?
потому что текущие войска не прописаны в его ИИ (если ты редачишь блокнотом). их просто нет у него в файле, а пофакту они есть. это как если бы ты учился в автошколе и получил права водить автомобиль только на автоматической коробке передач, а машина в которую тебя посадили для вождения была бы механика со сцеплением.
ты учился делать одно, что тебе прописали в обучении. а фактически добавляются новые переменные. (если водитель, поймешь о чем я)

  1. Как думаете, могут ли быть фризы из-за расхождения инфы между пищей в редакторе ии, и фактической пищей?
попробуй дать боту сразу 10 ферм (довести пищу до максимума) и потестируй.
в теории, если у тебя найм войск и героев стоит в очереди раньше чем постройка фермы, то такое возможно. бот будет пропускать найм и думать, пока не доберется или не вернется к очереди постройки ферм.
вообщем потести это. я не думаю что проблема фризов из-за пищи. если бот долго думает, значит очередь действий/построек/найма чутка неверная в файле.
если именно фризы - то вероятно потому что ты тригерно вкидываешь юнитов на карту, особенно героев. даже дота при выборе персонажа из таверны дает пролаги.

  1. Я создал бота без героев. Герои покупаются через триггеры. Но настроил лимит пищи бота так, чтобы пищи всегда хватало. Однако фризит все равно.
тогда проблема в том, что героя выдал тригерно. и у бота не прописаны действия с этим героем.
для ИИ героя точно надо выдавать через файл ИИ который ты редачишь. пусть сам нанимает.
через тригеры я бы советовал юзать способности, телепорты, предметы, возможно какие либо апгрейды при определенных условиях.
сам найм и строительство - нужно делать через файл ИИ который редачишь.
15
для ИИ героя точно надо выдавать через файл ИИ который ты редачишь. пусть сам нанимает.
mistwood, боюсь что это физически невозможно. У меня к найму всего 2 типа героев: стандартные и герои кампании. Герои кампании одни на всех игроков. Если пикнул один - отнимется у другого. Соответственно, записать это в ИИ никак невозможно. Поэтому я ушёл в триггерный способ.
Но есть и вторая проблема. Переключение между двумя типами героев приосходит через способность Bear Form у алтаря. И научить бота пользоваться этим - наверно нереально.
15
mistwood, я вот таким способом прописал боту героев, чтобы он ими управлял:
Это точно вызывает фризы. Потому что когда я попытался триггерно нанимать ещё и юнитов, фризить стало до невозможности.
Но проблема ещё интересна тем, что фризит прямо с начала карты. Задолго до того как герои нанимаются.
Загруженные файлы
8
WilliamBz, эм, ну ты не через блокнот редачишь, а через стандартный редакторский ИИ. понял.
Это поле что у тебя на скрине для атаки групп.
здесь ты только назначаешь в каком количестве и при каких условиях, кикие либо юниты идут в бой.
самих героев нужно нанимать в колонке здания
а какие именно герои будут наниматься прописывать в колонке герои
прикреплю тебя wai файл, который можешь открыть в редакторе и посмотреть как должно быть правильно.
ps. ты можешь любой стандартный wai варика открыть который в папке игры лежит и посмотреть как близы делали.
а уже сам файл wai можно представить/форматнуть в блокнот и там редачить. но там как бы тоже все правильно делать нужно.
посмотри как сделано в моем файле wai или в стандартном и сделай также. поставь своих юнитов.
8
WilliamBz, долго тебе обьяснять. но это возможно и очень легко.
тебе нужно подтянуть свои знания. почитать статьи. разобрать карты с нестандартным ии.
вот как это реализовано у меня.
у меня несколько разных фракций. для каждой из них свои ИИ.
все нестандартные герои ВСЕГДА (даже у близов, фаерлорд, пандарен алхимик и т.д.) прописаны в отдельном файле comon.ai) ограничение на героев нет.
ты создаешь таверну и пихаешь в нее сколько тебе надо героев. Если в файле ИИ прописан найм этого героя, он тебе его наймет, без всяких переключений через способности/смену таверн и тд.
я почти уверен что ты просто наломал дров в тригерах и своих задумках с стандартным ИИ в редакторе.
Загруженные файлы
15
mistwood, у меня задачи несколько другие. По задумке моей карты у игрока должен быть выбор между стандартными героями и кампании. Только через Bear Form это выглядит хорошо. Чтобы отделять одних от других. И начиная с этого момента, уже невозможно прописать ИИ, чтобы он юзал Bear Form, чтобы получить нужный алтарь, чтобы выбрать нужного героя. В целом с ним конечно можно общаться через через Command Ai. Но вот проверить доступность героя ИИ никак не сможет, потому что это делается через триггеры и для всех игроков. Он будет тупо пытаться пикнуть героя, который уже недоступен.
Можешь запустить мою кару ради интереса. Но она запускается только на 1.31+.
Кстати, интересное у тебя название для ИИ. Мне кажется это у тебя я подрезал основу для ИИ, которую ты делал в каком-то конкурсе XGM))
Загруженные файлы
15
mistwood, сравниваю ИИ. По ходу реально у тебя украл хD
Загруженные файлы
15
mistwood, всё, я кажется понял причину фризов. Я не указываю условия для создания юнитов, для которых есть требования. Видимо об это он и спотыкается.
12
у меня дико фризило когда ИИ не мог поставить здания, из-за того что рядом деревья были. Он тупо пытался на них здания поставить.
Хотя они не близко стояли. Ты проверь - убери все деревья с карты и дай ИИ 99999 дерева. Может лагать не будет)
Тогда нужно деревья переставлять
15
FIRERANGER, интересная версия. Но проблема точно не с деревьями, т.к. у меня стандартные Melee карты в арсенале. Там места хватает. Плюс я даже помогаю боту с этим. Всякий раз когда он строит здание возле леса, я расчищаю пространство вокруг зданий (уничтожаю лес), чтобы бот сам себя не застраивал, как это часто бывает, особенно с эльфами.
12
WilliamBz, у меня бот тоже на стандартной карте лагал из-за деревьев, потому что я ему много зданий строить поставил)
Я много имел дело с ИИ, и он фризил когда что-то не мог построить. Или он не строил доп рудник как надо, и из-за этого фризил.
11
Если любой юнит застревает где-либо, вот тогда идут фризы, а порой даже и краш
Чтобы оставить комментарий, пожалуйста, войдите на сайт.