Русская версия Dwarf Fortress: различия между версиями
Xpehwam (обсуждение | вклад) |
|||
Строка 43: | Строка 43: | ||
Предпринимавшиеся ранее попытки добавить русский язык в интерфейс игры каждый раз наталкивались на серьёзные проблемы. | Предпринимавшиеся ранее попытки добавить русский язык в интерфейс игры каждый раз наталкивались на серьёзные проблемы. | ||
[[Image:Ruslockit1.png|400px|thumb|Попытка русификации от LockIt]] [[Image:Ruslockit2.png|400px|thumb|Ещё один пример русификации от LockIt]] [[Image:Rusmialax1.jpg|400px|thumb|Пример русификации меню от mialax]] | [[Image:Ruslockit1.png|400px|thumb|Попытка русификации от LockIt]] [[Image:Ruslockit2.png|400px|thumb|Ещё один пример русификации от LockIt]] [[Image:Rusmialax1.jpg|400px|thumb|Пример русификации меню от mialax]] | ||
{{Цитата|автор=[[Участник:LockIt|LockIt]], участник вики-дварфии [http://forum.dfwk.ru/index.php/topic,204.msg2642.html#msg2642]| | |||
Итак, что я сделал:<br> | |||
Во-первых, берёшь тайлсет, заменяешь латинские буквы на русские. ABCDEF.. на АБВГДЕ, или лучше на АБЦДЕФ.., чтоб легче было потом подстановки делать.<br> | |||
Во-вторых, в raw файлах переводишь параметр имени. Т.е. там написано, к примеру, "hammer", мы меняем это на "molot", в игре это отображается как "молот", т.к. из-за первого шага буквы:<br> | |||
m — это м<br> | |||
o — o<br> | |||
l — л<br> | |||
o — o<br> | |||
t — т<br> | |||
получается "молот".<br> | |||
Таким образом я перевел больше половины всех файлов, в частности материалы, камни, руду. Появилось одно "но". Остальная половина всего текста находится в exe'шнике. Текст оттуда модифицируется только HEX редактором и, насколько я понял, переведенный вариант слова должен содержать столько же букв, сколько изначальное английское. Т.е. "red" должен быть переведен так, чтобы содержать только три буквы.<br><br> | |||
Второе "но" — зачем? Тут есть те, кто не знают английский?) К слову, переводят обычно только финальные версии игры.}} | |||
{{Цитата|автор=комментарий от участника '''mialax''' на форуме| | |||
Я делал перевод с помощью своего тайлсета на основе символьной графики, так как стандартный не содержит кириллицы. Можно сделать и графический вариант, но это будет не просто. Вообще графические версии приводят к извращениям: буква "О" ужасно выглядит (потому что она используется для прорисовки стен), точка тоже не лучше. Приходится разрываться между красотой графики и текста. В русской версии эта дилемма будет острее, так как надо будет впихнуть недостающие символы. Анимации дварфов и других существ это всё не касается. | Я делал перевод с помощью своего тайлсета на основе символьной графики, так как стандартный не содержит кириллицы. Можно сделать и графический вариант, но это будет не просто. Вообще графические версии приводят к извращениям: буква "О" ужасно выглядит (потому что она используется для прорисовки стен), точка тоже не лучше. Приходится разрываться между красотой графики и текста. В русской версии эта дилемма будет острее, так как надо будет впихнуть недостающие символы. Анимации дварфов и других существ это всё не касается. | ||
В игре есть возможность (я ей никогда не пользуюсь) указывать менеджеру командовать проведением определённых работ. Например построить железные стулья. Таких работ очень много и чтобы не искать нужную в списке, можно написать текстом. Если предметы будут называться по-русски, то ничего не получится. | В игре есть возможность (я ей никогда не пользуюсь) указывать менеджеру командовать проведением определённых работ. Например построить железные стулья. Таких работ очень много и чтобы не искать нужную в списке, можно написать текстом. Если предметы будут называться по-русски, то ничего не получится.<br><br> | ||
1) В общем это выглядит так:<br> | |||
Есть словарь для raw и для экзешника (1-я строка — переводимое выражение, 2-я — перевод).<br> | |||
В начале прога в этих словарях заменяет все русские буквы, на символы, коды которых соответствуют тайлу изображающему эту букву.<br> | |||
Далее программа проходит по всем raw файлам и заменяет найденые выражения на перевод. Также переводится и экзешник.<br> | |||
2) Перевести можно почти всё. Меню не проблема.<br> | |||
Мастерская ремесленника вызывает проблемы, так как слово формируется из разных источников.<br> | |||
Статус существ тоже не выходит. Будет получаться что-то вроде "Her волосы is бежевый". Где это описывается я так и не нашёл.<br> | |||
Писать по русски не получится (теоретически это можно устранить, но сложно), что усложнит выбор заданий через менеджера.<br> | |||
Наверняка ещё много чего встретится.<br> | |||
3)Во-первых необходимо составлять словари. Для файлов из папки raw это не сложно, хотя объёмы большие. Для экзешника это сложней. Нужно следить, чтобы не перевелось лишнее (с Table это очень актуально).<br><br> | |||
Основные проблемы:<br> | |||
* Часто меняются версии, так перевод должен быть автоматизирован.<br> | |||
* При переводе экзешника русские слова не должны содержать больше символов, чем английские. <br> | |||
* Кое-что вообще вряд ли возможно перевести.<br> | |||
}} | |||
Комментарий от '''Anruin''' на форуме | {{Цитата|автор=Комментарий от '''Anruin''' на форуме| | ||
Они перевели только тайлсет и, возможно, содержимое файлов данных, текстовых. ЕХЕ-файл они, скорее всего, не правили. Потому что если изменять длину строк, нужно править отступы вызываемых функций, тех же строк, данных и ещё кучу всего, что в принципе практически нереально. Вставил один байт — и всё, ехе не запускается. <br><br> | |||
Они перевели только тайлсет и, возможно, содержимое файлов данных, текстовых. ЕХЕ-файл они, скорее всего, не правили. Потому что если изменять длину строк, нужно править отступы вызываемых функций, тех же строк, данных и ещё кучу всего, что в принципе практически нереально. Вставил один байт — и всё, ехе не запускается. | |||
Дело не только в выносе текста за рамки exe-файла, чего так некоторые ждут от разработчика, но также и в алгоритмах построения предложений. Подумал, и понял, что многое перевести правильно не удастся, в частности, описания существ, мыслей дворфов. В русском грамматика отличная от английского. His eyes are green — Его глаза зеленого цвета. Как пример. Для перевода нужен новый алгоритм построения предложений. | Дело не только в выносе текста за рамки exe-файла, чего так некоторые ждут от разработчика, но также и в алгоритмах построения предложений. Подумал, и понял, что многое перевести правильно не удастся, в частности, описания существ, мыслей дворфов. В русском грамматика отличная от английского. His eyes are green — Его глаза зеленого цвета. Как пример. Для перевода нужен новый алгоритм построения предложений. | ||
}} |
Версия от 20:50, 31 января 2014
Русская версия Dwarf Fortress, миф или реальность? Этот вопрос занимает умы многих и каждый день в поисковые системы идут запросы с данным словосочетанием. В данный момент идёт работа над русификатором, но русифицированная версия игры все еще нуждается в доработке и тестировании.
Текущая разработка
В настоящее время проводится очередная, первая более-менее успешная попытка русификации игры. В отличие от предыдущих попыток, в этот раз над проектом работает не один человек, и принять участие в переводе может любой желающий, поэтому есть вероятность, что дело будет доведено до конца.
Что уже сделано:
- Добавлена поддержка кириллицы
- Создана программа-патчер, позволяющая заменять текст, вшитый в exe-файл, в том числе и на более длинный
- Текст из exe-файла извлечен и в основном переведен
- Начерно переведен текст из raw-файлов.
- Исправлен вывод русского текста на некоторых экранах (таких как "Мысли и предпочтения", например) с помощью модифицированного SDL.dll.
- Добавлена возможность перевода текста не по блокам из Dwarf Fortress.exe. Обо всех встреченных "корявостях" перевода просьба сообщать сюда или на форуме.
- Добавлена возможность ввода русского текста
Что нужно сделать:
- Добавить перевод в верхний регистр первых букв названий и имен на русском
- Реализовать автоматизированную замену только нужных частей raw-файлов вместо замены файлов целиком - в процессе.
В дальней перспективе:
- Добавить возможность менять последовательность составных блоков текста, а в идеале - возможность самим менять и добавлять такие блоки.
- Добавить поддержку русского языка в утилиты
- Уже ведется работа по русификации утилиты Dwarf Therapist (другая версия), добавлению поддержки русского языка утилитой Soundsence.
- Поддержка систем Linux, Mac OS
- Русские версии сборок Lazy Newb Pack и MASTERWORK Dwarf Fortress
- Начата разработка русской версии Masterwork DF. Запущена соответствующая тема на форуме.
Ссылки
- Скачать русификатор можно здесь.
- Перевод ведётся здесь.
- Обсуждение ведётся на forum.dfwk.ru в этой теме.
- Ссылка на русскую версию ☼MASTERWORK☼ DF здесь (версия перевода ранняя)
Предыдущие попытки русификации
Предпринимавшиеся ранее попытки добавить русский язык в интерфейс игры каждый раз наталкивались на серьёзные проблемы.
Итак, что я сделал: |
Я делал перевод с помощью своего тайлсета на основе символьной графики, так как стандартный не содержит кириллицы. Можно сделать и графический вариант, но это будет не просто. Вообще графические версии приводят к извращениям: буква "О" ужасно выглядит (потому что она используется для прорисовки стен), точка тоже не лучше. Приходится разрываться между красотой графики и текста. В русской версии эта дилемма будет острее, так как надо будет впихнуть недостающие символы. Анимации дварфов и других существ это всё не касается.
В игре есть возможность (я ей никогда не пользуюсь) указывать менеджеру командовать проведением определённых работ. Например построить железные стулья. Таких работ очень много и чтобы не искать нужную в списке, можно написать текстом. Если предметы будут называться по-русски, то ничего не получится.
|
Они перевели только тайлсет и, возможно, содержимое файлов данных, текстовых. ЕХЕ-файл они, скорее всего, не правили. Потому что если изменять длину строк, нужно править отступы вызываемых функций, тех же строк, данных и ещё кучу всего, что в принципе практически нереально. Вставил один байт — и всё, ехе не запускается. |