Current time: 15.08.2018, 12:48 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA II
» WoG Era 2: Русская и Английская версии
Author Message
Berserker Offline
Administrators

Posts: 10554
Post: #3826

И ходы станут тормознее. Конкретно баг с артами скриптами подправить можно.


Скачать Герои 3 Эра и всё, что с ней связано
05.06.2018 23:01
Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 302
Post: #3827

(05.06.2018 23:01)Berserker Wrote:  И ходы станут тормознее. Конкретно баг с артами скриптами подправить можно.
А кто-то уже поправлял?
Да ненамного. Когда играешь с HD+ в другую версию не замечаешь разницы субъективно. Зато многое можно было бы реализовать.
Например, я немного правил алгоровский скрипт c применением зоркости прямо в бою. Так вот, компам пришлось прописывать совершенно другой код зоркости. При этом если бы была автобитва, можно было бы нормально прописать скрипт и для изучения компами заклинаний в битве с нейтралами-кастерами.
В остальных случаях, с учётом различных изменений в ERM скриптах по сравнению с оригиналом, мы имеем сильно отличающийся от ожидаемого результат в расчётных битвах. Некоторые вещи в AI Value учесть невозможно.
05.06.2018 23:41
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 10554
Post: #3828

Heromant, так в HD+ нет ЕРМ/Луа/Плагинов и иной нагрузки в бою. Большинство скриптов считают по мануалу, что бои с ИИ только расчётные. Прикинь, проигрывание звуков и попытки проигрывания анимации в таком быстром бою. А то ещё и всплывающий диалог. В целом идею, конечно, понимаю, но она ведь неспроста отключена в HD+ для Вога?


Скачать Герои 3 Эра и всё, что с ней связано
06.06.2018 15:23
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 1366
Post: #3829

Кстати, Berserker, ты в Эру не добавлял расчет AI_Value и Fight_Value командиров?
Если нет, то вот рабочий код:

Code:
// ===============================================================================
//                              добавление AIValue командира
// ===============================================================================

_int64_ getAIValue_NPC(int heroID){

    if ( heroID < 0 && heroID > 155 )
        return 0; // выход, если номер героя неправильный

    _Npc_* npc = GetNpc(heroID);                // структура командира
    if ( npc->on < 1 || npc->alive ) return 0;    // выход, если командиров нет (-1), уволен или мертв

    _Hero_* hero = o_GameMgr->GetHero(heroID);

    _int64_ value = 0;

    int attNPC = Get_NpcSkillPower(npc, 0);        
        attNPC += hero->attack;    

    int defNPC = Get_NpcSkillPower(npc, 1);        
        defNPC += hero->defence;

    int hpNPC = Get_NpcSkillPower(npc, 2);    
    int damageNPC = Get_NpcSkillPower(npc, 3);    
    int speedNPC = Get_NpcSkillPower(npc, 5);                                
    int isShoot = npc->specBon[0] & 0x10 ? 2 : 1;

    // формула: (атака * макс.урон * скорость * стреляет [1-нет / 2-да] + защита * здоровье ) / 2
    value = (_int64_)((attNPC * damageNPC * speedNPC * isShoot + defNPC * hpNPC) >> 2);
    return value;
}

bool check_AIValue_isNotHero = false;

_int64_ __stdcall get_AIValue_Hook(HiHook* hook, int army)
{
    _int64_ value;

    int armyNPC = army;

    value = CALL_1(_int64_, __thiscall, hook->GetDefaultFunc(), army);

    if (!check_AIValue_isNotHero) {
        int heroID = *(int*)(armyNPC -119);

        if ( heroID >= 0 && heroID < 156)
            value += getAIValue_NPC(heroID);

    }
    check_AIValue_isNotHero = false;
    return value;
}


int __stdcall get_AIValue_And_NPC_Error(LoHook* h, HookContext* c)
{
    check_AIValue_isNotHero = true;
    return EXEC_DEFAULT;
}

int __stdcall get_Fight_Value_Hook(LoHook* h, HookContext* c)
{
    _Hero_* hero = o_BattleMgr->hero[c->ebx];

    if (!hero) return EXEC_DEFAULT;

    c->ecx += getAIValue_NPC(hero->id);

    return EXEC_DEFAULT;
}

// ==========================================================================
// ==========================================================================

// исправление бага блока командира, когда защита падала из-за флага "в защите"
_PI->WriteCodePatch(0x76E7D7, "%n", 24); // 15 nop
_PI->WriteCodePatch(0x76E80B, "%n", 13); // 13 nop
_PI->WriteHexPatch(0x76E7D7, "8B4D 08 C601 01 C641 02 04");    

// добавляем расчет командиров в проверку Fight_Value
_PI->WriteLoHook(0x41EAD2, get_Fight_Value_Hook);

// продобавляем в расчет AI_Value и расчет командиров
_PI->WriteHiHook(0x44A950, SPLICE_, EXTENDED_, THISCALL_, get_AIValue_Hook);
// ставим лоухук, чтобы понять что идет расчет AI_Value без наличия героя
_PI->WriteLoHook(0x5C1867, get_AIValue_And_NPC_Error);
_PI->WriteLoHook(0x42758F, get_AIValue_And_NPC_Error);
_PI->WriteLoHook(0x42CA6B, get_AIValue_And_NPC_Error);
_PI->WriteLoHook(0x52846A, get_AIValue_And_NPC_Error);


Скачать HoMM3 ERA 2.4.6 || (myMods)
Скачать HoMM3 ERA 2.7.5 (Repack: Rus & HD)
06.06.2018 15:48
Visit this user's website Find all posts by this user Quote this message in a reply
Heromant Offline

Posts: 302
Post: #3830

(06.06.2018 15:23)Berserker Wrote:  Heromant, так в HD+ нет ЕРМ/Луа/Плагинов и иной нагрузки в бою. Большинство скриптов считают по мануалу, что бои с ИИ только расчётные. Прикинь, проигрывание звуков и попытки проигрывания анимации в таком быстром бою. А то ещё и всплывающий диалог. В целом идею, конечно, понимаю, но она ведь неспроста отключена в HD+ для Вога?
Кто-то хочет играть в WoG/ERA только с баллансирующими настройками с небольшим четко ограниченным набором скриптов. Я прекрасно понимаю, что Бараторч включил "защиту от дураков". Но думаю, если тщательно проверить каждый активируемый ERM скрипт, касающийся боёвки, то нормально будет. Не будут работать нормально только те, в которых делается предположение, что если быстрый бой, то в нём одна из сторон обязательно человек. Таких, думаю, меньшинство, так как на человека есть одна проверка, а на быстрый бой другая. Может он нам даст версию хотя бы с обещанием нераспространения, где "защита дураков" будет отключенаSpiteful.
06.06.2018 16:32
Find all posts by this user Quote this message in a reply
Vedmedkin Offline

Posts: 3
Post: #3831

(04.06.2018 22:16)Berserker Wrote:  Heromant, первое не планируется лично мной (может кто осилит плагин), второе — если не ошибаюсь, один из бинарных патчей в Фениксе как раз это и делает.

Vedmedkin, подскажите версию Эры и путь к игре, пожалуйста.

путь к игре F:\Games\Heroes 3 wog
А где смотреть версию Era II?
(This post was last modified: 08.06.2018 01:16 by Vedmedkin.)
08.06.2018 00:31
Find all posts by this user Quote this message in a reply
SATCHEL Offline

Posts: 13
Post: #3832

Здравствуйте, кто-нибудь знает где можно русификатор найти под Эровский вог ( В виде мода )? А то рабочих ссылок я найти не могу, стоит Эра 2.75. В титуле ссылка на русификатор дохлая.
(This post was last modified: 16.06.2018 10:17 by SATCHEL.)
16.06.2018 10:08
Find all posts by this user Quote this message in a reply
Algor Offline
Administrators

Posts: 2558
Post: #3833

SATCHEL, тремя постами выше у igrik'а в подписи ссылка Скачать HoMM3 ERA 2.7.4 (Repack: Rus & HD).
Скачай и возьми оттуда WoG Rus.


16.06.2018 15:17
Visit this user's website Find all posts by this user Quote this message in a reply
SATCHEL Offline

Posts: 13
Post: #3834

Algor, Уже )

И вот еще , вылазит такая фигня wog getbitmap816 could not be "bitmap8" resource "" . Ресурс не указан. Играю с модом на XXL карты, что это может быть?
(This post was last modified: 18.06.2018 14:27 by SATCHEL.)
17.06.2018 15:39
Find all posts by this user Quote this message in a reply
Maxop Offline

Posts: 4
Post: #3835

Ни у кого нет скрипта Архитектор (автозастройка городов) для Era.
24.06.2018 10:40
Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 1910
Post: #3836

Bersy, we have tons of complaints in HC about latest Era versions, people can't just start it. Same people said 2.46 worked fine. personally I have no problems with 2.72 and uploaded full installed version, yet they can't fix it, still LUA missing messages. Maybe you have a few time and see if possible to get back to 2.46 installing configuration.


All my WoG scenarios
26.06.2018 14:23
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 1366
Post: #3837

(26.06.2018 14:23)Valery Wrote:  Maybe you have a few time and see if possible to get back to 2.46 installing configuration.
So why should not they just not install 2.46?
Installer ERA 2.46


Скачать HoMM3 ERA 2.4.6 || (myMods)
Скачать HoMM3 ERA 2.7.5 (Repack: Rus & HD)
26.06.2018 14:28
Visit this user's website Find all posts by this user Quote this message in a reply
Valery Offline

Posts: 1910
Post: #3838

Well, according to Berserker notes, saves from 246 will no longer be compatible with later versions and I already experienced that. I see no point having people submitting 246 saves for debug that we can't open. Aren't also some technical additions in latest, new events or so?


All my WoG scenarios
26.06.2018 15:31
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 1366
Post: #3839

This can only be answered by Bersy.


Скачать HoMM3 ERA 2.4.6 || (myMods)
Скачать HoMM3 ERA 2.7.5 (Repack: Rus & HD)
26.06.2018 18:48
Visit this user's website Find all posts by this user Quote this message in a reply
Vedmedkin Offline

Posts: 3
Post: #3840

Может кто то поможет таки решить проблему, которую не смог решить и гугл мне не помог. все было нормально, играл без проблем, а недавно стал получать это:

Assert violation in file (Дальше ссылка на несуществующую директорию) on line 489
Error at adress:
Message: "Failed to load angel.dll"

Причем герои HotA работают без проблем.

Версия ERA 2 2.7.5
(This post was last modified: 30.06.2018 00:02 by Vedmedkin.)
29.06.2018 23:27
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-2018 MyBB Group