Предоставление бонусов ИИ - абсолютно стандартный прием в геймдеве.
Его можно видеть и в героях, и в множестве других современных играх.
Например в цивилизации, после нескольких первых уровней сложности, остальные отличаются только количеством предоставленных бонусов.
Бонусы для ИИ - прием то стандартный, но прием этот уже использован на всю катушку в оригинальной игре. Дальнейшие попытки поднакачать ИИ бонусами - такое себе. И прием этот стандартный по той причине, что гораздо проще использовать его, а не тратить дополнительные деньги фирмы на действительно сильный ИИ. Моддинг же Героев 3 как раз позволяет на некоммерческой основе делать те вещи, которые обязательно останутся за бортом коммерческого геймдева - в этом и интерес настоящего улучшения ИИ. И интерес тут в том, чтобы не просто создать сильный ИИ, а сделать ИИ, который работает без явных багов и ошибок, которыми полон оригинальный ИИ - это просто эстетически приятно, как смотреть на часы и знать, что они показывают правильное время.
В RAI бонусы приведены к адекватным, для текущей сетевой игры, значениям.
Для текущей сетевой игры адекватных значений бонусов просто нет - они обязательно будут зашкаливать, производя отталкивающее эстетическое впечатление. Тут либо формат сетевой игры нужно выбирать адекватный (и такие возможности есть), либо ИИ менять уже революционным образом (вплоть до построения ИИ цепочек и тд) - естественно, мало у кого есть такое желание.
Также, в RAI сделаны и несколько десятков изменений/улучшений в действиях ИИ на карте и в бою.
И кстати в нарезке, бонус по ресурсам, был только в первых двух эпизодах.
Тогда как-то странно - вы создали тему, интересовались рецептами улучшения ИИ, а сами, получается, в итоге ничем конкретным на форуме не поделились. Из того, что в этой теме я от вас видел на тему честных улучшений ИИ, особенно ничего не впечатлило, скажем так. На единственную мою просьбу в личке показать вашу версию экономию ИИ маны, вы прислали явно ошибочное решение (приводится ниже). Поскольку хайхукнутая вами процедура - это всего лишь оценка ИИ предстоящей битвы-симуляции, реально же битва-симуляция происходит здесь - 0x4270C0. Каково же тогда качество остальных улучшений из тех нескольких десятков ? Тогда напрашивается вывод, что конкурентноспособность вашего ИИ держится почти целиком на читах и бонусах.
signed int __stdcall AI_Hero_Calc_Battle(HiHook* h, H3Hero *heroA, H3Hero *heroD, H3Army *guard_monDeffence, int a4, H3MapItem *MapItem){
int savedMana = heroA->spellPoints;
heroA->spellPoints -= savedMana;
signed int ret = FASTCALL_5(signed int, h->GetDefaultFunc(), heroA, heroD, guard_monDeffence, a4, MapItem);
heroA->spellPoints += savedMana;
return ret;
}
_PI->WriteHiHook(0x427330, SPLICE_, EXTENDED_, FASTCALL_, AI_Hero_Calc_Battle);