Объявления

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

Приобщение к Героям 2

Обсуждаем, делимся впечатлениями, новой информацией
offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5547
Зарегистрирован: 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)
Поблагодарили: 2161 раз.

Re: Приобщение к Героям 2

Сообщение AlexSpl » 04 окт 2020, 15:06

Цитата:
А там вроде слишком старая MSS библиотека.

Можно подбросить какой-нибудь плагин из темы выше в корневую папку игры, изменив его расширение на .asi и посмотреть будет ли он подгружен (ну и patcher_x86.dll тоже). Проверять нужно на "Буке", конечно.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1315
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

Re: Приобщение к Героям 2

Сообщение Ben80 » 04 окт 2020, 15:09

А я что-то не вижу LoaderDll для скачивания.
А, сорри, разобрался.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5547
Зарегистрирован: 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)
Поблагодарили: 2161 раз.

Re: Приобщение к Героям 2

Сообщение AlexSpl » 04 окт 2020, 15:10

А он, по идее, в архиве должен быть.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1315
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

Re: Приобщение к Героям 2

Сообщение Ben80 » 04 окт 2020, 15:18

Да, работает. Так что это выяснилось.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1315
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

Re: Приобщение к Героям 2

Сообщение Ben80 » 05 окт 2020, 16:12

Что-то я напутал вчера. Не подгружаются ASI плагины, как изначально и предполагалось.
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5547
Зарегистрирован: 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)
Поблагодарили: 2161 раз.

Re: Приобщение к Героям 2

Сообщение AlexSpl » 05 окт 2020, 16:30

Да, я проверил. С "родной" MSS32.DLL ASI-плагины не грузятся. Но Герои 2 отлично работают с MSS32.DLL из Героев 3, вот с ней - подгружаются.

ASI-плагины хороши тем, что пользователю не нужно запускать изменённый экзешник, и с их помощью можно решить подавляющее большинство задач, которые могут возникнуть в моддинге. Вот я не могу привести пример, когда нужно было бы работать с памятью игры до загрузки MSS32.DLL. Разве какие-то чисто технические вопросы, связанные с запуском и инициализацией игры, нельзя решить.

Кстати, проверил Loader.asi для Героев 2 с библиотекой MSS32.DLL от Третьих Героев. Исправно подгружает плагины из папки.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1315
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

Re: Приобщение к Героям 2

Сообщение Ben80 » 05 окт 2020, 17:56

Можно было бы выработать общий подход по этой теме

Идею использовать Loader.asi и папку Plugins считаю правильной, а вот подключение плагинов в нужном порядке через INI файл - не очень. Мне все-таки больше нравится менеджмент на стороне разработчика, который дает именования в нужном лексикографическом порядке (и для этого вполне можно использовать тот подход, который показан в теме с ASI багфиксами Героев 3 - например, с префиксом Z и числом), а пользователю остается только складывать желаемые плагины в папку Plugins.

Поддержку ASI можно осуществлять как через MSS Героев 3, так и через GL Wrapper (поддержка только что реализована). Лично я буду использовать поддержку со стороны GL Wrapper.

***

Можно, кстати, например,использовать префикс VDV вместо Z :smile1:
А можно вообще без букв в префиксе - сразу с цифр. Пожалуй, так лучше всего.
Вернуться к началу

offlineBen80  
имя: Сергей
Эксперт
Эксперт
 
Сообщения: 1315
Зарегистрирован: 18 июн 2017, 06:49
Пол: Не указан
Поблагодарили: 336 раз.

Re: Приобщение к Героям 2

Сообщение Ben80 » 05 окт 2020, 20:06

Александр, для той ситуации, которую мы рассмотрели - решение найдено (ИИ выкупает Дракона):

Для Буки:
Код: Выделить всё
// не меньше либо равно (единице), а просто меньше
_PI->WriteByte(0x483E72, 0x7C);


Ну а для более широкого круга ситуаций - нужно тестировать. Присоединяйтесь :smile1:

***

Потестировал немного, и сразу стало понятно, что все дело было именно в этом. Теперь я вижу на карте и Зеленых Драконов, и Голубых Гигантов.
Естественно, все это радует глаз.

Поясню в чем суть "бага" - оригинальный ИИ проверяет кол-во существ данного типа, которое он в состоянии купить. Если он может купить только 1 существо, то покупку он не делает вовсе. Ну и в случае с дорогими существами 6 уровня это в конечном счете приводит к кумулятивному эффекту, сильно влияющему на геймплей. Я бы кстати даже не исключал некоторой вероятности, что этот "баг" был сделан намеренно, скажем, по соображениям баланса (хотя, скорее всего, вряд ли - скорее это один из многочисленных случаев невинного небольшого ненужного кода, приводящего к серьезным последствиям). Мой патч исправляет такое поведение ИИ.

Таким образом, готов выложить патч в виде плагина - для английских версий 1.3, 2.0, 2.1, русской 2.1 и польской 2.1. Не знаю только, стоит ли создавать новую тему или это можно сделать в теме, уже созданной AlexSpl.

Сам плагин:
H2_40_BlueGiant.zip
(3.41 КБ) Скачиваний: 174


Исходный код:
 
Код: Выделить всё
#include "../../include2020_v1/patcher_x86.hpp"

Patcher* _P;
PatcherInstance* _PI;

static _bool_ plugin_On = 0;


BOOL APIENTRY DllMain( HMODULE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved )
{
    if ( DLL_PROCESS_ATTACH == ul_reason_for_call)
    {
        if (!plugin_On)
        {
            plugin_On = 1;       
            _P = GetPatcher();
            _PI = _P->CreateInstance("H2_BlueGiant");

            int check;

            // H2 Eng SW 1.3
            check = *(int*)(0x434317+6);
            if(check == 0x14000000)
            {
                _PI->WriteByte(0x43DF14+1, 0x8C);
            }

            // H2 Eng PoL 2.0
            check = *(int*)(0x41BFB7+6);
            if(check == 0x14000000)
            {
                _PI->WriteByte(0x43DF39+1, 0x8C);
            }

            // H2 Eng PoL 2.1
            check = *(int*)(0x484DC1+6);
            if(check == 0x14000000)
            {
                _PI->WriteByte(0x4B0C2E+1, 0x8C);
            }

            // H2 Rus PoL 2.1
            check = *(int*)(0x4710BE+6);
            if(check == 0x14000000)
            {
                _PI->WriteByte(0x483E72, 0x7C);
            }

            // H2 Pol PoL 2.1
            check = *(int*)(0x470C7C+6);
            if(check == 0x14000000)
            {
                _PI->WriteByte(0x483658, 0x7C);
            }

        }
    }

   return TRUE;
}
Вернуться к началу

offlineАватара пользователя
AlexSpl  
имя: Александр
Эксперт
Эксперт
 
Сообщения: 5547
Зарегистрирован: 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)
Поблагодарили: 2161 раз.

Re: Приобщение к Героям 2

Сообщение AlexSpl » 06 окт 2020, 15:29

Спасибо. Это определённо сделает игру более динамичной :smile20:

Цитата:
Не знаю только, стоит ли создавать новую тему или это можно сделать в теме, уже созданной AlexSpl.

Можно создать аналогичную тему с пользовательскими плагинами для Героев 2. Если исходники сохранились (а я, вроде, ничего не удалял), выложу туда свои.
Вернуться к началу

offlineАватара пользователя
Orzie  
Ветеран
Ветеран
 
Сообщения: 698
Зарегистрирован: 12 сен 2013, 15:17
Откуда: Томск
Пол: Не указан
Награды: 3
Высшая медаль (1) 3 место 1 этапа по HMM1 (1) Бонусный шлем (1)
Поблагодарили: 457 раз.

Re: Приобщение к Героям 2

Сообщение Orzie » 07 окт 2020, 15:15

Ben80 писал(а):

Заголовок звучит довольно странно, правда ? Попробую пояснить.

В Двойку я пробовал играть и раньше, но "что-то щло не так". Я не понимал, как можно играть в игру, где нет кнопки "Вейт", 5 геройских стеков, смехотворных размеров поле битвы. Ну в общем, вы понели, список можно продолжать.

Но нельзя долгое время пожить на данном сайте, и в конце концов не заинтересоваться Двойкой. Особенно когда видишь, что Двойку любят такие гиганты мысли, как AlexSpl, Владимир, Orzie и другие.
Начался интерес к Двойке, пожалуй, после ознакомления с проектом Heroes 3 SW мод. Так что, если истинной целью работы Орзи и Феанора на самом деле была коварная пропаганда Героев 2 под прикрытием более известных Героев 3, то своей цели они добились.

Получше углубившись в Двойку, был приятно удивлен тем, что игра уже "из коробки", безо всякого моддинга, довольно гармонична - игровые механики работают как положено, геймплей "не ломается" за счет каких-то стратегий игрока, в отличие от Тройки, успешно поломанной турнирными игроками. Лишнего почти ничего нет, в отличие, опять же, от Тройки, с кучей ненужных заклинаний, навыков. С имбовыми вещами тоже дело обстоит получше. ИИ адекватен игровым механикам ! В Тройке - неадекватен, он не обеспечивает должную интеллектуальную поддержку ни увеличившегося игрового поля, ни появившегося Wait, ни увеличившегося количества стеков (с отделением единичек).


Тема, почему какие-то люди до сих пор любят двойку, заслуживает какой-то отдельной ретроспективы. Причём, что характерно, я такой статьи до сих пор не встретил, все в основном перебирают уже набившие оскомину слова о том, что тройкалудше или тупо делают историю серии с 1 по 7 часть, как будто без этого не хватает на ютубе видосов с этим содержанием.

Поползновение совершалось тут.

Основная причина для большинства играющих в 2020 - это всё равно импринтинг с детства и прочие психологические штуки (про себя могу также предположить, что я в принципе большой любитель контрастов во всём, а двойка игра весьма контрастная в плане графики).
Почему игра не ломается - потому что она простая как две копейки. Чем агрегат сложнее, тем больше у него уязвимостей. Как ощущалась четвёрка на фоне тройки - все помнят. Единичка, кстати, ломается ещё меньше - в ней нет многих артефактов, вторичных навыков и апгрейдов, на которых двойка прилично сыплется.

В диздоке H3SW я писал абзац или два о том, что в наше время, когда графика двойки и графика тройки считаются равноценно устаревшими и в этом смысле больше нечего делить, можно смело утверждать, что цветастый графический стиль обладает своим шармом и как направление в искусстве вполне себе имеет право на жизнь (инди-игры в пример). Чего нельзя сказать о троечных пререндерах. Когда идёт работа в 3D, то чаще всего её цель - отобразить максимально реалистично какую-то картинку, насколько позволяет железо и софт (и в этом современная графика весьма продвинулась с 1999-го), а двоечное VGA своими ограничениями создавало совершенно другие условия для художников и вынуждало изобретать какие-то творческие решения. Многие из которых и полюбились тем, кто любит двойку. В наше время нет никакого смысла воспроизводить графику тройки, кроме как для модов тройки, а вот графика двойки - это несколько другая история. Конечно, есть Шрек и прочие мультфильмы в 3D, не стремящиеся к реализму, но это как раз тот самый момент, который роднит их с двойкой: что то, что то - мультик.

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

Пред.След.

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

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

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