Объявления

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

ПАТЧ ТЕ!

Обсуждаем, делимся впечатлениями, новой информацией
offlineАватара пользователя
Арысь-Поле  
Новичок
Новичок
 
Сообщения: 18
Зарегистрирован: 04 мар 2013, 03:39
Пол: Не указан
Награды: 1
Цветы (1)
Поблагодарили: 20 раз.

Re: ПАТЧ ТЕ!

Сообщение Арысь-Поле » 01 фев 2019, 10:05

Йей, английский ТЕ - это классно :D
присоединяется к ожидающим

Цитата:
Показывает сообщения в начале дня по заданному расписанию


Интересно! Теоретически так можно было бы встроить в кампанию Айронфиста сюжет из мануала. Да и другие дополнить "дневниками".
Вернуться к началу

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 01 фев 2019, 12:27

Фактически Alukret уже закончил перевод. Осталось непереведённым только меню, которым всё равно никто не пользуется.
Вернуться к началу

offlineАватара пользователя
Alukret  
имя: Eriluin
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 07 янв 2019, 15:38
Пол: Не указан
Поблагодарили: 14 раз.

Re: ПАТЧ ТЕ!

Сообщение Alukret » 04 фев 2019, 10:13

AlexSpl писал(а):

Фактически Alukret уже закончил перевод. Осталось непереведённым только меню, которым всё равно никто не пользуется.

Я никуда не пропал и мониторю форум иногда.
Перевод менюхи на английский могу сделать в ближайшие дни, просто я хотел бы знать, возможно ли сделать для юзера выбор языка перед запуском игры?
Т.е. чтобы ТЕ не делился на русскую и английскую версию, а был один набор файлов, при скачивании которых в любую существующую версию HOMM1 у юзера была доступна и русская, и английская версии (кстати, в конце ещё надо будет заняться проверкой совместимости для разных версий игры).
Ведь все строки находятся в отдельном ini-файле, ресурсных agg-файла тоже может быть 2, и при выборе языка игра могла бы выбирать один из них.
То же и касается менюшки окна — при открытии exe-файла в Resource Hacker там есть такой параметр как язык, и наверняка можно прописать несколько переводов для менюшек, и позволить юзеру выбрать подходящий.
Вернуться к началу

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 04 фев 2019, 14:27

Цитата:
Перевод менюхи на английский могу сделать в ближайшие дни, просто я хотел бы знать, возможно ли сделать для юзера выбор языка перед запуском игры?

Можно. Написать свой лoнчер. Обычное приложение с двумя кнопками, которое бы выбирало нужный файл CustomTexts.ini (например, копировало из папки CustomTexts в папку с плагином), запускало игру и, опционально, завершало свою работу. В CustomTexts.ini для русской версии прописать имя файла AGG с русскими ресурсами, для английской версии - с английскими. Да хоть батник можно написать :smile1:
Вернуться к началу

offlineАватара пользователя
Alukret  
имя: Eriluin
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 07 янв 2019, 15:38
Пол: Не указан
Поблагодарили: 14 раз.

Re: ПАТЧ ТЕ!

Сообщение Alukret » 07 фев 2019, 12:05

AlexSpl писал(а):

Можно. Написать свой лoнчер. Обычное приложение с двумя кнопками, которое бы выбирало нужный файл CustomTexts.ini (например, копировало из папки CustomTexts в папку с плагином), запускало игру и, опционально, завершало свою работу. В CustomTexts.ini для русской версии прописать имя файла AGG с русскими ресурсами, для английской версии - с английскими. Да хоть батник можно написать :smile1:

Проблема лишь в том, что я не знаю как "написать свой лаунчер". Поможете? :smile1:

И как быть с переводом меню для exe-файла? Нужно будет иметь 2 ехе-шника в папке с игрой (один для англ, один для рус)?
Вернуться к началу

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 07 фев 2019, 12:26

Да, всего по два: два экзешника, два файла ресурсов, два файла ini, только плагин один. Экзешник тоже можно было бы сделать общим, и менять язык меню на лету. Посмотрим. Большого смысла я не вижу в этом.

UPD Напутал. Русская версия же будет "чистой" от Буки. Тогда всё просто: делаем для английской локализации версию с переведённым меню, прописываем в ini имя файла AGG с английскими ресурсами - и почти готово. Только осталось добавить в CustomTexts.ini строку для английской версии ролика. Далее - варианты: два экзешника/два ярлыка/два батника. Можно было бы встроить выбор языка прямо в игру (диалог с выбором), но проблема в том, что диалог можно показать только после загрузки AGG.

Да, плюс проблема распространения: у кого из потенциальных игроков, которые не знают русский язык, есть диск с "Буковской" локализацией"? :smile2:
Вернуться к началу

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 03 май 2019, 08:59

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

Во-первых, если компы достаточно богаты, они очень быстро исчерпают лимит кораблей на карте, так что игроку-человеку корабль может и вовсе не достаться. Чем богаче компы, тем быстрее будет исчерпан лимит кораблей. На богатой карте с тремя компами, у которых есть выход к воде, уже на второй неделе (!) корабли могут закончиться. И это не потому, что на карте реально будет 32 корабля: будет 8 плюс-минус, но из-за бага все "слоты" для кораблей окажутся заняты.

Во-вторых, данный баг очень сильно ослабляет компов: они буквально бросают ресурсы на ветер, строя фиктивные корабли, вместо того, чтобы отстраивать замок.

Честно говоря, я в шоке :smile8: Проверьте сами: дайте компам, имеющим выход к воде, достаточно ресурсов (золота и дерева) и посмотрите, как они бездарно спустят их за один день. Проверьте что они построили и какие войска наняли. Так куда ушли ресурсы? :smile2:

Фикс я уже написал. Сейчас тестирую. Идея фикса проста: комп теперь будет проверять, стоит ли лодка у замка, и пока она стоит, новую в этом замке он строить не будет.

* * *
BugFixes.zip
Фикс бага "AI Ship Spamming"
(4.18 КБ) Скачиваний: 238

 Код
Код: Выделить всё
#include "pch.h"
#include "..\patcher_x86.hpp"

#define GameMgr (*(int*)0x4A7BA0)

Patcher* _P;
PatcherInstance* _PI;
static _bool_ plugin_On = 0;

struct TTile {
    char Layer0FrameID;
    char Layer1ResID;
    char Layer1FrameID;
    char Layer2ResID;
    char Layer2FrameID;
    char ExtraTileInfo;
    char Flags;
    char Layer2ObjectID;
    char ObjectID;
    char ObjectInfo;
};

int __stdcall fixShipSpammingBug(LoHook * h, HookContext * c)
{
    char x = *(char*)(c->ecx + 4) - 1;
    char y = *(char*)(c->ecx + 5) + 1;
       
    TTile (*Tile)[72] = (TTile (*)[72])(GameMgr + 0x620);
       
    if ( !Tile[x][y].ObjectID && !(Tile[x][y].Flags & 0x40) ) return EXEC_DEFAULT;
   
    c->return_address = 0x44804C;
    return NO_EXEC_DEFAULT;
}

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((char*)"HD.Plugin.H1TE.BugFixes");

            _PI->WriteLoHook(0x447FC5, fixShipSpammingBug);
        }
    }

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

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 05 май 2019, 03:41

Обновил плагин MinerTexts. Добавил строчку для Предвратья. Теперь это Застава в соответствии с переводом новой локализации. Также поменял местами класс героя и имя (например, Луна Волшебница -> Волшебница Луна).

MinerTexts.zip
(39.07 КБ) Скачиваний: 251

* * *
Если Вам когда-нибудь хотелось пройти кампанию на максимальной сложности, то теперь Вы можете это сделать. Следующий плагин устанавливает в сценариях кампании уровни противников "Гений" (Genius), включает опцию "Царь горы" (King-of-the-Hill), также компьютерные игроки стартуют с 30/10/30/10/10/10/10000 ресурсов, Вы стартуете с 0 ресурсов, как при игре на сложности "Эксперт" (Expert).

fixBalance.zip
(4.23 КБ) Скачиваний: 258

В оригинальной кампании все игроки стартуют с 30/10/30/10/10/10/10000 ресурсов, уровни противников по картам кампании:
1 карта (Gateway): Глупый; 2, 3, 4: Средний; 5, 6, 7, 8 (Замки Лордов/Леди): Умный; 9: Умный + Царь горы.
Вернуться к началу

offlineАватара пользователя
SadStranger  
Новичок
Новичок
 
Сообщения: 26
Зарегистрирован: 13 сен 2016, 05:48
Пол: Не указан
Поблагодарили: 8 раз.

Re: ПАТЧ ТЕ!

Сообщение SadStranger » 07 май 2019, 17:03

AlexSpl писал(а):

Обновил плагин MinerTexts. Добавил строчку для Предвратья. Теперь это Застава в соответствии с переводом новой локализации. Также поменял местами класс героя и имя (например, Луна Волшебница -> Волшебница Луна).


Хочу искренне поблагодарить за проделанную работу! :smile20:
Хотел уточнить один момент: у меня почему-то при запуске через H1TE_Offline_f9_Ext с плагином MinerTexts окно с описанием сценария сдвинуто и текст не помещается в окно:

Изображение

Без плагина показывает нормально. Может быть, мне нужно где-то что-то настроить?
Вернуться к началу

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

Re: ПАТЧ ТЕ!

Сообщение AlexSpl » 07 май 2019, 23:35

MinerTexts - это плагин для новой русской локализации, которую делает Miner. Для корректной работы этого плагина необходимы графические ресурсы из данного архива. Архив нужно распаковать в папку игры, затем заменить плагины на их новые версии/убрать ненужные и запаковать ресурсы из папки DATA\heroes в HEROES.AGG с помощью утилиты H1XAGGPACK.

Также можно воспользоваться уже готовым архивом http://www.filedropper.com/h1tedata_1 (heroes_te.agg + MinerTexts, распаковать в папку Героев с заменой).
Вернуться к началу

Пред.След.

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

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

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