Объявления

Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru.
Я оторву свою задницу от всех дел и обязательно Вас активирую! :smile10:
Добро пожаловать на геройский форум! :smile25:

Как создать плагин для HD мода

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 24 апр 2021, 08:25

Пока вот что получилось:

Код: Выделить всё
#define _CRT_SECURE_NO_WARNINGS
#include "stdafx.h"
#include "..\..\HotA\homm3.h"

Patcher* _P;
PatcherInstance* _PI;

int __stdcall setCreatures(LoHook* h, HookContext* c)
{
    _Dwelling_* dwelling = (_Dwelling_*)c->esi;
    int upgMonId = CALL_1(int, __fastcall, 0x47AAD0, dwelling->creature_types[0]);
   
    if ( upgMonId != ID_NONE && dwelling->creature_types[1] == ID_NONE ) {
        dwelling->creature_types[1] = dwelling->creature_types[0];
        dwelling->creature_counts[1] = dwelling->creature_counts[0];
        dwelling->creature_types[0] = upgMonId;
        if ( dwelling->defenders.type[0] != ID_NONE )
            dwelling->defenders.type[0] = upgMonId;
    }

    return EXEC_DEFAULT;
}

_Dwelling_* GetDwelling(_int_ dwellingId) {
    return (_Dwelling_ *)(o_GameMgr->Field<int>(0x4E39C) + 92 * dwellingId);
}

int __stdcall afterHiring(LoHook* h, HookContext* c)
{
    // Если нанимаем не в городе
    if ( *(int*)(c->esi + 0x48) != 0x62 )
    {
        _Hero_* hero = &o_GameMgr->hero[o_ActivePlayer->selected_hero_id];
        if ( hero )
        {
            _MapItem_* item = o_GameMgr->Map.GetItem(hero->x, hero->y, hero->z);
            if ( item->object_type == 0x11 )
            {
                _Dwelling_* dwelling = GetDwelling(item->setup);
                if ( dwelling && dwelling->creature_types[1] != ID_NONE )
                {
                    dwelling->creature_counts[0] = min(dwelling->creature_counts[0], dwelling->creature_counts[1]);
                    dwelling->creature_counts[1] = dwelling->creature_counts[0];

                    c->return_address = 0x55121B;
                    return NO_EXEC_DEFAULT;
                }
            }
        }
    }

    return EXEC_DEFAULT;
}

BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
    static bool plugin_On = false;

    if ( DLL_PROCESS_ATTACH == ul_reason_for_call )
    {
        if ( !plugin_On )
        {
            plugin_On = true;
            _P = GetPatcher();
            _PI = _P->CreateInstance((char*)"HD.Plugin.NewDwellings");
            _PI->WriteLoHook(0x4B85EE, setCreatures);
            _PI->WriteLoHook(0x5510B1, afterHiring);
            _PI->WriteHexPatch(0x4A197B, "90 90");
            _PI->WriteHexPatch(0x4AB812, "90 90");
        }
    }

    return TRUE;
}

Естественно, без корректировки поведения AI. Функцию afterHiring(), вероятно, можно сделать более компактной, но я не знаю, есть ли в recruitManager указатель на объект, в котором мы нанимаем существ. Пока что получаю объект по координатам посещающего героя.

Так. Надо поправить покупку неулучшенных :smile1:

Поправил.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 24 апр 2021, 10:16

AlexSpl писал(а):

Естественно, без корректировки поведения AI.

У AI должна быть точно такая же возможность нанимать грейженных и он должен ее использовать, когда ему это выгодно.

AlexSpl писал(а):

Функцию afterHiring(), вероятно, можно сделать более компактной, но я не знаю, есть ли в recruitManager указатель на объект, в котором мы нанимаем существ. Пока что получаю объект по координатам посещающего героя.

По указателю, конечно, было бы более правильно и более компактно, если он есть в recruitManager, конечно. Но если получение объекта по координатам посещающего героя отрабатывает точно также, то пускай будет пока так.

***

А можете немного пояснить Ваш код. Ибо до этого была только одина функция setCreatures().

1) Что делает функция afterHiring() - только получает объект по координатам посещающего героя? И зачем это нам, ведь до этого и без нее все, вроде, работало.

2) Что делает вот этот кусок кода?
Код: Выделить всё
_Dwelling_* GetDwelling(_int_ dwellingId) {
    return (_Dwelling_ *)(o_GameMgr->Field<int>(0x4E39C) + 92 * dwellingId);
}


3) И что делают вот эти два патча?
Код: Выделить всё
_PI->WriteHexPatch(0x4A197B, "90 90");
_PI->WriteHexPatch(0x4AB812, "90 90");


***

Потестил.
1) В жилищах 1-го уровня все равно изначально вылазит вот этот диалог:

Изображение

а уже после нужный нам диалог найма существ.

Нужно этот первый диалог с подтверждением (Хотите ли Вы нанять...) убирать. Раз зашли, то ясное дело, что хотим. Короче нужно сделать так, как и с другими жилищами в HD моде. Окно найма сразу на входе.

2) При нажатии на кнопку найма идет вылет:

 HOMM3 HD CRASH LOG
Код: Выделить всё
Log
{
compability_dir = C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Compability\#com_ru
EXE_VERSION & SOD
ERROR: CANN'T DO PARALLEL
No Files.ini for 'C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Compability\#com_ru'
No Files.ini for 'C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Packs\Rus.Fonts'
No Files.ini for 'C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Packs\CreatureUpgrade'
got sulfur in nagabank. replace it to gems.

}

HOMM3 HD version: 5.2 R31
Time {   24.04.2021   13:32:41 }

GUN:  [H6B0MC9P272003AHZNHFMT HHW 139 VEL 749TY]

Exception
{
   Module:    CreatureUpgrade.dll
   Adress:      [ CreatureUpgrade.dll+0x1098 ]
   Code:        EXCEPTION_ACCESS_VIOLATION
   Flags:       0x00000000
   Information: read of address: 0xB1320272
}

Context { EAX: 0xB1320252, ECX: 0x04AF82D0, EDX: 0xF9B31E33, EBX: 0x00189430, ESP: 0x001890F8, EBP: 0x001890FC, ESI: 0x0A9FF1E0, EDI: 0x0018910C }

Call stack
{
         [ CreatureUpgrade.dll+0x1050 ]   called from       [ 0x05250BAE ]
                     ? called from before   [ HD_SOD.dll+0x3D76B ]
         [ HD_SOD.dll+0x3D5D0 ]   called from       [ 0x00371C57 ]
         [ HD_SOD.dll+0x8AEA0 ]   called from       [ 0x04C21561 ]
         [ HD_SOD.dll+0x7C280 ]   called from       [ 0x04C3168B ]
         [ HW_SOD.dll+0x4570 ]   called from       [ 0x05251B0F ]
         [ 0x004B0BA0 ]   called from       [ 0x004B083F ]
         [ 0x004B0770 ]   called from       [ 0x004ABA81 ]
         [ 0x004AB740 ]   called from       [ 0x004A1C77 ]
         [ 0x004A1520 ]   called from       [ 0x004A8975 ]
         [ 0x004A8160 ]   called from       [ 0x004AA766 ]
         [ 0x004AA710 ]   called from       [ 0x00408049 ]
         [ 0x00407AE0 ]   called from       [ 0x0040AA31 ]
         [ 0x0040A530 ]   called from       [ 0x0040992B ]
                     ? called from before   [ HD_SOD.dll+0x1D189 ]
                     ? called from before   [ 0xFFFFFFFF ]
                     ? called from before   [ 0x00000000 ]
}

Call stack V2
{
   68C91098: c:\users\олега\documents\visual studio 2015\projects\creatureupgrade\creatureupgrade\dllmain.cpp (99): afterHiring
   05250BB3 (?): (?): (?)
   0353D76B (HD_SOD: 03500000): (?): (?)
   004B0844 (Heroes3: 00400000): (?): (?)
   0F896AF9 (patcher_x86: 0F890000): (?): (?)
   0050D86D (Heroes3: 00400000): (?): (?)
   6F63270C (WINMM: 6F630000): (?): timeGetTime
   005517CC (Heroes3: 00400000): (?): (?)
}

Modules
{
   0x00400000: Heroes3.exe    (size: 0x002CE000, entry point: 0x0061A884) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\Heroes3.exe
   0x10000000: _hd3_.dll    (size: 0x00048000, entry point: 0x10018C8C) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_hd3_.dll
   0x0F890000: patcher_x86.dll    (size: 0x00079000, entry point: 0x0F8A03D3) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\patcher_x86.dll
   0x002C0000: smackw32.dll    (size: 0x0001B000, entry point: 0x002CC0B0) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\smackw32.dll
   0x002E0000: binkw32.dll    (size: 0x0002B000, entry point: 0x002F1645) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\binkw32.dll
   0x00310000: IFC20.dll    (size: 0x00023000, entry point: 0x0031F04E) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\IFC20.dll
   0x68BC0000: HD_UPD.dll    (size: 0x0003C000, entry point: 0x68BC5405) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HD_UPD.dll
   0x02E40000: HD_MCR.dll    (size: 0x002EB000, entry point: 0x02FFE73C) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HD_MCR.dll
   0x03130000: HD_TC2.dll    (size: 0x003CD000, entry point: 0x0313BDE0) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HD_TC2.dll
   0x02A40000: HD_SCX2.dll    (size: 0x00021000, entry point: 0x02A46346) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HD_SCX2.dll
   0x03500000: HD_SOD.dll    (size: 0x010F4000, entry point: 0x035EBF18) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HD_SOD.dll
   0x04940000: HW_SOD.dll    (size: 0x00050000, entry point: 0x04971807) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\HW_SOD.dll
   0x21100000: Mss32.dll    (size: 0x0005F000, entry point: 0x2112F2E5) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Mss32.dll
   0x0F2C0000: cursors.dll    (size: 0x0004A000, entry point: 0x00000000) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Common\cursors.dll
   0x68C90000: CreatureUpgrade.dll    (size: 0x00007000, entry point: 0x68C914DA) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Packs\CreatureUpgrade\CreatureUpgrade.dll
   0x26F00000: Mp3dec.asi    (size: 0x0002A000, entry point: 0x26F0A805) - C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\_HD3_Data\Mp3dec.asi
}
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 24 апр 2021, 12:58

Странно. У меня всё работает. А какие у Вас твики HD?

Цитата:
Нужно этот первый диалог с подтверждением (Хотите ли Вы нанять...) убирать. Раз зашли, то ясное дело, что хотим. Короче нужно сделать так, как и с другими жилищами в HD моде. Окно найма сразу на входе.

В других жилищах тоже спрашивают, кстати. Или есть твик HD, который отключает эти окна?
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 24 апр 2021, 13:16

AlexSpl писал(а):

Странно. У меня всё работает. А какие у Вас твики HD?


 Твики HD
Код: Выделить всё
<Version> = 5002331
<Language> = "#ru.ini"
<Graphics.Resolution> = 1180x664
<Graphics.Mode> = 5
<Graphics.ComplexFilter> = 6
<Graphics.Threads> = 4
<Graphics.SimpleFilter> = 2
<Graphics.SystemCursors> = 1
<HD+> = 1
<HD+.Settings> = 0, 0, 0, 0, 0, 1, 0, 60000, 60000, 0, 0, 0, 6, 0
<Misc.TournamentSaver> = 0
<Misc.BattleSaver> = 0
<Packs> = "CreatureUpgrade"
<Sys.NoCD> = 1
<Sys.CPU.ReduceUsage> = 0
<Sys.WriteToIniInsteadRegistry> = 1
<UI.AdvMgr.SkipMapMsgs> = 1
<UI.Battle.Queue> = 1
<UI.Battle.ShowAlwaysHeroInfo> = 1
<UI.ClipCursor> = 1
<UI.DarkTransitions> = 1
<UI.Ext.ScenarioMgr.Settings> = 3, 72, 2, 2, 0, 0, 2, 0, 0, 0, 0, 1, 1, 1
<UI.Ext.ScenarioMgr.Folders> = 1
<UI.Ext.TownMgr.AvailableInsteadGrowth> = 1
<UI.HiRezCore> = 1
<UI.QuickArmyManagementMode> {0, 1} = 0
<UI.RecruitDlg.AutoSet> = 1
<UI.RecruitDlg.AutoSet.Max> = 1
<UI.Tavern.InviteHero> = 1
<Update.CheckAtStart> = 0

<OpenGL.VGL.Version> = 1
<OpenGL.FixedRefreshRate> = 1
<OpenGL.Interpolation> = 3
<OpenGL.Upscaling> = 1
<OpenGL.SingleWindow> = 1
<OpenGL.Renderer> = 0
<OpenGL.UpdateMode> = 1
<OpenGL.SmoothMapScroll> = 1
<OpenGL.SmoothHeroMove> = 1
<OpenGL.Aspect> = 1
<OpenGL.VSync> = 0
<OpenGL.Colors.HueSat> = 32768500
<OpenGL.Colors.RgbInput> = 65536000
<OpenGL.Colors.RedInput> = 65536000
<OpenGL.Colors.GreenInput> = 65536000
<OpenGL.Colors.BlueInput> = 65536000
<OpenGL.Colors.RgbGamma> = 500
<OpenGL.Colors.RedGamma> = 500
<OpenGL.Colors.GreenGamma> = 500
<OpenGL.Colors.BlueGamma> = 500
<OpenGL.Colors.RgbOutput> = 65536000
<OpenGL.Colors.RedOutput> = 65536000
<OpenGL.Colors.GreenOutput> = 65536000
<OpenGL.Colors.BlueOutput> = 65536000

<Show Intro> = 1
<AppPath> = "C:\Program Files (x86)\Heroes of Might and Magic III Complete HD\"
<Music Volume> = 9
<Sound Volume> = 9
<Last Music Volume> = 9
<Last Sound Volume> = 9
<Walk Speed> = 4
<Computer Walk Speed> = 5
<Show Route> = 1
<Move Reminder> = 1
<Quick Combat> = 0
<Video Subtitles> = 1
<Town Outlines> = 1
<Animate SpellBook> = 0
<Window Scroll Speed> = 1
<Bink Video> = 0
<Blackout Computer> = 1
<First Time> = 0
<Test Decomp> = 0
<Test Read> = 0
<Test Blit> = 0
<Unique System ID> = "BS4"
<Network Default Name> = "Player"
<Autosave> = 1
<Show Combat Grid> = 1
<Show Combat Mouse Hex> = 1
<Combat Shade Level> = 0
<Combat Army Info Level> = 2
<Combat Auto Creatures> = 1
<Combat Auto Spells> = 1
<Combat Catapult> = 1
<Combat Ballista> = 1
<Combat First Aid Tent> = 1
<Combat Speed> = 2
<Main Game Show Menu> = 1
<Main Game X> = 249
<Main Game Y> = 72
<Main Game Full Screen> = 0
<CDDrive>

<HD.QuickCombat> = 0


AlexSpl писал(а):

В других жилищах тоже спрашивают, кстати. Или есть твик HD, который отключает эти окна?

Это в оригинале. У HD мода по умолчанию включен твик, который отключает эти диалоге. Это удобно и экономит время. То есть нужно, чтобы и плагин тогда это понимал, если этот твик вкл, то показывает этот диалог, если выкл - тогда нет.

***

Даже _MapItem_ завернул в push/pack. Вот моя dll:
Вложения
CreatureUpgrade.rar
(4.48 КБ) Скачиваний: 148
Последний раз редактировалось Rolex 24 апр 2021, 13:20, всего редактировалось 3 раз(а).
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 24 апр 2021, 13:18

Цитата:
Эт ов оригинале. У HD мода по умолчанию включен твик, который отключает эти диалоге.

Что за твик? У меня окна показываются даже с HD-модом.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 24 апр 2021, 13:22

По, по-моему, это не Твик, а это уже вшито в HD+.

 тыц
В окне гарнизона работает быстрое управление армией, клавиша [F10] меняет армии у посещающего героя и гарнизона.
В окнах города, гарнизона и обмена при попытке передать последний стек существ - одно существо остается у героя, остальные передаются.
Все полосы прокрутки в игре управляются колесом мыши.
Во всех полях ввода текста работают стандартные сочетания [CTRL]+[C], [CTRL]+[V], [SHIFT]+[INS], [CTRL]+[INS] для работы с буфером обмена.
В окне повышения уровня героя а так же в стандартных окнах выбора (золото-опыт, атака-защита и пр.) выбор можно быстро сделать двойным щелчком мыши.
При посещении жилищ существ (кроме 1го уровня) на карте приключений игра не спрашивает хотите ли вы их нанять, а сразу открывает диалог найма.
Игра поддерживает ввод руских символов.
Миникарта в игре работает корректно с нестандартными размерами карт.
В таверне можно пригласить героя.
- ТОЛЬКО ОДИНОЧНАЯ ИГРА!
- приглашенный герой появляется на месте нанятого.
- эта функция не является читом, или изменением оригинальных правил игры, так как абсолютно того же эффекта можно добиться в оригинале с помощью неопределенного количества загрузок сохраненной игры - покупок героя, с той лишь разницей что в HD это будет сделать быстрее, удобнее и приятнее.
В главном меню средняя кнопка мыши (клавиша [F5]) вызывает системное меню.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 24 апр 2021, 13:24

Цитата:
При посещении жилищ существ (кроме 1го уровня) на карте приключений игра не спрашивает хотите ли вы их нанять, а сразу открывает диалог найма.

Вот неправда. У меня HD+ 5.2 R31, и диалоги есть даже без плагинов.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 24 апр 2021, 13:29

AlexSpl писал(а):

Вот неправда. У меня HD+ 5.2 R31, и диалоги есть даже без плагинов.

Как такое может быть. Эта инфа с сайта разработчика. У меня их нет даже без HD+. Значит где-то должен быть какой-то твик, который это вкл/откл.
Вернуться к началу

offlineRolex  
имя: Alex
Ветеран
Ветеран
 
Сообщения: 898
Зарегистрирован: 22 сен 2020, 18:58
Откуда: УКРАИНА
Пол: Мужчина
Поблагодарили: 53 раз.

Re: Как создать плагин для HD мода

Сообщение Rolex » 24 апр 2021, 13:32

Я нашел. Это не твик.

Новая опция HD мода в Системных опциях: Показ сообщений объектов. У меня там снята галка. А у Вас, видимо, нет.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5587
Зарегистрирован: 17 сен 2010, 12:58
Пол: Мужчина
Награды: 14
Высшая медаль (1) Победителю турнира по HMM1_TE (2) Победителю этапа по HMM1 (1) Победителю этапа по HMM2 (1) Лучшему из лучших (1) 2 место 1 этапа по HMM1 (1)
3 место 1 этапа по HMM1 (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (2) Победителю турнира по KB (1) Грандмастер оффлайн-турниров (1) Боевой шлем (1)
Поблагодарили: 2185 раз.

Re: Как создать плагин для HD мода

Сообщение AlexSpl » 24 апр 2021, 13:35

Да, со снятой не показывает для 2+ жилищ, но для 1-го уровня всё равно это окно есть.

Если нужно, уберу. По поводу крэша. Если у Вас крэш всегда, см. используемые структуры, а также вложенные в них (выравнивание должно быть 1). См. _GameMgr_, _Hero_, _Dwelling_, _MapItem_ и все вложенные.
Последний раз редактировалось AlexSpl 24 апр 2021, 13:40, всего редактировалось 1 раз.
Вернуться к началу

Пред.След.

Вернуться в Общий раздел

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1