1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление
    1. Если вы сделали перевод или русификацию игры, то вы можете поделиться своим творением здесь.
    2. О правилах вступления в группу переводчиков можно прочитать здесь.
    3. Русификации следует искать там.

Анализ ресурсов игры Wrath of Earth (возможность перевода)

Тема в разделе "Переводы своими руками", создана пользователем WERTA, 26 июн 2013.

  1. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    То, что они зашифрованы - сомнений нет. Только вот более файлов не остается по своему назначению, где могли бы быть тексты. Несжатую графику, указатели или звук - их видно сразу. Текст пусть даже закодированный это будет выглядеть как неповторяющиеся байты. Под это только подходит 999. Стоп, я же менял только самые первые байты. вполне возможно, что текст пойдет ниже. Но вот разметки указателями к 999 я нигде не увидел. Файл 9С точно метит только файл 9В. Может Фоллера спросить? Так он наверно не помнит.
     
    Чёрный Думер нравится это.
  2. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.417
    WERTA, порча каких-либо отдельных байт - пропащее дело, ИМХО.
    За доказательствами долго идти не надо - дружно вспоминаем про графику в драйверах и понимаем, что подобному могли подвергнуться не только они.
     
    WERTA нравится это.
  3. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    Попробовал попортить 999.
    Поменял местами 005 и 000, заменил 999 на порченный. Без порченного 999 игра заработала без проблем. С порченным сразу встала. Однако, смутные сомнения навевает одна маленькая деталь, которую можно увидеть на скриншоте.
     

    Вложения:

    • woe_004.png
      woe_004.png
      Размер файла:
      11,2 КБ
      Просмотров:
      442
    • woe_005.png
      woe_005.png
      Размер файла:
      11,5 КБ
      Просмотров:
      439
    • woe_006.png
      woe_006.png
      Размер файла:
      11,9 КБ
      Просмотров:
      378
    • woe_007.png
      woe_007.png
      Размер файла:
      4,6 КБ
      Просмотров:
      407
    • woe_008.png
      woe_008.png
      Размер файла:
      4,6 КБ
      Просмотров:
      418
    WERTA нравится это.
  4. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Я портил первые 18 байт в 999. Накрылись текстуры выстрелов на самом первом уровне. Но игра работала. Честно говоря, я не понял какие появились сомнения из скриншотов, и я заинтригован. Я ожидал увидеть тексты уровней где-нибудь отдельно, ибо хранить их в файлах карт не совсем удобно, хотя и разумно. Ведь даже подписи к объектам на карте должны ассоциироваться с файлом карты.

    Тогда предположим по другому. Что в файлах карты после всех сжатых байтовых слоёв идут строки. Для них не нужен заголовок, достаточно разделять их 00 и затем на каждом уровне обращаться по их порядковому идентификатору. Тогда подобие строк нужно искать после окончания сжатых байтов. В HEX-редакторе нужно искать некий бросающий переход в характере последовательности байтов. Других вариантов как найти строки у меня более нет. Т.е. я резюмирую, что подписи на картах и строки текстов уровней в файлах карт. Равно как и ссылки на картинки брифингов и текстовки брифингов. Иных вариантов я уже никак не вижу, ибо перебрано всё.
     
  5. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    WERTA, на скриншотах четко видны надписи - Mode и <Search Mode>.

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

    Вложения:

    • 999copt.rar
      Размер файла:
      1,4 МБ
      Просмотров:
      41
    WERTA нравится это.
  6. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Вывод - то есть это уже точно, что в 999 нет текстов. Остаются карты. Других вариантов нет. Я прогоню карты через дешифратор. Может увижу тексты.
     
  7. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    Или же есть. Если бы их не было, то это не привело бы к тому, что меню не запускается.
     
    WERTA нравится это.
  8. Gamerun

    Gamerun

    Хелпер

    Регистрация:
    13 июн 2010
    Сообщения:
    8.372
    Откопал маленький шрифт - он находится, как и большой, в N_SETUP.DRV
    Блок данных - D620-EB80 при просмотре в hex-редакторе.
    Скриншоты с результатом порчи.

    На всякий случай, прикладываю вырезанный кусок.
     

    Вложения:

    • woe_020.png
      woe_020.png
      Размер файла:
      22,9 КБ
      Просмотров:
      366
    • woe_021.png
      woe_021.png
      Размер файла:
      26,8 КБ
      Просмотров:
      358
    • smallfont_data.rar
      Размер файла:
      4,5 КБ
      Просмотров:
      35
    Последнее редактирование: 10 июл 2013
    Vladimir 777, WERTA и Чёрный Думер нравится это.
  9. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    (удалено)

    Прошу прощения, невнимательно прочитал сообщение от Vladimir 777.
     
    Последнее редактирование: 11 июл 2013
    WERTA нравится это.
  10. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    К сожалению эта далеко не все. В woe.exe действительно находятся строки, связанные с общим интерфейсом игры и не связанные никак с уровнями. Приведенные выше строки в которых подробно описаны противники в игре подробно вообще не встречены, по крайней мере в начале игры. Брифинги, диалоги на уровнях с NPC, подписи на картах все это не найдено нигде и даже в данном алгоритме кодирования (00h="A", 01h="B",...). Сейчас я проверил карты на предмет простых алгоритмов RLE. Ничего не прокатывает ни при каком значении признака повторителя. Короче, я не представляю где эти тексты и как сжаты карты.

    ---------- Сообщение добавлено в 20:13 ---------- Предыдущее сообщение размещено в 20:10 ----------

    Отлично! Еще одна мощная подвижка! Я пока не глянул, а порядок там такой же как в большом фонте?
     
  11. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    Я, конечно, извиняюсь, но мною они вполне себе встречены. Ещё до начала игры, в стартовых роликах.
     

    Вложения:

    • woe_010.png
      woe_010.png
      Размер файла:
      22,9 КБ
      Просмотров:
      337
  12. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Wow!... Ну вот еще тайна одного экрана разрешилась. А можно узнать что за версия игры. У меня такого нет. В любом случае, это не относится к уровням. А много текстов зашито именно в уровнях и мы никак не можем их откопать. Хотя... Мы решили, что именно все файлы с расширениями fst, smp, spc являются звуковыми. А вдруг один просто замаскирован расширением и не является звуковым, а является строковым?
     
  13. A.P.$lasH

    A.P.$lasH

    Legacy

    Регистрация:
    27 фев 2010
    Сообщения:
    4.667
    Я игру брал с сайта (bin/cue). А можно пример текста на уровне? Что именно ищется?

    Подствольные обозначения в EXE. А ещё?
     
    WERTA нравится это.
  14. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Ну, самый первый брифинг, где женщина объясняет что нужно сделать, а на заднем плане тарелка с лучом. Этого текста брифинга в ехе точно нет. Я вообще весь rsc-файл прошелся с декодером строк и ничего не нашел. Потом есть "постраничные" множественные диалоги с NPC на уровнях и их точно нет в ехе.

    ---------- Сообщение добавлено в 20:59 ---------- Предыдущее сообщение размещено в 20:31 ----------

    A.P.$lasH, спасибо, у меня такая версия и была, только ума не хватало нажать и досмотреть до конца пункт меню INTRO SEQUENCE. Это мне нужно для написания прохождения. Как раз все монстры обозваны и даже с характеристиками.
     
    hobot и A.P.$lasH нравится это.
  15. Vladimir 777

    Vladimir 777

    Хелпер

    Регистрация:
    22 мар 2010
    Сообщения:
    1.347
    По шрифтам

    У нас имеется три разных шрифта:

    Шрифт в SETUP.COM, нужен для перевода текста из SETUP.COM

    Начало - 9CD, настройки GBS - 8 BPP, Width - 10, палитра - VGA. Содержит 46 символов.
    Габариты 14 на 10, размер одного символа в файле - 8Сh байтов. По 22F5 начинается таблица ширин символов (первый байт - ширина А в пикселях), заканчивается по 2322.

    Крупный синий шрифт из меню

    В N_SETUP.DRV он по 555, настройки GBS - 8 BPP, Width - 9, палитра - VGA. Содержит 44 символа. Габариты 13 на 9, размер одного символа в файле - 75h байтов. По 1971 начинается таблица ширин символов (первый байт - ширина А в пикселях), заканчивается по 199С.
    Указатель на начало шрифта (55 05) расположен по F1CF. Указатель на начало таблицы ширин найти пока не получается.

    Маленький шрифт

    В N_SETUP.DRV он по DE63, настройки GBS - 8 BPP, Width - 5, палитра - VGA. Содержит 44 символа. Габариты 4 на 5, размер одного символа в файле - 14h байтов. По E1D3 начинается таблица ширин символов (первый байт - ширина А в пикселях), заканчивается по E1FE. Указатель на начало шрифта (63 DE) расположен по F1B1. Указатель на начало таблицы ширин (D3 E1) расположен по F1C0.

    Маленький шрифт:[​IMG]

    Наличие указателей на начало шрифта и таблицу ширин позволяет переносить шрифт в конец файла N_SETUP.DRV с целью его расширения до нужного нам количества символов. Перенос в конец файла опробовал на маленьком шрифте: скопировал его и таблицу ширин в конец файла, исправил указатели, затёр нулевыми байтами исходный шрифт и таблицу, запаковал изменённый N_SETUP.DRV в WOE.RSC. Игра использует перенесённый шрифт без каких-либо проблем. Расширить шрифт пока не удалось (просто добавлял ещё один символ после последнего ` и добавлял ещё один байт с шириной за последним в таблицу ширин) - вместо добавленного символа выводится мусор.

    Обнаруженные таблицы ширин могут помочь в изображении широких кириллических символов типа Ш, Щ, Ю и т.д в маленьком шрифте с шириной 4. Если указать ширину символа больше максимальной, при выводе его на экран будет захвачена часть следующего символа. Например: Ш и Ю
    Для удобства на картинках буквы выделены разными цветами. Т.е. идея в следующем: в маленьком шрифте буквы идут без промежутков между ними, и необходимо сочетать широкие буквы с определёнными узкими. Рисуется часть буквы Ш, следующей за ней идёт С. При указании в таблице ширин для Ш ширины 5 (максимальная 4) будет захвачена левая часть буквы С, следовательно, при выводе на экран мы получим полноценную букву Ш. Расширенные буквы не сливаются с соседними, промежуток между ними остаётся стандартным.

    Естественно, при таком подходе мы получим мягко говоря очень странную кодировку. Надеюсь, что удасться увеличить максимальную ширину символов и извращаться так, как я предложил в примере с Ш и Ю, не понадобится.
     
    Последнее редактирование модератором: 19 июл 2015
    kreol, Чёрный Думер и WERTA нравится это.
  16. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Vladimir 777, это класс! Со шрифтами полный разбор. Но я только что заметил ответ Дэйва Фоллера у себя в ящике, сейчас буду разбирать его ответы, может что-то насчет ресурсов прояснится. Я ему про ресурсы приватно тоже вопросы задавал.

    Пока меня удручает ситуация с картами. Я их даже на RLE сжатие прогонял у себя с разными ширинами карт (число секторов - 80h, E0h, 90h). Но результат нулевой. Я уже думаю, что тексты в графике хранятся, но это несоизмеримо большой объём и редактировать неудобно. Тексты - это диалоги с NPC, подписи объектов на картах, два брифинга. осталось преодолеть последнее препятсвие. Я надеюсь, Фоллер мне дал ценные советы...
     
    Чёрный Думер и Vladimir 777 нравится это.
  17. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.417
    Vladimir 777, а сохранить латиницу и добавить полноценную кириллицу в самом лучшем случае получится? Или этот вариант пролетает сразу?
     
    WERTA нравится это.
  18. WERTA ФанатЪ O-G

    WERTA

    Хелпер Переводчик

    Регистрация:
    12 ноя 2006
    Сообщения:
    8.259
    Там всего 44 символа, наверное нет, ведь все размеры ограничены. К сожалению, Дэйв прислал только все ответы на интервью, что тоже ничего. По технической части подвижек от него пока не было. Но осталось немного дожать тексты... А может текстов нет в картах, но ТОГДА ГДЕ ЖЕ ОНИ?!
     
    Чёрный Думер нравится это.
  19. Чёрный Думер и все виды материала

    Чёрный Думер

    Регистрация:
    17 мар 2010
    Сообщения:
    2.417
    WERTA, дык Vladimir 777 писал, что там можно что-то с оффсетами похимичить. Вот я и спрашиваю.
     
    WERTA нравится это.
  20. Vladimir 777

    Vladimir 777

    Хелпер

    Регистрация:
    22 мар 2010
    Сообщения:
    1.347
    Если получится добавлять символы в шрифт, можно будет сохранить и латиницу. Кстати, для чего её желательно сохранять? Для постановки меток на карте и для названий сохранений?
    Только пока корректно добавить символы в шрифт не выходит. Вообще, все оффсеты, размеры самого шрифта и таблицы ширин, относящиеся к маленькому шрифту находятся в N_SETUP.DRV по F1B0. Дальше, по F1CE, начинается похожая запись о крупном шрифте (но там я вообще пока ничего не понимаю, кроме указателя на начало шрифта). Вот что относится к маленькому шрифту:
    Код:
    BE [B]63 DE[/B] 66 BF [U]00 50[/U] 00 00 B9 [B]70 03[/B] E8 47 07 BE [B]D3 E1[/B] 66 BF [U]70 53[/U] 00 00 B9 [B]2C[/B] 00 E8 38 07
    Жирным выделил то, что однозначно понятно:
    63 DE - это DE 63, смещение малого шрифта;
    70 03 - это 370h, размер шрифта в байтах;
    D3 E1 - это E1 D3, смещение таблицы ширин малого шрифта;
    2C или даже скорее 2C 00 - это 2Ch, размер таблицы ширин, оно же - количество символов в шрифте.
    Подчеркнул то, насчёт чего есть хоть какие-то соображения:
    70 53 - очень похоже, что это 70 03+00 50;
    00 50 - см. выше.
    Всё остальное (особенно 47 07 и 38 07) пока непонятно. Видно, что перед смещениями стоит BE, после смещений - 66. Перед размерами - B9. Есть ещё какие-то BF и E8.
    Если предположить, что размер записи о шрифте 1Eh, то относящееся к крупному шрифту выглядит так:
    Код:
    BE [B]55 05[/B] 66 BF 9C 53 00 00 B9 B6 0F E8 33 07 BE 23 86 66 BF 00 30 00 00 B9 00 20 E8 1A 07
    Здесь однозначно идентифицировано только 55 05, это 555 - смещение большого шрифта.

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

    Одно могу сказать точно - ни в какой кодировке, сохраняющей нормальную алфавитную последовательность букв (в смысле, в шрифте и кодах букв после A будет B, а потом C, а не что-то иное) текстов брифингов в WOE.RSC нет. WOE.RSC - псевдоархив, файлы при упаковке в него не сжимаются, следовательно, относительный поиск легко осуществлять прямо в нём. Про относительный поиск можно прочесть тут: http://habrahabr.ru/post/140930/
    Там будет раздел "Определение кодировки текста". Думаю, что в нашем случае, относительный поиск в WOE.RSC с помощью чего-то типа Translhextion - самое то.

    Однако, даже относительный поиск не находит ничего. Т.е. текст либо сжат, либо он в какой-то кодировке, не соблюдающей алфавитную последовательность. Offtop
    Такую "неалфавитную" кодировку я видел только раз - в одном из файлов (missions.bin) игры Trans http://www.old-games.ru/forum/showthread.php?t=32487
    В этом файле коды символов были "зеркальными", т.е. 00h соответствовало FFh, а коду FEh - 01h. "Зеркальный" код символа высчитывался по формуле FFh минус исходный код символа.

    Но Trans появился намного позднее, не думаю, что в нашем случае будет что-то подобное. Скорее всего, текст просто сжат.
     
    compart, WERTA и kreol нравится это.
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление