Dungeon Odyssey (мастерская)
Эта статья описывает работу с ресурсами игры Aaron Hall's Dungeon Odyssey.
Общее
Практически полная подробная информация по содержимому файлов игры есть в официальном руководстве "Modding Dungeon Odyssey" (файл "ModdingDungeonOdyssey.pdf"). Однако значительная часть текстовых фраз, связанных с пользовательским интерфейсом и механикой игры, размещена внутри запускаемого файла "DungOdy.exe".
Игра использует однобайтовую кодировку символов, визуальное отображение которых (шрифт) определено наименованиями шрифтов, размещенных в файлах с именами "Fonts\GOUDOS.TTF" и "Fonts\GOUDOSB.TTF" или установленных в ОС (приоритет у последнего).
Текстовые фразы, включая наименования шрифтов, размещенные в исполняемом файле "DungOdy.exe" ограничены по длине. Каждой фразе предшествует 4 байта, определяющие ее длину, и каждая фраза должна завершаться несколькими байтами (от одного до четырех, не учитывается в длине) с нулевыми значением (00h), количество которых обеспечивает целочисленную кратность четырем длины фразы с этими байтами.
Например, фраза, длиной 4 символа:
5DDB4:|04 00 00 00|47 6F 6C 64|00 00 00 00| 5DDB4:| | G o l d| | 5DDB4:| длина 4 | фраза | нули | 5DDB4:| | кол-во кратно четырем |
, может быть расширена или сокращена и заменена на фразы длиной от 0 до 7 символов:
5DDB4:|06 00 00 00|C7 EE EB EE F2 EE|00 00| 5DDB4:| | З о л о т о| | 5DDB4:| длина 6 | фраза |нули | 5DDB4:| | кол-во кратно четырем |
Другой пример, фраза, длиной 11 символов:
58464:|0B 00 00 00|48 69 67 68 20 53 63 6F 72 65 73|00| 58464:| | H i g h S c o r e s| | 58464:| длина 11 | фраза |нули| 5DDB4:| | количество байтов кратно четырем |
, может быть только сокращена и заменена на фразы длиной от 0 до 11 символов:
58464:|07 00 00 00|D0 E5 EA EE F0 E4 FB|00 00 00 00 00| 58464:| | Р е к о р д ы| | 58464:| длина 7 | фраза | нули | 5DDB4:| | количество байтов кратно четырем |
Общее совпадение количества байтов, выделенных в файле на фразу, необходимо обеспечивать всегда.
Оригинальный шрифт имеет крайне маленький размер символов, что позволяло умещать достаточно длинные фразы в небольших областях экрана, но не имеет русских символов и подобрать аналог из существующих шрифтов оказалось крайне сложно. В переводе, выпущенным Бюро переводов Old-Games.RU, оригинальные шрифты с наименованиями "Goudy Old Style" и "Goudy Old Style Bold" заменены шрифтами с наименованиями "GOST 2.304 Bold" и "GOST 2.304 Bold" (по длине фраз все уместилось).
549AC: Goudy Old Style 549AC: GOST 2.304 Bold
549C8: Goudy Old Style Bold 549C8: GOST 2.304 Bold
Важно отметить, что обычное начертание шрифта в игре из-за маленьких размеров символов существенно искажало их, делая в некоторых слогах сложночитаемыми. Эта проблема была элегантно решена использованием утолщенного начертания шрифта на месте обычного.
| Aaron Hall's Dungeon Odyssey — связанные статьи | ||||
| Основная статья | Крупным планом | Переводы | Обложки | Технические вопросы |