Current time: 23.11.2024, 07:45 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Иные Герои
» проект мода
Author Message
Berserker Offline
Administrators

Posts: 16657
Post: #61

ИИ вообще бои не проводит.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
28.01.2013 21:52
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #62

Ну, заклы-то он вполне может учить (хотя достоверно этого не знаю). Я видел чуть-чуть код боя ИИ-ИИ, и он там вполне конкретно выбирает заклинания для колдовства по их value, учитывая сферу запрещения и т. п.
(This post was last modified: 29.01.2013 01:15 by Sav.)
29.01.2013 01:15
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #63

ИИ-ИИ от зоркости выигрывает. А ИИ-нейтралы бой не проводит. Это не значит, что не нужно повышать значимость зоркости. Достаточно герою нейтралов давать случайные слабые заклинания и расти в зависимости от размера карты.

Командир не подходит, так как ИИ должен играть как за героя, в том числе использовать магию (активно) и навыки (пассивно).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.01.2013 03:39
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #64

Berserker Wrote:ИИ-ИИ от зоркости выигрывает. А ИИ-нейтралы бой не проводит.
Так там же один и тот же механизм - бой не проводится нигде, но его эмуляция не столь уж примитивна и содержит колдовство заклинаний.
Вот в HD ИИ-ИИ - реальный бой.
29.01.2013 03:59
Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #65

(29.01.2013 03:39)Berserker Wrote:  ИИ-ИИ от зоркости выигрывает. А ИИ-нейтралы бой не проводит. Это не значит, что не нужно повышать значимость зоркости. Достаточно герою нейтралов давать случайные слабые заклинания и расти в зависимости от размера карты.
Да, да, да-да-да! Именно так


Моды (Иные герои, иные заклинания), скины, портреты
29.01.2013 11:06
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #66

Algor Wrote:...Зоркость, насколько я понимаю, для ИИ все равно бесполезный навык в описанном выше случае?
Berserker Wrote:ИИ-ИИ от зоркости выигрывает. А ИИ-нейтралы бой не проводит.
Т.е. в ИИ-ИИ бою комп реально может получить заклинание при помощи Зоркости (не в HD-моде!)? Если это действительно так, тогда можно и допилить нейтральных героев.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
29.01.2013 14:36
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #67

Если бы это было не так, значит создатели сделали навык, которым ИИ и не должен был пользоваться. Тут нужно Сава больше спросить.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.01.2013 16:47
Find all posts by this user Quote this message in a reply
Sav Offline

Posts: 2180
Post: #68

Да, всё-таки ИИ использует орлиный глаз в виртуальных битвах. Вот только в специальности по нему нет никакого толку: ИИ просто учит все заклинания побеждённого врага, на которые хватает зоркости и мудрости. Sm

PHP Code:
void __thiscall A0_AI_VirtualBattle_Finish_sub_426EE0(_AICalcBattleSide_ *this_AICalcBattleSide_ *looser_Town_ *town)
{
  
_Hero_ *winner_hero_v3// eax@1
  
_Hero_ *looser_hero_v4// ebx@1
  
_AICalcBattleSide_ *looser_v5// edi@1
  
_AICalcBattleSide_ *this_v6// esi@1
  
float exp_v7// ST20_4@11
  
double result_exp_v8// st7@11
  
_Hero_ *winner_hero_v9// ecx@18
  
_Hero_ *hero_v10// ecx@21
  
_Hero_ *hero_v11// edi@23
  
int curr_spell_v12// edx@25
  
_Spell_ *spell_v13// eax@28
  
int spell_level_v14// ecx@28
  
_Hero_ *hero_v15// ecx@35
  
_Army_ *looser_army_v14// [sp-8h] [bp-20h]@9
  
_Hero_ *looser_hero_v15// [sp-4h] [bp-1Ch]@9
  
_Hero_ *looser_hero_v16// [sp+Ch] [bp-Ch]@1
  
char looser_escaped_v17// [sp+17h] [bp-1h]@1
  
_Army_ *looser_army_v18// [sp+20h] [bp+8h]@1

  
looser_v5 looser;
  
this_v6 this;
  
looser_escaped_v17 0;
  
looser_hero_v4 looser->hero_dword24;
  
looser_army_v18 looser->army_dword28;
  
winner_hero_v3 this->hero_dword24;
  
looser_hero_v16 looser_hero_v4;
  if ( 
winner_hero_v3 )
    
winner_hero_v3->spell_points LOWORD(this->spell_points_dword14);// Уменьшаем очки заклинаний
  
if ( looser_hero_v4 )
    
looser_hero_v4->spell_points LOWORD(looser_v5->spell_points_dword14);// Уменьшаем очки заклинаний
  
if ( this->army_value_dword1C <= )          // Победитель тоже проиграл
  
{
    
winner_hero_v9 this->hero_dword24;
    if ( 
winner_hero_v9 )
      
A0_Hero_DeleteArt_sub_4E3040(winner_hero_v92);// Удаляем у победителя (защищающегося) грааль
  
}
  else                                          
// Победитель на самом деле победил
  
{
    if ( 
this->hero_dword24 )                   // У победителя есть герой
    
{
      if ( 
looser_hero_v4 && A0_Rand_Int_sub_50C7C0(0100) < 60 )
      {
        
looser_hero_v15 0;                    // Враг "бежал"
        
looser_escaped_v17 1;
        
looser_army_v14 looser_army_v18;
      }
      else
      {
        
looser_hero_v15 looser_hero_v4;       // Враг проиграл
        
looser_army_v14 looser_army_v18;
      }
      
exp_v7 A0_AI_VirtualBattle_GetArmyExp_sub_4CA070(looser_army_v14looser_hero_v15);
      
result_exp_v8 A0_Hero_Get_LearningSecSkill_Modif_sub_4E4AB0(this_v6->hero_dword24) * exp_v7;
      
A0_Hero_Give_Experience_sub_4E3620(this_v6->hero_dword24result_exp_v811);// Даём опыт герою-победителю
      
if ( looser_hero_v4 )
        
A0_Hero_DeleteArt_sub_4E3040(looser_hero_v42);// Удаляем у проигравшего грааль
      
if ( !looser_escaped_v17 )
      {
        if ( 
looser_hero_v4 )                   // Баг: проигравший берёт арты победителя
          
A0_AI_Hero_TakeAllArts_sub_4E2640(looser_hero_v4this_v6->hero_dword24);
      }
      if ( 
town )                               // Захватываем город
        
A0_Capture_Town_sub_4C5EA0(A0_GameMgr_dword_699538town->idthis_v6->hero_dword24->owner_id01);
    }
  }
  
A0_AI_AICalcBattleSide_Hero_AfterBattle_ReturnArmyOrDefeat_sub_424880(this_v61);
  
A0_AI_AICalcBattleSide_Hero_AfterBattle_ReturnArmyOrDefeat_sub_424880(looser_v51);
  if ( 
this_v6->army_value_dword1C )        // Победитель победил
  
{
    
hero_v10 this_v6->hero_dword24;
    if ( 
hero_v10 )
    {
      
A0_AI_VirtualBattle_Necromacy_AddCreatures_sub_426DF0(hero_v10looser_army_v18this_v6->army_dword28);
      if ( 
looser_hero_v4 )
      {
        
hero_v11 this_v6->hero_dword24;
        if ( 
hero_v11->second_skill[11] > )   // Есть орлиный глаз
        
{
          if ( 
A0_Hero_Check_Has_Artifact_Weared_sub_4D9460(hero_v110) )// Есть книга
          
{
            
curr_spell_v12 0;
            do
            {
              if ( 
looser_hero_v4->spell_level[curr_spell_v12] && !hero_v11->spell_level[curr_spell_v12] )// Закл есть у врага, но его нет у победившего
              
{
                
spell_v13 = &A0_Spells_off_687FA8[curr_spell_v12];
                
spell_level_v14 spell_v13->level;// Изучаем все возможные заклы глазом орла
                
if ( hero_v11->second_skill[11] + >= spell_level_v14
                  
&& spell_v13->flags 1
                  
&& spell_level_v14 <= hero_v11->second_skill[7] + )
                {
                  
A0_Hero_Learn_Spell_sub_4D95A0(hero_v11curr_spell_v12);
                  
looser_hero_v4 looser_hero_v16;
                  break;
                }
                
looser_hero_v4 looser_hero_v16;
              }
              ++
curr_spell_v12;
            }
            while ( 
curr_spell_v12 70 );
          }
        }
      }
    }
  }
  
hero_v15 this_v6->hero_dword24;
  if ( 
hero_v15 )
    
A0_Hero_Reset_TempModifs_AfterBattle_sub_4DA780(hero_v15);
  if ( 
looser_hero_v4 )
    
A0_Hero_Reset_TempModifs_AfterBattleLoose_sub_4DA780(looser_hero_v4);


Но, думаю, очевидно, что на ИИ-бой не действуют никакие триггеры, поэтому, чтобы оно хоть как-то работало, нужно заменять нейтралов на героя нужно ещё до самого нападения.
29.01.2013 18:39
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #69

Спасибо.
Ну ИИ и так читерит, как видно. А нейтральному герою будет достаточно заклинаний до 2-3 уровней. Главное их массовость со временем.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.01.2013 18:56
Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #70

(28.01.2013 18:16)Ivor Wrote:  Маленькая идейка, уже отраженная в документе, но тем не менее, достойная упоминания: Сильвии, как одному из самых бесполезных героев Замка, Лидерство меняется на Логистику. Тем самым сохраняется её индивидуальность, как одной из немногих спецов по Навигации, и она переходит из разряда полного отстоя в разряд крепких середнячков.
Дошёл до болотников. С Вой ситуация аналогичная Сильвии, но при этом настолько же эффективного решения не придумывается. Разве что заменить Мудрость - на Имущество, но ИМХО, это смотрится странновато.
Пожалуй, обменяю им стартовые навыки:
Сильвия - Навигация и Имущество
Вой - Навигация и Логистика


Моды (Иные герои, иные заклинания), скины, портреты
30.01.2013 16:32
Visit this user's website Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #71

Любопытный эффект спуска заклинаний вызова элементалей на 2..5 уровни: исчезла необходимость в уравниловке элементалей!
Теперь можно спокойно резать hp воздушникам до 15, остальные параметры - соответственно, а землякам - поднимать hp на 10.


Моды (Иные герои, иные заклинания), скины, портреты
01.02.2013 21:44
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #72

Неплохо.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
01.02.2013 22:41
Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #73

Очередной кусочек, стартовые армии героев.

Меняется принцип формирования стартовых армий. Обычно в армии героя есть отряды 1го, 2го и 3го уровней (1-2-3).
У спецов по 1-му уровню армия выглядит как (1-1-2), у спеца по 2ому уровню как (1-2-2), у 3го - как (1-3-3).
У спецов по 4-му уровню отряд 3го уровня заменяется на 2 профильных монстров (1-2-4),
у спецов по 5-му уровню отряд 3го уровня заменяется на 1 профильного монстра (1-2-5). Очень, очень хочется сделать его улучшеным, чтобы порадовать инферналов и болотников.

Есть баги: у Торосара вместо двух стеков гремлинов и одного - големов, но без баллисты - два стека гремлинов и баллиста
У Шакти только один стек троглов и один - бехов


Моды (Иные герои, иные заклинания), скины, портреты
13.02.2013 00:54
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3881
Post: #74

А так не лучше?
не спец: (1-2-3)
спец 1 : (1-1upg-1upg)
спец 2 : (1-2-2upg)
спец 3 : (1-2-3upg)
спец 4 : (1-2-4upg)
спец 5 : (1-2-5upg)

Ты окончательно остановился на bin-варианте? Если нет, могу в свой добавить настройку боевых машин для героев.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
13.02.2013 13:22
Visit this user's website Find all posts by this user Quote this message in a reply
Ivor Offline
Moderators

Posts: 1138
Post: #75

(13.02.2013 13:22)Algor Wrote:  А так не лучше?
не спец: (1-2-3)
спец 1 : (1-1upg-1upg)
спец 2 : (1-2-2upg)
спец 3 : (1-2-3upg)
спец 4 : (1-2-4upg)
спец 5 : (1-2-5upg)
Мне не нравится одновременное наличие улученных и неулучшенных войск первых 1-3 уровней, сложнее сделать ударный кулак.

Против улучшенных войск 4го и 5го уровней ничего не имею, по поводу 5ого - только ЗА! Смущают только спецы по вампирам и рокам - не будут ли имбой

(13.02.2013 13:22)Algor Wrote:  Ты окончательно остановился на bin-варианте? Если нет, могу в свой добавить настройку боевых машин для героев.
Думаю, да. Вариант лишь немногим сложнее для модифицирования, чем скриптовый, но занимает меньше места. Для исправления пропадания стеков попробую поковырять ТЕ, там вроде исправляли


Моды (Иные герои, иные заклинания), скины, портреты
13.02.2013 15:05
Visit this user's website Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group