Category: Разработка

20
Дек
2023

Получилось!

Сегодня удачно поработал:

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

Оптимизация «всего понемногу» в итоге дала кумулятивный эффект — в самых нагруженных местах все стало бегать вполне весело! И это очень радует, потому как именно эти тормозные места и были основной причиной задержки релиза.

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

19
Дек
2023

На всех парах

Переделал вывод «пара» из труб на скоростную анимация путем переключения страниц. Теперь трубы «парят» без какого либо вывода спрайтов. Можно еще и огонь переделать на этот принцип, но он сравнительно редко встречается.

17
Дек
2023

Борьба за скорость

Т.к. весь функционал игры уже готов и осталась свободная память, пришел момент для использования ее в борьбе за скорость:

  • отмена разворота черепов, скелетов и мышей удалась и дала нехилый прирост скорости ))
  • при выводе на четный адрес экрана попадается спрайт четной ширины — он выводится пословно
  • отлавливаются и спрайты шириной 3 и 5 байт, причем при выводе как по четным, так и по нечетным адресам экрана и при выводе та часть спрайта, которая может быть выведена пословно — выводится пословно. Прирост скорости налицо — беготня скелетов стала куда активней.

Нужно еще сделать вывод «газа» из труб по такому же принципу, как и водопады — вывести две фазы анимации на разные экранные страницы и дальше вся анимация уже только за счет переключения страниц, а вывода спрайтов нет. Этим еще дополнительно разгрузятся «тяжелые» места.

12
Дек
2023

Вот так начнешь рассматривать старинные портреты…

Вот так начнешь рассматривать старинные портреты… Оказывается, идею с выводом водопадов не постоянно, а путем однократного вывода и последующей анимацией потока только за счет переключения страниц экрана я так и не реализовал! Сегодня начал борьбу за общую оптимизацию и обнаружил это дело. Реализовал старую задумку, теперь водопады никак не влияют на общую скорость:

А также, сегодня доделал все, что связано с «пасхальной» локацией: вход, выход с возвратом в игру и на этом хватит терять на ней время.

 

08
Дек
2023

Секреты

Оставил все-таки элемент случайности в решениях Шерифа в демо-режиме, в итоге начальный демо-ролик иногда меняет сюжет, складываются прикольные ситуации.

Сделал подсчет процентов открытых секретов. В оригинале этого нет, но это добавит интереса игроку 🙂 При этом, чтобы набрать 100%, нужно найти и пасхалку, которая существует только на версии БК 🙂

 

07
Дек
2023

Заставка+демо

Прописал скрипт демо-режима. Тут пришлось отрубать ИИ Шерифу (как и стражнику в демо-режиме Принца), т.к. Балбес-то ходил и прыгал по скрипту, а вот Шериф мог и не явиться на встречу, т.к. у него каждый раз могут быть разные соображения насчет того как и куда идти. Собрал вместе заставку и демо:

05
Дек
2023

Демо

Сегодня Балбес успешно начал бродить по лабиринтам под управлением макроса вместо клавиш. Демо-режим на подходе 🙂

29
Ноя
2023

Добавил звуков

Сегодняшние фиксы:

  • добито управление воспроизведением фоновой музыки — глюки при рестарте игры обнаружил Alex Shestipaloff
  • добавил звуки рождения невидимых в данный момент Скелетов (сразу добавило похожести на геймплей оригинала)

Понемногу делаю локацию-пасхалку, из имеющихся спрайтов можно создавать всяческие штуки:

 

28
Ноя
2023

Чтоб тебя, Тэд из прошлого!

Отдал игру на бета-тест, уже есть результаты:

  • оказывается, я до сих пор не заблокировал СТОП!
  • при перезапуске игры теперь сохраняется статус вкл/выкл музыки и звуков

Так же добил прошлые баги:

  • +BUG: при выходе из второго в двери что-то мелькало и очки мигали
  • +BUG: приземление наискосок на замок — зависон
  • +BUG: урон от пули при уходе в телепорт
  • +BUG: пули летят сквозь стены?
  • +BUG: замок после открытия нарисовался ниже и потом при убийстве черепа все зависло

Три из них («приземление наискосок на замок»,»замок нарисовался ниже»,»при выходе из второго…») были следствием одной ошибки — переполнялся массив отложенного вывода элементов на второй экран. Такие комбо-действия как «открыл замок и тут же взял эликсир, а это вызвало срабатывание флага»,  вызывали больше изменений, чем планировалось. Увеличил место под массив.

Похоже, пришло время делать демо-режим, пасхалки и финальный мультик.