Category: Баги

10
Апр
2021

Новая музыка и старые баги

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

Поправил и другие баги, обнаруженные Желтым Кролом:

  • при слезании с блока закалывался на шипах
  • не всегда терял жизнь при прыжке со второго  этажа
  • некорректно менялось окно при слезании в крайнем правом положении (ноги-призраки)

Добавил мелодию перехода в новый лабиринт:

07
Апр
2021

Шипят шипы

Желтый Крол заявил, что столб от решетки криво накладывается на принца. Маска имела по одному пикселу слева и справа от столба, чтобы создавать некий «бордюр». Перерисовал маску. Принц стал просвечивать в столбце шириной в 1 пиксел справа от столба, если решетка стоит в крайнем правом элементе окна. Расширил столб. Решетка стала некрасиво накладываться на столб, и ковры в дворцовых лабиринтах тоже прилипли к столбам. Перерисовал решетку, маску решетки, все углы решеток, все ковры. Заодно перерисовал маску арки в дворцовых лабиринтах — сделал ее тоньше. И с разгону сделал еще и маску для шипов. Теперь принц чинно-благородно гуляет между ними, а не затирает их собой:

Да, еще был исправлен высотомер, тоже по наводке YellowRabbit.

 

05
Апр
2021

Правим звуки

Реализовал случайные последовательности звуков для «качающихся» плит пола, как и в оригинале. Каждый раз выбирается новая, в меру сил случайная, последовательность звуков.

Желтый Кролик нашел глюк: если взять меч в первом лабиринте и помереть, то при новом входе в лабиринт меч уже в наличии. Исправлено.

 

04
Апр
2021

Эта музыка будет вечной

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

01
Апр
2021

Стражники — это не только ценный мех

Пришло время убрать лишнее смещение стражника при блоке, которым я их пихал в пропасти и шипы для отладки. Шаг я убрал и тут поломался цикл «удар-блок-удар» которым можно было бесконечно обмениваться с крутыми стражниками. Я начал смотреть почему и выяснилось, что принц не всегда делает после блока шаг назад в оригинале, а только если за его блоком не следует удар. Сделал так же. Цикл «удар-блок-удар» начал получаться, НО ТОЛЬКО ОДИН РАЗ, на второй раз стражник почему-то не ставил блок и пропускал удар. Нашел две ошибки в программе определения расстояния между принцем и стражником. Стражник, оказывается, после первого блока оказывался ближе, чем раньше, и получал команду «делай шаг назад, принц слишком близко», не смотря на то, что принц наносил удар и потому и был близко, собственно. К тому же, решив проверить как ведет себя стражник 8-го лабиринта в оригинале, я с удивлением обнаружил, что он часто и вовсе не вступает в этот цикл «удар-блок-удар», а может просто назад отойти. И потому его можно там скинуть в пропасть. А у меня его невозможно было назад заставить идти, он сам всегда принца уталкивал в яму. Я добавил стражнику случайных чисел и теперь он иногда отскакивает. И стало очень похоже на оригинальное поведение 🙂 Ну, а визирь в итоге получил весь арсенал и вообще окрутел ))

Пофикшены баги:

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

Yellow Rabbit взялся за ежедневное тестирование принца, это отлично. Два первых бага из списка нашел именно он.

30
Мар
2021

Двойник починен

Хотел сегодня заняться встраиванием музыки, и даже набрал музон выпивания большого кувшина, но вдруг выяснилось, что поломан бой с двойником в 12-м лабиринте. Получилось так из-за изменения места спрайтов двойника в ОЗУ СМК. А страницы-то в таблицах были указаны старые. Однако, разобраться в этом было не так просто. Заодно сделал нормальный вывод потайных плит, которые были поломаны аж при замене подпрограммы определения препятствий. Ну и добавил от себя маленькую ловушку, чтобы жизнь медом не казалась ))

Весь день на это и ушел. Займусь музонами завтра, пока на работе есть передышка с концертами )

 

28
Мар
2021

Мелкими шагами Боб движется…

Сегодня была куча работы, и завтра тоже будет. Но из принципа исправил пару глюков в принце, хоть понемногу но продвигаться надо 🙂

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

17
Мар
2021

Снова в бой

Потребовалось некоторое время отвлечься на работу, бывает! Сегодня снова занялся принцем. Наконец-то исправил старейший баг с обрезанием рук принца при выходе их в верхний экран. Теперь принц висит на стене как положено:

Раньше же руки ему в этом случае обрезались по самую голову. Я уже как-то пытался исправить этот глюк но не нашел места, в котором бы вообще проверялась верхняя граница спрайта, т.к. писал это еще Женя. И сегодня я все-таки понял почему. Я не мог найти такого места, потому что нигде она и не проверялась. Если попадался вывод в элемент верхнего окна, то принц тупо не накладывался на этот элемент вообще, потому никаких запчастей выше уровня кирпича и не могло быть.

Исправил глюк, возникший после переделки вывода падающих плит (в сотый раз уже).

Заметил, что в принца уже можно играть как вполне в рабочую игру ))

Пора вплотную заняться звуком на AY.

06
Мар
2021

Продолжаю править баги и не баги

Исправлено:

  • BUG: если стражник дохнет на кнопке то заменяет ее на фрезу!
  • BUG: двойник из зеркала вылезает в экран слева
  • BUG: взятие меча с глюками при складывании после отказа от свопа
  • BUG: после двойника в 4-м стражник тоже как двойник
  • BUG: после прыжка сквозь зеркало должна остаться одна жизнь
  • BUG: у зеркала должна быть маска
  • BUG: у ковра тоже должна быть маска
  • BUG: в 10м можно впрыгнуть сквозь решетку слева внизу
  • BUG: принц уходит с кнопки, на которую упали обломки, и она поднимается
  • BUG: стражник не реагирует на звук прыжка с высоты
  • BUG: если на экране несколько фрез, то кровавыми становятся все, а не только та, которая запилила
  • BUG: при входе в первый лабиринт контузия быть должна, а жизнь теряться не должна
  • BUG: при входе должно быть 3 жизни
  • BUG: неверно было распределены лабиринты по двум файлам

Ну и теперь принц уже должен сам брать меч, изначально его нет.

Переход на загрузку всего в SMK позволил убрать загрузку спрайтов фехтования, теперь просто подключается страница с ними. Раньше при начале боя грузились спрайты с винчестера, для этого приходилось подключать ПЗУ контроллера винта. После боя снова грузились спрайты бегающего принца. Это позволяло экономить память, но больше такой своп особо применить было негде: все остальные спрайты принца и текущего лабиринта могут понадобиться в любой момент.

 

28
Фев
2021

AY!

Сегодня было немного фиксов:

  • исправил кровищу на фрезах — после первого запила она потом была на всех фрезах
  • перерисовал спрайты заколотого шипами и запиленного фрезой стражника — у них была чалма от визиря
  • исправил фехтование «простых» стражников в 8-м лабиринте,  у них стоял флаг крутости
  • стражник на шипах теперь выводится правильно, если выйти из окна с ним и снова войти (раньше шипы исчезали, а стражник висел в воздухе)
  • при фехтовании принц терял меч, если упирался спиной в решетку
  • стражник игнорировал звуки принца (было поломано при разборках со звуками на кадр позже)

 

А также сегодня начал делать звуки для AY. И вот первый звук:

Потом все повешалось, но это уже неважно ))