Перейти к содержанию
Друзья, важная новость! ×

Как сделать что бы ИИ Witch Hunters работал в SS?


Рекомендуемые сообщения

Джонс,тогда подскажи на будущее,если не секрет с какого расчёта берутся цифры в строках:

UnitStrengths.witch_hunters_squad_sentinel_builder = 100 и т.д.?

Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 55
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

Джонс,тогда подскажи на будущее,если не секрет с какого расчёта берутся цифры в строках:

UnitStrengths.witch_hunters_squad_sentinel_builder = 100 и т.д.?

Эти цифры ты задаешь сам из своих собственных представлений об "крутизне" юнита.

ИИ использует эти цифры оценки силы твоей армиии в очень большом количестве случаев.

Пример для программы строительства BuildPrograms для файла XXXstrategyinfo.ai

-- Item-Syntax: Min. Tier, Min. Requisition, Min. Power,
Min. ArmyStrength
, Object-Count, Object-Type, Object-Name

BuildPrograms =

{

{

...

{ 1, 180, 180,
700
, 1, "Building", "witch_hunters_reliquary" },

...

В этом случае ИИ не будет строить "witch_hunters_reliquary" пока сила его армии не превысит 700

Ну а самое главное примененени расчета силы - для оценки ситуации в бою: В пределах некоторого радиуса в котором ведется бой ИИ расчитывает силу своих войск и силу войск противника, после превышения некоторого отношения принимает решение об отступлении. (Коэффициенты заданы в функции function ХХХХХ_race:GetInfo(sType) в файле loader.ai)

И вот к чему я: Сила каждого сквада равна Кол-ву человек * UnitStrengths.Unit_type_name + LeaderStrengths.Unit_type_name

Сила отряда из 4х спейсмаринов - 200 = UnitStrengths.space_marine_squad_tactical * 4 = 50 * 4

Сила отряда из 5-ти сестер из WH - 175 = UnitStrengths.witch_hunters_squad_battle_sister * 5 = 35 * 5

Грубо говоря (если забыть на время про коэффициенты что я упоминал) в такой ситуации 5 сестер не будут нападать, а вот 6 - уже напали бы.

И соотв. вывод. если UnitStrengths.Unit_type_name = ХХ ты задашь слишком большой, ИИ будет биться более слабыми юнитами в невыигрышных реально ситуациях и соотв. чаще сливать их. А если задашь слишком маленький - ИИ будет беречь армию, копить её в тылу и подтормаживать в исследованиях и строительстве.

Р.S. При расчете силы одиночных юнитов, типа техники и коммандиров учитывается ещё и процент их здоровья.

Изменено пользователем jONES
Ссылка на комментарий
Поделиться на другие сайты

Эти цифры ты задаешь сам из своих собственных представлений об "крутизне" юнита.

ИИ использует эти цифры оценки силы твоей армиии в очень большом количестве случаев.

Пример для программы строительства BuildPrograms для файла XXXstrategyinfo.ai

-- Item-Syntax: Min. Tier, Min. Requisition, Min. Power,
Min. ArmyStrength
, Object-Count, Object-Type, Object-Name

BuildPrograms =

{

{

...

{ 1, 180, 180,
700
, 1, "Building", "witch_hunters_reliquary" },

...

В этом случае ИИ не будет строить "witch_hunters_reliquary" пока сила его армии не превысит 700

Ну а самое главное примененени расчета силы - для оценки ситуации в бою: В пределах некоторого радиуса в котором ведется бой ИИ расчитывает силу своих войск и силу войск противника, после превышения некоторого отношения принимает решение об отступлении. (Коэффициенты заданы в функции function ХХХХХ_race:GetInfo(sType) в файле loader.ai)

И вот к чему я: Сила каждого сквада равна Кол-ву человек * UnitStrengths.Unit_type_name + LeaderStrengths.Unit_type_name

Сила отряда из 4х спейсмаринов - 200 = UnitStrengths.space_marine_squad_tactical * 4 = 50 * 4

Сила отряда из 5-ти сестер из WH - 175 = UnitStrengths.witch_hunters_squad_battle_sister * 5 = 35 * 5

Грубо говоря (если забыть на время про коэффициенты что я упоминал) в такой ситуации 5 сестер не будут нападать, а вот 6 - уже напали бы.

И соотв. вывод. если UnitStrengths.Unit_type_name = ХХ ты задашь слишком большой, ИИ будет биться более слабыми юнитами в невыигрышных реально ситуациях и соотв. чаще сливать их. А если задашь слишком маленький - ИИ будет беречь армию, копить её в тылу и подтормаживать в исследованиях и строительстве.

А из-за каких конкретных ошибок редактирования файла юнитстатс компъютер не будет развиваться?

Ссылка на комментарий
Поделиться на другие сайты

А из-за каких конкретных ошибок редактирования файла юнитстатс компъютер не будет развиваться?

Ну не то чтобы. Но будет отставать. Если у тебя есть непрописанный в статсах юнит, то в логи пойдет сообщение "Warning: Unit_XXX has no unit strength!"

Сила его сквада будет принята за 0 и сила армии будет считаться ниже чем фактическая.

Всё равно ведь какие-то всегда останутся юниты записанные корректно

Ну а если ты имеешь в виду синтаксические ошибки языка lua - то просто ИИ не загрузится, выдаст сообщение в логи на старте игры. Синтаксические ошибки не только в юнитстатс, но и в loader.ai, strategies\ххх_basestrategy.ai, strategies\ххх_strategyinfo.ai, и в тактике строителя, раз он сразу же доступен. Тут только консоль смотреть/скриншотить, чтобы точно знать причину и место

Изменено пользователем jONES
Ссылка на комментарий
Поделиться на другие сайты

Ну не то чтобы. Но будет отставать. Если у тебя есть непрописанный в статсах юнит, то в логи пойдет сообщение "Warning: Unit_XXX has no unit strength!"

Сила его сквада будет принята за 0 и сила армии будет считаться ниже чем фактическая.

Всё равно ведь какие-то всегда останутся юниты записанные корректно

Ну а если ты имеешь в виду синтаксические ошибки языка lua - то просто ИИ не загрузится, выдаст сообщение в логи на старте игры. Синтаксические ошибки не только в юнитстатс, но и в loader.ai, strategies\ххх_basestrategy.ai, strategies\ххх_strategyinfo.ai

Ну хорошо,а если такая ошибка выпала:"threw exception (unable to make cast)"?

Ссылка на комментарий
Поделиться на другие сайты

Ну хорошо,а если такая ошибка выпала:"threw exception (unable to make cast)"?

Мало написал. Там ещё стек вызовов и конкретное место печатается. Смотри какой Smoke5261 выложил скриншот, там всё видно

или вот пример ошибки http://forums.warforge.ru/index.php?act=at...st&id=20676

threw exception - возникла "исключительная" ситуация.

unable to make cast - ошибка преобразования из одного типа данных в другой. Т. е. к примеру идет умножение, а у тебя вместо числа текст в переменной. Или ваще эта переменная не задана и в ней nil, (null), т.е. пустое значение

Изменено пользователем jONES
Ссылка на комментарий
Поделиться на другие сайты

всем спасибо за помощь! ИИ работает, хоть и слабый по сравнению с другими, но это уже не так важно. вобщем спасибо всем! :rolleyes:

Ссылка на комментарий
Поделиться на другие сайты

Смоук,посмотри 27-й пост,там Джонс написал один из способов усиления ИИ

это я знаю, дело в том что само развитие заторможенное. надо немного подредактировать whstrategyinfo и думаю он будет пошустрее, ещё бы сделать что бы ИИ остальных юнитов мог делать было бы вобще отлично

Ссылка на комментарий
Поделиться на другие сайты

1e1c4d74ba75ced085e38a40fd332b57.jpeg

Тут тяжелый случай, там весь файл статсов целиком грузится в пространство имен. В этом случае из лога не найти конкретное место.

У тебя там где то синтаксическая ошибка скорее всего. Высылай файл со статсами. Вечером гляну, ща на работу ухожу

Изменено пользователем jONES
Ссылка на комментарий
Поделиться на другие сайты

Тут тяжелый случай, там весь файл статсов целиком грузится в пространство имен. В этом случае из лога не найти конкретное место.

У тебя там где то синтаксическая ошибка скорее всего. Высылай файл со статсами. Вечером гляну, ща на работу ухожу

Я кину ссылку в личку

Ссылка на комментарий
Поделиться на другие сайты

использую неофициальную бету вич хантеров, сделал все как вы описывали в этом топике, но при активации мода в СС пишет "Failed to activate mod". Посоветуйте чтонить...

Ссылка на комментарий
Поделиться на другие сайты

использую неофициальную бету вич хантеров, сделал все как вы описывали в этом топике, но при активации мода в СС пишет "Failed to activate mod". Посоветуйте чтонить...

закинь все файлы в DXP2, хотя у меня он нормально запускает как отдельно так и в DXP2

Ссылка на комментарий
Поделиться на другие сайты

глупый вопрос, а как DXP2 потом запустить?

вот что нужно сделать заходишь в папку Witch_Hunters копируешь от туда папки (Data и Locale) в папку DXP2, заменяешь всё. заходишь в игру, он должен автоматически запустить этот модуль уже с Witch Hunters, если нет то зайди в главном меню в Менеджер дополнений и запусти сам SoulStorm. но так как ты добавил Witch Hunters в DXP2 они будут у тебя загружаца постоянно, с любой другой модификацией

Изменено пользователем Smoke5261
Ссылка на комментарий
Поделиться на другие сайты

закинь все файлы в DXP2, хотя у меня он нормально запускает как отдельно так и в DXP2

Если чо, после такого по сети играть не сможешь. Игры будут вылетать с "ошибкой синхронизации"

[ Добавлено спустя 23 секунды ]

использую неофициальную бету вич хантеров, сделал все как вы описывали в этом топике, но при активации мода в СС пишет "Failed to activate mod". Посоветуйте чтонить...

Посоветую найти файл warnings.log и посмотреть причину. Она будет там примерно как раз перед сообщением подобным "Failed to activate mod"

Cудя по твоим предыдущим постам, я предполагаю, что у тебя отстутствует мод objective_points_DC который прописан как требуемый в файле Witch_Hunters.module. Аналогом этого мода для Соулсторма будет objective_points_SS.

Мод objective_points_SS к примеру включен в состав мода "Инквизиция:Охотники на Демонов для SS бета 2" или в "Черных храмовниках" http://forums.warforge.ru/index.php?showtopic=70916

Изменено пользователем jONES
Ссылка на комментарий
Поделиться на другие сайты

я просто хочу узнать для себя, что бы в дальнейшем мог сам для себя клёпать моды и совмещать с ИИ

Ссылка на комментарий
Поделиться на другие сайты

Перечислять всё сложно,если у тебя есть патч на ИИ 3.2 открой папку doc там есть гид на английском с описанием что да как да почему :)

Ссылка на комментарий
Поделиться на другие сайты

Перечислять всё сложно,если у тебя есть патч на ИИ 3.2 открой папку doc там есть гид на английском с описанием что да как да почему :)

спасибо конешно!...но есть проблемка...я совсем не знаю английского =)

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти

×
×
  • Создать...