russian ROMhacking
[ Новые сообщения · Участники · Правила форума · Поиск ]
Страница 1 из 11
Форум ромхакеров » Всё о ромхакинге » Перевод » Yuu Yuu Hakusho - Makyou Toitsusen (необходим небольшой ликбез в плане шрифтов.)
Yuu Yuu Hakusho - Makyou Toitsusen
nemesis_cДата: Среда, 20.04.2011, 17:38 | Сообщение # 1
Сержант
Группа: Проверенные
Сообщений: 23
Статус: Оффлайн
Решили с Pedro немного поизвращаться над игрой Yuu Yuu Hakusho - Makyou Toitsusen [smd] - слегка хакнуть и перевести.. собственно с тем как её хакнуть проблем не возникло.. убили всяческие проверки чексуммы, ожидания заставок еще всякую пакость не нужную.. дело встало на том - как изменить шрифт. Шрифт в игре частично пожат. Я раньше никогда такими вопросами не озадачивался, посему хотелось бы попросить помощи и совета у знающих людей. Одна буква в игре занимает два таила по вертикали, в тайловом редакторе шрифт отображается частично (не все буквы и со смещением)

если попытаться перерисовать, например ноль - игра зависнет в том месте где должен отображаться этот ноль на экране.
Суть вопроса - как можно подменить этот пожатый шрифт на свой непожатый? (места в роме валом - 1 мб)


Сообщение отредактировал nemesis_c - Пятница, 22.04.2011, 00:12
 
TrickZterДата: Среда, 20.04.2011, 19:28 | Сообщение # 2
Сержант
Группа: Заблокированные
Сообщений: 21
Статус: Оффлайн
А написать распаковщик/запаковщик - не вариант? Судя по скриншоту сжатие тут простенькое (RLE или LZ).
 
nemesis_cДата: Среда, 20.04.2011, 19:56 | Сообщение # 3
Сержант
Группа: Проверенные
Сообщений: 23
Статус: Оффлайн
Quote (TrickZter)
А написать распаковщик/запаковщик - не вариант? Судя по скриншоту сжатие тут простенькое (RLE или LZ).

вариант, но зачем заморачиваться паковщиками/распаковщиками если в экономии места нет необходимости? в добавок не думаю что я осилю что-то подобное навоять..
я так понимаю (может и не верно я это понимаю), что где-то в роме должна быть таблица, что-ли, которая говорит, мол буква "А" это таил по адресу... и таил по адресу... Новый шрифт можно воткнуть без проблем, а вот как и где указать на него? Уж простите за глупые вопросы smile
 
TrickZterДата: Среда, 20.04.2011, 21:33 | Сообщение # 4
Сержант
Группа: Заблокированные
Сообщений: 21
Статус: Оффлайн
Quote (nemesis_c)
я так понимаю (может и не верно я это понимаю), что где-то в роме должна быть таблица, что-ли, которая говорит, мол буква "А" это таил по адресу... и таил по адресу...
Тут просто запакованные простеньким алгоритмом данные. Если эту картинку распаковать, получатся нормальные символы размером 16x16 и/или 8x16 пикселей. Надо либо убирать процедуру распаковки (нужно дебажить) и запихивать русский шрифт в не пожатом виде, либо писать запаковщик (нужно программить).


Сообщение отредактировал TrickZter - Среда, 20.04.2011, 21:34
 
nemesis_cДата: Среда, 20.04.2011, 22:01 | Сообщение # 5
Сержант
Группа: Проверенные
Сообщений: 23
Статус: Оффлайн
TrickZter, ты в состоянии отловить распаковку и отключить её? Загляни в ром пожалуйста, если время есть - сделай и обьясни как сделал - думаю тебе не один человек спасибо скажет за подробный туториал на конкретном примере. Обьяснять на пальцах не есть хорошо. То что дебажить надо и ёжику понятно. Я не могу понять в корне сам принцип - как таилы в видеопамять отправляются...
 
TrickZterДата: Среда, 20.04.2011, 22:21 | Сообщение # 6
Сержант
Группа: Заблокированные
Сообщений: 21
Статус: Оффлайн
Не, сам я таким не занимался - лень лезть разбираться biggrin Мне как-то привычней распаковщик/запаковщик написать.
 
nemesis_cДата: Пятница, 22.04.2011, 00:12 | Сообщение # 7
Сержант
Группа: Проверенные
Сообщений: 23
Статус: Оффлайн
понятно. Вопрос открыт smile

Добавлено (21.04.2011, 15:33)
---------------------------------------------
более-менее разобрался, как там все устроено со шрифтом... точнее со сжатием. там изначально вбито несколько типов сжатия а после перед любым сжатым участком стоит метка - каким типом сжат последующий участок, то есть <тип сжатия><то что сжато>,<тип сжатия><то что сжато> и так далее. Похоже на то как в UMK. На сами таилы шрифта ничего не ссылается, ссылка идет на весь шрифт в целом и не на адрес конкретных таилов а на их порядковый номер. Уже смог поменять местами некоторые буквы в шрифте, нашел тот тип который обозначает "нулевое сжатие" то есть оно как-бы сжато но на самом деле нифига там не сжато... То есть по большому счету - как править шрифт я уже разобрал, но появилась другая проблема - нужно переместить весь этот блок в конец рома, что-бы можно было его нашпиговывать до посинения, но не могу найти то место - которое ссылается на сам шрифт wacko

Добавлено (22.04.2011, 00:12)
---------------------------------------------
Проблема решена своими силами happy

 
GuyverДата: Пятница, 22.04.2011, 07:20 | Сообщение # 8
Лейтенант
Группа: Заблокированные
Сообщений: 72
Статус: Оффлайн
...

Я не волшебник - я только учусь...

Сообщение отредактировал Guyver - Воскресенье, 13.03.2016, 04:16
 
nemesis_cДата: Пятница, 22.04.2011, 10:10 | Сообщение # 9
Сержант
Группа: Проверенные
Сообщений: 23
Статус: Оффлайн
Guyver, тут немного по другому... то что я обозвал <тип сжатия> - на самом деле ширина таила. По вертикали размер фиксированный - 16 пикселей, а по горизонтали от 01 до ... (до 1F точно проверил). По совместительству этот указатель является и разделителем между буквами. Если стереть один такой разделитель/указатель - то просто пропадет одна буква/знак из середины и одна с самого конца.

Quote (Guyver)
Вот только мне хватало для перерисовки и старого места, на новое я ничего не переносил...

Конкретно в этой игре шрифт облеплен с обоих сторон кодом а набор знаков меньше чем хотелось бы... В наборе 94 кажется знака разной ширины -
знаки препинания, затем цифры, заглавные буквы, строчные буквы (латиница то есть).. причем широких знаков ооооочень мало, например, чтобы нарисовать Ю, Ш, Щ, Ф, Ж, Д, Ы.. Вчера перерисовал заглавные и уже репу чешу как мелкие перерисовывать.. (не смог перенести весь блок, приходится выкручиваться smile )

Добавлено (22.04.2011, 10:10)
---------------------------------------------
есть злодейская мысль - нынешние заглавные буквы перерисовать в строчные не меняя размер по высоте, а в качестве заглавных оттяпать непожатые иероглифы размером 16*16.. но, наверное, будет глупо смотреться wacko

 
Форум ромхакеров » Всё о ромхакинге » Перевод » Yuu Yuu Hakusho - Makyou Toitsusen (необходим небольшой ликбез в плане шрифтов.)
Страница 1 из 11
Поиск: