|
|
|
|
|
Профиль : |
|
Я думаю было бы несправедливо оставить новую версию Shadow Warrior TC в темке на здум-форуме. О соотечественниках я тоже думаю как-никак)
Предыстория для всех: Как то был момент, я баловался декорейт-кодом, мутил всякие пушки. Первым небольшим модом был Alien Trilogy, который у меня сейчас так и заморожен. Мне тогда, да и сейчас в принципе, очень нравилась игра "Трилогия чужих" с разнообразными врагами, уровнями, но столбняк вышел когда дело дошло до спрайтов врагов. Где их брать и как брать - вопрос который волнует меня и сейчас. Пока мод заморожен, но как только что то выйдет со спрайтами монстров - можно будет запилить НОРМАЛЬНУЮ конверсию, а не поделки, как на здум-форуме.
Плавно перейдём в тематику build-игр. Ровно тогда же, когда вышел столбняк, я переключился на мою не менее любимую игру - Shadow Warrior. Игру которую я прошёл даже в стрёмном русском переводе, и английском на последнем уровне сложности) Ресурсы билдовской игрушки вкрыть было не так уж и трудно, было гораздо труднее воссоздать оригинальные анимации оружий, врагов, итемы. Мод прошёл немало переделок. Как когда то я писал в описании на ютюбе к демонстрации мода - занимался фигнёй и вычислял офсеты оружий из разложенного на кадры видео. Но до этого я дошёл позже, когда понял, что вид мода был дерьмовый и нужно было всё кардинально переделывать Потом всё снова прошло переделку, но уже с учётом думовского поведения кадровмонстровитемовфизики и вообщем доплыло до той альфы, которую я выкладываю сейчас.
Что в данный момент сделано: 1. Первое и самое главное - боле менее отлажены оружия и их анимации. Даже буржуи удивились, хотя некоторые типы умудрились обвинить меня в плагиате и сказать, что делал всё не я вообще) 2. Основные носимые итемы боле менее переделаны и отлажены. 3. Монстры. Хмм... я уже и не помню сколько раз я их переделывал, но довольно много. Сейчас уже выглядит довольно неплохо.
Последние изменения: 1. Меч и кулаки покрываются кровью, если побить монстров) 2. Добавлены новые монстры из оригинальной игры - Momma Ripper, SumoGuy, Невидимые ниндзя. 3. Переделана система спавна монстров - играть стало ЗНАЧИТЕЛЬНО легче, т.к. все мобы перестали просыпаться одним разом, если начать пальбу. 4. Немного подкорректированы дамаги оружий, однако основной игровой баланс всё равно очень хромающий, пока что не ставлю его главной задачей, т.к. не все монстры перенесены. 5. Сами монстры теперь не такие резвые как раньше и двигаются довольно плавно)
Ссыль на последний билд мода:
http://s000.tinyupload.com/?file_id=36556929645067818141
Развлекаемся и параллельно пишем про баги, пожелания по балансировке(балансировка ТОЛЬКО в дамагах, анимации не затрагиваем) ну и вообще по игровому процессу(что копирует оригинал, что не копирует. Поверьте, задумка - именно качественно перенести все, в идеале скопировать)
----- LEX |
|
Всего записей: 61 : Дата рег-ции: Март 2011 : Отправлено: 25 Ноября, 2014 - 17:07:22 |
|
|
|
|
Профиль : |
|
> Shadow Warrior TC на здум эээээ, а почему не jfsw?
|
|
Всего записей: 208 : Дата рег-ции: Апр. 2009 : Отправлено: 25 Ноября, 2014 - 19:58:42 |
|
|
|
|
Профиль : |
|
Цитата: Ну наверное скорее всего, потому что JFSW - это порт оригинальной игры, а Zdoom - порт дума. Собсна задумка состоит в том, чтобы максимально приближённо перенести все с оригинальной игры в думовский движок с учетом его параметров. Сейчас здумное ядро позволяет творить очень разнообразные вещи))
|
|
Всего записей: 61 : Дата рег-ции: Март 2011 : Отправлено: 25 Ноября, 2014 - 22:13:14 |
|
|
|
|
Профиль : |
|
Цитата:но столбняк вышел когда дело дошло до спрайтов врагов. Где их брать и как брать - вопрос который волнует меня и сейчас. Пока мод заморожен |
и насколько удалось продвинуться? Код: palladium:~/mydev/dos/alien/CD/SECT11: file ./122GFX.BIN ./122GFX.BIN: IFF data palladium:~/mydev/dos/alien/CD/SECT11: hexdump -C ./122GFX.BIN|head 00000000 46 4f 52 4d 00 05 11 e8 50 53 58 54 49 4e 46 4f |FORM....PSXTINFO| 00000010 00 00 00 10 00 01 00 01 08 00 33 01 05 00 05 00 |..........3.....| 00000020 06 00 01 00 54 50 30 30 00 01 00 00 b0 ac b0 b0 |....TP00........| 00000030 ac b0 b0 ac b0 b0 ac b0 b0 ac b0 b0 ac b0 b0 ac |................| 00000040 b0 b0 ac b0 b0 ac b0 b0 ac b0 b0 ac e0 de e0 e0 |................| 00000050 e0 d0 d3 d3 d0 d3 d3 de de e0 de d0 c2 de de de |................| 00000060 de de d3 d3 d3 de d3 e0 e4 e0 de e0 de de de de |................| 00000070 de e0 de de de de e0 de de de de e0 de de de de |................| 00000080 de e0 de de de de e0 de de de de e0 ed eb d0 5e |...............^| 00000090 f9 de de 5c de f7 eb 5e f9 f9 ea 5e fb f7 dc ce |......^...^....|
|
https://ru.wikipedia.org/wiki/Interchange_File_Format
Цитата: Interchange File Format (IFF) — формат файла-контейнера, разработанный в 1985 году корпорацией Electronic Arts совместно с Commodore для новой платформы Amiga с целью упростить обмен данными между ПО различных производителей. Контейнер IFF может содержать любые данные (звук, графику, текст и пр.)
|
Код:typedef struct { char ID[4]; // FourCC идентификатор LONG Size; // Размер блока данных UBYTE Data[Size]; // Данные } Chunk; |
Цитата:There are predefined group chunks, with type IDs ‘FORM’, ‘LIST’ and ‘CAT ’. A FORM chunk is like a record structure, containing a type ID (indicating the record type) followed by nested chunks specifying the record fields. A LIST is a factoring structure containing a series of ‘PROP’ (property) chunks plus nested group chunks to which those properties apply. |
|
|
Всего записей: 208 : Дата рег-ции: Апр. 2009 : Отправлено: 26 Ноября, 2014 - 11:41:09 |
|
|
|
|
Профиль : |
|
хотя нет, уже нагуглил на олдгеймс. вопрос исчерпан. |
|
Всего записей: 208 : Дата рег-ции: Апр. 2009 : Отправлено: 26 Ноября, 2014 - 18:44:39 |
|
|
|
|
Профиль : |
|
Да, да, я тоже пытался что то расшифровать, но у меня во первых - тупо мало знаний в этой области, во вторых -в игре используется какая то странная компрессия у спрайтов.(Хотя мб она и не такая странная, как кажется, просто как уже упоминал - познаний по форматам довольно мало) Та структура не очень сильно подходит. Если файл разбирать дальше, то выясняется, что один отсек TP00(у спрайтов он называется F000 - расшифровывается как Frame 000) может содержать не один спрайткадр, а например 7 или больше. Сами то куски файлов найти можно, но вот я пока не смог понять как вообще расчитываются смещения в файлах. Зато понятно, что файл сам по себе древовидный и в 16битных спрайтах использует свою палитру(которая кстате лежит вообще открыто, отдельным отсеком C000 - Colour 000)
Кстате flanker - у тебя есть какие либо знания в структурах файлов(по компрессиям изображений)? Можно было бы списаться в скайпе например и я бы рассказал по подробнее, что смог откопать, пока формат ковырял. Гляди того осуществим мечту многих людей - вынуть ресурсы трилогии чужих))
(Отредактировано автором: 28 Ноября, 2014 - 16:43:34) |
|
Всего записей: 61 : Дата рег-ции: Март 2011 : Отправлено: 28 Ноября, 2014 - 16:34:10 |
|
|
|
|
Профиль : |
|
от меня к сожалению тоже толку мало, я, как уже говорил, ни разу не специалист. >знания в структурах файлов(по компрессиям изображений) нужно делать поправку на время. основной метод компрессии который использовался в то время зто RLE, т.е. когда последовательность одинаковых байтов заменяется парой: {количество:значение} Во множестве блоках файлов трилогии я видел длинные провторяющиеся последовательности байтов, это значит, что компресси там нет, это чистые RAW данные. Сложные форматы компресии начали появляиться только с появлением пентиумов. Но в игрострое такие форматы не очень любят, потому как картинку надо выдавать в режиме реального времени, тратить время на сложную декомпресси никто не будет. В целом, в файлах я не увидел ни шифрования ни даже контрольных сумм. Что это дает? что бы понять структуру и назначение тех или иных блоков данных, можно в hex-редакторе RAW данные забивать, например, нулями и смотреть как это отобразится на графике. Отсюда делать выводы. на данный момент я разобрался только со длинами блоков:
красным и синим указаны общий оффсет файла и оффсет блока TP00(для других блоков оффсеты также идут: четыре байта сразу после идентификатора). Наиболее любопытно здесь то, что смещения записаны не в обратной нотации, т.е. обычно многобайтное число пишется по принципу: младшие байты в младшие адреса. здесь наоборот. возникает вопрос, насколько широко используется этот принцип... это пока все, что есть. Если еще что найду, дам знать.
|
|
Всего записей: 208 : Дата рег-ции: Апр. 2009 : Отправлено: 29 Ноября, 2014 - 07:52:47 |
|
|
|
|
Профиль : |
|
Цитата:нужно делать поправку на время. основной метод компрессии который использовался в то время зто RLE, т.е. когда последовательность одинаковых байтов заменяется парой: {количество:значение} Во множестве блоках файлов трилогии я видел длинные провторяющиеся последовательности байтов, это значит, что компресси там нет, это чистые RAW данные. |
Не совсем. В файлах с текстурами(блоки с названием T000 - Texture 000) по сути лежит разжатая графика, почему - потому что изображение само по себе большое(на сколько знаю там дальше где то есть байты отвечающие за разрешение, размер картинки как правило 256х256, а сама структура чем то напоминает ту, что у bmp, поэтому одна программа у меня изображение там видит). Для интереса посмотри спрайты мостров или спрайты оружия. Когда откроешь файл, там будет блокблоки с названием F000...F003 и т.п. При как писал ранее, по моему предположению F000 расшифровывается как Frame 000 и содержит в себе не один спрайт, а сразу кучу. Т.е. это уже своеобразная иерархия. Для наглядности покажу скрином:
1600x900(276.67 kB) Я отметил самое основное. После блока F000 по всей видимости идут два разделительных байта, после них идут байты, отвечающие за какие то параметры конкретного изображения(кадра). Один отвечает за фон это точно - проверил уже не на одном похожем файле(и у монстров файл со спрайтами такой же, на скрине файл со спрайтами пистолета). После того, как закончится первый кадрспрайт, в ЭТОМ ЖЕ блоке(т.е. F000) есть ещё одно изображение, где есть такие же параметры. Если менять числа в этих параметрах(кроме фона), то игра летит, что наводит меня на мысль, что тут что то связано со смещением(может и не полностью, пока я не совсем понял что отвечает за разрешение в этом наборе параметров). И тут я опять вернусь к сжатию графики. Посмотри на скрине справа символьный код. Мне вот покоя не даёт этот символ "P". При чём если поменять в нём значение, то изображение не ломается полностью, а как то частично. Мб это и есть что то наподобе RLE?
(Отредактировано автором: 01 Декабря, 2014 - 14:17:09)
----- LEX |
|
Всего записей: 61 : Дата рег-ции: Март 2011 : Отправлено: 01 Декабря, 2014 - 14:10:28 |
|
|
|
|
WWW : Профиль : |
|
Я так понимаю, вы обсуждаете ART-файл?
226x136(12.39 kB)
Картинки там не сжатые
Структура ART-файла:
artversion numtiles tilestart tileend tilesizx[] tilesizy[] { AnimLength XOffset YOffset AnimSpeed } Picture[]
(Отредактировано автором: 01 Декабря, 2014 - 14:43:30) |
|
Всего записей: 946 : Дата рег-ции: Янв. 2008 : Отправлено: 01 Декабря, 2014 - 14:41:44 |
|
|
|
|
Профиль : |
|
Не не не братиш, мы обсуждаем bnd файлы(и b16) в игре alien trilogy. Мод в начале темы про билдовскую игрушку ведь, в ней то я вынимаю что мне нужно. В трилогии чужих спрайты скорее всего именно сжатые.
----- LEX |
|
Всего записей: 61 : Дата рег-ции: Март 2011 : Отправлено: 01 Декабря, 2014 - 19:13:10 |
|
|
|