59

Прародители 3D экшенов: и немного анатомии клонов

Всем привет! Когда-то давно я очень увлекся ретро играми и с тех пор поглотила меня пучина сия. Одним (но не единственным) жанром, который всегда вызывал мой интерес был 3d action, со всеми вытекающими поджанрами. (Заранее скажу: пост задротский, про игру и её потроха, мне было интересно, было немного времени, а результатами всегда приятно поделиться, не кидайте тапками!)

Так вот, когда я был зелен и наивен, я думал, что первые "экшены" это что-то уровня Catacombs-3d аж 1991 года выпуска, но потом я узнал про hovertank...

Короче, как выяснилось народ 3d хотел и пытался создать что-то экшен-подобное с самого начала и к середине 80-ых жанр уже вырос и насчитывал десятки клонов. Только собственно экшена (действия), в таком action было еще очень мало. Но если первых прародителей жанра найти легко, то что вы скажете о клонах? Оказывается, так же как позднее ID Software и ряд других  компаний лицензировали свои движки и наработки сторонним разработчикам, в 1980-ых существовали средства для генерации игровых карт и создания игр. Движками назвать такие средства нельзя, да и "экшена" в таких играх было немного - игрок неторопливо шагал по лабиринтам, изредка украшенным отдельными спрайтами.

Откопанная мною сегодня Fireground для Apple II как раз таким клоном и является, о чём честно упомянуто в титрах. Однако, чем-то на фоне похожих игр надо и выделиться? Такой фишкой в fireground стал человеческий голос. Сюжет игры прост: нужно найти пожар (можно не спешить) по адресу, передвигаясь в лабиринтоподобном городе с видом от первого лица. Вот только адрес произносит диспетчер, страдающий плохой дикцией (так говорится в самой игре)

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Далее следует дискретное передвижение в таком вот лабиринте:

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

В коем даже встречаются окна на стенах и белые заборчики, через которые можно проехать, впрочем рисуется всё это далеко не мгновенно.

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Когда игроку удается локализовать 4 пожара (первые 3 оказываются учебными, дабы не рисовать спрайтов, наверное) игра переходит в двумерную аркаду (после 7-й минуты на видео). Впрочем, геймплей описывать смешно, проще взглянуть на него один раз (брожение по лабиринту в видео ускоренно), а заодно и услышать оцифрованный голос, в эмуляторе, кстати вполне чёткий. 

Но тут мне стало интересно, а как оно устроено? Начал я с того, что открыл образ диска с игрой, что мы тут видим?

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Увы, все сообщения о местах, где искать пожар заданы жёстко, реиграбельность снижается... Самое интересное, что большая часть игры не компилирована, а существует в виде кода на бейсике (вот они годы его славы!)

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Поглядев на исходники становится ясно, что игра разнообразием баловать нас не станет, хотя и могла бы, ведь карта уровня, создаваемая упомянутой в титрах игры утилитой, существует как отдельный файл. А раз есть файл, почему бы не визуализировать его, чтобы поглядеть на "город" во всей красе? Итак, файл представляет собой набор из чисел, которых всего 2502 штук.

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Исходя из игровых инструкций, предположим, что первые две цифры - размер карты 50х50 блоков (оно потенциально масштабируемое!), много нолей... Для того, чтобы не гадать вызовем на помощь хтонического монстра: Microsoft мать его excel. и пользуясь одной из множества его полезных функций превратим столбик из 2500 числе в простыню 50х50

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Тут кусочек, ага, встречаются разные цифры, причем, например 520 выкладывает горизонтальные линии, с перекрестками со значением 585... Вероятно это "улицы", а значения говорят движку, что рисовать: коридор, перекресток или тупик. А нолики - вероятно "дома"... Применим условное форматирование - попросим залить ячейки с нолями - зеленым, прочее чёрным, и 4 значения (они отличаются от прочих) оранжевым и вуаля:

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Это же карта! А оранжевое - респаун (места где можно возникать).

Это было забавно, получается игра могла бы быть многоуровневой, или снабжена редактором... Сначала я очень удивился, как же так: недопилили! Пока не прочел в титрах, про использованные инструменты... Был значит уже готовый генератор карт и, наверное,  бейсиковский прототип для визуализации... Была, конечно, мысль создать свой уровень... Свободного времени оказалось не настолько много. Вот такая вот зарисовка из эпохи, когда небо было синее, мороженное дешевле, а компьютеры БОЛЬШЕ! Ну, а под конец: результат моего задротства с названиями улиц и повернутое севером кверху.

Прародители 3D экшенов: и немного анатомии клонов Apple II, Длиннопост, Олдскул, Компьютерные игры, Задроты, От нечего делать, Видео

Баянометр выдал эпичнейшую дичь! Прикольно :-)

Уголок ретрогеймера

2.1K пост10.9K подписчиков

Добавить пост

Правила сообщества

(Ранняя альфа-версия правил) -Да не будет создано здесь отдельных постов об играх, вышедших изначально менее 15 лет назад (возможно временная формулировка).

-Не оскорбляй других пользователей.

-Не спамь.

-Все вопросы по поиску каких-то определённых игр задавайте здесь: http://pikabu.ru/story/pomoshch_po_poisku_kakoyto_opredelyon...

-Спросить совета про то, во что поиграть можно здесь: http://pikabu.ru/story/posovetuyte_vot_kakuyu_igru_5005075

Подробнее