Воспользуйтесь инструментом для командной строки, либо графическим интерфейсом.
Для компиляции вам понадобятся непосредственно сами оригинальные файлы игры. Вы должны создать папку original
рядом с папкой translation
, и поместить туда все игровые .json
файлы.
Вы можете взять оригинальные .json
файлы игры по пути Fear & Hunger 2 Termina/www/data
. Вы также можете использовать любые модифицированные .json
файлы, до тех пор пока они НЕ меняют текст игры. Т. е. моды, меняющие только техническую часть игры, например багфиксы.
В случае использования файлов, меняющих текст игры, можно использовать команду rvpacker-txt-rs read --append --ignore
, чтобы прочитать недостающие строки в .txt
файлы, а затем перевести их.
После создания папки original
с .json
файлами, запустите консольную команду rvpacker-txt-rs write
.
После этого готовые файлы с переводом появятся в директории output
. Скопируйте их в папку www
с заменой.
Этот скрипт корректно запишет все ассеты перевода (текст, картинки) в zip
файл в директории output
(НИЧЕГО НЕ НАДО ДЕЛАТЬ РУКАМИ).
Для запуска скрипта нужен рантайм JavaScript Bun. После его установки, необходимо скачать зависимости с помощью bun i
, затем запустить скрипт с помощью bun run write.ts
и дождаться выполнения.
В подпапках этой директории хранятся .psd
файлы с переведёнными картинками игры. Вы можете открыть их в любом подходящем приложении (Photoshop, Krita), и распоряжаться ими на своё личное усмотрение.
В этой директории хранятся файлы локализации в формате .txt
.
В каждом файле содержатся строки с оригинальным текстом и разделителем <#>
, после которого начинается переведённый текст.
В этой директории хранятся модифицированные или кастомные плагины в формате .js
. Файлы полностью написаны на языке программирования JavaScript.
В тексте вы можете встретить множество различных escape-последовательностей - выделим уникальные для этого репозитория.
\#
означает перенос линии. Самоисчёрпывающее описание.
\x[a|b]
- эта последовательность будет полностью заменена либо на a
(если главный герой мужского пола), либо на b
(если главный герой женского пола) во время отображения сообщений.
\dX[a|b|c]
- X
в этой последовательности означает любое число, отсылающее к ID некой переменной. Эта последовательность будет полностью заменена на a
(если значение переменной равно числу один), b
(например, если значение переменной равно числу 2-4), c
(например, если значение переменной равно 5-9). Например: 1 чай, 2 чая, 5 чаёв. Вставляйте необходимые склонения в зависимости от числа.
\ps[a||b(||c)]
- эта последовательность будет полностью заменена на a
, если кол-во членов группы (исключая гулей и козла) равно двум, на b
если кол-во членов группы выше двух, и опционально на c
(если c
присутствует) если в группе только главный герой.
\Dx[y]
- x
в этой последовательности означает номер падежа по списку. 1 - и. п., 2 - р. п., 3 - д. п., 4 - в. п., 5 - т. п., 6 - п. п. y
означает айди актора (персонажа). Последовательность будем заменена на имя персонажа, склонённое в соответствии с падежем.
Прочие escape-последовательности являются частью Yanfly Message Core, и подробно описаны здесь.
Репозиторий лицензирован под WTFPL.