12 постов
Флудилка перезагрузка
Agarest: Generations of War 1 & Zero
Специально для тех, кому по каким-либо причинам неудобно во 2-й флудилке --'
Ищем переводчиков Agarest: Generations of War 1 & Zero
Начат перевод Agarest Zero.
Крайне желателен редактор для правки текста к 1-й части.
Не лишними будут и новые лица для перевода и начитки).
Крайне желателен редактор для правки текста к 1-й части.
Не лишними будут и новые лица для перевода и начитки).
Готово Agarest: Generations of War 1 & Zero
Выложена первая версия русификатора диалогов.
Ссылки смотреть в блоге или в теме на зог.
Комментарии и предложения для улучшения качества текста принимаются.
Русификатор со временем будет обновляться.
Ссылки смотреть в блоге или в теме на зог.
Комментарии и предложения для улучшения качества текста принимаются.
Русификатор со временем будет обновляться.
Отзывы, пожелания.
Agarest: Generations of War 1 & Zero
Сюда можно писать пожелания по улучшению перевода (с указанием ссылок на то, что и как имеет смысл улучшить).
Тема создана по причине того, что комменты к фрагментам не всегда легко обнаружить, а сайт о них оповещает только создателей фрагментов.
Ссылки выкладывать в виде ссылок на сами фрагменты текста перевода. Пожелания можно писать в комментариях к фрагментам, а сюда кидать только сами ссылки.
Тема создана по причине того, что комменты к фрагментам не всегда легко обнаружить, а сайт о них оповещает только создателей фрагментов.
Ссылки выкладывать в виде ссылок на сами фрагменты текста перевода. Пожелания можно писать в комментариях к фрагментам, а сюда кидать только сами ссылки.
Всякое Agarest: Generations of War 1 & Zero
Перевод близится к завершению.
Начато составление программы-русификатора.
Разыскиваются опытные редакторы для доведения текста перевода до ума.
Начато составление программы-русификатора.
Разыскиваются опытные редакторы для доведения текста перевода до ума.
О том как работать с игровыми ресурсами...
Agarest: Generations of War 1 & Zero
Пишу на всякий случай. Вдруг что...
Хотя в теме на зог я уже более-менее подробно расписывал процесс, но пусть будет и тут.
Ресурсы игры потрошатся прогой QuickBMS.
Для этого берётся игровой архив вида STT.bra, где TT-номер архива. Копируется куда-нибудь в папку с прогой. После чего создается 2 текстовых файла с произвольным названием.
В один из них кидается скриптовый текст:
comtype deflate
goto 0x8
get datasize long
get files long
math datasize + 0x8
goto datasize
math TMP = files
math TMP – 1
for i = 0 < files
if i != TMP
get name BASENAME
get zsize long
math zsize – 0x10
get size long
get unk short
get unk2 short
get offset long
math offset + 0x10
getct filename string 0x00
strlen filename_size filename
math filename_size + 1
math unk + 0x8
math unk – filename_size
getdstring dummy unk
string name + «/»
string name + filename
if zsize != size
clog name offset zsize size
else
log name offset size
endif
else
get name BASENAME
get zsize long
math zsize – 0x10
get size long
get unk short
get unk2 short
get offset long
math offset + 0x10
getct filename string 0x00
string name + «/»
string name + filename
if zsize != size
clog name offset zsize size
else
log name offset size
endif
endif
next i
в другой:
comtype deflate
idstring «PDA\x00»
get VERSION long
get TABLEOFFSET long
get FILES long
goto TABLEOFFSET
for i = 0 < FILES
get DATETIME longlong
get ZSIZE long
get SIZE long
get NSIZE short
get UNKNOWN short
get OFFSET long
getdstring NAME NSIZE
set COMPRTEST = ZSIZE
math COMPRTEST -= SIZE
math ZSIZE -= 16
math OFFSET += 16
if COMPRTEST == 16
log NAME OFFSET SIZE
else
clog NAME OFFSET ZSIZE SIZE
endif
next i
Как можно легко заметить 2-й скрипт короче и оптимальнее, но в 1-м скрипте содержимое архивов извлекается в папку, одноименную архиву (что удобнее).
Для извлечения нужно запустить quickbms.exe, выбрать текстовый файл с 1-м скриптом, выбрать игровой архив и выбрать папку куда извлекать (можно оставить ту же папку, где хранится сама прога, т.к. этот скрипт создаст папку куда будут извлекаться файлы). Если выбрать 2-й скрипт, то для него надо создавать папку предварительно, либо в процессе выбора места извлечения, иначе будет всё извлечено по умолчанию в папку с прогой.
Так зачем же нужен в таком случае 2-й скрипт, может спросить кто-нибудь... Он нужен для правильной запаковки файлов обратно в игровые архивы.
Для этого необходимо создать ярлык проги и приписать в конце -r -w
Должно получиться как-то так: D:\agarest_rus\quickbms\quickbms.exe -r -w
или: «D:\agarest_rus\quickbms\quickbms.exe» -r -w
Запаковка происходит так: запускается созданный ярлык, выбирается текстовый файл со 2-м скриптом, выбирается архив и файл, который нужно запаковать (если рядом будут лежать несколько файлов из этого архива, то будут запакованы они все.
В случае несовпадения размеров исходного и нового прога спросит что делать. Нужно написать force и кликнуть на enter. Запаковка может быть медленной, запаситесь терпением (особенно если запаковываете текстуры). Для ускорения процесса измененные файлы, которые нужно запаковать лучше перенести в другую папку от остальных (чтобы прога не запаковывала всё – и измененные и неизменные).
Файлы диалогов хранятся в архиве S10; файлы игровых сообщений и другого текста в архивах S3 и S5. Нужные для перевода файлы я уже выбрал и выложил ссылки в теме на зог.
Архив с игровыми менюшками для перерисовки там же. Текст на который нужно перевести в архиве по ссылке http://yadi.sk/d/mcF-x1AQDAxyH (перевода меню обучения там пока нет). В одном файле слегка поменял перевод, но забыл добавить в архив http://savepic.net/3977187m.jpg
Для работы с dds текстурами нужен плагин для фотошопа, найти его просто.
параметры для сохранения текстур: http://savepic.net/3947490m.jpg
Хотя в теме на зог я уже более-менее подробно расписывал процесс, но пусть будет и тут.
Ресурсы игры потрошатся прогой QuickBMS.
Для этого берётся игровой архив вида STT.bra, где TT-номер архива. Копируется куда-нибудь в папку с прогой. После чего создается 2 текстовых файла с произвольным названием.
В один из них кидается скриптовый текст:
comtype deflate
goto 0x8
get datasize long
get files long
math datasize + 0x8
goto datasize
math TMP = files
math TMP – 1
for i = 0 < files
if i != TMP
get name BASENAME
get zsize long
math zsize – 0x10
get size long
get unk short
get unk2 short
get offset long
math offset + 0x10
getct filename string 0x00
strlen filename_size filename
math filename_size + 1
math unk + 0x8
math unk – filename_size
getdstring dummy unk
string name + «/»
string name + filename
if zsize != size
clog name offset zsize size
else
log name offset size
endif
else
get name BASENAME
get zsize long
math zsize – 0x10
get size long
get unk short
get unk2 short
get offset long
math offset + 0x10
getct filename string 0x00
string name + «/»
string name + filename
if zsize != size
clog name offset zsize size
else
log name offset size
endif
endif
next i
в другой:
comtype deflate
idstring «PDA\x00»
get VERSION long
get TABLEOFFSET long
get FILES long
goto TABLEOFFSET
for i = 0 < FILES
get DATETIME longlong
get ZSIZE long
get SIZE long
get NSIZE short
get UNKNOWN short
get OFFSET long
getdstring NAME NSIZE
set COMPRTEST = ZSIZE
math COMPRTEST -= SIZE
math ZSIZE -= 16
math OFFSET += 16
if COMPRTEST == 16
log NAME OFFSET SIZE
else
clog NAME OFFSET ZSIZE SIZE
endif
next i
Как можно легко заметить 2-й скрипт короче и оптимальнее, но в 1-м скрипте содержимое архивов извлекается в папку, одноименную архиву (что удобнее).
Для извлечения нужно запустить quickbms.exe, выбрать текстовый файл с 1-м скриптом, выбрать игровой архив и выбрать папку куда извлекать (можно оставить ту же папку, где хранится сама прога, т.к. этот скрипт создаст папку куда будут извлекаться файлы). Если выбрать 2-й скрипт, то для него надо создавать папку предварительно, либо в процессе выбора места извлечения, иначе будет всё извлечено по умолчанию в папку с прогой.
Так зачем же нужен в таком случае 2-й скрипт, может спросить кто-нибудь... Он нужен для правильной запаковки файлов обратно в игровые архивы.
Для этого необходимо создать ярлык проги и приписать в конце -r -w
Должно получиться как-то так: D:\agarest_rus\quickbms\quickbms.exe -r -w
или: «D:\agarest_rus\quickbms\quickbms.exe» -r -w
Запаковка происходит так: запускается созданный ярлык, выбирается текстовый файл со 2-м скриптом, выбирается архив и файл, который нужно запаковать (если рядом будут лежать несколько файлов из этого архива, то будут запакованы они все.
В случае несовпадения размеров исходного и нового прога спросит что делать. Нужно написать force и кликнуть на enter. Запаковка может быть медленной, запаситесь терпением (особенно если запаковываете текстуры). Для ускорения процесса измененные файлы, которые нужно запаковать лучше перенести в другую папку от остальных (чтобы прога не запаковывала всё – и измененные и неизменные).
Файлы диалогов хранятся в архиве S10; файлы игровых сообщений и другого текста в архивах S3 и S5. Нужные для перевода файлы я уже выбрал и выложил ссылки в теме на зог.
Архив с игровыми менюшками для перерисовки там же. Текст на который нужно перевести в архиве по ссылке http://yadi.sk/d/mcF-x1AQDAxyH (перевода меню обучения там пока нет). В одном файле слегка поменял перевод, но забыл добавить в архив http://savepic.net/3977187m.jpg
Для работы с dds текстурами нужен плагин для фотошопа, найти его просто.
параметры для сохранения текстур: http://savepic.net/3947490m.jpg
Шрифт
Agarest: Generations of War 1 & Zero
Я нашёл-таки настоящий внутриигровой шрифт содержащий символы ВСЕХ основных языков мира)
Однако ж – некислую поддержку языковую разрабы сотворили ^_^
Если кто-нить используя его за основу дорисует шрифты (или докопипастит код шрифта) в нескольких файлах, то игра сможет выводить русский текст как полагается)
Однако ж – некислую поддержку языковую разрабы сотворили ^_^
Если кто-нить используя его за основу дорисует шрифты (или докопипастит код шрифта) в нескольких файлах, то игра сможет выводить русский текст как полагается)
Сверка с японским
Agarest: Generations of War 1 & Zero
Нужны кому файлы озвучки в простом формате для сверки перевода на слух, прямого перевода или иных целей (например, узнать как же звучит то или иное название местности или имя)?
О том, как выдрать текст диалогов ^_^
Agarest: Generations of War 1 & Zero
1) Берется содержимое папки S10 диалоги, предварительно выдранное мной из игровых архивов (ссылку на файлы можно найти в теме на зог).
2) Открывается каким-нибудь текстовым редактором в кодировке Западноевропейская Windows (например Windows Word предлагает сразу выбор кодировки)
3) вводится в поиск «main»
4) пролистываются страницы, следующие за найденным тегом main
5) находится текст
6) последовательно импортируется (копи-паста) куда-нить (хотя бы в текстовый файл) или сразу сюда (в одноименные главы).
7) текст находится от main до main (до конца файла, EXPORT_DATA – это не текст, если что как и всё, с _ между словами)
Инструкция создана на случай, если я не буду успевать за переводчиками) А желание переводить будет сильным ^_~
2) Открывается каким-нибудь текстовым редактором в кодировке Западноевропейская Windows (например Windows Word предлагает сразу выбор кодировки)
3) вводится в поиск «main»
4) пролистываются страницы, следующие за найденным тегом main
5) находится текст
6) последовательно импортируется (копи-паста) куда-нить (хотя бы в текстовый файл) или сразу сюда (в одноименные главы).
7) текст находится от main до main (до конца файла, EXPORT_DATA – это не текст, если что как и всё, с _ между словами)
Инструкция создана на случай, если я не буду успевать за переводчиками) А желание переводить будет сильным ^_~
максимум символов
Agarest: Generations of War 1 & Zero
Во время экспериментов с длиной строки в диалогах пришел к неприятному открытию.
Игра вылетает, если текста больше, чем было в оригинале. Если текста меньше – тоже вылет, но всегда можно недостающее заполнить пробелами или пустыми байтами.
Поэтому по возможности переводить, используя символов столько же, либо меньше чем было в оригинале.
Опытным путём нашёл путь обхода ограничения на максимум символов, теперь можно превышать количество символов оригинала на 10 (в среднем).
Заодно сделал пару интересных открытий по структуре файлов).
Максимум, который можно использовать зависит от пустых байтов рядом с текстом, обычно их можно заполнить не более чем 8-10-тью символами(15-ю в исключительных случаях). Собственно, вероятно это использовали при переводе с японского на английский.
Итого осталась только одна проблема – шрифт.
Игра вылетает, если текста больше, чем было в оригинале. Если текста меньше – тоже вылет, но всегда можно недостающее заполнить пробелами или пустыми байтами.
Поэтому по возможности переводить, используя символов столько же, либо меньше чем было в оригинале.
Опытным путём нашёл путь обхода ограничения на максимум символов, теперь можно превышать количество символов оригинала на 10 (в среднем).
Заодно сделал пару интересных открытий по структуре файлов).
Максимум, который можно использовать зависит от пустых байтов рядом с текстом, обычно их можно заполнить не более чем 8-10-тью символами(15-ю в исключительных случаях). Собственно, вероятно это использовали при переводе с японского на английский.
Итого осталась только одна проблема – шрифт.
Резюме
- Пол:
- мужчина
- Родной язык:
- русский
- С нами:
- с 7 ноября 2013 г. (4726 дней) по приглашению notabenoid
- Деятельность:
-
12819 версий перевода
с общим рейтингом 87
2576 комментариев
Карма: 1 (оценок: 1)

