Кино! Кино! Кино!
Вид для печати
Кино! Кино! Кино!
Только сразу предупреждаю, что я далеко не Феллини. Получился какой-то отладочный run. По-моему, очень затянуто, много мельтешений и повторения. Сейчас, наверное, уже бы сделал по-другому, давая время послушать музыку в менюхах и не прыгая между ними как тушкан. В общем-то можно и переделать, если ещё не смонтировано, но это затянет всё ещё на несколько дней.
PPC, давай бету видео в массы!
потом будешь лоск наводить
Фильма:
http://www.youtube.com/watch?v=v8Q2DY7P2Ww
Персональное спасибо svofski!
Симпатично
можно предложение по дизайну?
Текст в меню, опции и бегущие строки должны быть выделены цветом ярче фона. в идеале белым. Иначе видно плохо
Спасибо.
К сожалению, видео вышло достаточно смазанным, даже цвета стали грязноватее. Причём проблема не в исходном видео, и даже не в mp4. Если смотреть mp4 локально, всё заметно резче. Это ютуба похоже какой-то фильтр типа бикубик ресамплера делает, и всё выглядит жуть каким размытым. Мы как раз со svofski обсуждаем, что можно сделать чтобы победить ютубу. Возможно, пережать в 1080 progressive поможет.
Текст в опциях и бегущей строке на самом деле полупрозрачный. Через него видно задний план, но, к сожалению, из видео это не совсем ясно. Сейчас текст выводится яркостью на бит выше. Попробую поднять на 2 бита чтобы оттенить сильнее.
Игрулей занимаюсь на выходных, когда время есть. Там ещё работать и работать до победы. Но зато уже доказано, что на Векторе можно сделать игру с двойной буферизацией в 4х цветах и с горизонтальным скролом.
Ну как для Вектора конечно наверное круто, но по дизайну да, предложения конечно к месту были бы.
По поводу видео можно почитать тут -> http://support.google.com/youtube/bi...r=1722171&rd=1
Я вообще подготавливал для загрузки в Camtasia Studio, там есть сразу опция подготовить видео для YouTube.
Конечно / наверное / совсем не круто / полный отстой / автора на выселки - это вы уж определяйтесь сами.
А насчёт предложений, и не только по дизайну - я завсегда приветствую, и в каждом релизе об этом прошу.
Так давайте, предлагайте, а то "были бы" к месту. Тем более, что это даже не ранняя бета, а где-то середина альфа-цикла. Не обещаю, что будет всё именно так как именно вы предлагаете, но обещаю что учту.
Там, кстати, не только с графикой, но и со звуком ещё конь не везде валялся. Например, звук неприятно обрывает при переходах с меню на меню. Думаете, я не в курсе? Тулкита, кстати, тоже особо нет, его походу писать приходится.
Повторю только, что видео это (мягко говоря) не совсем отражает как оно выглядит на реале, эмм... эмуле.
Я предвидел эти проблемы с ютубой, поэтому и не стал сам оцифровывать, а попросил "помощи клуба".
Спасибо, этот линк есть в 37м посту ветки, и о нём были все в курсе, только это как-то не очень это помогло похоже. Насчёт конкретных прог - их море, но имхо ютубе должно хватить простого дуба или какой-нибудь DV Studio.Цитата:
Сообщение от breeze
Вы разгадали мой маленький секрет (с) "Донна Роза".
Это как-бы взгляд из нашей реальности в мир роботов.
Правда, пока там простые рамки, до всего руки не доходят просто, а проект достаточно большой. А с палитрой я там попробую поиграюсь, наверное ещё на 1 бит по яркости можно будет развести.
Надеюсь. Если не упарюсь это всё рисовать, конвертить и т.п.Цитата:
Сообщение от jerri
У Вектора вот такой расклад:
64К основной памяти, из них
32К видео ОЗУ, сформированное из четырёх 8K видео плоскостей подобно EGA (max. 16 цветов) Игра использует 2 видеобуфера по 16К каждый. Отсюда и 4 цвета вылезают (по 2 плоскости на буфер)
Остаётся 32К под основной код. Там только код, которого сейчас где-то 17К.
256К виртуальный диск, разбитый по 4 64К страницы с доступом стеком, или по 4 16К окна в каждом банке с доступом командами обращения к памяти, или комбинированно 16К окно и 64К стеком.
В 4М банке сидит операционка. Там-же я сохраняю CP/M BIOS в промежутках между файловыми операциями. Во время файловых операций, CP/M BIOS сидит в последних 8К видеопамяти, что уменьшает её с 32х до 24К (3 плоскости), и, соответственно, уменьшает количество цветов с 16 до 8 во время файловых операций.
В 16К окнах банков по адресам A000-DFFF можно исполнять код, но одно уже занято ДОСом. В остальных будут всякие музыкальные драйвера и ещё кое-что.
Сейчас есть:
1. Совсем задний план (обрамление, multi-functional display и т.п.)
2. задний план, в котором будут всякие движущиеся тайлы, ну типа вентиляторов, дверей и т.п.
3. средний план, в котором сидит робот, и будут сидеть другие "герои". Под них выделено 16К на главного героя и 24 на "врагов". В среднем плане все спрайты - с альфа каналом.
4. Если позволит быстродействие, будет ещё один план - передний overlay (как-бы ещё одна карта уровня). Всякие там колонны, стеклянные штуковины полупрозрачные и т.п. Тут тоже все спрайты с альфой. Под них выделено 32К в 4м банке, потому что именно столько надо под альфа-спрайты для 256 тайлов. Эта байда как раз занимает начало 4го банка. Как раз сейчас отлаживаю рендеринг этого слоя. Двигающихся предметов в нём не планирую, ну по крайней мере пока.
Так что графики планируется вагоны. Офигею рисовавши альфа маски :)
Чтобы было попонятнее где чего сейчас лежит - вот текущая карта памяти из файла config.inc
;================================================= =================
; MEMORY LAYOUT, top to bottom
; 4 64Kib-memory banks of 5 are allocated for the game:
;================================================= =================
; - Bank 0 ---- main and video memory -----------------------------
;================================================= =================
; 0000-0100 ISR vectors, CPM area and hooks, etc.
; 0100-HEAP CODE, DATA and STACK segments
; HEAP-7FFF HEAP: MFD.lvl, .stm, sprite and font *headers*
; 8000-FFFF 32K Video RAM (2 frame-buffered 16K banks)
;================================================= =================
; - Bank 1 ---- Options and Sound Engine
;================================================= =================
; 0000-5FFF Options menu image (24K) OPTIONS.IMG
; 6000-9FFF MFD and background sprites (16K) MFD.SPT
; A000-DFFF 16K Sound engine + current sound data / FntPat
; E000-F7FF Options menu music (6K) OPTIONS.SND
; F800-FFFF Options ticker text (2K) OPTIONS.TXT
;================================================= =================
; - Bank 2 ---- Game Menu, Terminus Sprites, Sound Engine and Data
;================================================= =================
; 0000-5FFF Menu image (24K) MENU.IMG
; 6000-9FFF 64 Terminus sprites (16K), 256K each
; A000-DFFF 16K SFX Engine + LEVELXX.SFX
; E000-FFFF Menu music (8K) MENU.STM
;================================================= =================
; - Bank 3 -- at boot loads PCM sound, then used for level data ---
;================================================= =================
; 0000-3FFF 16K 256 level tiles (2x2x16 = 64 bytes each)
; 4000-9FFF NPC sprites (24K)
; A000-DFFF 16K Level map - up to 256x64 tiles
; E000-FFFF level music (8K) LEVELXX.STM
;================================================= =================
; - Bank 4 --- System Bank: MicroDOS / GML ------------------------
;================================================= =================
; 0000-7FFF 32K LEVEL.IMG, then 256 overlay tiles (4x2x16 = 128b)
; 8000-87FF system.fnt
; 8800-9FFF compo.fnt
; A000-DFFF *** BDOS MicroDOS (16K) ***
; E000-FFFF Relocated MicroDOS BIOS (8K)
;------------------------------------------------------------------
Новая попытка победить ютубную мясорубку:
http://www.youtube.com/watch?v=9AIxD-EJmEM
(На всякий случай, если это не происходит само собой, надо нажимать на шестеренку и выбирать там 480p)
Стало лучше, но пока все равно еще не супер. PPC — если ты не против я предыдущее видео удалю.
svofski, я не против, как раз за удаление предыдущей версии так как в этой стало гораздо лучше хотя-бы с точки зрения чёткости. Правда, местами теперь стало choppy. Я сначала подумал что это из-за скорости пересылки, но места те-же самые и явно видно, что они коррелируют со scene transitions. В начале фильмы, в главном меню, каким-то образом подсвечивается лишь половина букв. Но по-любому это огромный прогресс в сравнении с предыдущей версией с точки зрения резкости картинки.
Ок, стер старое. Про чоппинесс -- не знаю, я не ощущаю. Тебе, как автору творения, конечно, виднее. На будущее -- кодек FFV1. Лучше обходиться без CorePNG, он какой-то древний и плохо поддерживаемый. FFV1 более-менее стандартный, беспотерьный, неплохо обращается со скринкастами и, главное, ютуба его понимает.
У меня явные чопы при просмотре. Но, возможно, это декодер дуреет на транзишенах.
Да, похоже с PNG вышла промашка, но так заказывали :)
В след. раз попробую прямо MPEG кодеком. У меня ещё мать десктоповая кукукнулась уже с месяц, а то я бы наверное и пережать отважился сам. Под ютубу никогда конечно не делал, но домашнее видео когда-то цифровал пентабайтами, и подобного типа траблы ловил.
Не не, лучше FFV1. Он специально скринкастный.
Ок, спасибо! Почитал сейчас про FFV1. В след. раз пойду с ним.
Лан понятно :) чо по игре то?
может ее и на спек портировать? :)
Не очень понял. В смысле, портировать альфу?
Или, когда в бета-стадию перейдёт. И на какой спек? 128 или сразу на эву?
PPC, нет не альфу :) альфа не играбельна
полностью когда напишешь
спек 128
а эва не спек.
jerri, ну это когда ещё будет. К тому времени ты подпись 3 раза сменишь.
Я подумывал про порт на MSX2. А вообще, было-б что портировать, а куда-найдём :-)
Здесь есть кто живой? Если да, то прогревайте компы и муляторы.
Четвёртая альфа была в тубе и не будет выложена.
Зарелиживаю пятую альфу роботов. Это-первая альфа в которую можно поиграть. Коротко о том, что появилось:
- Двери на замках
- Ключи к дверям (анимированы, с альфой)
- Телепортер (анимирован, пока без альфы и использует те-же спрайты, что и подъёмник)
- Ключ к лифту (анимирован, с альфой)
- Триггер включения телепортера (анимирован, с альфой)
- Дополнительный layer с альфа-каналом и анимированной графикой
- Power-Ups: (анимированы, с альфой) батарейки восстанавливают энергию (пока-по всем осям и полностью), болты восстанавливают повреждения робота
- Яркость текста в меню опций увеличена на 1 бит
- Пофикшено падение с подъёмников после смены палитры или выхода в главное меню и возврата в игру.
Скорость осталась практически как в 3ей альфе (это при том, что выводится ещё один слой с альфа-каналом).
- Убраны следующие отладочные режимы:
Events Per Frame control (чтобы не читить, замедляя события)
Level Overlay On/Off (оверлей выводится всегда)
Pixel Shader control
-Убран полноэкранный режим
Для оценки прилагаемого уровня, привожу данные по событиям, триггерам и последовательностям отрисовки из заголовка файла уровня:
То-бишь, в уровне 37 триггеров и 50 событий.Код:_LH_TRG: DW 37 ; number of trigger tables of SIZ_TRG
_LH_MVT: DW 4 ; number of movement tables of SIZ_MVT
_LH_EVT: DW 50 ; number of event tables of SIZ_EVT
_LH_SEQ: DW 790 ; number of sequence tables of SIZ_SEQ
Как играть. Задача-найти 4 ключа и добраться до выключателя, который закончит игру. Придётся прыгать, телепортироваться, оценивать перегрев и повреждения робота. Иногда надо будет поторопиться, иногда - чуть покумекать, что делать дальше. Уровень абсолютно проходим, безвыходных ловушек нет. Только-что прошёл его сам с удовольствием.
К сожалению, inventoty MFD ещё не сделан, поэтому предметы придётся запоминать. Instant Status MFD работает пока как обычно, в текстовом режиме. В бете, конечно, все MFD будут в графике.
Из известных багов наиболее гаденький - срыв мелодии в меню опций. Остальное вроде пофиксил более-менее, но мог что-то просмотреть, особенно касательно вывода состояния повреждений и заряда батарей. В общем, кто-что найдёт - буду только рад. Весь баглист не привожу.
Что планируется дальше?
- Inventory MFD
- Антиграв/Jet Pack
- Общая оптимизация движка (ну это идёт постоянно)
- Возможно - лазанье по лестницам
- Возможно - морф робота и доп. функции (по типу метроида)
- Разные уровни гравитации
- Загружаемые параметры повреждения / заряда батарей (это-обязательно)
- Возможно - звуковые эффекты, но скорее это будет в 7й альфе.
В общем, заценяйте на здоровье, и как всегда буду рад вашим комментам, предложениям, пожеланиям, впечатлениям.
Обнаружился очень мерзкий баг с загаживанием нижнего этажа тайлом от одной из дверей. Как я и предполагал, причина - в функции отрисовки разряда батарей и повреждений. Вроде всё поправил. Заодно добавил пару-тройку несущественных оптимизаций на предмет скорости. Стало плавнее, но музон хромает. Однозначно придётся когда-нибудь ставить его на таймер чтобы исправить хромоту.
Так как серьёзных изменений нет, версия будет 0.51a. Как говорит svofski, "У нас теперь Новый Год чаще".
PS. Перевыкладываю версию со слегка более стабильным звуком.
Кто-нибудь уже уровень прошёл? Пожалуйста, впечатления в студию, а то без фидбэка не понять, на что обращать внимание. Также прошу ваши идеи по поводу того, чего бы хотелось видеть в игре. Для народа ведь пишется. У меня, конечно, есть кое-какие соображения по поводу концепт-дизайна на будущее (вплоть до анимации персонажа), но намеренно не хочу оглашать весь список. Хотелось-бы услышать Ваши соображения.
Покамест ускорил движок ещё почти на кадр в секунду woo-hoo!
Вот сделаем нормальные спрайты для телепортера, и наверное правда можно видео прохождения уровня на ютубу будет выложить. А пока, пожалуйста, ваши соображения на предмет, о чём мечталось-бы.
Под что это написано?) может у меня и есть такой девайс)
Под любой из клонов Вектор-06ц (не Криста и не Вектор-Старт) с квазидиском на 256К по Кишинёвской схеме и, по-крайней мере, одним FDD и операционкой МикроДОС.
Вот список эмуляторов на которых я пока смог проверить гаму:
emu от b2m
Virtual Vector от Ramiros
Vector-06cc на Altera DE-1 от svofski.
Процы: 8080,8085, КР-580ВМ1, z80. Tактовые частоты проца: от 3х до 18MГц.
Доп оборудование: рекомендуется AY8910/12, поддерживается Омский RTC на MC146818.
Было-бы замечательно, если бы кто-нибудь попробовал запустить гаму на реале.
PPC, Обязательно поиграю и напишу свои пожелания, только в конце августа или даже в сентябре, сейчас я в разъездах :) но спасибо за старания!
Чуток поиграл, пока только взял ключ и болт, как открывать двери непонял.
Сразу замечание - лифт желательно останавливать ненадолго в крайних точках.
Для каждого ключа есть соответствующий замок. Обычно, он рядом с дверью, но не обязательно (hint). Для открывания двери закрытой на замок, необходимо найти ключ, а потом найти замок и встать так чтобы замок был за роботом. Есть двери без замков, они обычно открываются сами, когда робот напротив двери. У каждой двери своя задержка в состоянии "открыто". Первая дверь, которую можно открыть - достаточно hardcore, но пройти можно. Я уже так наловчился, что прохожу с первого-второго раза, а поначалу только убивал робота, даже болт не помогал. Правда у меня версия несколько пошустрее, и на ней играть полегче. Я её скоро выложу, там изменений совсем немного. Трудный месяц, много работы.
Про лифт подумаю, спасибо. Наверное сделаю задержку. Пока, чтобы приноровиться, можно научиться "выпрыгивать" с лифта на ходу. Это легче, чем выходить, но при прыжке будут небольшие повреждения, да и разряд батарей выше.
Выкладываю более быструю версию, о которой писал выше.
Кроме оптимизации по скорости, добавлены
'щит управления телепортером'
'силовое поле' взведённого телепортера.
ключ включения телепортера.
В принципе прохождение этой версии уже имхо можно показывать в ютубе.
Страшный хардкор. В первую дверь смог пройти всего два раза за достаточно большое количество попыток.
PPC, Сделай обязательно выбор уровня сложности, чтоб можно было нетолько хардкор, но и просто прогулка по уровню.
Принял к сведению. На самом деле, с первой дверью весь хардкор только в том, что времени не хватает, если рано впрыгнуть на подъёмник. Это связано с продолжительностью нахождения двери в положении "открыто". Почти 100% алгоритм открывания двери №1 с первого раза:
1. Спуститься на подъёмнике вниз на 1й этаж и взять ключ справа в углу.
2. Подняться на 2й этаж и встать на 1 тайл справа от замка.
3. Дождаться, когда подъёмник покажется снизу и будет примерно на тайл / "пол тайла" ниже уровня этажа
4. Нажать стрелку влево и удерживая её стрелку вверх в момент, когда робот минует тайл с замком чтобы впрыгнуть на движущийся вверх подъемник. Надо оказался на левой стороне движущейся вверх платформы.
5. За 1 тайл до 3го этажа нажать стрелку влево и удерживать, пока робот не пройдёт в дверь
Я умудряюсь сейчас пройти ещё 3 тайла и взять батарейку за дверью до момента, когда дверь №1 начнёт закрываться, так что не такой и хардкор, всё дело-в точной координации.
Задержка для каждой двери-это свой параметр, который хранится в карте уровня в соответствующих последовательностях отрисовки спрайтов двери.
Есть 2 варианта как я могу сделать разные уровни сложности:
1. Сделать тот-же самый уровень отдельным файлом, но с другими задержками. Достоинство в том, что можно точно подобрать тайминги под каждую последовательность событий и иметь сколько угодно версий уровня. Недостаток - место в каталоге файлов CP/M и расход дискового пространства.
2. Сделать так, чтобы игровой движок понимал скажем несколько настроек сложности, как в Думе по типу
I am too young to die
Rookie
Hardcore (kill em all)
Мне 2й вариант нравится больше, но это-дополнительный кодинг. Ваше мнение, какой вариант делать?
К сожалению, в связи с персональными траблами весь сентябрь проект был заброшен.
В ноябре сделал inventory MFD, пофиксил несколько мерзейших багов, которых вы с ivagor не увидели потому, что уровень не стали проходить. В частности, получение повреждений при движении на 2м подъёмнике.
Могу на днях выложить промежуточную версию с пофикшенной дверью (дам ещё секунду на положение открыто для двери №1), пофикшенными подъёмниками, музыкой в меню без сбоя, inventory MFD и загружаемыми параметрами повреждений главного героя.
Ещё там наконец-то стали появляться зачатки графики уровня (не весь фон заполнен 4мя тайлами поэтажно).
Из обещанного для следующей версии там нет только антиграва/jet pack.
Выкладывать?
Сейчас вот прямо пишу загружаемые музыкальные драйвера чтобы можно было по желанию переключать весь движок с stm на, скажем, pt3.
Необходимо будет сделать редактор уровней. Наваляю для PC на WTL-e как-нибудь, иначе уже очень тяжело руками уровень творить. Так-что будут задержки. Наверное, стоит выложить промежуточный апдейт.
ИМХО по поводу составляющих сложности.
1) Время нахождения дверей в открытом состоянии. Наверно проще с уменьшением сложности умножать на константу время задержки. Или более общий вариант (как 1.) с индивидуальной (ручной) подстройкой задержки для каждой двери.
2) "Хрупкость" робота. Вплоть до введения чита с неуязвимостью.
3) На низком (низких) уровнях сложности можно показывать индикатор фазы открытия двери при активации ключа.
4) Наличие/отсутствие подсказок и их подробность. Мне вот сначала пришлось выяснить, к какой двери подходит ключ. Потом после долгих попыток пришел к тому, что надо стоять за замком и проходить мимо него при появлении подъемника и как оказалось, это "официально одобренный вариант" :). Тут как-бы мини головоломка+ловкость. Головоломка - это ладно, а вот ловкость в сочетании со значительной "вязкостью" управления - уже не здорово. А еще ведь и робот хрупкий. Например я после первого вхождения в дверь имел глупость зайти назад и помереть, не посмотрев левую часть уровня, пришлось второй раз напрягаться.
Забыл - еще можно разное число лечилок (вплоть до полного отсутствия) на уровне размещать. Может еще что упустил.
Этот вариант мне нравится больше. Но не всё так просто, как кажется. В последовательностях задержек не определено, какая из них соответствует состоянию "открыто". Представляется, что нужна будет ещё одна структура данных по типу "где-что патчить".
Это сделанно намеренно. В версии, которая у меня есть сейчас, параметры "хрупкости" и ещё кое-какие вещи касательно описания робота сведены в отдельный файл и являются загружаемыми. В пределе моя цель - иметь несколько профилей по уровню сложности и даже несколько типов роботов. Чита с неуязвимостью не будет точно. Но, возможно, будет power-up, дающий временную неуязвимость. Это всё планировалось ещё в районе 3й альфы, но конечная имплементация будет в бетах где-то.Цитата:
Сообщение от ivagor
В любом случае, планируются как power-ups, дающие временный boost, так и постепенный upgrade робота между уровнями.
В версии, с которой ты игрался можно выставить в меню Damage Model в 0. Тогда рост температуры при движении не будет наносить повреждений и разряд батарей будет ниже.
Подумаю. Возможно - в отдельном MFD, касающимся "состояния" уровня. Но-нескороЦитата:
Сообщение от ivagor
Это всё запланированоЦитата:
Сообщение от ivagor
А это-уже сделано. В новом билде есть inventory MFD. Все ключи-чуть разные. Но намеренно сделаны похожими (как раз для тренировки памяти, если без подсказок играть).Цитата:
Сообщение от ivagor
Да, это была одна из задач, которую я ставил при дизайне игры: связать аркаду с мини-головоломками хотя-бы по типу Rotors или Pairs, а в дальнейшем и куда более сложными, по типу The Incredible Machine. Но все задумки не хочу раскрывать. Если уже видно, в каком направлении будет развиваться игровой жанр, то я более чем доволен :-)Цитата:
Сообщение от ivagor
Всё безусловно относительно, но никакой "значительной" вязкости управления там нет. Там есть инерция движения, поэтому чуть непривычно по сравнению с другими движками.Цитата:
Сообщение от ivagor
Рекомендую попробовать уже озвученные Rotors и Pairs. Или даже Putup или Rise Out. Будете удивлены, насколько Robotz проворнее. При этом, Robotz ещё и уровень скроллит. Менять жанр в сторону только статичных головоломок по типу сокобанов я не буду.
В детстве putup прошел несколько раз (уж не знаю, как это меня характеризует), в rise out много играл, не помню только, прошел ли последний уровень. К rotors и pairs тоже относился положительно, но потратил на них меньше времени. Управление во всех упомянутых игрушках не казалось мне инерционным, может просто был молодым.
Мне тоже так казалось, пока недавно не запустил под эмулем pairs и putup, и не поразился задержкам после нажатия на клавиатуру. Возможно, это-проблемы эмулей, не знаю.
Безусловно, Robotz не в состоянии зарендерить 20 кадров в секунду, но не всё настолько плохо ИМХО чтобы говорить о чрезвычайной вязкости. Опиши пожалуйста, в чём эта "вязкость" выражается по твоему мнению? Если в том, что робот иногда делает дополнительный шаг при нажатии на клавиатуру, то это-намеренно. То-же самое и с прыжком. На уровне даже есть место, где необходимо использовать "короткий" прыжок вверх (чтобы взять ключ для активизации подъёмника номер 2 после телепортации), иначе робот разбивает голову о потолок.
Возсожно, я намного дольше играл, но у меня проблем с какими-то лагами нет. Робот делает то, что я хочу вплоть до перепрыгивания через power-ups без их взятия (батарейка и болт на 2м этаже слева от телепортера).