форум группы Chief-Net форум группы Chief-Net
Перевод приставочных игр и не только!
drako site Перейти на сайт группы     Наш чат      Помощь      Поиск      Пользователи


 Страниц (1): [1]   

> Без описания
janss Пользователь
Отправлено: 06 Октября, 2016 - 10:13:54
Post Id





Покинул форум
Сообщений всего: 63
Дата рег-ции: Март 2016  





помогите разобрать формат сжатия в файле с тайловой графикой, файл уже разбит по строкам, строка всегда начинается с "30 40 00 00"
Пример1:
Спойлер (Отобразить)


Пример2:
Спойлер (Отобразить)

(Отредактировано автором: 06 Октября, 2016 - 10:19:22)

 
 Top
Mefistotel Администратор
Отправлено: 06 Октября, 2016 - 11:03:28
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7127
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Ты файлы то приложи, а также название рома/образа.

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
janss Пользователь
Отправлено: 08 Октября, 2016 - 11:40:11
Post Id





Покинул форум
Сообщений всего: 63
Дата рег-ции: Март 2016  





в архиве Archive.7z - карта, палитра и тайл
палитра в игре 256цв. но в этом примере используется только 16(остальное забито нулями за ненадобностью)

тайл состоит из блоков, одна строка - 1 блок
Цитата:
30 40 00 00 04 01 08 0F 0F 04 82 01 08 0F 0F 0E 07 07 0D 01 01 06 82 0F 81 01 03 08 0B 0A 07 9D 01 00 00 00
это нижняя часть буквы "с" в слове "Licensed"


Скачать файл: Archive.7z
Скачан раз: 238

(Отредактировано автором: 08 Октября, 2016 - 11:40:55)

 
 Top
Mefistotel Администратор
Отправлено: 08 Октября, 2016 - 12:05:54
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7127
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Специалистов, которые могли бы что-то дельное подсказать по формату сжатию, нынче не так много, но некоторые заглядывают сюда иногда.
Это Griever, Rus и ещё есть участник команды alex_231.


-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
janss Пользователь
Отправлено: 10 Октября, 2016 - 20:14:25
Post Id





Покинул форум
Сообщений всего: 63
Дата рег-ции: Март 2016  





формат разобран
 
 Top
Mefistotel Администратор
Отправлено: 10 Октября, 2016 - 23:13:51
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7127
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Опиши. Может пригодится.

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
janss Пользователь
Отправлено: 11 Октября, 2016 - 04:54:33
Post Id





Покинул форум
Сообщений всего: 63
Дата рег-ции: Март 2016  





Поинтеры опущу, с ними всё просто...
Читаем тайл построчно - далее обработка строк:
1. Читаем следующий байт в строке, если начало строки, то начинаем с 5 байта:
a) если но больше 7f - то отнимаем от него 7d и полученное кол-во повторяем следующий байт.
б) если меньше 40 - то прибавляем 1 и полученное кол-во читаем последующие байты (последовательно)
2. Циклим п.1 пока ни закончится строка
3. Отрезаем от строки 64 байта. Заносим данные в готовый тайл.
4. Переходим к след строку и повторяем п.1

тайлы
Спойлер (Отобразить)
 
 Top
Dream Пользователь
Отправлено: 14 Марта, 2017 - 22:57:25
Post Id





Покинул форум
Сообщений всего: 14
Дата рег-ции: Март 2016  





По описанию обычный RLE)).
Жаль поздно увидел, в ФФ12 это одна из кодировальных механик, LZSS чуток сложнее.
Правда там чуток по-другому было, не отнимается 7d, там просто откидывается первый бит, который указывает на то, что компресованно или нет, и следующее повторяется оставшееся +1.
Но тут видно решили оптимизировать, и сделали, чтобы срабатывала компрессия при 3 и более повторяющихся (поэтому после откидки первого бита и прибавляем 3, а не 1 (что равно Твоему минус 7d)).

(Отредактировано автором: 14 Марта, 2017 - 23:09:52)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 2 (гостей: 2, зарегистрированных: 0)
« Базовый хакинг »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



> Похожие темы: помогите разобрать формат сжатия в файле с тайловой графикой
Темы Форум Информация о теме Обновление
NftrAddFont
Программирование Ответов: 1
Автор темы: janss
19 Апреля, 2016 - 01:10:57
Автор: Mefistotel
перевод игр от Nintendo
Mario & Luigi series, Mario series, Kirby series и другие от Нин
Переводы Ответов: 4
Автор темы: janss
19 Мая, 2017 - 21:16:44
Автор: AlecsandroTores
Thundercats [NDS]
Переводы Ответов: 4
Автор темы: janss
09 Октября, 2016 - 18:02:24
Автор: janss
Перевод Mario & Luigi - Superstar Saga (GBA)
Базовый хакинг Ответов: 31
Автор темы: janss
29 Марта, 2021 - 13:32:09
Автор: Zoxi104
Monster Tale [NDS]
Переводы Ответов: 143
Автор темы: janss
24 Июля, 2017 - 22:01:51
Автор: Mefistotel
 

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®