Decade of Ruin для Commodore 64. Последние новости разработки

Началось все с журнала ZZAP!64. Это очень древний журнал, посвященный Commodore 64, и так уж вышло, что моя игра приглянулась одному из редакторов.

Decade of Ruin для Commodore 64. Последние новости разработки

Пожелал он выставить демо версию игры в последнем выпуске, а нам с Grongy пришлось дорабатывать ее до более-менее стабильного состояния.

В дело пошел даже Godot, в котором мы стали делать уровни с последующей конвертацией в формат ассемблера.

Decade of Ruin для Commodore 64. Последние новости разработки

В срок мы успели, но не без косяков. Самая большая проблема была связана с боевой системой. Мало того, что людям не слишком зашло бесконечное QTE, так еще и код содержал критичные баги, связанные с аппаратными прерываниями.

И я подумал, что раз уж игра избавилась почти от всей RPG составляющей, почему бы не сделать из нее полноценный шутер, пусть и пошаговый.

Decade of Ruin для Commodore 64. Последние новости разработки

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

А вот защищаться надо все еще старым добрым QTE. Попал в зеленую полоску - молодец. Не попал или не успел - не молодец.

И расчлененка присутствует

Но главное - я избавился от всех критичных багов, а боевая система стала более плавной и быстрой.

Второе достижение - это мерцающие стены прямиком из Doom. Я предполагал, что невозможно уместить целую отрисовку экрана в одно аппаратное прерывание (читай, в один кадр). Все таки процессор с частотой 0.97 ГЦ не слишком предназначен для таких задач.

Но оказалось, что очень даже возможно. Конечно рисовать пиксели не получится, слишком их много, но вот палитру поменять вполне реально.

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

Стены мерцают в случайном порядке, а вот спрайты я трогать уже не стал

И немного цифр

Всего в игре планируется 7-9 уровней. На каждом уровне будут использоваться 64 уникальные текстуры. На каждые два уровня будет свой набор из 32 спрайтов и 16 разновидностей врагов, которые собираются из этих спрайтов (благо, что цвет врагов занимает шесть байт, и не приходится хранить для каждого врага свой набор пикселей).

Decade of Ruin для Commodore 64. Последние новости разработки

Игра на данный момент занимает 41,8 КБ оперативной памяти, но я не учитываю здесь то, что будет лежать на дискетах. А это уровни, враги, внутриигровая графика, разные заставки и музыка со звуками. Для прочих доработок у меня осталось более 8 КБ оперативки.

Планы на будущее

Тут будет один пункт. Звучит он так:

ВЫПУСТИТЬ ИГРУ В ЭТОМ ГОДУ!

Я правда утомился. Прошло уже почти два года, за которые я успел с нуля переписать почти готовый движок, написать кучу побочного софта и скриптов для разработки и наконец-то прийти к чему-то стоящему. А ведь еще звуки с музыкой надо добавить и 7 уровней сделать, а потом какой-нибудь баг вылезет, с которым будешь мучиться трое суток...

Ну ладно, поныл и хватит. Напоследок выкладываю небольшое видео с геймплеем.

6
2 комментария