PSPx форум

PSPx форум (https://www.pspx.ru/forum/index.php)
-   Русификация игр и софта для PSP (https://www.pspx.ru/forum/forumdisplay.php?f=190)
-   -   Ищу программера для помощи в модификации PSP-движка (Never7, Ever17, Remember11 и тп) (https://www.pspx.ru/forum/showthread.php?t=105110)

riku.kh3 19.02.2016 05:59

dreambottle, нетронутые файлы после расжатия и обратного сжатия побайтово совпадают? Т.к. должны.
https://www.pspx.ru/forum/showpost.ph...2&postcount=14
Если да, то скорее всего не в самом сжатии дело. :scratch_one-s_head:

dreambottle 19.02.2016 13:20

Побайтовой идентичности нет, конечно. Но в том, что сжатие работает правильно уверен. На всякий случай, попробовал даже применить "фейковое" сжатие, которое ничего не сжимает, просто раздувает файл контрольными байтами - результат такой же. Да и на остальные файлы не жалуется игра. Я бы предположил, что игра сверяет контрольные суммы, но по симптомам выглядит будто что-то крешится с треском и ошибками.

Разобрался как пользоваться дебаггером в ppsspp, попробую что-то раскопать.

riku.kh3 19.02.2016 22:31

У меня побайтово совпадают, попробуй мою сжималку.

riku.kh3 добавил 19.02.2016 в 22:31
А вообще, в jpcsp есть расширенный лог, и в момент крэша там можно узнать точную позицию. Потом уже в ppsspp на это место брейкпоинт, и будет видно что в этот момент идет не так. Еще можно подцепиться к памяти процесса ppsspp.exe, например winhex'ом, и сдампить в момент крэша. Там внутри песочницы точно такой же дамп будет, просто отрезать лишнее начало. И там внутри посмотреть свой распакованный файл. Если он обрывается - значит при распаковке на этом месте и крэшится.

dreambottle 20.02.2016 15:24

Хвала дебаггеру и мемори дампам - разобрался. Ошибка была у меня в коде - при разжатии. Очищал буффер не нулями, а пробелами (0x20), из-за этого смещения в файле получались не в духе 0x00001140, а 0x20201140.

dreambottle 23.02.2016 23:44

Перенес английский текст сцен на PSP!
Мои наработки на гитхабе: https://github.com/dreambottle/R11-psp-english
Буду рад любой помощи!

Scorpeg 28.03.2016 18:30

Тоже мне невидаль. Про инит.бин - не заморачивайся, воткни в конце новую секцию и всё.

И да, проект не умер, всё как бы перенесено, я даже авто-переносы сделал (да, именно то, почему у тебя виснут длинные тексты), но как-то надо всё причесать красиво, протестировать, а до этого не доходят руки, да и в разъездах я последнее время.

А с чего это PSP-сцена умерла? Вроде нормально, живенько на gbatemp, все время че-то там хачат.

Как можно было накосячить со сжатием меня тоже берет недоумение. Вот же https://oku.edu.mie-u.ac.jp/~okumura/compression/lzss.c 100% идентичный код (проблемы тока на нули поменять) и он 100% работает для сжатия и декомпрессии. Скомпилил и в путь.

dreambottle 29.03.2016 00:12

Цитата:

Тоже мне невидаль
Давай без этого. Я занимаюсь проектом по фану, а не чтобы кому-то что-то доказать.

Насчет сжатия, если прочитаешь пост повыше, то увидишь, что именно с пробелами и был косяк. При чем, не в сжатии, а в разжатии.

Цитата:

Про инит.бин - не заморачивайся, воткни в конце новую секцию и всё.
Ты наверное про eboot говоришь. Если есть софт, чтобы добавить/расширить секцию, то выложи куда-нибудь. Руками делать не вариант, а писать под это скрипт лень.

Что касается psp'шного init.bin, он у меня уже перенесен почти весь (кроме хронологии и песен). Не знаю пока как создать дополнительные страницы в tips'ах, но это не приоритетная задача для меня.

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

Авто переносы у тебя только для полноэкранных текстов, или для 3-строчных боксов тоже? Если есть для боксов и оно правильно их детектит, то тоже буду благодарен за исходник. И он окажется весьма полезным, если с размерами шрифта ничего не выгорит.

Scorpeg 29.03.2016 01:51

Цитата:

Сообщение от dreambottle (Сообщение 1102508)
Давай без этого. Я занимаюсь проектом по фану, а не чтобы кому-то что-то доказать.

Логично. А кто кому-то что-то собирался доказывать?

Цитата:

Насчет сжатия, если прочитаешь пост повыше, то увидишь, что именно с пробелами и был косяк. При чем, не в сжатии, а в разжатии.
Ну а если тему прочитать, то там я уже про это как бы и писал на первой странице темы. https://www.pspx.ru/forum/showpost.ph...6&postcount=11 Мог бы тоже прочитать сперва :p

Цитата:

Ты наверное про eboot говоришь. Если есть софт, чтобы добавить/расширить секцию, то выложи куда-нибудь. Руками делать не вариант, а писать под это скрипт лень.
А я решил не расширять (хотя могу, но я не программист, так что скрипт мне писать вообще очень сложно, а в хекс-редакторе секции менять - та еще радость. хотя есть hfe, можно наверное им поменять, но я не пробовал). Я воткнул после шрифта свои доработки, игра их спокойно засасывает вместе с файлом шрифта. И вообще моя не понимать, на кой нужны расширения ебутов, когда можно тупо загрузить файл вместо этой развлекухи, воткнув загрузчик (там всего-то вроде байтов 12 + имя файла) вместо какого-нибудь сообщения компилятора. И там уже развернуться.

Цитата:

Что касается psp'шного init.bin, он у меня уже перенесен почти весь (кроме хронологии и песен). Не знаю пока как создать дополнительные страницы в tips'ах, но это не приоритетная задача для меня.
Я видел твой гит. Это не весь, а только нужные секции, насколько я понял с моими ограниченными знаниями.

Цитата:

Моя идея в том, чтобы не расставлять переносы, а уменьшить шрифт. Шириной текста управлять достаточно легко через сам файл шрифта и сделать его тоньше не составит труда. С высотой строк сложнее - интервал не зависит от высоты глифов, и я не нашел тот кусок кода, который за это отвечает. Если сможешь найти и рассказать как контролировать высоту - буду тебе благодарен.
Рассказать смогу, искать - уже нет, я всё забыл. Идешь в графический дебаггер (игра выводит буквы друг за другом) и смотришь куда записаны размеры глифа, ставишь брейкпойнт на запись в эту память и вуаля - выпадает собственно кто запихивает высоту. Но я тебе не советую менять высоты (собсна и ширину не советую). Почему? В хистори будет ад и израиль скорее всего (сужу по аду и израилю в Шарин, где рику тоже хотел как и ты уместить в существующие боксы). Я не осилил переписать так, чтобы работало - причину понял, но чтобы это пофиксить надо все буферы переписывать (где строго нужная ширина онли), а где и как это искать и можно ли - непонятно, я рыл дня три и не нарыл.

Цитата:

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

dreambottle 29.03.2016 02:26

О, значит я не правильно понял насчет переносов. Думал что ты сделал как раз переносы на новый экран текстов, которые вылазят за экран/бокс. За инфу про непереносимые символы спс, не был в курсе. Когда появится время, поищу их и добавлю. Они в eboot вбиты, или в init.bin?

Еще завтра доотпишу. Отвалился интернет у провайдера, с мобильного писать трудно

riku.kh3 29.03.2016 02:52

У меня была идея высоту у глифов не трогать, а Y-позиционирование у вывода текста в окошке найти. То есть сделать чтобы по высоте они друг на друга налезали, а по факту все смотрелось как надо и вмещалось по 5 строк в каждое окошко.

Scorpeg 29.03.2016 09:18

Цитата:

Сообщение от dreambottle (Сообщение 1102510)
О, значит я не правильно понял насчет переносов. Думал что ты сделал как раз переносы на новый экран текстов, которые вылазят за экран/бокс.

Ну вообще хотел такой сделать (там есть же символ для нового окошка), на основе собственно шрифта, но мне стало лениво делать таблицу символов-соответствий с данными шрифтов, а потом закончилась лафа и началось море работы. Так-то это написать (без таблицы) - 10 строчек кода, ничего сложного. Но рику например не нравится то, что в таком варианте не прокатывает авто-режим - то есть в авто-режиме игра время вывода символов подстраивает под длину голосовой озвучки. Когда там поделено на две части - такое естественно фейлит.

Цитата:

За инфу про непереносимые символы спс, не был в курсе. Когда появится время, поищу их и добавлю. Они в eboot вбиты, или в init.bin?
В ебут.

Scorpeg добавил 29.03.2016 в 09:18
Цитата:

Сообщение от riku.kh3 (Сообщение 1102511)
У меня была идея высоту у глифов не трогать, а Y-позиционирование у вывода текста в окошке найти. То есть сделать чтобы по высоте они друг на друга налезали, а по факту все смотрелось как надо и вмещалось по 5 строк в каждое окошко.

Ну да, разницы в общем-то никакой. И находить так же - ищешь где пихает Y-координату в GE Debug. Но мне кажется оно будет ультра-мелко смотреться на оригинальном PSP. Глаза устанут их разбирать. Я в Эвер шрифт перерисовал, чтобы был более четкий(а не этот мутный ад который авторы нарендерили). http://psp4real.ru/_tr/ULJM05437_00027.jpg (ну это больше для dreambottle, ты-то видел уже).

riku.kh3 29.03.2016 12:22

Ну да, я не об этой игре, я о Шарин думал, там 4 строчки и так вмещается. Или вот как тут, где максимум 3:
http://s019.radikal.ru/i632/1603/cd/5f03d3bd7daf.png
http://s46.radikal.ru/i111/1603/5c/5f49c68d7331.png
Но у вас тут не похоже чтобы подобное прокатило. Само окошко слишком сплющено. Вот если его увеличить, то другое дело.

Scorpeg 29.03.2016 21:17

Цитата:

Сообщение от riku.kh3 (Сообщение 1102523)
Ну да, я не об этой игре, я о Шарин думал, там 4 строчки и так вмещается. Или вот как тут, где максимум 3:
Но у вас тут не похоже чтобы подобное прокатило. Само окошко слишком сплющено. Вот если его увеличить, то другое дело.

Ну я фиг его знает, мне например не нравится такая толкучка на экране :) Лучше уж 3 с нормальным расстоянием между строчек, чем 3 пикселя.

riku.kh3 29.03.2016 23:36

Но все же лучше, чем озвученные фразы резать, когда в обрезке гробовая тишина остается. Кстати, да, в последних движках 5pb на psp я пробовал свои окошки добавлять - так просто не робит. Внутритекстовыми скриптовыми командами этого не сделать, нельзя просто стереть текст и продолжить печатать. По-обычному пробовал добавлять, работало, но спустя некоторое время игра намертво висла. Оказалось что это общий порядок и то, куда аргументы других специфичных команд указывают сбивает. То есть надо вообще все основательно документировать - все существующие команды и операции движка, и с нуля скрипт пересобирать.

tinenmi 30.06.2016 10:08

Привет, dreambottle. Я хочу сделать русский перевод Remember11 на PSP. Пока самая большая проблема в том, что они пишет русское имя не в окошечко имени, а прямо в текст. Видимо, придётся, как и десктопной версии, менять местами в шрифте русские и английский буквы. Но в ней другой формат шрифта. Я рад, что у тебя есть наработки по шрифтам. Могу ли я по ним что-то сделать?

dreambottle 05.07.2016 02:33

tinenmi, Это случайно не ваша группа https://vk.com/remember11 ?

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

Для имен, отображаемых при прямой речи, есть словарь в файле init.bin. В команде пк-версии на тл-вики, их хакер сделал патч, чтобы не использовать словарь, а просто брать все, что идет перед кавычками в тексте. Я же решил просто переписать словарь, т.к. это намного проще. Смотрите файл text/other-psp/init.psp.txt в моем репозитории, первые 70 строк. Их надо заменить на русские имена.


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

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