Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Старые Консольные Игры - Форум _ Ромхакинг & перевод _ Палитра

Автор: sapik 9.3.2008, 11:44

Всем привет. Ребят нашел тут шрифт в игрушке но вот как бы его нормально посмотреть незнаю, цвета не те, ктонить знает как палитру настроить?

Автор: Гость 9.3.2008, 12:05

Игра God of War - можешь не стараться, этот шрифт там не используется. Шрифты хранятся в каждом файле в папке English, для каждой локации свой шрифт. Переводить эту игру - безумие. А то, что ты смотришь - у тебя стоит 8bpp, нужно 4bpp * удвоенную ширину пикселя. 512, если мне не изменяет память. Палитра там же где-то лежит.

Автор: HoRRoR 9.3.2008, 15:35

Под предыдущем постом подписываюсь (в смысле согласен, а не в смысле я писал), разве что хочу ещё добавить, что надо поставить 2-Dimensional режим и размер блока 2x1 для 8bpp и 4x1 для 4bpp.

Палитру ищи по чередованию FF каждые 4 байта. Типа того:
00000000 FF000011 FF001100 FF112233 ...
Если 4bpp, то должно быть $40 байт палитры. Если 8bpp - то $400.

Цитата
Переводить эту игру - безумие.

Почему?

Автор: Гость 11.3.2008, 13:26

Потому что в игре меньше 10кб текста, игра проходится за 3 часа и явно не расчитана на долгоразумное чтение + бльшой процент того, что хакер потратит кучу времени в пустую и перевод просто никому не пригодится. Если уж кому-либо так сильно захочется потрудиться в качестве хакера, то есть игра на этом же движке - Daxter - перевод этой игры был бы очень кстати.

Автор: Mefistofil 29.3.2008, 1:14

HoRRor, привет. Подскажи, возможно ли нарисовать красивый шрифт в Photoshope(или в чем то другом) и импортировать его в ром с помощью редакторов Romartist или tile Molister??Есть желание сделать шрифт более плавным и не угловатым, а с помощью редакторов для ромов(образов) такое не сделаешь.

Автор: HoRRoR 29.3.2008, 2:14

Можно. Но качество зависит от цветности. Тайл Молестер, например, прекрасно импортирует изображения.
Опиши подробней твой случай. В т.ч. и игру, цветность/размер шрифта.

Автор: Mefis-l 29.3.2008, 8:11

Например, Batman(1) (NES) rolleyes.gif Просто, достали эти клетки в редакторах.В них сильно не развернуться.Объясни как? Ты имеешь ввиду импортировать из тайл молестера картинку с шрифтом, затем открыть фотошопом, нарисовать,как хочешь и эскортировать шрифт обратно в игру??

Автор: HoRRoR 29.3.2008, 15:17

Да, но в фотожопе ты не нарисуешь из-за мизерного разрешения шрифта. А чтобы вручную перерисовать такой шрифт - нужна одна минута. На NES действует ограничение в 4 цвета и, обычно, 8x8 пикселей. Поэтому фотожоп тут бесполезен.

Автор: Гость_Mefistotel_* 4.4.2008, 7:38

HoRRor придется тебя подоставать. Кроме тебя вряд кто будет помогать. Ситуация следующая, я начал переводить Double Dragon 3(NES).И столкнулся там с пожатами тайловыми картами. Метод RLE. Для тебя это полная ху...я, а вот мне трудновато.Можешь немного объяснить мне?
Начинается заставка, появляется надпись Acclaim Present. Слово Presents лежит в роме и видно любым редактором тайлов по оффсету 00003B00. Но оно в таком виде PRESNT. Я понимаю, что буквы E и S используется два раза. Читал твою доку об сжатии на шедевре.Кое-что понял.Эту фразу возможно найти в роме хекс редактором и изменить без распаковки карты??? Если я понимаю, то примерно код в хексе должна выглядеть так: PR{00}{02}E{00}{02}SNT. Но в таком виде текст будет выводиться следующим образом PREESSNT. А как указать в каком месте будет повторяться буквы?Что бы было правильное PRESENTED. Смотрел PPU Vuew, коды букв 81=P,82=R,83=E,84=S, 85=N, 86=T. Надпись, конечно, надо переделать на такую ПРЕДСТАВЛЯЕТ.Сможешь помочь чайнику???Я может вообще натупил и не так все понял, фиг знает. Хочу научиться нормально переводить и так многое надо понять....а ты единственный, кто часто помогает мне.На родном мне сайте эмуленде явно никто не поможет. Мне надо въехать хотя бы в RLE. а дальше видно будет.Тем более в ближайший год я бы хотел заниматься переводами игр NES.А на них как я знаю, в основном RLE встречается в разных вариациях.
Еще очень бы хотелось, чтобы ты взял ту доку на шедевре http://www.shedevr.org.ru/forum/viewtopic.php?t=3590&start=0 и выложил к себе на сайте, но дополнив ее и привядя больше примеров.Все-таки уже больше полгода прошло...Но это я так, если тебе некогда да и неохота, то я все пойму.

Автор: HoRRoR 4.4.2008, 15:07

Там не RLE, просто карта оптимизирована под однобайтовую. Находится по смещению 0x1AEEA.
P.S. А хотя, что-то вроде сжатия или оптимизации дальше присутствует...
P.S.S. Карты на NES однобайтовые? Да, там RLE. Щас копну.
----
В общем, карта вроде бы начинается со смещения 0x1AEA6. Элементы однобайтовые. Байт {81} индицирует о применении RLE, т.е. если мы его встречаем, мы читаем сл. байт (кол-во байт для записи), и сразу за ним байт, которым будем заливать. Например, {81}{FF}{00} значит залить $FF байт нулями. Т.е. мы получим 255 нулей при распаковке. Андестенд? smile.gif

Код
var WB,B,C: ^Byte;
begin
    B:=inBuf;
    WB:=outBuf;
    While Integer(WB)-Integer(outBuf)<=MapSize do
    begin
        If B^=$81 Then
        begin
            Inc(B); C:=B; Inc(C);
            FillChar(WB^,B^,C^);
            Inc(WB,B^); Inc(B,2);
        end else
        begin
            WB^:=B^; Inc(B); Inc(WB);
        end;
    end;
end;

Автор: Гость_Mefistotel_* 4.4.2008, 15:34

No...Я уже сплю практически. Я в хексе смогу изменить слово на нужное мне???Что значит получим 255 нулей при распаковке.То что получим один раз использующиеся букву??Например F. Извини не много не догоняю, я завтра со свежей головой найду смещение и поэксперементирую над ним.

Автор: Гость_Mefistotel_* 4.4.2008, 15:44

Блин,код толькос сейчас появился.Ладно я покумекаю над этим и сообщу.Спасибо за помощь.

Автор: HoRRoR 4.4.2008, 15:52

{81}{Количество}{Байт_заливки}
{81}{05}{21}={21}{21}{21}{21}{21}
{81}{10}{00}={00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}

Автор: Гость_Mefistotel_* 5.4.2008, 0:00

Цитата(HoRRoR @ 4.4.2008, 15:52) *
{81}{Количество}{Байт_заливки}
{81}{05}{21}={21}{21}{21}{21}{21}
{81}{10}{00}={00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}{00}

Спасибо, вот теперь я понял твой код в сообщении выше!!Мне наверно придется дедовским методом ручками править, хотя можно написать функцию обработки кода. В VBA такую штуку написать можно??Я тебе завидую даже с твоими навыками Делфи. Мне аж самому охота изучить его, раньше пробовал BC+B 5 изучать. Но теперь понимаю, что для ромхакинга и Дельфи подойдет плюс ассемблер. Литературы скачал, теперь сам Delphi нужен и время.

Автор: HoRRoR 5.4.2008, 0:27

VBA - Visual Basic? Можно, конечно, но я бы советовал перейти на другой язык smile.gif Кстати на Дельфи адаптироваться с бейсика ничего не стоит. Правда у Дельфи в сотни раз больше возможностей, и поначалу ты их совсем не замечаешь и кодишь как и на бейсике smile.gif Проверено на личном опыте.
И, кстати, что ты так пренебрежительно к Дельфи относишься? Мол, "подойдёт". Он ничуть не хуже C++ или другого языка подойдёт.

Автор: Гость_Mefistotel_* 5.4.2008, 11:36

ОКЕЙ. Загляни на эмуленд, я тебе в личку сообщение напишу.

Автор: Mefistotel 7.5.2008, 0:44

Хай! Слушай, Horror. Тебе не надоело еще? Мне, если честно надоело. rolleyes.gif Может зароем топор войны в землю и подпишем акт о ненападении??? Твои мысли на сей счет...

Автор: HoRRoR 7.5.2008, 0:55

Я где-то нападал? Даже змея просто так не атакует - всегда есть причина, причём порой весьма и весьма уважительная. Что тебе не нравится - скажи, мирно обсудим. Я возлагал на тебя большие надежды, а ты их не оправдал, даже более того, разочаровал меня, я увидел, возможно, худшие твои черты - ну чем тебе не причина? И что мне должно надоесть то? Не от меня это зависит. И я всегда был за мирное сосуществование.

Автор: Mefistotel 7.5.2008, 2:55

Змея нападает, из-за угла и съедает ни о чем не подозревающую жертву. Хотя на то есть свои причины.Но я не об этом. rolleyes.gif
Эх...Пакт, топор войны, это же просто выражение такие...
А смысл их в желании помириться и пожать друг другу руки...Вот. Мне кажется ты затаил злобу в душу...и вот спросил не надоело ли тебе.Может я и ошибаюсь.
"Я возлагал на тебя большие надежды, а ты их не оправдал, даже более того, разочаровал меня, я увидел, возможно, худшие твои черты - ну чем тебе не причина?"
Не подозревал об этом.Ну ты уж прости, что не оправдал твоих надежд...
Вот причина в том, что "возможно" ты увидел...Понимаешь?Так по-дурацки получилось, я бы даже сказал как у детей.Думаю, ситуация возникла из-за непонимания друг друга.
Знаешь, я то же за мирное сосуществование.Все-таки одним делом занимаемся.Так что, будем мириться???

Автор: HoRRoR 7.5.2008, 8:44

Цитата
Змея нападает, из-за угла и съедает ни о чем не подозревающую жертву. Хотя на то есть свои причины.Но я не об этом.

Человек тоже по сути нападает на животных, когда хочет использовать их как еду. Змея ещё может напасть в порыве инстинкта самосохранения. Правда человек, в отличие от неё, может напасть и просто так...

Цитата
Мне кажется ты затаил злобу в душу...

Я не настолько злой и злопамятный.

Цитата
Не подозревал об этом.Ну ты уж прости, что не оправдал твоих надежд...

Не только моих. Если помнишь, не я один в обиде был.

Цитата
Знаешь, я то же за мирное сосуществование.Все-таки одним делом занимаемся.Так что, будем мириться???

Я никогда не был против.

Автор: Mefistotel 7.5.2008, 10:13

Цитата
Человек тоже по сути нападает на животных, когда хочет использовать их как еду. Змея ещё может напасть в порыве инстинкта самосохранения. Правда человек, в отличие от неё, может напасть и просто так...

Мы с тобой общаемся,как в передаче "в мире животных". wink.gif
Цитата
И я всегда был за мирное сосуществование.

Цитата
Я никогда не был против.

Какой ты осторожный... rolleyes.gif Ну так что, забудем старые дела???И выпьем по пиву, в баре "100 рентген". wow.gif
Не знаю какие ты надежды на меня возлагал и с чем это связано...но обещаю исправиться.

Автор: HoRRoR 7.5.2008, 10:16

По пиву я не против smile.gif

Автор: Mefistotel 7.5.2008, 10:27

Если когда-нибудь буду в Ростове, стопудово выпьем. wow.gif
Блин,с моим дряном инетом, форум по пять минут загружается и в тему столько же захожу.
Ты не серчай, что я тут нафлудил...Просто наболело, да и постоянно думал о прошлом.Короче, не могу я долго обижаться.
Ладно вопрос снял. До встречи.

Автор: Гость 18.6.2009, 16:54

Цитата
разве что хочу ещё добавить, что надо поставить 2-Dimensional режим и размер блока 2x1 для 8bpp и 4x1 для 4bpp.

Всегда такой размер блока? Определять можно только визуально?

Цитата
Палитру ищи по чередованию FF каждые 4 байта. Типа того:
00000000 FF000011 FF001100 FF112233 ...

На psp всегда 32-битные палитры? Вроде же допускаются вплоть до 16-битных
Я так понимаю, FF - альфаканал... Всегда первый байт в 32-хбитных отдан под альфу?

Откуда вообще информация? Есть какие-нибудь особенные доки, кроме http://hitmen.c02.at/html/psp_docs.html

Автор: HoRRoR 18.6.2009, 19:58

Цитата
Всегда такой размер блока? Определять можно только визуально?

На PSP - для 4bpp - 4x1, для 8bpp - 2x1. Хотя на самом деле в байтах размерности одинаковые. Это стандарт PSP, но быть может как угодно - разработчики народ весёлый.

Цитата
На psp всегда 32-битные палитры? Вроде же допускаются вплоть до 16-битных

Да быть могут какие угодно, но стандарт PSP - 32 бита, поэтому почти всегда такие и используются.

Цитата
Я так понимаю, FF - альфаканал... Всегда первый байт в 32-хбитных отдан под альфу?

Именно в таких палитрах - да.

Цитата
Откуда вообще информация?

Эм... А как бы своим умом добывать информацию нынче считается чем-то из ряда вон? Извини, но дать ссылку на свои наработки, опыт и мозг я не в силах.

Русская версия Invision Power Board (http://www.invisiоnboаrd.cоm)
© Invision Power Services (http://www.invisiоnpowеr.com)