Разработка и ромхакинг > Ромхакинг и программирование
[SMD] Contra Super Hard Corps
<< < (5/5)
Segaman:
Не секрет что я снова занялся своим старым проектом. :cool:
Сейчас довольно активно его пилю.

Выражаю особую благодарность этим людям:  :hi:
Ti_,Dr.Mefisto,VLD,133MHz

Эту тему оставлю шапкой, так чтоб здесь всегда можно было скачать последнюю версию.

А так вот вам монтаж с тем что уже есть и еще одна версия рома

CHAGES.LOG: :crazy:

--- Цитата ---v0.0.4 - 19.10.2017
+figured level format
+huge changes to Level 1

v0.0.3 - 10.10.2017
+reduced the possibility of epilepsy on "Obj01B5 - Level 1 Giant Cyclops"
+improved palettes of player select, lev1 & lev4
+added variations to the rotation stick robot (after giant cyclops)
+reduced animation length of panic stick robot
+reduced HP of "Obj01B5 - Level 1 Giant Cyclops"

v - 09.10.2017
+adjustments to the intro sequence and texts
+increased "Obj0120-121 - Level 1 Mad Robot Soldiers" HP
+adjustments to the "Obj0120-121 - Level 1 Mad Robot Soldiers" AI
+small adjustments to the Player Jump Gravity (Like in old Contra games)

v0.0.2 - 04.10.2017
+increased "Obj009C - Level 1 Boss" HP
+adjustments to the "Obj009C - Level 1 Boss" AI

v0.0.1 - 30.03.2013
+small adjustments to the player select, lev1, lev2 & lev4 palette
+added damage hitpoints (thx Ti_)
+increased "Obj0181 - Level 1 Cendepide" HP
+increased "Obj009A - Level 1 Spider Mini Boss" HP
+small adjustments to the "Obj009A - Level 1 Spider Mini Boss" AI
+huge animation changes of "Obj01B5 - Level 1 Giant Cyclops"
--- Конец цитаты ---
Segaman:
я думаю что такой метод установки коллизии похож на костыль.
мол у конами есть редактор блоковых уровней, но нет редактора коллизий и они решли не париться, а присвоить тайлам коллизии.
это как если обвести фотографию. некрасиво, зато видно контуры и края  :lol:
ну и отнимать разницу спрайтов тоже костыль.
вместо того чтоб делать это вовремя подгрузки спрайтов, мы делаем это кажды раз, когда нам нужны координаты. о какой экономии ресурсов тут может вообще идти речь. видимо разработчики умудрились выстрелить себе в колено в самом начале разработки
Segaman:
+added behavior to robot spawner lev1
+added robot spawner at the 2nd section of lev1
+more faster animations for agro-spinner-robo lev1
+added jumping on the pits, and dying in the pits behavior for running robots lev1
+added robot ambush level 1
+added cheats from japan version
+added debugger object + debugger summon cheat (in pause l,r,l,r,a,b,c)
Segaman:
блин, забыл написать про рандомайзер в поведении всех боссов
AuAurora:
хы. Пока 1 лвл обрабатываешь только?
Segaman:
вообщем пока сам хак неразрабатываю, вот вам последняя сборка хака.
добавлены чит коды из японки и один новый чит, который позволяет спавнить обьекты.
в паузе: влево,вправо,влево,вправо,A,B,C

управление со второго геймпада:
D-Pad - перемещение указателя (звёздочка)
зажать A + вверх\вниз - выбрать ID обьекта
зажать B + вверх\вниз - выбрать sub ID обьекта (поведение, как правило глючит)
нажать C - заспавнить обьект и перейти в режим ожидания.
в режиме ожидания если нажать A, спавнер выйдет из ожидания.

демонстрация режима. смотреть с 3:38:05
Segaman:
интересные факты:

1) пули в игре на двоих действительно рисуются по очереди каждый кадр.
но вот что никому не было известно, так это метод учёта их столкновения.
дело в том, что когда пуля рисуется, она записывается в стэк для пуль, и потом обьекты, желающие получать по щам, чекают координаты всех пуль из этого стэка.
но это также означает, что при игре на двоих, первый кадр в стэк попадают только пули первого игрока, а второй кадр - второго.
именно поэтому некоторе моменты в игре пули несталкиваются с обьектами при игре на двоих.

2)по очень непонятной причине в коде присутсвует бессмысленная запись одного слова из начала списка спрайтов в видео ОЗУ.
учитывая, что перед этим вся таблица спрайтов посредством DMA полностью отправляется в точку назначения в видео ОЗУ, данная операция совершенно бессмысленна.
и куда более бессмысленно сохранение состояния видео регистра 1 ($81) в d5, учитывая, что это состояние потом невозвращается.
глядя на ту кропотливость в написанном коде такое мизерное, но всё же странное упущение кажется совершенно не уместным.


3)музыкой и звуками в игре занимается сопроцессор. для общения с игровым движком у звукого драйвера есть ячейка в один байт для приёма звуков и музыки к воспроизведению. но так как при активном геймплее есть шанс воспроизвести одновременно несколько звуков, имея только один байт ячейки звука, велик шанс пропустить некоторые из них. для этого разработчики прибегнули к стэку для звуков.
все идентификаторы звуков и музыки отправляются в этот стэк, а он уже в свою очередь опустошается на одно значение каждый кадр.
этого времени достаточно для сопроцессора, чтобы обработать каждый идентификатор звука из этого стэка.
таким образом ни один звук или музыка не проходит мимо сопроцессора.
а также велик шанс перенагрузки такого стэка при активном геймплее.
например в уровне 4, когда начинается уровень в джунглях , на вас нападают разъярённые аборигены с топорами. их там большое колличество и иногда можно заметить, как после стремительного убийства всех их, звуки их убийства продолжают еще какое-то время воспроизводиться.

4)PCM звуки имеют программное смешивание аж 3-х каналов. чтобы это проверить достаточно спамить в опциях воспроизведение голосового звука.
такой подход позволил сильно разграничить звуковую состовляющую аудио композиций.

5)ввиду большого колличества PCM каналов сильно пострадало их качество воспроизведения.
благодаря Vld, вы можете послушать, как бы звучали PCM звуки в игре не будь в ней такой многоканальности.
в архиве несколько PCM звуков в чистом их виде вырезанные из ROM-а
bgr:

--- Цитата: Segaman от 12 Апрель 2018, 03:54:20 ---5)ввиду большого колличества PCM каналов сильно пострадало их качество воспроизведения.
благодаря Vld, вы можете послушать, как бы звучали PCM звуки в игре не будь в ней такой многоканальности.
в архиве несколько PCM звуков в чистом их виде вырезанные из ROM-а
--- Конец цитаты ---
Сегамен задумал запрягсти Vld переписать все мелодии в трекерный формат и ограничить PCM-каналы? :ohmy:
Где марево?! >:(
Segaman:
Закоммитил последние изменения хака в гитведро
https://bitbucket.org/Segaman68k/super-hard-corps/src/master/
Сега добрый  :)

Добавлено позже:
алсоу тут хак организовался, уже успели чекнуть?
гврят релиз 23 февраля в день "ударов корреспонденту по лицу возле фонтана в одежде ВДВ-шника" :lol:

Добавлено позже:
имхо казуальный хак  :lol:
Навигация
Главная страница сообщений
Предыдущая страница

Перейти к полной версии