Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/savannstm/rvpacker-txt-rs
A CLI tool that allows you to parse RPG Maker MV/MZ games' text to .txt files and write them back
https://github.com/savannstm/rvpacker-txt-rs
cli cli-app cli-application json-parser rpg-maker rpg-maker-mv rpg-maker-mz rpg-maker-vx rpg-maker-vx-ace rpg-maker-vxace rpg-maker-xp rust rust-application
Last synced: about 1 month ago
JSON representation
A CLI tool that allows you to parse RPG Maker MV/MZ games' text to .txt files and write them back
- Host: GitHub
- URL: https://github.com/savannstm/rvpacker-txt-rs
- Owner: savannstm
- License: wtfpl
- Created: 2024-02-16T19:13:34.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-10-23T17:54:06.000Z (2 months ago)
- Last Synced: 2024-10-24T02:10:37.575Z (about 2 months ago)
- Topics: cli, cli-app, cli-application, json-parser, rpg-maker, rpg-maker-mv, rpg-maker-mz, rpg-maker-vx, rpg-maker-vx-ace, rpg-maker-vxace, rpg-maker-xp, rust, rust-application
- Language: Rust
- Homepage:
- Size: 104 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-ru.md
- License: LICENSE.md
Awesome Lists containing this project
README
# rvpacker-txt-rs
## Основная информация
Этот инструмент предназначен для чтения файлов RPG Maker игр в .txt файлы и записывания их обратно в изначальную форму.
Своё имя этот инструмент наследует от оригинального инструмента `rvpacker`, который был создан ещё для тех версий RPG Maker, что не использовали .json файлы, и который парсил файлы в YAML. В данный момент, репозиторий rvpacker удалён либо скрыт, а страница его автора также удалена.
Устаревший инструмент с тем же функционалом, написанный на Ruby, можно найти в [репозитории rvpacker-txt](https://github.com/savannstm/rvpacker-txt).
[Графический интерфейс](https://github.com/savannstm/rpgmtranslate), позволяющий удобно редактировать обработанные файлы (а также автоматически парсящий нераспарсенные игры, когда вы выбираете их папку) (и вы также можете легко записывать файлы обратно в изначальный вид одним нажатием кнопки).
## Формат выходных файлов
`rvpacker-txt-rs` парсит весь оригинальный текст из файлов игры, и помещает его на каждую линию текстового файла. Все переносы линий (переносы строк, новые линии, `\n`) заменяются на символы `\#`.
В конце каждой оригинальной строки, программа вставляет символы `<#>`. Это - разделитель, после которого должен начинаться переведённый текст. Удаление этого разделителя или нарушение его символов может привести к ошибкам, или хуже, неопределённому поведению программы. **Помните: ваш переведённый текст всегда должен начинаться после разделителя `<#>`.**Для примера, как правильно переводить .txt файлы, обратитесь к моему [Русскому переводу на Fear & Hunger 2: Termina](https://github.com/savannstm/fh2-termina-translation).
## Установка
Скачать бинарные файлы можно в разделе Releases.
Файлы с расширением .exe предназначены для Windows x64, в то время как файлы без расширения предназначены для Linux x64.
## Использование
Получить справку по использованию можно, вызвав `rvpacker-txt-rs -h`.
```text
Инструмент, позволяющий парсить текст из файлов RPG Maker XP/VX/VXAce/MV/MZ игр в .txt файлы, а затем записывать их
обратно в совместимые файлы.Использование: rvpacker-txt-rs КОМАНДА [ОПЦИИ]
Команды:
read
Парсит файлы из папки "original" или "data" ("Data") входной директории в папку "translation" выходной
директории.
write
Записывает переведенные файлы, используя исходные файлы из папки "original" или "data" ("Data") входной
директории, применяя текст из .txt файлов папки "translation", выводя результаты в папку "output" выходной
директории.
migrate
Переносит проекты версий v1/v2 в формат v3. Примечание: названия карт в версии 3 реализованы по-другому,
поэтому вам следует выполнить read --append после переноса, а затем вставить переведенные названия карт рядом
с комментариями Mapxxx.json, которые содержат оригинальное название карты.Опции:
-i, --input-dir <ВХОДНОЙ_ПУТЬ>
При чтении: Входная директория, содержащая папку "original" или "data" ("Data") с оригинальными файлами игры.
При записи: Входная директория, содержащая папку "original" или "data" ("Data") с оригинальными файлами игры,
а также папку "translation" с .txt файлами перевода.
-o, --output-dir <ВЫХОДНОЙ_ПУТЬ>
При чтении: Выходная директория, где будет создана папка "translation" с .txt файлами перевода.
При записи: Выходная директория, где будет создана папка "output" с подпапками "data" ("Data") и/или "js",
содержащими игровые файлы с переведённым текстом из .txt файлов.
--disable-processing <ИМЕНА_ФАЙЛОВ>
Не обрабатывает указанные файлы.
Пример: --disable-processing=maps,other,system
[Разрешённые значения: maps, other, system, plugins]
[Также: no]
-r, --romanize
Если вы парсите текст из японской игры, содержащей символы вроде 「」, являющимися обычными японскими кавычками,
программа автоматически заменяет эти символы на их европейские эквиваленты. (в данном случае, '')
--maps-processing-mode <РЕЖИМ>
Как обрабатывать карты.
default - Игнорировать дубликаты всего ранее встреченного текста.
separate - Для каждой новой карты, обновлять список ранее встреченного текста.
preserve - Разрешить все дубликаты текста.
[Разрешённые значения: default, separate, preserve]
[Значение по умолчанию: default]
[Также: maps-mode]
--disable-custom-processing
Отключает использование индивидуальных способов обработки текста, имплементированных для некоторых игр. Этот
флаг будет автоматически применён при записи, если текст игры был прочитан с его использованием.
[Также:
no-custom]
-l, --language <ЯЗЫК>
Устанавливает локализацию инструмента на выбранный язык.
Пример: --language en
[Разрешённые значения: en, ru]
--log
Включает логирование.
-h, --help
Выводит справочную информацию по программе либо по введёной команде.
```Например:
`rvpacker-txt-rs read --input-dir "E:/Documents/RPGMakerGame"` распарсит текст игры в папку `translation` указанной директории.
`rvpacker-txt-rs write --input-dir "E:/Documents/RPGMakerGame"` запишет перевод из \_trans файлов папки `translation` в совместимые файлы в папке `output`.
Инструмент не парсит текст из файла plugins.js, так как является очень затруднительным вычленить отображаемый в игре текст из плагинов.
## Лицензия
Репозиторий лицензирован под [WTFPL](http://www.wtfpl.net/).
Это означает, что вы можете безнаказанно использовать и модифицировать программу в каком угодно виде. Вы можете делать всё, что захотите.