User Tag List

Показано с 1 по 10 из 10

Тема: Замок гоблинов (с другой музыкой) для УКНЦ

  1. #1

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Замок гоблинов (с другой музыкой) для УКНЦ

    Перетащил (свой-же) замок гоблинов на УКНЦ. То-есть путешествия гоблинов привели назад к УКНЦшным истокам.
    Ничего особенного - переделанный оригинал замка гоблинов. Ценен возможно тем что содержит музыку .pt3 для проигрывания на звуковухе версии Аберранта.

    Стрелки - бегать, пробел - убрать мелкие кирпичи под человечком (есть предел убирания кирпичей - после штук пяти надо подождать пока восстановятся)
    Enter - остановиться. Если при падении нажать enter или вверх - остановится на цепи (не пролетит через нее).
    Кнопки держать не нужно (всё как в оригинале). Пока бежит скажем вправо и впереди лестница ведущая допустим вверх - достаточно нажать и отпустить вверх - добежит до лестницы и полезет вверх итд.
    Стоп - выход в меню.
    В стартовом меню выбрать уровень I нажать К1 - покажет win screen.

    Из любопытного
    1) Игра требует слежения за лучом экрана (в БК-0010 совсем нет памяти для фреймбуфера и, чтобы спрайты не мерцали, я их вывожу довольно просто - пока луч экрана находится вне игрового поля). Эта-же логика (из-за лени) была перетащена и в УКНЦ. Но поскольку здесь у нас эмуляторы не эмулируют реальный луч экрана кинескопного телевизора - пришлось добавить код определения запуска игры на эмуляторе. Использовал (спасибо Alex_K) известный баг процессора ВМ2 для определения запущена-ли игра на эмуляторе или на реальной УКНЦ. Правда не слишком уверен что баг сработает прямо вот на всех УКНЦ. Там в цикле 10. раз крутятся команды mov (PC), R0 / inc R1 / br .+2 / br .+2 / br .+2 (набор br как я понимаю нужен для сброса предвыборки) и проверяется R1=10. На реальном процессоре будет вовсе не 10.
    2) Кое-что перетащить с БК довольно непросто. Несмотря на то что УКНЦ мощнее/больше памяти/аж джва процессора итд. Например в БК экран адресуется байтами по 4 пикселя. Тайлы в 12 пикселей шириной вы БК выводятся тремя movb. А теперь (та-да) - и как в УКНЦ выводить тайлы 12 пикселей шириной? Тут у нас "квант" вывода графония это слово в 8 пикселей. Можно теоритезировать что "ну выведи два слова не полностью" и тд - но поверьте - как только до практики портирования доходит - сразу вылезают подводные камни. В итоге сделал экран шириной 640 и вывожу три слова по 8 пикселей (спрайты/тайлы в игре УКНЦ шириной в 24 пикселя кстати как в оригинале гоблинов, просто они выглядят будто в низком разрешении)

    .sav-ка: https://github.com/blairecas/goblin2...2.sav?raw=true
    .dsk с автозапуском: https://github.com/blairecas/goblin2...2.dsk?raw=true



    Последний раз редактировалось BlaireCas; 17.01.2025 в 08:35.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

    Эти 4 пользователя(ей) поблагодарили BlaireCas за это полезное сообщение:

    lordamot(17.01.2025), Oleg N. Cher(17.01.2025), Titus(17.01.2025), Xrust(21.01.2025)

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    14.02.2022
    Адрес
    г. Пенза
    Сообщений
    4
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Супер!

  4. #3

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    пришлось добавить код определения запуска игры на эмуляторе
    А на эмуляторах как синхронишь с лучом?

    Игра классная, но хорошо бы поменять вырвиглазную бк-шную палитру на что-то другое)

  5. #4

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    А на эмуляторах как синхронишь с лучом?
    Если игра определит что запущена на реальной УКНЦ - она делает следующее:
    1) Наступает кадровое прерывание, в его обработчике запускаем таймер периферийного процессора с некоторым значением чтобы он отсчитал сколько-то там микросекунд (подобрано чтобы луч примерно был на уровне рамки вон той красной на ее нижней части, то-есть чуть ниже области где рисуются спрайты).
    2) По наступлению прерывания от программируемого таймера запускается игровой loop - рисуются спрайты первым делом, далее там логика, музыка итд. Спрайтов всего три штуки и они успевают отрисоваться до момента когда луч заедет (уже сверху) на область рисовки.
    Если такое оставить в эмуляторах - в твоем один (а может и два) станет мигать, у Никиты может половину или весь спрайт не отрисовать. Ну вот так весело совпадают тайминги.
    Поэтому для эмуляторов п.2 запускается тупо по vsync (ну по вектору 100). Внезапно всякие мигания в эмуляторах пропадают и всё становится хорошо (но если такое провернуть на реале - замигает уже на нем, он не успеет прорисовать спрайты если они допустим в самом верху)

    - - - Добавлено - - -

    Цитата Сообщение от Titus Посмотреть сообщение
    хорошо бы поменять вырвиглазную бк-шную палитру
    А можно и вообще всю игру по другому сделать поскольку в УКНЦ есть и место для фреймбуферов и она мощнее и тд итп.
    Просто я немного начал понимать почему допустим игры для 128-го спектрума практически такие-же как для 48-го. Ведь можно скажем было-бы в саботер-2 запихнуть ЕЩЕ ТРИ здания / накидать тайлов побольше / добавить движений ниндзе - памяти-то много! А вот фиг - делается на младшую модель, затем тупо переносится на старшую, а чего-то улучшать/добавлять - да делать больше нечего, ну его Также и тут - поскольку техника у нас похожая - делается на младшую модель (она-же БК0010 - портируется на "более старший" УКНЦ как есть, ну разве что добавить мол музыку и прочие легко добавляемые плюшки).
    Последний раз редактировалось BlaireCas; 17.01.2025 в 16:35.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

    Эти 2 пользователя(ей) поблагодарили BlaireCas за это полезное сообщение:

    Titus(17.01.2025), Xrust(21.01.2025)

  6. #5

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    А можно и вообще всю игру по другому сделать
    Если просто поменять палитру, уже будет лучше)

    - - - Добавлено - - -

    Хорошо бы еще добавить выбор скорости, чтобы те, кто не так проворны, могли не спеша поиграть)

  7. #6

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Если просто поменять палитру
    Могу сделать юзерский выбор палитры, это несложно. Лично я привык уже и к стандартной БКшной (синий несколько темноват впрочем). Подскажешь какие цвета поставить на место синий- зеленый-красный из допустимых в УКНЦ - ну окей. (желательно только вот без этого вот 128 цветов.. У меня на одной из УКНЦ их вообще всего 8 даже градации яркости не распаяли)
    Последний раз редактировалось BlaireCas; 17.01.2025 в 18:22.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

    Эти 2 пользователя(ей) поблагодарили BlaireCas за это полезное сообщение:

    Oleg N. Cher(19.01.2025), Xrust(21.01.2025)

  8. #7

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    желательно только вот без этого вот 128 цветов..
    А почему не из 128? Пусть пользователь выбирает сам.
    Тебе как автору виднее, какие варианты раскраски предложить.

  9. #8

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Пусть пользователь выбирает сам.
    Так выбор будет из дефолтно зашитых настроек (несколько пунктов выбора раскрасок в меню, жмешь кнопку 3 допустим - ну и прокручивается палитра). Вот.. Поскольку делать какой-то экран с выбором "вот это хочу" - слишком уж перебор, ну извините, реально перебор. Надо зашить штук даже не знаю сколько.. ну штук 8 разнообразных палитр. А каких - мне тут неведомо, из меня плохой художник. Посему оставлена дефолтная. RGB, чего еще надо, синий есть, красный тоже, зеленый.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

    Этот пользователь поблагодарил BlaireCas за это полезное сообщение:

    Oleg N. Cher(19.01.2025)

  10. #9

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    А каких - мне тут неведомо, из меня плохой художник.
    Не скромничай) Ты хорошо подбирал графику и палитру в других играх)

  11. #10

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Кстати, предлагаю предусмотреть такой случай, когда эмулятор будет уже близок к точному по таймингам, но глюк процессора эмулироваться не будет.

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

    А то в будущем могут появиться более точные, но не 100%-е эмуляторы, и твоя игра на них будет глючить.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 247
    Последнее: 17.11.2024, 07:55
  2. Игра "Замок гоблинов" (Goblin Castle) для БК
    от BlaireCas в разделе БК-0010/0011
    Ответов: 2
    Последнее: 05.11.2024, 17:58
  3. Я другой Dimon! )
    от Dimon spb в разделе Люди
    Ответов: 7
    Последнее: 11.04.2022, 15:52
  4. Ответов: 11
    Последнее: 13.07.2021, 16:06

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •