PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   Русификация игр и софта для PSP (https://www.pspx.ru/forum/forumdisplay.php?f=190)
-   -   Системный шрифт PSP (https://www.pspx.ru/forum/showthread.php?t=102816)

lis5131 21.01.2013 12:49


Ждемс.....

Yoti 18.02.2013 00:47

Цитата:

Сообщение от lupus (Сообщение 1059674)
Спс. Тут ещё такая идея возникла, можно ли запилить не плагин, а модуль, чтобы его в образ класть вместо eboot.pbp, и сначала он грузился, а затем родной eboot?

Заморочился вопросом. В общем, взял самый обычный usermode eboot.pbp, который грузит kernelmode prx. Перегнал его через eboot2iso, а также через pbp2iso. Оба варианта работают. То есть можно спокойно написать самую обычную программу, а затем просто DATA.PSP из неё использовать как EBOOT.BIN. Если всё правильно сделано, то оно без проблем заработает.

aloneunix 27.10.2013 22:55

Вложений: 1
Хочу также заменить шрифт в Planetarian, но вот незадача.
libfont.prx декриптовал успешно, но prxtool наотрез отказывается его дизассемблировать
http://puu.sh/5194J.png
Кто знает, в чём может быть проблема?
Ниже прикреплю оригинальную и декриптованную либу.
Вложение 9542

P.S.: причина замены шрифта — судя по дампу памяти в эмуляторе, в игре используется шрифт jpn0.pgf, при вставке в скрипт русского текста на выхлопе у кириллицы получается моноширинный шрифт, что не есть хорошо.

Yoti 28.10.2013 19:24

Вложений: 1
aloneunix,
забирай. И решай проблемы с компом - текст ошибки на скриншоте.

aloneunix 30.10.2013 19:58

Yoti, благодарю.
Решил разобраться, что было не так. Ошибка, что указана на скриншоте мало о чём говорит, т.к. заплатки стояли.
У меня всего-навсего оказался старый/нерабочий дистрибутив prxtool. Прекрасно с модулем справился билд, выложенный в этой теме.

riku.kh3 28.04.2014 01:38

Научите как перенаправить шрифт, думаю многим было бы интересно. :blush:
Хочу перенаправить из flash0:/font/jpn0.pgf в disc0:/PSP_GAME/USRDIR/X9DULE/jpn0.pgf

libfont.prx

frostegater 28.04.2014 16:50

riku.kh3, Zero VSH Patcher попробуй

COOLERbyPSP 28.04.2014 16:53

Zero VSH Patcher немного не из той оперы, он же просто берёт из папки на флешке, вместо того, чтобы брать из flash0

riku.kh3 04.05.2014 12:39

Да, через плагин конечно будет работать.. но немного попрактичней хотелось бы.. готовый проект страдает:

http://s52.radikal.ru/i135/1404/17/603cf8c982bf.png

Да и в патч это как бы тоже не добавишь, а форсировать ради одной игры устанавливать плагин всех подряд точно никто не будет.

UPD:
Нашел какой-то самопальный PRX, написанный китайцами. Ложится вместо libfont.prx, и в свою очередь грузит оригинальный файл переименованный в oldfont.prx и функцией fontfuck подменяет путь к шрифту)) Шрифт только там другой - zh_gb.pgf

http://rghost.net/54917474

ErikPshat 05.05.2014 19:13

Цитата:

Сообщение от riku.kh3 (Сообщение 1086647)
Научите как перенаправить шрифт, думаю многим было бы интересно. :blush:
Хочу перенаправить из flash0:/font/jpn0.pgf в disc0:/PSP_GAME/USRDIR/X9DULE/jpn0.pgf

libfont.prx

Эмм, так вроде об этом шла речь на предыдущей странице: https://www.pspx.ru/forum/showthread....48#post1059948
Думаю тут ситуация 1:1.

riku.kh3 05.05.2014 19:24

ErikPshat, так да, я потому сюда и написал. Сам просто не могу переварить информацию в ее текущем виде с предыдущей страницы. :scratch_one-s_head:

ErikPshat 05.05.2014 19:38

riku.kh3, ты там скачай готовые шрифты и либфонты, там ниже в сообщениях я выложил готовый пак. Сравни их и обнаружишь то место, где я менял пути. Да, файлы обратно зашифрованы, поэтому их нужно декриптовать.

Сейчас вспомнить трудно, но по-моему пути в оригинале отображаются в неявном виде, т.е. они как-то хитро завуалированы. Я эти смещения угадал, когда сдампил через дампер памяти этот модуль libfont.prx. В памяти он складывает путь в файле.

Короче, запускаешь игру, чтобы отображался шрифт в игре в нужном месте, например в меню настроек игры или в диалогах. И в этот момент дампишь память. Я вроде использовал дампер memdump от эмм... нашего разработчика, от фузы, плин памяти совсем нет )) Он лежит на форуме в какой-то теме.

Сейчас я уезжаю и инета не будет наверное, так что, если сам не справишься, то смогу помочь только спустя неопределённое время. Но думаю, если почитаешь диалоги на предыдущей странице, то сам поймёшь.

ErikPshat 05.05.2014 19:47

Цитата:

Сообщение от riku.kh3 (Сообщение 1086647)

Скачал, глянул. Файл нужно сначала декриптовать.

Перед этим нужно удалить заголовок ~SCE (0x40 байт) до заголовка ~PSP. После этого можно декриптовать через PRXdecrypter на PSP или на Vita.

Ну и в декриптованном ELF можно уже искать путь. Он будет находиться ровно в том же месте, где находится путь в сдампленном этом же модуле из памяти.

Чтобы зашифровать обратно, нужно:
  1. Из зашифрованного файлв ~PSP сдампить KIRK (спроси у Yoti).
  2. Этим же кирком зашифровать обратно - есть тема по нашему PRX Encrypter Mod с исходниками.
  3. Потом в начало файла обратно вернуть заголовок ~SCE

riku.kh3 05.05.2014 19:50

Вот досада, реальной PSP нет, декриптовать сравнить не могу. :(

А RAM дамп давно снял:
https://www.firedrive.com/file/EA7DD2E7373EA413

ErikPshat 05.05.2014 20:07

Цитата:

Сообщение от riku.kh3 (Сообщение 1086795)
А RAM дамп давно снял:

Это не тот вид дампа. Там вижу только ссылки на модули, например так: disc0:/PSP_GAME/USRDIR/X9DULE/libfont.prx
Но вот самого модуля libfont.prx я в дампе не вижу.

Ищи дампер от Andy_maN. Он дампит все загруженные модули по-отдельности.

Цитата:

Сообщение от riku.kh3 (Сообщение 1086795)
Вот досада, реальной PSP нет, декриптовать сравнить не могу.

Ну можно на Вите сделать или кого-нибудь попросить, например у Кулера есть PSP, у vash есть и много у кого есть ;) :)

А дампер вспомнил: moDumper plugin by Andy_maN

riku.kh3 05.05.2014 20:27

Эх, значит и RAM дамп нормальный не снять без PSP. :( Вита у меня на последней офф прошивке, там без вариантов - ничего не запустить.

UPD:
Нашел немного информации по по libfont.
http://translate.googleusercontent.c...M1z5EDSpxdsCmg

ErikPshat 08.05.2014 15:35

Вложений: 1
Цитата:

Сообщение от riku.kh3 (Сообщение 1086647)
Хочу перенаправить из flash0:/font/jpn0.pgf в disc0:/PSP_GAME/USRDIR/X9DULE/jpn0.pgf

Собсно забирай во вложении и проверяй. Если понадобится, то позже зашифрую файл обратно, как в оригинале.

P.S. Не забудь в образе перед заменой снять LBA позиции, а затем их вернуть обратно.

riku.kh3 08.05.2014 15:55

ErikPshat, спасибо. Подписать его - и вообще будет идеально. Собираюсь отправить его автору английского порта, мы с ним уже общались.

По поводу самого шрифта еще что говорил.. Так выглядят русские буковки в родном jpn0.pgf:

http://i021.radikal.ru/1405/13/d36239f5d746.png

Но при попытке сохранится, игра крэшится.. скорее всего из-за ASCII пробелов ($20), которые движок игры принимает за скриптовые команды.. С shiftjis пробелами все работает нормально, но выглядит так:

http://s020.radikal.ru/i720/1405/da/b2e49c67773a.png

Я пробовал играться с TTF шрифтом, и там свободно получается изменить ширину любой буквы и нужного пробела... но после конвертации в через ttf_pgf.exe, в самой игре ширина уже не становится.. то есть, думаю, либо она прописана в самом pgf и ttf_pgf при конвертации всегда вставляет ее статичное значение.. либо игра вставляет этот интервал после самой буквы. Как-то так. :scratch_one-s_head:

Перевод PC-версии на русский кстати ведется тут:
http://notabenoid.com/book/47139/
Если с техническими проблемами разобраться можно было бы организовать PSP версию.

ErikPshat 08.05.2014 16:31

riku.kh3, в архиве я положил свой jpn0.pgf - это не родной. Ты его пробовал?
TTF2PGF ты использовал мою сборку?

И кстати, на английском порте тоже видно, что идёт 2-ой пробел:

http://s52.radikal.ru/i135/1404/17/603cf8c982bf.png

Цитата:

Сообщение от riku.kh3 (Сообщение 1086833)
игра крэшится.. скорее всего из-за ASCII пробелов ($20)

А что если пробелы 0x20 подменить на другой код, например подглядеть в Shift-JIS?

Ну собственно получается та же история, как в предыдущем переводе с Лунаром. Там так же использовались служебные символы в русской кодировке. Эти символы можно все вычислить по коду переводимого файла и просто не использовать их, делать подмену из другого диапазона, либо в самом шрифте переместить буквы в другую область.

riku.kh3 08.05.2014 16:48

Цитата:

Сообщение от ErikPshat (Сообщение 1086835)
riku.kh3, в архиве я положил свой jpn0.pgf - это не родной. Ты его пробовал?
TTF2PGF ты использовал мою сборку?

Да, с ним (программа тоже оттуда), и с другим заведомо правильно собранными jpn0.pgf (у меня есть красивенький курсивчиком, там сразу же разницу видно). Да и по логам эмулятора видно что он грузится из flash0:/fonts/jpn0.pgf. Но если на реальном железе как положено работает, то не суть важно.

Цитата:

Сообщение от ErikPshat (Сообщение 1086835)
И кстати, на английском порте тоже видно, что идёт 2-ой пробел:

Ага, английские буквы тоже в двухбайтовом shiftjis'е.

Цитата:

Сообщение от ErikPshat (Сообщение 1086835)
А что если пробелы 0x20 подменить на другой код, например подглядеть в Shift-JIS?

С этой кодировкой я очень хорошо знаком, там просто нету других пробелов.. коды неиспользуемых символов тоже как надо не отображаются.

Цитата:

Сообщение от ErikPshat (Сообщение 1086835)
Ну собственно получается та же история, как в предыдущем переводе с Лунаром. Там так же использовались служебные символы в русской кодировке. Эти символы можно все вычислить по коду переводимого файла и просто не использовать их, делать подмену из другого диапазона, либо в самом шрифте переместить буквы в другую область.

Как вариант конечно, но там в окошке сохранения фраза на которой сейв делается отображается системными шрифтами, биллиберда будет несовсем эстетичная, конечно, но как вариант.


Текущее время: 19:51. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
PSPx Forum - Сообщество фанатов игровых консолей.