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)

ErikPshat 23.12.2012 00:17

Цитата:

Сообщение от lis5131 (Сообщение 1059326)
Да игра Lunar Silver Star Harmony psp, я же написал (lunar)

Ну я так сразу же и догадался по первым же результатам поиска:

Скрин
[IMG]http://img161.**************/img161/3578/lunarsilverstarstoryntsnq6.jpg[/IMG]

lis5131 23.12.2012 00:44

Немного не такой.
http://pix.academ.org/img/2012/12/23...390584bb0d.jpg

Вот такой.

ErikPshat 23.12.2012 11:14

Цитата:

Сообщение от lis5131 (Сообщение 1059371)
Немного не такой.
Вот такой.

КЭП, я читать умею, что выше писалось :)
А ваще, с самого начала вопрос был задан НИАЧЁМ и получил ты ответы такие же НИАЧЁМ. Зачем крутить вокруг да около и гадать на кофейной гуще?

Цитата:

Сообщение от lis5131 (Сообщение 1059331)
Прикол
Цитата:

\PSP_GAME\SYSDIR\EBOOT.BIN
В лунаре. Забит 00.

Это только означает, что в образе кто-то поковырялся и поменял местами файлы, и возможно, ещё и пропатчил Prometheus-ом.
  • EBOOT.BIN - главный экзешник программы.
  • BOOT.BIN - забитый нулями кэш, равный байт-в-байт по размеру декриптованного EBOOT.BIN.
Далее по делу...
Не поленился, скачал и глянул образ. Пока имею следующие данные:
  • В образе зашифрованы следующие файлы, которые нужно было для начала расшифровать и посмотреть (декриптованные выложил здесь):

    • PSP_GAME\SYSDIR\EBOOT.BIN

    • PSP_GAME\USRDIR\LUNAR\MODULE\ - (libccc.prx, libfont.prx, libpsmfplayer.prx, psmf.prx)

  • Если вопрос поставлен в поиске указателей шрифтов, то я бы, в первую очередь, обратил бы внимание на такой интересный файл libfont.prx. На первый взгляд это просто библиотека обработки шрифта, типа - horizontal\vertical\h_size\v_size\h_resolution\v_resolution\weight\family_code\s tyle\sub_style\language_code\region_code\country_code\font_name\file_name\extra_ attributes\expire_date.
    Возможно дизасм выведет на то место, куда эти характеристики должны применяться.

  • Но мне думается, что нужно копать в ресурсах, в папке PSP_GAME\USRDIR\LUNAR\DATA

    Ресурсы в порядке убывания размера файла:

    • ..\GIM\STATUSMENU\WINDOW\fmap_name.gim - картинка-полоска статуса, отображаемая во время боя слева вверху.
    • ..\PACK\BGMPack.dat - содержит около 380 файлов фоновых звуков и мелодий AT3 (Atrac 3 Plus) (декодируется только аппаратным декодером PSP)
    • ..\PACK\PACK_MAP_GIM.dat - содержит очень много пакетов dat в архивах GZIP (1F8B[0808]), каждый из которых содержит несколько картинок GIM
    • ..\PACK\PC_SP_PACK.dat - содержит больше 100 пакетов dat в архивах GZIP (1F8B[0808]), каждый из которых содержит несколько системных звуков VAG.
    • ..\PACK\MO_SP_PACK.dat - содержит очень много пакетов dat в архивах GZIP (1F8B[0808]), каждый из которых содержит картинки GIM анимированных спец-эффектов выстрелов, заклинаний и т.п.
    • ..\PACK\SEPack.dat - содержит очень много пакетов dat в архивах GZIP (1F8B[0808]), каждый из которых содержит несколько системных звуков VAG.
    • ..\PACK\BtlMonsterGroupPack.dat - содержит пакеты dat в архивах GZIP (1F8B[0808]), каждый из которых содержит картинки монстров с разных ракурсов в GIM
    • ..\PACK\PACK_IMAGE.dat - содержит пакеты dat в архивах GZIP (1F8B[0808]), каждый из которых содержит картинки персонажей с разных ракурсов в GIM.
    • ..\PACK\BtlMapPack.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся картинки карт в GIM
    • ..\PACK\fPackFace.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся картинки персонажей крупным планом в GIM
    • ..\PACK\PACK_COLLISION.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся схематические карты в BMP
    • ..\PACK\FH_VOICE.dat - содержит записи диалогов в AT3 (Atrac 3 Plus)
    • ..\PACK\FH_VOICE2.dat - содержит записи диалогов в AT3 (Atrac 3 Plus)
    • ..\PACK\FH_VOICE3.dat - содержит записи диалогов в AT3 (Atrac 3 Plus)
    • ..\PACK\BtlPartyDataPack2 - содержит пакеты dat в архивах GZIP (1F8B[0808]), каждый из которых содержит картинки персонажей в бою с оружием с разных ракурсов в GIM.
    • ..\PACK\ScriptPack.dat - содержит пакеты dat в архивах GZIP (1F8B[0808]), каждый из которых содержит какие-то скрипты TEXT00X.dat ))
    • ..\PACK\StationedPack.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся картинки системных меню в GIM
    • ..\PACK\PACK_MOTION.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся коды анимации объектов в DAT.
    • ..\PACK\Btl_Eff_Pack.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся картинки эффектов в GIM
    • ..\PACK\SUBEFF_PACK.dat - содержит архивы GZIP (1F8B[0808]), в которых содержатся картинки эффектов в GIM


Возможно это то, что ты хотел узнать?
Или ты хотел увидеть типа такое меню:

[IMG]http://img259.**************/img259/1985/24758470.png[/IMG] [IMG]http://img717.**************/img717/4721/24936179.png[/IMG]

Yoti 23.12.2012 21:22

Цитата:

Сообщение от lis5131 (Сообщение 1059260)
Сразу возник вопрос что считать запускным файлом

Учим матчасть.

Цитата:

Сообщение от lis5131 (Сообщение 1059326)
я же написал (lunar)

А я написал так:
Код:

03/03/2010 | NFO | Lunar_Silver_Star_Harmony_USA_PSP-PSPKiNG
11/11/2009 | NFO | Lunar_Harmony_of_Silver_Star_JPN_PSP-Caravan


lis5131 24.12.2012 11:43

Мужики вы читать умеете? Материальную часть игры я знаю. Меня она сейчас не интересует.
Меня интересует шрифт.
Игра использует системный шрифт PSP - ltn12.pgf
Как сделать так, чтобы игра грузила этот шрифт с карты памяти?

frostegater 24.12.2012 12:12

lis5131, я ж говорю, путь (строка) может клеиться из разных частей. Поищи вторую часть "flash0:/font"

Yoti 24.12.2012 12:53

lis5131,
учим понятие "матчасть", учим понятие "контекст", учим матчасть в контексте цитаты.

lis5131 24.12.2012 16:22

Тут попутно ковырнул еще пару игр.
В одной нашел такой вот код
Цитата:

0x08916250: "disc0:/PSP_GAME/USRDIR/data/"
0x08916270: "font/"
0x08916278: "Error sceFontOpen: 0x%8.8x\n"
0x08916294: "Font_OpenFile::%s\n"
0x089162A8: "Error sceFontFindOptimumFont: 0x%8.8x\n"
0x089162D0: "Error sceFontOpen %d: 0x%8.8x\n"
0x089162F0: "Error sceFontClose: 0x%8.8x\n"
0x08916310: "thread waiting...\n"
0x08916324: "Error sceFontGetCharInfo: 0x%8.8x\n"
0x08916348: "Error sceFontGetFontInfo: 0x%8.8x\n"
0x0891636C: "Error (sceFontGetCharGlyphImage_Clip): 0x%8.8x\n"
0x0891639C: "FontListThread"
0x089163AC: "Font Event"
Что бы это значило?
Может ли шрифт писаться как переменная - то есть так(0x%8.8x\n)?
Или я иду в неправильном направлении?

ErikPshat 24.12.2012 21:06

Цитата:

Сообщение от lis5131 (Сообщение 1059459)
Меня интересует шрифт.
Игра использует системный шрифт PSP - ltn12.pgf

Чем не устраивает шрифт на скриншотах выше?
Скрины сняты из игры "Lunar: Silver Star Harmony"

Цитата:

Сообщение от lis5131 (Сообщение 1059479)
Может ли шрифт писаться как переменная - то есть так(0x%8.8x\n)?

В данном случае эти переменные указывают на номера ошибок.

Цитата:

Сообщение от lis5131 (Сообщение 1059479)
Тут попутно ковырнул еще пару игр.

Опять разговор ниачём.

lis5131 24.12.2012 22:23

ErikPshat, да нет здесь все нормально, но я ищу в игровом тексте шрифт.

ErikPshat 24.12.2012 22:31

lis5131, ага, смотрю в текстовиках нету текстов из диалогов субтитров. Тогда где же они?
Чё-та я все ресурсы глянул, правда проверил только по первым смещениям. Вероятно они где-то внутри поглубже.

Тут нужно исходить из тех текстов в диалогах и от них выходить на шрифт.
Я так понял ты память уже дампил и оттуда увидел указание на ltn12.pgf.

Но раз из текстовиков русский шрифт поддерживается, тогда может и из диалогов берётся тот же шрифт.

lis5131 24.12.2012 22:44

В диалогах тоже ltn12.pgf

Родной шрифт
http://pix.academ.org/img/2012/12/25...6995f5b8bf.jpg
Мой шрифт.
http://pix.academ.org/img/2012/12/25...2f01fbaa44.jpg

Вставлял первый попавшийся.
Весь текст сжат в файлах TEXT000.DAT (GZIP)(UTF-8)(ScriptPack.dat)

В данный момент я хочу понять как переписать ссылку на шрифт(на свой шрифт).

ErikPshat 24.12.2012 22:56

Цитата:

Сообщение от lis5131 (Сообщение 1059537)
В диалогах тоже ltn12.pgf

То есть, в настройках этот же шрифт?
Пробовал смотреть изменения шрифта в настройках при подмене ltn12.pgf?

lis5131 24.12.2012 23:02

Цитата:

Сообщение от ErikPshat (Сообщение 1059544)
То есть, в настройках этот же шрифт?
Пробовал смотреть изменения шрифта в настройках при подмене ltn12.pgf?

Да, там тот же шрифт. (настройки и диалоги один шрифт)

http://pix.academ.org/img/2012/12/25...07473bac8e.jpg

ErikPshat 24.12.2012 23:07

lis5131, попробуй перевести первый диалог и сохранить TEXT000.DAT, как Юникод UTF16LE.
Запакуй обратно в GZIP и вставь на место.

Должен тогда текст по-русски нормально выводиться, если действительно один шрифт. Ведь у меня настройки нормально выводятся.

lis5131 24.12.2012 23:10

Цитата:

Сообщение от ErikPshat (Сообщение 1059552)
lis5131, попробуй перевести первый диалог и сохранить TEXT000.DAT, как Юникод UTF16LE.
Запакуй обратно в GZIP и вставь на место.

Должен тогда текст по-русски нормально выводиться, если действительно один шрифт. Ведь у меня настройки нормально выводятся.

Это потребует время.
Но.... Я не это хочу понять. Я хочу понять как переписать путь на шрифт.

ErikPshat 25.12.2012 09:15

Ну в общем, как и говорил, Юникод UTF16LE работает, но глюкаво )))
Первые диалоги лежат в файле TEXT060.dat.

[IMG]http://img843.**************/img843/8752/92847049.png[/IMG] [IMG]http://img259.**************/img259/1763/84274294.png[/IMG]

Ещё скрины
[IMG]http://img15.**************/img15/8443/64507776.png[/IMG] [IMG]http://img546.**************/img546/2210/36044380.png[/IMG]

[IMG]http://img607.**************/img607/9374/56216546.png[/IMG] [IMG]http://img94.**************/img94/6506/41355904.png[/IMG]

[IMG]http://img94.**************/img94/2357/47731134.png[/IMG] [IMG]http://img687.**************/img687/1166/73363130.png[/IMG]

Тут дело в том, что в скриптах используются служебные символы как раз из русской кодировки Юникод UTF16LE.
Например, код переноса строки обычно используют , а в юникоде 0D0A.
В данном же случае используется перенос кодом 0104, но это не беда, т.к. этот код не доходит до пределов русской кодировки. Хотя, как раз под этим кодом находится заглавная буква Ё и она обычно находится перед русской раскладной, которая впрочем редко используется.

А русская кодировка начинается с буквы А по адресу 1004, далее буква Б - 1104, буква В - 1204 и т.д.
Но беда в том, что между диалогами встречаются служебные символы 1104, 1404, 1604, 1704, 1904, 1A04, 2704, 2904, 3E04, 4E04 - это те, которые я заметил. Так что буквы, попадающие на эти коды, просто не будут отрисовываться, а кроме того, будут выполнять предназначенные для них функции.
На первом скрине должно быть "Богиня Альфина!", но выводится "гиня Альфина!", потому что буква Б имеет служебный код 1104 и в каких-то сочетаниях следующая маленькая буква о тоже не выводится.



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

frostegater 25.12.2012 09:35

Если поколупать исходники zeroVshPatcher можно найти редирекции путей. Таким образом можно перенаправить на свой шрифт с лёгкостью. ИМХО самый классный путь и работает 100%.

lis5131 25.12.2012 10:44

ErikPshat, а чем ты запаковывал назад. Я пробовал 7z(9.20) - у меня повис.


ZeroVSH_Patcher_v0.2.zip у меня есть. Я его пробовал, но он меняет только ltn0.pgf т.е основной шрифт.

lupus 25.12.2012 17:54

Цитата:

Сообщение от frostegater (Сообщение 1059611)
Если поколупать исходники zeroVshPatcher можно найти редирекции путей. Таким образом можно перенаправить на свой шрифт с лёгкостью. ИМХО самый классный путь и работает 100%.

Фрост, а есть ли возможность пересобрать из сырцов так, чтобы любой из шрифтов подменять можно было?
Ну или Ётя??? ::blush::


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

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