Технические аспекты русификации Super Paper Mario
|
|
МегаАктиWiiст
Группа: Проверенные
Сообщений: 513
Статус: Offline
Владивосток
Пролог Уж так получилось, что в России дистрибуцией продукции Nintendo занялась не та компания... В результате, самая популярная консоль в мире вынуждена в нашей стране влачить жалкое существование, продаваясь в ничтожных количествах, без русского языка в меню, без поддержки в Интернет каналах, без русских игр, наконец! Так как консоль совершенно не популярна, то и пираты не обращают на неё никакого внимания. Иначе как объяснить полное отсутствие пиратских переводов на русский язык? Ну что ж, мы сами кузнецы своего счастья! От разговоров кое-кто перешёл к делу. Примеры [spoiler][tb] Подмена текста в игре (fork) [cl]Кириллическая подмена(1) (fork) [cl]Кириллическая подмена(2) (Фотошоп) [cl]Кириллическая подмена(3) [cl]Смешарики (Джамшут эдишн) [st] [cl] [cl] [cl] [cl] [st]Кириллица в меню игры (fork) [cl]/dev/null [cl]/dev/null [cl]/dev/null [cl]/dev/null [st] [cl][bounce]Здесь могла быть ваша реклама :)[/bounce] [cl][bounce]It could be your advertising :)[/bounce] [cl][bounce]Hier könnte Ihre Werbung sein :)[/bounce] [cl][bounce]また、広告が :)[/bounce] [/tb][/spoiler] Риторический вопрос Ну что, поддержим доброе начинание? Шрифты [spoiler][tb] Оригинальный (в обработке CityAceE) [cl]Beta-First (fork) [cl]Beta-Second (fork) [cl]Релиз (fork) [st] [cl] [cl] [cl] [/tb][/spoiler] Таблица кодов символов (dnd1) [spoiler][tb] Латинский строчный [cl]Латинский заглавный [cl]Кириллистический строчный [cl]Кириллистический заглавный [st]61=a 62=b 63=c 64=d 65=e 66=f 67=g 68=h 69=i 6A=j 6B=k 6C=l 6D=m 6E=n 6F=o 70=p 71=q 72=r 73=s 74=t 75=u 76=v 77=w 7 8=x 79=y 7A=z [cl]41=A 42=B 43=C 44=D 45=E 46=F 47=G 48=H 49=I 4A=J 4B=K 4C=L 4D=M 4E=N 4F=O 50=P 51=Q 52=R 53=S 54=T 55=U 56= V 57=W 58=X 59=Y 5A=Z [cl]61=а E0=б E1=в E2=г 67=д 65=е EB=ё E4=ж E7=з 75=и FA=й DC=к E8=л E9=м FC=н 6F=о 6E=п 70=р 63=с 6D=т EA=у FB=ф 78=х EC =ц ED=ч EE=ш EF=щ F1=ь F2=ы F3=ъ F4=э F6=ю F9=я [cl]41=А C0=Б 42=В C1=Г C2=Д 45=Е CB=Ё C4=Ж 33=З C7=И C8=Й 4b=К C9=Л 4d=М 48=Н 4f=О CA=П 50=Р 43=С 54=Т DB=У CC= Ф 58=Х CD=Ц CE=Ч CF=Ш D1=Щ D2=Ь D3=Ы D4=Ъ D6=Э D9=Ю DA=Я [/tb] Таблица составлялась для расположения букв, указанных в финальном варианте шрифта fork'a[/spoiler] Инструкции [spoiler] Quote (fork) Открыть программой Trucha Signer образ Super Paper Mario; Найти во втором партишне файл ROOT/font/papermarioset_US.bfn (у кого европейская версия, или японская papermarioset_EU.bfn и papermarioset_JP.bfn соответственно) и извлечь его; Открыть полученный файл в программе Tile Layer Pro; Поменять формат отображения View/Format/Genesis; Масштабировать изображение, нажав один раз иконку лупы со знаком "минус"; Растянуть окно с символами максимально вправо. Получится 64 колонки и вполне читаемый шрифт; Теперь можно редактировать файл и сохранять, а потом заменять с помощью Trucha Signer оригинальный на него. Тексты в SPM хранятся по адресу ROOT/msg/US/*.txt. Quote (dnd1) Открыть Trucha Signer или WII Scrubber Открыть второй раздел - PATITION(R8PP01) Заменить файлы на выложенные ниже(Заменять - Пр. клавиша->Replace): ___Шрифт - \ROOT\font\papermarioset_EU.bfn - для европейской версии(PAL) .__________\ROOT\font\papermarioset_US.bfn - для американской версии(NTSC) ___Текст первой главы - \ROOT\msg\UK\stg1.txt - для европейской версии(PAL) ._____________________\ROOT\msg\US\stg1.txt - для американской версии(NTSC) После замены кликнуть по второму разделу(PATITION(R8PP01)) - Пр. клавиша->Trucha Sign It! СКОМПИЛИРОВАННЫЙ ТЕКСТ ПЕВОЙ ГЛАВЫ ШРИФТ[/spoiler] Проблемы К сожалению, шрифтовые файлы почти всех Wii-игр хранятся в формате *.brfnt и вышеуказанным образом не расшифровываются. Но это, я уверен, только пока...
Сообщение отредактировал drugold - Вторник, 26.05.2009, 15:46
С уважением, Станислав.
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
В ходе экспериментов выяснилось, что OpenOffice открывает и сохраняет текстовый файл из SPM без изменений структуры. Но нужна проверка. К сожалению образа SPM у меня нету (записал и снёс), поэтому точно проверить не могу, но в шестнадцатиричном виде всё выглядит идентично. Продолжаю писать утилиту. :-)
|
Known Messenger
Группа: Проверенные
Сообщений: 90
Статус: Offline
темиртау
Quote (drugold) Сходите на форум шедевровцев. Там есть необходимый инструментарий и помощь в освоении разных языков, включая японский. там-то я и узнал про TPL))). но там нет инфы ни по Вии, ни по Кубу. а тут нужен инструмент именно для виишного (кубового) шрифта, и, надеюсь, abright нам в этом поможет.
Сообщение отредактировал fork - Вторник, 27.01.2009, 14:25
Cause I am a fork
|
Куратор homebrew GC/Wii
Группа: Супер Модераторы
Сообщений: 3143
Статус: Offline
Москва
Зато там многое есть по N64. Не сравнивал N64 с кубом, может есть точки соприкосновения?
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
Хотя нет. OpenOffice тоже меняет структуру файла.
|
МегаАктиWiiст
Группа: Проверенные
Сообщений: 513
Статус: Offline
Владивосток
Quote (fork) могу после работы попробовать "изобрести велосипед" - нарисую русские шрифты в TPL. Не горячись! Во-первых, это и для профессионала будет не просто, а, во-вторых, надо поискать более простое решение. Сам битмэп шрифта - это почти готовый BMP! Надо написать небольшой конвертор, получить настоящий BMP, дать его профессионалу для того, чтобы он дорисовал стилизованные буквы. Потом мы этот BMP назад засунем. Останется только табличку ширин символов вручную отредактировать. Но с табличкой я пока не разобрался... Quote (drugold) может есть точки соприкосновения? Да, совершенно точно есть! Я пробовал утилитами оттуда распаковывать файлы от Legend of Zelda Twilight Princess - всё прекрасно распаковывалось
С уважением, Станислав.
|
Куратор homebrew GC/Wii
Группа: Супер Модераторы
Сообщений: 3143
Статус: Offline
Москва
Quote (CityAceE) Вот так выглядит оригинальный фонт, готовый для редактирования. Ссылка битая. Поправь, пожалуйста.
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
Формат файла таблицы символов будет таким: То есть в первой строке символы, которым соответствуют русские буквы из второй строки. Количество символов в первой и второй строках должно быть естественно одинаково.
|
Куратор homebrew GC/Wii
Группа: Супер Модераторы
Сообщений: 3143
Статус: Offline
Москва
Хмм, но в кириллице больше букв, чем в латинице...
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
Quote (drugold) Хмм, но в кириллице больше букв, чем в латинице... Для недостающих букв можно использовать умляуты и знаки типа "@ ^ `" Пример таблицы: Добавлено (27.01.2009, 14:27) --------------------------------------------- Самая первая версия утилиты: http://slil.ru/26587605 Умеет читать файл in.txt с русским текстом. выводить в файл out.txt текст в символах согласно таблице. В файле table.txt содержится таблица соответствия символов по схеме описаной выше. В комплекте тестовый in.txt и тестовый table.txt с простейшим набором симваолов (маленькие буквы и точка с запятой). Продолжаю делать утилиту. Инструкция: Поместить в файл in.txt русский текст, запустить програмулину, получить в out.txt текс в нужных символах. Добавлено (27.01.2009, 14:37) --------------------------------------------- В дальнейшем будет всё гораздо удобнее (думаю к вечеру). Пока можно просто кидать в in.txt русский текст и дальше уже текстом переведённым в символы заменять нужные куски текста в виишном файле простым копипастом :-)
|
МегаАктиWiiст
Группа: Проверенные
Сообщений: 513
Статус: Offline
Владивосток
abright, погоди... Ты не с того начал! Надо вначале сделать утилиту, которая из файла высасывает текст и создаёт словарь!
С уважением, Станислав.
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
Всё будет :-) Я просто в начале написал модуль перевода текста из одного набора символов в другое :-) Следующая версия програмы будет уже с подобием интерфейса и сможет выдирать текст и вставлять его обратно :-)
|
МегаАктиWiiст
Группа: Проверенные
Сообщений: 513
Статус: Offline
Владивосток
abright, что касается твоего конвертера. Как он у тебя поступает с буквами, которые не попали в таблицу? По идее он их должен транслировать без изменения. Это так?
С уважением, Станислав.
|
НоWiiчок
Группа: Проверенные
Сообщений: 16
Статус: Offline
Тула
Пока выдаёт ошибку, если нет символа в таблице. Могу сделать и что бы без изменений писал символ отсутствующий в таблице. Кстати пробел тоже за символ считается. В той таблице, что идёт примером он находиться в начале строк.
Сообщение отредактировал abright - Вторник, 27.01.2009, 15:06
|
Known Messenger
Группа: Проверенные
Сообщений: 90
Статус: Offline
темиртау
осталось перерисовать на рус/яз раз уж я стал бесполезен на данном этапе (программирования), хоть попытаюсь что-нибудь сделать, а то вершится история, а я курю в сторонке))
Сообщение отредактировал fork - Вторник, 27.01.2009, 15:22
Cause I am a fork
|
МегаАктиWiiст
Группа: Проверенные
Сообщений: 513
Статус: Offline
Владивосток
Quote (abright) Пока выдаёт ошибку, если нет символа в таблице. Могу сделать и что бы без изменений писал символ отсутствующий в таблице. Именно так и нужно делать! Есть вероятность, что в тексте будут встречаться символы латинского алфавита. Да и знаки препинания без перекодировки будем использовать. Так что делай такой алгоритм, который будет искать знак в таблице, если он есть, значит перекодируем, а если нет, значит оставляем без изменения. Quote (abright) Кстати пробел тоже за символ считается. Ну само собой, это полноценный знак с кодом #20 Quote (fork) раз уж я стал бесполезен на данном этапе (программирования), хоть попытаюсь что-нибудь сделать, а то вершится история, а я курю в сторонке)) Погоди, не спеши - всему своё время! Всё успеется. И ты не бесполезен! Фонтом можно будет заниматься позже, не торопясь, когда будет делаться основная работа - перевод того моря текста, что есть в игре. Я завтра (у меня сейчас уже поздний вечер) попытаюсь всё таки организовать конвертов в BMP и обратно - это большой проблемы не должно составить. Гораздо больше меня беспокоит таблица с шириной символов, организацию которой я пока ещё не понял. Завтра же прикину расположение русских символов в фонте, то есть примерную кодировку. Кстати, знаки Ё и ё рисовать не придётся - на наше счастье они и так присутствуют в шрифте среди умляутов. Так что остаётся нарисовать всего ничего - 4 десятка русских букв
С уважением, Станислав.
|