Объявления

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

Альтернативный перевод Heroes III

Герои Меча и Магии III: Возрождение Эрафии, Герои Меча и Магии III Дыхание Смерти, Герои Меча и Магии III Клинок Армагеддона, Герои Меча и Магии III Хроники Героев
offlineАватара пользователя
leiz  
Подмастерье
Подмастерье
 
Сообщения: 187
Зарегистрирован: 15 сен 2018, 07:58
Пол: Не указан
Поблагодарили: 95 раз.

Re: Альтернативный перевод Heroes III

Сообщение leiz » 13 май 2023, 01:30

Спрошу заодно, пользуясь случаем. Играю без фильтрации, максимум удвоенное разрешение для HoMM1-2, поэтому GLWrapper мне нужен только из-за патчей на ColdCPU. Может кто-нибудь здесь знает, какие адреса в *.exe править для снятия 100% загрузки ядра. Интересуют в первую очередь английские TSW 1.3, PoL 1.3, RoE 1.1 и 1.2, AB 2.1 и 2.2, SoD 3.2, но лучше все :) Для mm6 тоже было бы неплохо (mm7-8 еще не пробовал, не знаю есть ли в них такая проблема).
На GoG в теме по PS:T один парень написал:
Цитата:
in your interested in why it is running at 100 percent try googling info about Message Pumps,
PeekMessage vs GetMessage in games

Но я не программист и мне это ничем не помогает. Пока приходиться лочить fps bandicam/RTSS и тормозить BES/NtSleep. Для JA2 враппер cnc-ddraw отлично помогает с его опций "maxgameticks=", но он не панацея для всех старых игр (для mm6 не снимает нагрузку).
Если проблема "100% cpu load in oldgames" не только меня волнует, то можно и отдельную тему создать. У Intel процессоры живучие и 100% нагрузки долго могут выдерживать, на крайний случай потротлятся, а вот VRM на матплате и прочие комплектующие (особенно в ноутах) совсем не такие выносливые, а систему каждый год менять не всем по карману.
Вернуться к началу

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

Re: Альтернативный перевод Heroes III

Сообщение AlexSpl » 13 май 2023, 04:37

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

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1035
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 617 раз.

Re: Альтернативный перевод Heroes III

Сообщение Владимир » 29 май 2023, 09:10

AlexSpl писал(а):

Я имею в виду в распакованную карту в шестнадцатеричном редакторе вписать поверх старого названия и не забыв байт 00 в конце. Запаковывать для тестов не нужно. Суммарная длина не должна превышать 17 символов, считая 0. Длиннее название не получится сделать из-за ограничения длины строки в самом формате карт.
...
Что ж, получилось :smile18:

Несколько дней проведя... не совсем в безделье, но не за редактором карт Героев 3 - наконец привёл "Небесный Мандат" в нужный вид. Названия двух городов получились как раз по 16 символов (в игре точно есть ограничение в 16 символов + нуль-байт, или всё же нет? Т. е. что-то вроде char name[17]?).
В процессе обнаружилась ещё одна особенность редактора: если вписывание названия вручную и "импортировать текст" ограничивает нас 12 символами, то "сохранить карту" обрезает все названия на 14. Пришлось вписывать названия уже после всех простых операций в редакторе карт.

На карте интересные дела с обелисками. Всего их 13 (в MM6 - 15), и рядом с ними расположены события с текстами, как на обелисках MM6. Нумерация обелисков другая.
 
MM6:
Код: Выделить всё
1  4  7  10  13
2  5  8  11  14
3  6  9  12  15

Герои 3:
Код: Выделить всё
7   10   9    11  12
8   6    4    5*  2
13  нет  нет  3   1

*у обелиска не обозначен номер, но текст у него от 5-го.
Тексты случайно, или намеренно испорчены NWC при переносе в Герои: другое количество пробелов, первая буква l как L-малое, а не как i-большое.
Нумерацию оставил как в Героях, тексты вписал из буковского перевода загадки. Переводить MM6 впридачу в мои планы не входило.
Удивительно, что в самой MM6 обелискам не дали случайную нумерацию.
Вернуться к началу

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

Re: Альтернативный перевод Heroes III

Сообщение AlexSpl » 29 май 2023, 10:41

Цитата:
Несколько дней проведя... не совсем в безделье, но не за редактором карт Героев 3 - наконец привёл "Небесный Мандат" в нужный вид. Названия двух городов получились как раз по 16 символов (в игре точно есть ограничение в 16 символов + нуль-байт, или всё же нет? Т. е. что-то вроде char name[17]?).

Нет, там не null-terminated строки точно. В HxD, например, есть функция вставки (не замены) байт по нужному адресу. Так что можно теоретически не ограничивать длины названий городов (главное, чтобы в игре все символы в окошко помещались).

Цитата:
На карте интересные дела с обелисками. Всего их 13 (в MM6 - 15), и рядом с ними расположены события с текстами, как на обелисках MM6. Нумерация обелисков другая.

У обелисков есть внутриигровая нумерация. Можно посмотреть (например, с помощью LMOracle), совпадают ли эти номера с номера в сообщениях.
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1035
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 617 раз.

Re: Альтернативный перевод Heroes III

Сообщение Владимир » 29 май 2023, 11:39

Я сравнивал положение обелисков на карте Героев 3 и в тех же местах в регионах MM6 ( http://mm6world.ru/6_useful.htm#obelisk и http://mm6world.ru/6_gal1.htm ). Карта-то по сути одна и та же.
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1035
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 617 раз.

Re: Альтернативный перевод Heroes III

Сообщение Владимир » 17 июн 2023, 05:38

Владимир писал(а):

Часть зависящих от времени событий в ней просто расставлены в неправильном порядке (более раннее ссылается на более позднее).

Внутренняя нумерация событий, общих для всей карты, совпадает с порядком их срабатывания в игре (номер дня, порядок в пределах одного дня).
Нумерация событий в городах первоначально определяется порядком их создания. Если какое-то из них удалить, произойдёт простой сдвиг. Если поменять местами два события одного дня (сдвинуть вверх/сдвинуть вниз) - поменяются только номера этих двух событий.
Пример: в городе последовательно созданы события A (1-й день), B(1-й день), C(2-й день), D(1-й день), E(2-й день). Порядок, в котором они сохранятся в файле карты: ABCDE; порядок срабатывания: ABDCE. Если меняем местами B и D, получаем ADCBE в файле и ADBCE при игре. Меняем дни срабатывания: A(3), B(2), D(2). Получаем ADCBE в файле и DCBEA в игре.

Используя инструменты экспортировать/импортировать текст, мы получаем городские события в виде беспорядочной "каши". Видимо, так и произошло с картой "Myth and Legend", которую явно делали не в один приём.
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1035
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 617 раз.

Re: Альтернативный перевод Heroes III

Сообщение Владимир » 29 май 2024, 21:55

Изображение
Это сильно ужасно или пойдёт?
Вернуться к началу

offlineTrueMefista  
имя: Mefista
Посвященный
Посвященный
 
Сообщения: 51
Зарегистрирован: 18 дек 2021, 12:35
Пол: Женщина
Поблагодарили: 9 раз.

Re: Альтернативный перевод Heroes III

Сообщение TrueMefista » 30 май 2024, 02:00

Пойдёт, ничего ужасного не вижу :)
Вернуться к началу

offlineАватара пользователя
Владимир  
Эксперт
Эксперт
 
Сообщения: 1035
Зарегистрирован: 30 окт 2012, 18:37
Пол: Не указан
Награды: 3
Высшая медаль (1) 1 место 2 этапа по HMM2 (1) Победителю турнира по KB (1)
Поблагодарили: 617 раз.

Re: Альтернативный перевод Heroes III

Сообщение Владимир » 26 июн 2024, 05:43

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

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

Re: Альтернативный перевод Heroes III

Сообщение AlexSpl » 27 июн 2024, 15:10

Для геройщиков старой школы, испытывающих сентиментальные чувства к физическим носителям, предпочтителен вариант с изменённым образом диска, который можно будет записать на CD/DVD. Второй вариант предпочтительнее для тестирования/игры с альтернативной локализацией. Я уже не помню, как именно хранится озвучка роликов, но полагаю, что она зашита в BIK/SMK. Если это так, то есть проблема, о которой относительно недавно писали на HC: NWC использовали для создания роликов очень раннюю версию RAD Tools (даже не бету), которую сейчас практически невозможно найти (как минимум, автор той темы не смог, как и я, попытавшись помочь). Не знаю, правда, касается ли это роликов в издании Complete, но, например, для Хроник это так. Ролики, созданные в самой ранней из найденных версий RAD Tools просто не воспроизводились в игре. Есть надежда, что в русской локализации использовалась более новая версия, но это нужно проверять. Кажется, даже у HotA Crew нет такой версии RAD Tools, и все их новые ролики созданы с помощью самописного софта.

* * *
Сейчас извлёк пару роликов из VIDEO.VID. BIK - это ролики без звука, SMK - ролики со звуком. Но озвучки ни в тех, ни в других нет, что означает, что не всё так плохо :smile2: Да, озвучка - в Heroes3.snd, слава Джону :smile11: Тогда не вижу проблем. Для АВ файлы с озвучкой начинаются на ABvo (AB voice over). Озвучивайте, а мы оценим :smile2:
Вернуться к началу

Пред.След.

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

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

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