Category: Видео

27
Апр
2021

Новые кирпичи

Добавил спрайты разных побитых киричей, сделал механизм их вывода. Пока даже не знаю, нравится мне новый вид подземелий или нет )) Возможно, надо их немного подправить…

Выглядит это так:

22
Апр
2021

Новая партия багов

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

  • BUG: скелет теряет интерес к принцу
  • BUG: после выпивания кувшина сверху наступает хаос
  • BUG: смерть в перевернутом виде неизлечима
  • BUG: после смерти нужны другие маски

Итак, исправлено:

  • BUG: скелет теряет интерес к принцу
  • BUG: плита не падает в 11м
  • BUG: после выпивания кувшина сверху наступает хаос
  • BUG: смерть в перевернутом виде неизлечима
  • BUG: при спрыгивании из виса неверно считалась высота
  • BUG: на заносе пролетает сквозь закрытую решетку
  • BUG: глухой стражник в 9м

Тот самый глухой стражник:

В оригинале ситуация не сильно отличается:

19
Апр
2021

И вновь продолжается бой!

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

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

Вот как теперь ведет себя стражник:

15
Апр
2021

Новая порция багов отловлена

Благодаря Желтому Кролу обнаружены и прибиты следующие баги:

  • иногда мелькали остатки спрайта принца слева при смене окна
  • принц с мечом ходит сквозь решетки??
  • в 8-м глюк при входе
  • левитация перестала выключаться при загрузке нового лабиринта
  • в 5-м мультик должны запускать обе плиты, как оказалось
  • при маленьком шаге поздно нажимает кнопку

И очередной смешной баг:

Теперь стражник обучен:

 

 

11
Апр
2021

Стражники тоже будут вечны

Желтый Крол нарыл глюков, приходится их исправлять 🙂 Среди них такие, за которые браться надо было, конечно, но очень не хотелось. Со стражниками я знатно помучался, они стали хорошо драться, но вот на границе экрана вытворяли всякие странности. Убил на это два дня, но теперь стражники уже не впрыгивают в окно как черт из табакерки, а входят плавно, причем сначала постепенно появляется меч и т.д. Для этого пришлось сделать специальную процедуру поиска стражника в соседнем окне. Теперь на границе окна со стражником можно драться. Но еще есть артефакты — иногда вылезает все-таки спрайт на противоположную сторону. Будем с этим бороться.

Заодно добавил мигание последней жизни стражника. А также исправил баг с запилом пилой — счетчик пустых жизней принца не выводился.

04
Апр
2021

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

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

02
Апр
2021

Плеер музыки в Принце заработал!

Сегодня внедрял плеер музыки в принца. Возникла странная проблема с проигрыванием упакованных psg — почему-то у одного файла был заголовок в 64 байта, а у других он в упор не создается. Т.е. звук выпивания большого кувшина играется нормально, т.к. у него есть заголовок, а звук для малого кувшина хоть убейся создается без такого заголовка. Плеер его, конечно, играть не хочет, потому что там первым делом пропускается 64 байта с начала звука. Ок, прицепил к нему эти 64 байта от звука большого кувшина — оба звука стали играться. Думаю, может он вообще нафиг не нужен? Убрал в плеере это смещение на 64 байта, подсунул ему звук малого кувшина без заголовка — играется! Отрезал заголовок и от мелодии большого кувшина — фигушки, не играется. Пока что неясно, будем разбираться.

Ну и ладно, прицепил к обоим звукам заголовки, встроил плеер в принца. Пришлось повозиться с процедурой начала воспроизведения музыки, ведь музыка выпивания кувшина должна начаться ПОСЛЕ окончания звука «Буль-буль-буль», а не вместо )) Хотя событие это одно. Сделал процедуру определения конца звука. Музыкальный плеер ждет, когда закончится какой-либо звук, потом выставляет максимальный приоритет во все каналы и начинает играть музон. Тут уже плеер звука ждет, когда закончится музыка. Ну и все получилось:

02
Апр
2021

А вот и музыку подвезли

Набрал музон выпивания большого кувшина в Vortex Tracker, пытаясь сделать его похожим на оригинальный. Затем сохранил его в формате pt3. Потом преобразовал его в PackedPSG с помощью утилит Владимира ‘KUVO’ Кутякова, за что ему огромное мерси. Потом взял исходник его же плеера psgplay, переписал его в формате micro1103, развернув макросы. Скомпилировал на БК. Прицепил к полученному плееру файл музона и вот результат:

 

Ура, товарищи! Теперь буду встраивать плеер в принца и скрещивать его с моим блоком воспроизведения звуков. Там уже есть система приоритетов, для воспроизведения конкурирующих звуков, так что я надеюсь, что все пройдет просто: плеер музыки выставит приоритеты в каналах больше, чем имеющиеся у звуков, и таким образом звуки не прервут музыку. Это «Я так думаю!» (с) Мимино

 

 

26
Мар
2021

Стерео!

Два дня правил звуки, расставил вызовы событий, в которых временно вручную указывал канал для воспроизведения (левый/центр/правый). Все звучало. И вот пришло время все-таки написать процедуру автоматического определения канала для звука. И тут мне в голову пришло, что все данные у меня уже есть — в любой точке вызова звука всегда известен адрес в экране того объекта, который издает звук. Просто надо передать его подпрограмме добавления нового звука в очередь, а та сама вычислит в какой канал этот звук разместить. Пришлось снова пройтись по всем исходникам и поменять при вызове звука номер канала на адрес в экране. И, конечно, добавить вычисление канала в саму подпрограмму добавления звука в очередь. И все зазвучало!