Discussion Реорганизация текстового контента в другой формат

Автор темы #1
Дата рег
2 Июн 2013
Сообщения
63
Симпатии
18
Очень хочется автоматизировать и упростить процедуру перевода текстового контента (спасение утопающих силами самих утопающих) на множество языков, и в перспективе (когда-нибудь) реализовать CI локализации в игру посредством таких сервисов, как Crowdin, Transifex ну или накрайняк - Pootle. Для этого нужен какой-то понятный (для этих систем) формат текстового контента типа PO/json. Конечно, можно написать конверторы fodlg/msg <-> po для импорта/экспорта данных (чем я и займусь, если что вдруг). Но на всякий случай спрошу, не планируется ли в свете разработки LF реорганизация текстового контента/перевод его в другой формат?
 
Автор темы #3
Дата рег
2 Июн 2013
Сообщения
63
Симпатии
18
Поддерживаю! Формат переводов fallout'а морально устарел.
PS: Лично предпочел бы переводы в yaml-формате ( https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/ru.yml ), хотя это конечно же дело вкуса.
Я подозреваю, что ты бы предпочел всех заставить на рубях писать :)
 
Автор темы #4
Дата рег
2 Июн 2013
Сообщения
63
Симпатии
18
Конкретизирую пожелания:
  1. Было бы круто, если бы был общий языковой файл для каждого типа языкового контента (кроме диалогов) для всего языкового контента или условия, позволящие нормально хранить языковой контент таким образом (сейчас для каждого объекта - свой файл). К примеру - файл с описаниями локаций, файл с описаниями итемов, криттеров и т.д.
  2. Если про отдельные файлы для каждого языка не может быть и речи (это идеальный вариант) - нужна так же локаль по-умолчанию, и если в языковом файле нет нужной секции или она не полная (к примеру russ), SDK мог бы в этом конкретном кейсе брать языковой контент или аналог фразы из локали по умолчанию (к примеру engl).
  3. Если бы ланг файлы были в каком-нибудь распространенном формате и не содержали бы посторонних секций (только языковой контент) - это вообще была бы фантастика.
Берешь Crowdin, заливаешь проект, привлекаешь агенство или пользователей -> перевод на китайский за 2 дня.

Сейчас имеется куча работы - перевод разными пользователями левой пяткой и порой одних и тех же фраз по-разному, отсутствие автоматизации и полный рассинхрон (отсутствие трекинга, кто что перевел, а что нет), необходимость работать в редакторе, иметь файлы и т.д.
 
Дата рег
21 Окт 2012
Сообщения
173
Симпатии
79
В личку пришло:
Мне походу пермабан выдали на fonline.ru так что напишу тут. зачем велосипедить с json и yaml ? Tab10id предложи цвету запилить в формате tmx 1.4b+. По заявлениям из вики "Последняя версия этого формата — 1.4b позволяет восстанавливать исходные документы и их перевод из файла TMX." Тоесть получится сразу текст игры+память перевода в одном флаконе
Лично мне кажется эта идея не подходящей для игрового движка, но..
 
Автор темы #6
Дата рег
2 Июн 2013
Сообщения
63
Симпатии
18
В личку пришло:


Лично мне кажется эта идея не подходящей для игрового движка, но..
Я в данный момент начал писать конвертер fodlg <-> json, но все-равно боль ощущается и пукан стремится улететь в дальние края. Основная боль не в том, что языковой контент игры хранится в формате, несовместимом с известными сервисами перевода, а в том, что нужно писать не простые, а жестяные костыли с построчным чтением, чтобы привести этот контент в такой формат. В новых ревизиях все фразы разнесены по файлам итемов и т.д., так что нужен механизм, который будет эти фразы сначала "выколупывать" в json, а после перевода "заколупывать" обратно в файлы итемов и т.д. Конечно, когда ты только разрабатываешь игру и работы над локализацией не ведутся или ведутся левой пяткой - очень удобный вариант. Если тебе нужно перевести уже существующий контент на пару языков используя краудсорсинг или агенство - это полный трындец.
 
Дата рег
4 Авг 2016
Сообщения
162
Симпатии
30
так что нужен механизм, который будет эти фразы сначала "выколупывать" в json, а после перевода "заколупывать" обратно в файлы итемов и т.д.
А в чем сложность-то? Сотня-другая строк. Напиши парсер и рекурсивно обрабатывай все *.foitem'ы.