| 
				
				Технические аспекты русификации 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 
 
 
 С уважением, Станислав. 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 90 
 
 
 
 Статус: Offline  
   темиртау
   
 
 
 
Quote (dnd1) spmario.tpl в самом корне(ROOT) не он?      нет, не он: там (у меня по крайней мере) год написан 2006, а в самой игре 2007, к тому же текст с копирайтом анимирован и должен, стало быть, отдельно от картинки быть.   Quote (dnd1) сообщения о прохождении главы и получении чистого сердца     а тут как быть: YOU GOT A PURE HEART печатается по одной букве, а надпись в виде текстуры. т.е. где-то в коде игры есть блок, управляющий выводом этой текстуры на экран частями. и на русском языке эту надпись хрен сделаешь. или я не прав?
  
  
 Сообщение отредактировал fork - Вторник, 28.04.2009, 01:01 
 
 
 Cause I am a fork 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 59 
 
 
 
 Статус: Offline  
   Копейск
   
 
 
 
Quote (fork) а тут как быть: YOU GOT A PURE HEART печатается по одной букве, а надпись в виде текстуры. т.е. где-то в коде игры есть блок, управляющий выводом этой текстуры на экран частями. и на русском языке эту надпись хрен сделаешь. или я не прав?     Там 2 файла - один tpl(текстура), а другой - dat, и судя по тому, что этот файл меняется, в зависимости от языка(размер и содержание): скорее всего он и отвечает за анимацию выхода. Попробую полазить в нем - вдруг, что-нибуть из этого и выйдет     Quote (fork) нет, не он: там (у меня по крайней мере) год написан 2006, а в самой игре 2007     так ты про текст снизу... Я думал ты про эмблему SPM   Снова пробигусь по образу, авось и найдется     Если не секрет, каким образом ты редактируешь(конвертируешь) tpl-файлы? И еще: при помощи чего шрифт загонялся обратно в bfn?
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
 
 Game Boy  
 Группа: Проверенные 
 Сообщений: 116 
 
 
 
 Статус: Offline  
   Киев
   
 
 
 
Quote (dnd1) И еще: при помощи чего шрифт загонялся обратно в bfn?     Тоже мечтаю узнать. 
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 90 
 
 
 
 Статус: Offline  
   темиртау
   
 
 
 
Quote (dnd1) при помощи чего шрифт загонялся обратно в bfn?     Quote (Anton299) Тоже мечтаю узнать.     к сожалению не знаю. я далёк в программировании. я всего лишь нашёл способ отобразить шрифт (с помощью TileLayerPro), а дальше работал CityAceE, он вытащил из bfn-файла bmp-текстуру, я её отредактировал, переслал ему, а он отправил мне готовый bfn-файл с интегрированным бмп-шником. всё.   Quote (Anton299) Если не секрет, каким образом ты редактируешь(конвертируешь) tpl-файлы?     tplx.exe распаковывает, а запаковывает TexConv.exe.   тут правда при запаковке нужен будет конфиг файл, он составляется вручную (ну, по крайней мере, я так делаю). вот пример (конфиг-файл для 12 текстур):  [spoiler] Quote file 0 = tex#00_14.tga   file 1 = tex#01_14.tga   file 2 = tex#02_14.tga   file 3 = tex#03_14.tga   file 4 = tex#04_00.tga   file 5 = tex#05_00.tga   file 6 = tex#06_00.tga   file 7 = tex#07_00.tga   file 8 = tex#08_00.tga   file 9 = tex#09_00.tga   file 10 = tex#10_00.tga   file 11 = tex#11_00.tga   file 12 = tex#12_05.tga   image 0 = 0, 0, CMPR   image 1 = 1, 1, CMPR   image 2 = 2, 2, CMPR   image 3 = 3, 3, CMPR   image 4 = 4, x, I4   image 5 = 5, x, I4   image 6 = 6, x, I4   image 7 = 7, x, I4   image 8 = 8, x, I4   image 9 = 9, x, I4   image 10 = 10, x, I4   image 11 = 11, x, I4   image 12 = 12, 12, RGB5A3   texture 0 = 0, x   texture 1 = 1, x   texture 2 = 2, x   texture 3 = 3, x   texture 4 = 4, x   texture 5 = 5, x   texture 6 = 6, x   texture 7 = 7, x   texture 8 = 8, x   texture 9 = 9, x   texture 10 = 10, x   texture 11 = 11, x   texture 12 = 12, x     тут список этих 12-ти текстур:   Quote tex#01_14.tga   file 2 = tex#02_14.tga   file 3 = tex#03_14.tga   file 4 = tex#04_00.tga   file 5 = tex#05_00.tga   file 6 = tex#06_00.tga   file 7 = tex#07_00.tga   file 8 = tex#08_00.tga   file 9 = tex#09_00.tga   file 10 = tex#10_00.tga   file 11 = tex#11_00.tga   file 12 = tex#12_05.tga    в блоке file список текстур по порядку.   в блоке image для текстур с индексом 14 соответствует строка вида image 2 = 2, 2, CMPR, где первые три числа через запятую, это порядковый номер текстуры, а CMPR - это цветовая палитра.   для текстур с индексом 00 соответствует строка вида image 4 = 4, x, I4 (первые два числа через запятую порядковый номер, х - не знаю что, но ставится, I4 - палитра)   для индекса 05 - image 12 = 12, 12, RGB5A3. тут по аналогии с индексом 14.   в блоке texture ничего сложного.   вообще конфиг файл создаётся с помощью программы TCSmake.exe, но это работает только для TPL-файла с одной текстурой (как я понял).[/spoiler]   Добавлено (28.04.2009, 14:06)   ---------------------------------------------   есть файл с текстурами, там их 436 штук. редактирование конфига меня убьёт...   Добавлено (28.04.2009, 14:11)   ---------------------------------------------    Quote (dnd1) так ты про текст снизу... Я думал ты про эмблему SPM     как раз таки я про эмблему, просто привёл пример с текстом внизу экрана. на заставке же не цельная текстура (как там, где ты указал), а изображение составляется по частям (марио выпрыгивает и т.д.). вот этих составляющих данной текстуры я и не нашёл(((Добавлено (28.04.2009, 14:35) --------------------------------------------- всё, нашёл :     
  
  
 Сообщение отредактировал fork - Вторник, 28.04.2009, 14:13 
 
 
 Cause I am a fork 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 59 
 
 
 
 Статус: Offline  
   Копейск
   
 
 
 
fork, спасибо за подробные разъяснения     Quote (fork) есть файл с текстурами, там их 436 штук. редактирование конфига меня убьёт...     Если по-подробнее объяснишь, по какому принципу ставятся выделенные части   Quote image 3 = 3, 3, CMPR   image 4 = 4, x, I4    image 12 = 12, 12, RGB5A3     смогу написать программку для автоматизированного создания этого конфига  
  
  
 Сообщение отредактировал dnd1 - Вторник, 28.04.2009, 17:50 
 
 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 90 
 
 
 
 Статус: Offline  
   темиртау
   
 
 
 
Quote (dnd1) Если по-подробнее объяснишь, по какому принципу ставятся выделенные части   Цитата   image 3 = 3, 3,  CMPR   image 4 = 4,  x, I4  image 12 = 12, 12,  RGB5A3  смогу написать программку для автоматизированного создания этого конфига      14 - CMPR (file 3 = tex#03_14.tga это image 3 = 3, 3, CMPR)   00 - x, I4 (file 4 = tex#04_00.tga это image 4 = 4, x, I4)   05 - RGB5A3 (file 12 = tex#12_05.tga это image 12 = 12, 12, RGB5A3)   нужно просто сравнить блок file и блок image, каждая строка из первого блока соответствует строке из второго блока с одинаковыми порядковыми номерами.
  
  
 
 
 
 Cause I am a fork 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 59 
 
 
 
 Статус: Offline  
   Копейск
   
 
 
 
fork, Спасибо за разъяснение. Через 1-3 дня будет тебе готовая программка по генерации этого конфиг-файла.Добавлено (29.04.2009, 23:46) --------------------------------------------- Программа готова и прекрасно работает   Завтра доведу до приличного вида интерфейс и выложу сюда     fork, если есть еще какие-нибудь сложности - пиши 
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
  
 МегаАктиWiiст  
 Группа: Проверенные 
 Сообщений: 513 
 
 
 
 Статус: Offline  
   Владивосток
   
 
 
 
Приятно видеть, что всё не закончилось, как обычно, пустой болтовнёй и процесс локализации идёт полным ходом  
  
  
 Сообщение отредактировал CityAceE - Четверг, 30.04.2009, 08:09 
 
 
 С уважением, Станислав. 
  
  
 
 
 | 
 
 
 
 
  
 НоWiiчок  
 Группа: Пользователи 
 Сообщений: 1 
 
 
 
 Статус: Offline  
   Донецк
   
 
 
 
Поставил, посмотрел, глаз режет mooshroom castle, count black, принцесса peach, хотя в некоторых местах эти слова переводятся на русский.   Вопрос - зачем оставлять имена и названия на потом, если они всегда и в первой и в последней главе будут иметь один и тот же перевод? Поймите, я не критикую, просто не хочется, чтобы потом выплыли где нибудь эти английские слова после выпуска уже конечного перевода [img]http://nintendoclub.ru/sm/sm15.gif[/img]
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 59 
 
 
 
 Статус: Offline  
   Копейск
   
 
 
 
Quote (FANg) зачем оставлять имена и названия на потом     Просто еще не составлен словарь имен и терминов(переводчики не могут сойтись в едином мнении, как кого назвать   ), по-этому пока все имена и названия оставлены в оригинальном виде(так потом их будет проще искать и заменять)  CityAceE, при помощи чего шрифт загонялся обратно в bfn, если не секрет   и какая палитра использовалась для этого шрифта?   Добавлено (30.04.2009, 20:41)   ---------------------------------------------   Все-таки уложился в обещанные 3 дня   (хотя все было написано уже в первый вечер. Остальное время - приводилось в порядок   )   Программа готова. Версия 1.0   МиниИнструкция:   1)Выбрать путь до папки с файлами   2)Добавить их в список(Кнопка "Перенести в список")   3)Создать конфиг файл     (Кнопка "Перейти" позволяет быстро перейти по адресу, введенному слева от нее)   Пользуйтесь на-здоровье. Если найдутся ошибки и замечания - пишите.   Добавлено (02.05.2009, 22:32)   ---------------------------------------------    Quote (dnd1) CityAceE, при помощи чего шрифт загонялся обратно в bfn, если не секрет и какая палитра использовалась для этого шрифта?     Вопрос отпал - разобрался сам   Все оказалось совсем не сложно:)
  
  
 Сообщение отредактировал dnd1 - Суббота, 02.05.2009, 22:33 
 
 
  
  
 
 
 | 
 
 
 
 
 
 Game Boy  
 Группа: Проверенные 
 Сообщений: 116 
 
 
 
 Статус: Offline  
   Киев
   
 
 
 
Quote (dnd1) опрос отпал - разобрался сам    Все оказалось совсем не сложно:)     Не отпал )   Все-таки интересно узнать метод CityAceE. 
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
 
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 50 
 
 
 
 Статус: Offline  
   Екатеринбург
   
 
 
 
Quote (dnd1) 2) Куда вставлять перенос, если строчка состоит из одного сплошного слова(без пробелов) Например :"Вафельный Утюг-переключатель/Гриль-печка-глубокая жаровня!". "Утюг-переключатель/Гриль-печка-глубокая" точно не влезет в одну строчку.     Просто поставить переход на новую строку после последнего (или предпоследнего) дефиса, и в игре оставшаяся часть слова автоматически перейдёт на новую строку. Или можно искуственно ввести переносы - рассчитать место, где нужно сделать перенос, и на его месте поставить дефис и переход на новую строку. В игре будет выглядет как перенос (например, слово "глубокая" можно записать как "глу-*знак ана новую строку*бокая). Это также можно поробовать сделать для тех случаев, когда текст не влезает в пузырь. 
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
 
 НоWiiчок  
 Группа: Проверенные 
 Сообщений: 13 
 
 
 
 Статус: Offline  
   Красноярск
   
 
 
 
А как делать, если tex#00_08+2 ?
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
  
 Known Messenger  
 Группа: Проверенные 
 Сообщений: 59 
 
 
 
 Статус: Offline  
   Копейск
   
 
 
 
Quote (Saros) А как делать, если tex#00_08+2 ?     Это где такое, если не секрет?   По-подробнее можно?
  
  
 
 
 
  
  
 
 
 | 
 
 
 
 
 
 НоWiiчок  
 Группа: Проверенные 
 Сообщений: 11 
 
 
 
 Статус: Offline  
   Surgut
   
 
 
 Сообщение отредактировал Cookis - Вторник, 26.05.2009, 12:05 
 
 
  
  
 
 
 |