IPB

Здравствуйте, гость ( Вход | Регистрация )

29 страниц V  < 1 2 3 4 5 > »   
Reply to this topicStart new topic
> Мод на ХотА
XEPOMAHT
сообщение 25 Nov 2016, 10:02
Сообщение #41

---------------------- New_Life_of_Heroes ----------------------
Сообщений: 241
Спасибо сказали: 358 раз




Цитата(igrik @ 25 Nov 2016, 08:41) *
Кстати, тут народ тоже пытается редактировать hota.exe


Только лишь выкладывают те же адреса и значения данных, что и в sod.exe. Из неразобранного - только значение вида героя (добавил в исходники МоПа):

0 = Demon
1 = Dwarf
2 = Efreeti
3 = Elf
4 = Genie
5 = Gnoll
6 = Goblin
7 = Human
8 = Lich
9 = Lizardman
10 = Minotaur
11 = Ogre
12 = Troglodyte
13 = Vampire

А вот добавлять, например, новых монстров через hota.dll и hota.dat отчего-то никто не пробует (наверное просто это никому не интересно из моддеров (или никто не хочет с этим связываться), хотя данные hota.dll и hota.dat не шифрованы и спокойно подвергаются разбору).


--------------------
WoG + MoP + HoA + Forge + Bastion = ERA+
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 25 Nov 2016, 10:40
Сообщение #42

😸🧡✊✌️
Сообщений: 16 027
Спасибо сказали: 2672 раза




Цитата(XEPOMAHT @ 25 Nov 2016, 10:02) *
Efreeti
Efreet. Тут же он один, и в остальных случаях единственное число.
Хотя тут одержимые указаны, как Efreet, а еретики, как Efreeti.
Странно, в общем, особенно учитывая, что множественное Efreets.


--------------------
Я слежу за тобой!
* tolic.narod.ru

Lu...pa...gamhi...dho?
Go to the top of the pageAdd Nick
 
+Quote Post
Sav
сообщение 25 Nov 2016, 12:52 (Сообщение отредактировал Sav - 25 Nov 2016, 12:56)
Сообщение #43

Immortal
Сообщений: 9 403
Спасибо сказали: 3770 раз




В Героях Efreeti - единственное число, Efreet - множественное. Впрочем, при этом грейд Efreet Sultan / Efreet Sultans (в подобных конструкциях определение пишется в единственном числе), что намекает на ошибку либо у грейда, либо у негрейда.
Насколько я вижу, в интернете можно найти источники и с одим строением слова, и с другим.

P. S. Ещё одно слово, которое многих смущает - это Cyclops - Cyclopes. Но здесь такая конструкция уже более однозначна, грейд в определении корректно использует единственное число Cyclops.
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 25 Nov 2016, 15:01
Сообщение #44

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Цитата(XEPOMAHT @ 25 Nov 2016, 11:02) *
Только лишь выкладывают те же адреса и значения данных, что и в sod.exe. Из неразобранного - только значение вида героя (добавил в исходники МоПа):

0 = Demon
1 = Dwarf
2 = Efreeti
3 = Elf
4 = Genie
5 = Gnoll
6 = Goblin
7 = Human
8 = Lich
9 = Lizardman
10 = Minotaur
11 = Ogre
12 = Troglodyte
13 = Vampire

Ничего не понял. Значение вида где? Ни на поле боя, ни на карте вид героя не зависит от этого параметра.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
XEPOMAHT
сообщение 25 Nov 2016, 16:05
Сообщение #45

---------------------- New_Life_of_Heroes ----------------------
Сообщений: 241
Спасибо сказали: 358 раз




Цитата(MasterOfPuppets @ 25 Nov 2016, 15:01) *
Ничего не понял. Значение вида где? Ни на поле боя, ни на карте вид героя не зависит от этого параметра.


То, что нарисовано на портрете героя. Записано в HeroesChanges.txt, второе значение, которое нигде не используется и там можно хранить какую-нибудь информацию для стартовых параметров героев (например номер галереи портретов, чтобы нельзя было поменять портрет рыцаря на нежить и т.д., или сидел ли герой в тюрьме, был ли уволен, короче то что потребуется узнать для героя перед его наймом непосредственно через структуру, а не геройскую переменную)


--------------------
WoG + MoP + HoA + Forge + Bastion = ERA+
Go to the top of the pageAdd Nick
 
+Quote Post
MasterOfPuppets
сообщение 25 Nov 2016, 16:20 (Сообщение отредактировал MasterOfPuppets - 25 Nov 2016, 16:25)
Сообщение #46

Анти-Всë
Сообщений: 2 989
Спасибо сказали: 2376 раз




Цитата(XEPOMAHT @ 25 Nov 2016, 16:05) *
Записано в HeroesChanges.txt, второе значение

Да это-то я понял, я спрашивал: где оно используется? Ответ, видимо: нигде. Но тогда с чего вообще такие названия - Goblin или Gnoll? Это даже не раса и не класс.
И я бы не стал так уж безоговорочно считать его ненужным и свободным для использования, поэтому и не затрагивал его. Возможно, это что-то значит для ИИ, нужно ставить бряк и проверять. Долго проверять.
Я и тринадцатый флаг использовал для рейд-боссов только после того, как убедился (да и то не до конца), что он реально не используется.


--------------------
Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery

Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 25 Nov 2016, 18:58
Сообщение #47

Etoprostostatus
Сообщений: 8 527
Спасибо сказали: 15833 раза




Читаю название темы, как "Мода на ХотА".


--------------------
Etoprostopodpis'
Go to the top of the pageAdd Nick
 
+Quote Post
feanor
сообщение 25 Nov 2016, 19:28
Сообщение #48

laughed as one fey
Сообщений: 12 166
Спасибо сказали: 20585 раз




Цитата
Но тогда с чего вообще такие названия - Goblin или Gnoll? Это даже не раса и не класс.
Потому что это все-таки раса.
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 25 Nov 2016, 19:38 (Сообщение отредактировал DedMorozzz - 25 Nov 2016, 20:15)
Сообщение #49

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(igrik @ 25 Nov 2016, 07:41) *
Цитата
Что бы быть более конкретным. Хочу для дьяволов сделать требуемые постройки - ГМ1, ифриты, демоны (не помню, требуют ли ифриты их, если не требуют то ГМ2 на замену...)
Замок - ГМ3 для ангелов. И гм4 для архангелов
Насколько это реально?

Реально, но не совсем ясна формулировка, а в следствии и что точно нужно про Дьяволов.
Код
Patcher* _P;
PatcherInstance* _PI;

// Замок
int BuildDepends_Castle[] =
{
0,                              -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
6,                              -1,
5,                              -1,
22, 5,                          -1,
14,                             -1,
15, 14,                         -1,
16,                             -1,
17, 6,                          -1,
7,                              -1,
8, 7,                           -1,
9, 8,                           -1,
11, 5,                          -1,
12, 11, 16, 0, 14,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
37, 30,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 30, 16,                     -1,
40, 33,                         -1,
32, 33,                         -1,
18, 32,                         -1,
39, 32,                         -1,
19, 39,                         -1,
21, 33,                         -1,
35, 21,                         -1,
42, 35,                         -1,
34, 33, 0,                      -1,
41, 34,                         -1,
36, 34, 2,                      -1, // Ангелы требуют еще и ГМ3
43, 36, 3,                      -1, // Архангелы требуют еще и ГМ4
26,                             -1,
-100
};

// Инферно  
int BuildDepends_Inferno[] =
{
7,                              -1,
21, 7,                          -1,
8, 7,                           -1,
22, 8,                          -1,
9, 8,                           -1,
5,                              -1,
16,                             -1,
14,                             -1,
15, 14,                         -1,
0,                              -1,
23, 0,                          -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
4, 3,                           -1,
11, 5,                          -1,
12, 11, 16, 14, 0,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
18, 30,                         -1,
37, 30,                         -1,
19, 37,                         -1,
32, 30,                         -1,
24, 32,                         -1,
39, 32,                         -1,
25, 39,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 31,                         -1,
40, 33,                         -1,
35, 33, 0,                      -1,
42, 35,                         -1,
34, 33,                         -1,
41, 34, 0,                      -1, // ул. провал требует ГМ1 взамен ГМ2 (согласно описаниям HotA)
36, 34, 5,                      -1,
43, 36,                         -1,
26,                             -1,
-100
};


BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    static _bool_ plugin_On = 0;
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        if (!plugin_On)
        {
            plugin_On = 1;        

            _P = GetPatcher();
            _PI = _P->CreateInstance("HD.Plugin.DedMorozzz");

            *(int*)0x4EB816 = (int)BuildDepends_Castle;
            *(int*)0x4EBA39 = (int)BuildDepends_Inferno;

        }
        break;

    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}


Кстати, тут народ тоже пытается редактировать hota.exe


Если совсем кратко - для дьяволов убрать провал из требований

И какой это файл редактировал? Патчер... не в курсе что это ):
Go to the top of the pageAdd Nick
 
+Quote Post
igrik
сообщение 25 Nov 2016, 21:23
Сообщение #50

Immortal
Сообщений: 589
Спасибо сказали: 890 раз




Вкратце, что такое patсher_x86 (тут)
Как создать dll для HD-мода. (тут)

Код
#include "patcher_x86.hpp"

Patcher* _P;
PatcherInstance* _PI;

// Замок
int BuildDepends_Castle[] =
{
0,                              -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
6,                              -1,
5,                              -1,
22, 5,                          -1,
14,                             -1,
15, 14,                         -1,
16,                             -1,
17, 6,                          -1,
7,                              -1,
8, 7,                           -1,
9, 8,                           -1,
11, 5,                          -1,
12, 11, 16, 0, 14,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
37, 30,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 30, 16,                     -1,
40, 33,                         -1,
32, 33,                         -1,
18, 32,                         -1,
39, 32,                         -1,
19, 39,                         -1,
21, 33,                         -1,
35, 21,                         -1,
42, 35,                         -1,
34, 33, 0,                      -1,
41, 34,                         -1,
36, 34, 2,                      -1, // Ангелы требуют еще и ГМ3
43, 36, 3,                      -1, // Архангелы требуют еще и ГМ4
26,                             -1,
-100
};

// Инферно  
int BuildDepends_Inferno[] =
{
7,                              -1,
21, 7,                          -1,
8, 7,                           -1,
22, 8,                          -1,
9, 8,                           -1,
5,                              -1,
16,                             -1,
14,                             -1,
15, 14,                         -1,
0,                              -1,
23, 0,                          -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
4, 3,                           -1,
11, 5,                          -1,
12, 11, 16, 14, 0,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
18, 30,                         -1,
37, 30,                         -1,
19, 37,                         -1,
32, 30,                         -1,
24, 32,                         -1,
39, 32,                         -1,
25, 39,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 31,                         -1,
40, 33,                         -1,
35, 33, 0,                      -1,
42, 35,                         -1,
34, 33,                         -1,
41, 34, 0,                      -1, // ул.Провал требует ГМ1 взамен ГМ2 (согласно описаниям HotA)
36, 33, 5,                      -1, // Дьяволы не требуют Провал для постройки (34 -> 33)
43, 36,                         -1,
26,                             -1,
-100
};


BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    static _bool_ plugin_On = 0;
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        if (!plugin_On)
        {
            plugin_On = 1;        

            _P = GetPatcher();
            _PI = _P->CreateInstance("HD.Plugin.DedMorozzz");

            *(int*)0x4EB816 = (int)BuildDepends_Castle;
            *(int*)0x4EBA39 = (int)BuildDepends_Inferno;

        }
        break;

    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 28 Nov 2016, 23:18
Сообщение #51

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(igrik @ 25 Nov 2016, 20:23) *
Вкратце, что такое patсher_x86 (тут)
Как создать dll для HD-мода. (тут)

Код
#include "patcher_x86.hpp"

Patcher* _P;
PatcherInstance* _PI;

// Замок
int BuildDepends_Castle[] =
{
0,                              -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
6,                              -1,
5,                              -1,
22, 5,                          -1,
14,                             -1,
15, 14,                         -1,
16,                             -1,
17, 6,                          -1,
7,                              -1,
8, 7,                           -1,
9, 8,                           -1,
11, 5,                          -1,
12, 11, 16, 0, 14,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
37, 30,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 30, 16,                     -1,
40, 33,                         -1,
32, 33,                         -1,
18, 32,                         -1,
39, 32,                         -1,
19, 39,                         -1,
21, 33,                         -1,
35, 21,                         -1,
42, 35,                         -1,
34, 33, 0,                      -1,
41, 34,                         -1,
36, 34, 2,                      -1, // Ангелы требуют еще и ГМ3
43, 36, 3,                      -1, // Архангелы требуют еще и ГМ4
26,                             -1,
-100
};

// Инферно  
int BuildDepends_Inferno[] =
{
7,                              -1,
21, 7,                          -1,
8, 7,                           -1,
22, 8,                          -1,
9, 8,                           -1,
5,                              -1,
16,                             -1,
14,                             -1,
15, 14,                         -1,
0,                              -1,
23, 0,                          -1,
1, 0,                           -1,
2, 1,                           -1,
3, 2,                           -1,
4, 3,                           -1,
11, 5,                          -1,
12, 11, 16, 14, 0,              -1,
13, 12, 9,                      -1,
30, 7,                          -1,
18, 30,                         -1,
37, 30,                         -1,
19, 37,                         -1,
32, 30,                         -1,
24, 32,                         -1,
39, 32,                         -1,
25, 39,                         -1,
31, 30,                         -1,
38, 31,                         -1,
33, 31,                         -1,
40, 33,                         -1,
35, 33, 0,                      -1,
42, 35,                         -1,
34, 33,                         -1,
41, 34, 0,                      -1, // ул.Провал требует ГМ1 взамен ГМ2 (согласно описаниям HotA)
36, 33, 5,                      -1, // Дьяволы не требуют Провал для постройки (34 -> 33)
43, 36,                         -1,
26,                             -1,
-100
};


BOOL APIENTRY DllMain( HMODULE hModule,
                       DWORD  ul_reason_for_call,
                       LPVOID lpReserved
                     )
{
    static _bool_ plugin_On = 0;
    switch (ul_reason_for_call)
    {
    case DLL_PROCESS_ATTACH:
        if (!plugin_On)
        {
            plugin_On = 1;        

            _P = GetPatcher();
            _PI = _P->CreateInstance("HD.Plugin.DedMorozzz");

            *(int*)0x4EB816 = (int)BuildDepends_Castle;
            *(int*)0x4EBA39 = (int)BuildDepends_Inferno;

        }
        break;

    case DLL_THREAD_ATTACH:
    case DLL_THREAD_DETACH:
    case DLL_PROCESS_DETACH:
        break;
    }
    return TRUE;
}



Создал ДЛЛку, а как её к героям прикрутить теперь то?
И у тебя в коде не инклудится .h файл. Так и надо?
Go to the top of the pageAdd Nick
 
+Quote Post
igrik
сообщение 29 Nov 2016, 09:36 (Сообщение отредактировал igrik - 29 Nov 2016, 17:10)
Сообщение #52

Immortal
Сообщений: 589
Спасибо сказали: 890 раз




Цитата(DedMorozzz @ 28 Nov 2016, 23:18) *
Создал ДЛЛку, а как её к героям прикрутить теперь то?

Т.к. этот файл для HD мода, то его нужно класть в "[папка с HotA]\_HD3_Data\Packs\DedMorozzz".
Потом его нужно подключить в плагинах HD лаунчера.

И естественно, он будет работать только с включенным HD.
Цитата(DedMorozzz @ 28 Nov 2016, 23:18) *
И у тебя в коде не инклудится .h файл. Так и надо?

Предварительно нужно еще закинуть "patcher_x86.hpp" в папку решения проекта (короче там, где остальные файлы *.hpp и *.h)
Тогда он будет компилироваться без ошибок и запросов на недостающие файлы.

upd:Также, ты не только можешь, а даже желательно все твои правки из exe перенести в dll
На примере 5% для специализаций (На счет правки навыков, оказалось не все так просто)
+ я что-то не смог получить адрес флоат переменной через С++, поэтому пришлось шить напрямую в пустое место в exe
Код
// правка интеллекта (2%)
*(int*)0x4E4B88 = 0x3ca3d70a;    // float 0.02f (записал в пустое место в exe)
*(int*)0x4DA596 = 0x4E4B88;      // при смерти героя
*(int*)0x4D917E = 0x4E4B88;      // при старте при настройке героя
*(int*)0x4DDACC = 0x4E4B88;      // процесс экшн в окне героя
*(int*)0x4E4B69 = 0x4E4B88;      // при открытии окна героя
*(int*)0x4E20EC = 0x4E4B88;      // в подневный расчет максимума маны

вышеуказанное можно вставить после строки *(int*)0x4EBA39 = (int)BuildDepends_Inferno;


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 29 Nov 2016, 21:21 (Сообщение отредактировал DedMorozzz - 29 Nov 2016, 22:27)
Сообщение #53

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(igrik @ 29 Nov 2016, 08:36) *
Предварительно нужно еще закинуть "patcher_x86.hpp" в папку решения проекта (короче там, где остальные файлы *.hpp и *.h)
Тогда он будет компилироваться без ошибок и запросов на недостающие файлы.

Да вроде и так без ошибок. Перенёс скомпилиную ДЛЛку в папку пакс. И всё завелось. Только вот дьяволы терь ифритов не требуют))
Отсюда вытекает вопрос - где подсмотреть айдишники зданий. Гуглануть не получилось ): Что бы, мог сам, для любого замка зависимости поменять

Цитата(igrik @ 29 Nov 2016, 08:36) *
upd:Также, ты не только можешь, а даже желательно все твои правки из exe перенести в dll
На счет правки навыков, оказалось не все так просто

Ну я навыки тоже правил... Но если получится, всё что можно перенести - перенесу
Go to the top of the pageAdd Nick
 
+Quote Post
igrik
сообщение 30 Nov 2016, 06:03
Сообщение #54

Immortal
Сообщений: 589
Спасибо сказали: 890 раз




Цитата(DedMorozzz @ 29 Nov 2016, 21:21) *
Цитата(igrik @ 29 Nov 2016, 08:36) *
Предварительно нужно еще закинуть "patcher_x86.hpp" в папку решения проекта (короче там, где остальные файлы *.hpp и *.h)
Тогда он будет компилироваться без ошибок и запросов на недостающие файлы.

Да вроде и так без ошибок. Перенёс скомпилиную ДЛЛку в папку пакс. И всё завелось. Только вот дьяволы терь ифритов не требуют))
Отсюда вытекает вопрос - где подсмотреть айдишники зданий. Гуглануть не получилось ): Что бы, мог сам, для любого замка зависимости поменять

Качай ERM-help. Внутри него есть кнопка "CA", Да и вообще, там много полезных данных есть.


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 30 Nov 2016, 21:12 (Сообщение отредактировал DedMorozzz - 01 Dec 2016, 00:37)
Сообщение #55

God
Сообщений: 267
Спасибо сказали: 25 раз




Скачать не получилось. Точнее как, получилось на файл пустой. Хоть и весит под 6 метров
http://www.wakeofgods.com/erm_help/receivers/receiver_ca.htm - вот тут нашел эту инфу, в онлайне
Итого. Каждый замок указан цепочкой что требуется для него. Айди постройки и через запятую какие ещё требуются для него...

Т.о. для дьяволов, что бы вернуть ифритов получается так:
36, 35, 33, 5, -1,
Вместо
36, 33, 5, -1,

Но всё равно получается. Что для другого замка в ручную прописывать все зависимости... Проверить не вышло, с только одой постройкой (может смёрджит) т.к. в дополнение ко всему не ясно на какой участок ссылаться с этим массивом (в смысле с массивом зависимостей, к примеру замка "оплот")

PS:
Ещё и изменить навык некромантии не получилось. В exe верные числа стоят. 0-10-20-30. Хотя в игре по факту 0-5-10-15 (в ХотА некромантию в 2 раза порезали)
Менял 0-10-20-30 на 0-100-100-100. Всё равно оставалось 0-5-10-15...
Как найти место где ещё раз переписывается процент для этого навыка?

PPS: как тут много то всего...
Go to the top of the pageAdd Nick
 
+Quote Post
hippocamus
сообщение 30 Nov 2016, 23:30
Сообщение #56

пират с чёрной меткой
Сообщений: 23 646
Спасибо сказали: 12923 раза




Цитата(DedMorozzz @ 30 Nov 2016, 21:12) *
PS:
Ещё и изменить навык некромантии не получилось. В exe верные числа стоят. 0-10-20-30. Хотя в игре по факту 0-5-10-15 (в ХотА некромантию в 2 раза порезали)
Естественно, потому что хотовские правки находятся не в экзешнике (который почти не изменён), а в hota.dll


--------------------
Давший быка на убой не выпросил и печень на жаркое.
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 01 Dec 2016, 00:36
Сообщение #57

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(hippocamus @ 30 Nov 2016, 22:30) *
Естественно, потому что хотовские правки находятся не в экзешнике (который почти не изменён), а в hota.dll

Ну да, логично)
Соотв. надо в своей ДЛЛке переписать эти значения на нужные мне... заодно и остальные изменения перенесу туда
Go to the top of the pageAdd Nick
 
+Quote Post
igrik
сообщение 01 Dec 2016, 00:55
Сообщение #58

Immortal
Сообщений: 589
Спасибо сказали: 890 раз




Цитата(DedMorozzz @ 30 Nov 2016, 21:12) *
Скачать не получилось. Точнее как, получилось на файл пустой. Хоть и весит под 6 метров
Сними галку "Спрашивать при открытии такого файла"
Цитата(DedMorozzz @ 30 Nov 2016, 21:12) *
Итого. Каждый замок указан цепочкой что требуется для него. Айди постройки и через запятую какие ещё требуются для него...
Да.
Можно было просто "36, 35, 5, -1,". Там все идет прицепом, ведь для 35 требуется "35, 33, 0, -1, " и т.д.
Цитата(DedMorozzz @ 30 Nov 2016, 21:12) *
Но всё равно получается. Что для другого замка в ручную прописывать все зависимости... к примеру замка "оплот"

Именно.
(0x4EB8B2+1)=оплот...
7, -1, 8, 7, -1, 9, 8, -1, 5, -1, 16, -1, 14, -1, 15, 14, -1, 0, -1, 1, 0, -1, 2, 1, -1, 3, 2, -1
4, 3, -1, 17, -1, 21, 17, -1, 11, 5, -1, 12, 11, 0, 16, 14, -1, 13, 12, 9, -1, 30, 7, -1, 37, 30
-1, 31, 30, -1, 18, 31, -1, 22, 18, -1, 38, 31, -1, 19, 38, -1, 32, 30, -1, 39, 32, -1, 34, 32, -1
24, 34, -1, 41, 34, -1, 25, 41, -1, 33, 32, -1, 40, 33, -1, 35, 33, 34, -1, 42, 35, -1, 36, 35, 1
-1, 43, 36, 2, -1, 26, -1, -100

Цитата(DedMorozzz @ 30 Nov 2016, 21:12) *
PPS: как тут много то всего...
Ну так....


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
DedMorozzz
сообщение 01 Dec 2016, 12:29
Сообщение #59

God
Сообщений: 267
Спасибо сказали: 25 раз




Цитата(igrik @ 30 Nov 2016, 23:55) *
Сними галку "Спрашивать при открытии такого файла"

Да не, не в этом дело. Я даже скачал другую софтинку. Спец для просмотра такого рода файлов. И в ней выбрать открыть конкретный файл - всё равно пусто. Причём как на винде 10ке, как и на луинксе (минте). Всегда пусто

Цитата(igrik @ 30 Nov 2016, 23:55) *
(0x4EB8B2+1)=оплот...

Где все эти данные посмотреть? Для любого замка... Идея как менять зависимости ясна. Но вот где код замка взять - не понятно. И странный вид - "0x4EB8B2+1". +1 так и надо?
Go to the top of the pageAdd Nick
 
+Quote Post
igrik
сообщение 01 Dec 2016, 20:20 (Сообщение отредактировал igrik - 27 Jun 2017, 09:20)
Сообщение #60

Immortal
Сообщений: 589
Спасибо сказали: 890 раз




Цитата(DedMorozzz @ 01 Dec 2016, 12:29) *
Где все эти данные посмотреть? Для любого замка... Идея как менять зависимости ясна. Но вот где код замка взять - не понятно.

Посмотреть адреса можно в базе для IDA HoMM3 (© sergroj)
Открыть эту базу можно через IDA. Лично я пользуюсь пятой версией.
Вот ERM Help.zip
Цитата(DedMorozzz @ 01 Dec 2016, 12:29) *
И странный вид - "0x4EB8B2+1". +1 так и надо?

Ничего странного. Просто адрес указан со смещением, что эквивалентно 0x4EB8B3.


--------------------


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post

29 страниц V  < 1 2 3 4 5 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 25 April 2024 - 15:06
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика