Четверг, 25.05.2017, 10:11
Вы вошли как Гость | Группа "Гости" | RSS

.
 
 
Главная Регистрация Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: Nemesis_c, Smoke 
Форум » Elektropage.ru » Zero Tolerance [smd] » Beyond Zero Tolerance -- графика (Инфа, инфа, инфа...)
Beyond Zero Tolerance -- графика
SmokeДата: Среда, 10.08.2011, 22:46 | Сообщение # 1


 Get Serious!
Сообщений: 548
Статус: Offline
 

Потихоньку разбираю ром BZT и все больше нахожу похожестей на оригинал. Также аходится много всего непонятно зачем сделанного, например случай со сплющенными картинками, которые как потом оказалось совсем не сплющены, а там просто байты задом-наперед и шиворот-навыворот переписаны. За некоторый промежуток времени написал прогу для фикса и обратной запаковки этого дела.

Оффсет этих картинок в BZT: $C043E

Собс-но сама программка тут.


 
SmokeДата: Четверг, 18.08.2011, 06:57 | Сообщение # 2


 Get Serious!
Сообщений: 548
Статус: Offline
 

Еще кое-чего по графике: оказывается в BZT таким методом хранится практически вся графика. Включая и текстуры блоков. Начинается она примерно с $C0000 и практически до конца рома, т.е. до $1FFFFF. При разборе рома, я наткнулся на то что изображения предметов (биосканер, оружие итд) рисуются на палитре эпизода. То есть логично предположить, что на других эпизодах цвета изменятся. Разрабы не стали ничего придумывать и просто засунули 3 пака с одинаковыми картинками, но с разными цветами, как раз под 3 палитры. Да, на место в роме им было наплевать видимо biggrin
Довытаскиваю графику из рома в отдельные файлы и выложу сюда позже.


 
Nemesis_cДата: Четверг, 18.08.2011, 17:20 | Сообщение # 3


 
Сообщений: 1118
Статус: Offline
 

Quote (Smoke)
оказывается в BZT таким методом хранится практически вся графика. Включая и текстуры блоков.

в первой части таким образом хранятся текстуры блоков и враги.. так что тулза мегаполезная smile
а вот оружие в инвентаре, в руках ну и сами руки ноги хранятся просто так. Аналогично и анимация акколэйд и технопопы - можно вставить свою анимацию, только карты таилов заменить.. как-то считал сколько там кадров но забыл.. вообще если не ошибаюсь вступительные заставки в первой части занимают 400кб.. учитывая что весь ром 1 метр.
В bzt каким образом уровни и эпизоды считаются? в первой части всего 64 уровня, то есть 4 эпизода по 16, просто в оригинале 4 эпизод выключен и к нему нет заставки..
опять же, если ничего не путаю, то во второй части кажется два массива с уровнями.. первый не используется - дубли из первой части, второй используется. размер уровней как-то прописан в конфигах где-то или он читается напрямую с массива?
 
SmokeДата: Пятница, 19.08.2011, 00:40 | Сообщение # 4


 Get Serious!
Сообщений: 548
Статус: Offline
 

Там есть пара ошибок, из-за которых файлы большого размера не фиксятся, надо поисправлять и выложить потом. Можно попробовать эти заставки потом RNC алгоритмом пожать, тормозов это не прибавит, а место освободится. Была мысль вообще всю графу им пожать, но думаю на уровнях будет очееень тормозно, если еще проц распаковкой каждый раз загружать. Так что это отпадает точно.
Размер должен быть прописан где-то, я это еще не искал. В ZT наверно просто система паролей держит до 64 уровней, если больше, нужно больше символов в пароле на всю инфу. В BZT я думаю точно также. Есть мысль сделать SRAM пока, а потом переписать систему паролей, чтобы держала новые предметы, оружие, клетки дополнительные проверяла, ключи и т.д. Но это все потом smile


Редактор обновил. Ы


 
r57shellДата: Суббота, 20.08.2011, 21:05 | Сообщение # 5


 
Сообщений: 629
Статус: Offline
 

нужно у этих картинок каждую первую строку выдернуть в первый столбец,
и каждую вторую строку во второй столбец
и два получившихся столбца нарисовать без пробела (вертикально сдвинуть)
и будет кошерно.


Мальчик, девочка... какая в жопу разница..
 
SmokeДата: Воскресенье, 21.08.2011, 06:49 | Сообщение # 6


 Get Serious!
Сообщений: 548
Статус: Offline
 

Можно будет функцию в проге сделать, типа задать ширину получаемой картинки. Для наглядности. Так то конечно главная цель в 4bpp вытащить для редактирования в тайл. редакторе и обратно вставить. Но и это в принципе тоже не помешает))

 
SmokeДата: Понедельник, 22.08.2011, 22:15 | Сообщение # 7


 Get Serious!
Сообщений: 548
Статус: Offline
 

Графика в роме грузится здесь: $B9B0E. В зависимости от эпизода, в RAM помещаются нужные оффсеты.
Code
sub_B9B0E:
                    mulu.w  #$38,d0 ; '8'
                    lea     (ep_GraphData).l,a0
                    adda.w  d0,a0
                    move.l  (a0)+,$5436(a6)
                    move.l  (a0)+,$543A(a6)
                    move.l  (a0)+,$543E(a6)
                    move.l  (a0)+,$5442(a6)
                    move.l  (a0)+,$5446(a6)
                    move.l  (a0)+,$544A(a6)
                    move.l  (a0)+,$544E(a6)
                    move.l  (a0)+,$5452(a6)
                    move.l  (a0)+,$5456(a6)
                    move.l  (a0)+,$545A(a6)
                    move.l  (a0)+,$545E(a6)
                    move.l  (a0)+,$5462(a6)
                    move.l  (a0)+,$5466(a6)
                    move.l  (a0)+,$546A(a6)
                    rts



На каждый эпизод выделено 14 адресов со всяким стаффом.
Code
ep_GraphData:       
                    dc.l unk_BD3D2          ; Освещение на уровне
                    dc.l Pal_1epM           ; Палитры в меню паузы
                    dc.l Pal_1epG           ; Палитры в игре
                    dc.l unk_BABD2          ; Эффект освещения на предметах и врагах
                    dc.l off_BC3D2          ; Эффект освещения на стенах
                    dc.l unk_BD3DE          ; Графика пола и потолка
                    dc.l unk_BD47E          ; Графика пола и потолка
                    dc.l unk_BD51E          ; Графика пола и потолка
                    dc.l unk_BD5BE          ; Графика пола и потолка
                    dc.l unk_BD65E          ; Графика пола и потолка
                    dc.l unk_C883E          ; Графика текстур
                    dc.l unk_BD6FE          ; Графика плана А (задник)
                    dc.l unk_BF43E          ; Тайловая карта вроде задника
                    dc.l unk_C043E          ; Графика предметов и оружия на уровне
                    dc.l unk_EB03E
                    dc.l Pal_2epM
                    dc.l Pal_2epG
                    dc.l unk_E883E
                    dc.l off_EA03E
                    dc.l unk_EB04A
                    dc.l unk_EB0EA
                    dc.l unk_EB18A
                    dc.l unk_EB22A
                    dc.l unk_EB2CA
                    dc.l unk_F7C8A
                    dc.l unk_EB36A
                    dc.l unk_EE88A
                    dc.l unk_EF88A
                    dc.l unk_121AF6
                    dc.l Pal_3epM
                    dc.l Pal_3epG
                    dc.l unk_11F2F6
                    dc.l off_120AF6
                    dc.l unk_121B02
                    dc.l unk_121BA2
                    dc.l unk_121C42
                    dc.l unk_121CE2
                    dc.l unk_121D82
                    dc.l unk_12D582
                    dc.l unk_121E22
                    dc.l unk_124182
                    dc.l unk_125182


Чтобы добавлять новые текстуры/графику предметов и тд придется это все делать движимым. Так что пока вытаскиваю всю графику в отдельные файлы. Благо там как раз до конца рома и больше нет ничего.

З.Ы. Темку переименовал, пусть здесь все связанное с графикой тусит))


 
SmokeДата: Пятница, 16.09.2011, 01:10 | Сообщение # 8


 Get Serious!
Сообщений: 548
Статус: Offline
 

Двери, открываемые ключами будут=)
Прикрепления: ZT2_000.bmp(210Kb)


 
SegamanДата: Пятница, 16.09.2011, 19:59 | Сообщение # 9


 
Сообщений: 6
Статус: Offline
 

ОГО О_0
и реально пашет?
это ты в коде нарыл или сам написал.
и еще хочу предложеньице внести по модернизированию конфигов.
надо сделать списки сопоставлений обьектов блокам.
т.е. это стена, а то враг. и с разными уровнями чтоб можно было заменять.
ну или с каждым эпизодом. ато неудобно както.
если что = редактор с меня, только обьясните наконец, чем конфиги бзт от зт отличаются




GenVaideo 99%
DuneMapEditor3 98%
хак BTR 7%
Sumo Slam 100%
 
SmokeДата: Пятница, 16.09.2011, 22:22 | Сообщение # 10


 Get Serious!
Сообщений: 548
Статус: Offline
 

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


 
Форум » Elektropage.ru » Zero Tolerance [smd] » Beyond Zero Tolerance -- графика (Инфа, инфа, инфа...)
Страница 1 из 11
Поиск:


Select language:
English
French
German
Portuguese
Chinese
Nemesis_c, r57shell, Smoke, Lipetsk, GoodBye (aka vfiuchcikicshuusrch) & Segaman © 2017
Хостинг от uCoz