ASMperson
ASMperson
Рейтинг:
80.410 за неделю
Постов: 62
Комментов: 686
C нами с: 2019-09-08

Посты пользователя ASMperson

История видеоигр, часть 37: Human Cannonball (1978)

Сегодня, дорогие читатели, мы поднимем животрепещущую тему игрового насилия. Задолго до Doom и Mortal Kombat была игра, которая заставила задуматься: не примеряем ли мы корону бога? Не слишком ли большую ответственность мы берём на себя, оказывая влияние на хрупкую психику игрока? Игра эта называлась Human Cannonball и была разработана Оуэном Рубином для игровых автоматов. Концепция её была проста: есть пушка, есть стена с отверстием. Регулируя наклон пушки и мощность выстрела, игрок должен был сделать так, чтобы заряженный в пушку человек попал в отверстие. Если игрок ошибался, человек-ядро со смачным шлепком разбивался о стену. Однако начальству Рубина идея показалось дикой и слишком жестокой, и проект свернули. Лишь через два года, когда нравы в мире пришли в достаточный упадок, Atari решилась выпустить Human Cannonball на домашней консоли Atari 2600.
,Игры,старые игры,atari,Atari 2600
Просто вглядитесь в эту полную боли фальшивую улыбку.
Human Cannonball предлагает вам попробовать себя в роли циркового трюкача, стреляющего собой из пушки. Судя по всему, авторы оставили за кадром выступление и овации, показав вместо этого суровую процедуру пристрелки орудия.
,Игры,старые игры,atari,Atari 2600
Телесного цвета штука на шестах - сеть или корзина.
Попадание в цель зависит от трёх факторов: скорости полёта, угла наклона и положения пушки. Как водится на Atari 2600, в Human Cannonball есть куча вариантов игры. В одних игрок может регулировать скорость полёта, в других угол, в третьих -- двигать саму пушку. Остальные параметры или фиксированы или меняются случайным образом от выстрела к выстрелу. На поздних этапах на радость маленьким и взрослым садистам между пушкой и целью появляется стена с отверстием, которое ездит туда-сюда.
,Игры,старые игры,atari,Atari 2600
Недолёт.
На всё про всё игроку даётся 7 попыток. Каждое попадание в корзину приносит одно очко, а цель игры, разумеется, набрать максимальный счёт и похвастаться друзьям.

Управление в игре чрезвычайно простое, но авторы как-то ухитрились напортачить. При удержании джойстика в одном направлении значения угла и скорости проматываются слишком медленно, а на одиночные нажатия игра иногда вообще не реагирует.
,Игры,старые игры,atari,Atari 2600

Оценивать звук в играх для Atari 2600 бессмысленно, а вот графически игра выделяется. Это не шедевр, но, поймите правильно, когда на этой платформе спрайт человечка похож на человечка, а пушки на пушку -- это уже успех! Как это ни удивительно, но Human Cannonball не сгинула в безвестности. С 2010 года игра доступна на Windows и Xbox в составе Microsoft Game Room. А что касается Оуэна Рубина, то он позже отметился ещё одним человеконенавистническим хитом про экстремальный спорт.
,Игры,старые игры,atari,Atari 2600

С Новым годом, экстремисты

История видеоигр, часть 36: Gee Bee (1978)

,старые игры,игровой автомат,namco,Игры
Будущий отец пакмана Тору Иватани, устроившись в Namco, собирался проектировать для компании механические пинбольные автоматы. Руководство компании, однако, уже вкусило прибылей от продажи чужих видеоигр и решило, что пора открывать собственное производство. Так Иватани удостоился создать первую видеоигру Namco. Очевидно, мысли о металлических шариках не отпускали молодого гения, потому что получившаяся Gee Bee выглядела как плод любви пинбола и Breakout.
IUP OOOOO ZUP ooooo
à	h
CREDIT O BALL 3,старые игры,игровой автомат,namco,Игры

От первого она получила замысловатый игровой стол с бамперами и мишенями, а от второго - ряды разрушаемых прямоугольных блоков и движущуюся влево-вправо платформу вместо традиционных для пинбола "створок". Игрок управлял ею, поворачивая круглую рукоятку.
HIGH SCORE
02250
o
► «
1
<¡>0000
BONUS 2000 X 1,старые игры,игровой автомат,namco,Игры

В автоматах Gee Bee использовались чёрно-белые дисплеи, поверх которых клеились цветные целлофановые оверлеи. Да, в тёмном 1978 году это было обычной практикой. Помимо сомнительного эстетического эффекта это ещё и мешало игроку считывать положение шарика, так как он менял цвет, пролетая через разные области экрана.

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

Вот такая она была, первая игра Namco. Остался один вопрос: при чём здесь пчела?

История видеоигр, часть 35: Escape! (1978)

ESCAPE !
COPYRIGHT 1973, SILAS S. ALL RIGHTS RESERUED
WARNER
READ PRIOR GAME FROM TAPE? ÍY OR N !>,старые игры,apple II
Прежде, чем перейти к сегодняшнему экспонату, придётся сделать небольшое историческое отступление. Escape! -- одна из тех игр, говорить о которой в отрыве от биографии автора -- неинтересно и неправильно. Наш герой, Сайлас Уорнер, поступив в 17 лет в Университет Индианы, провёл там около десяти лет жизни -- сначала как студент, а позже -- администратор системы PLATO IV, к мейнфреймам которой в альма матер были подключены несколько дорогих графических терминалов высокого разрешения. Надо ли говорить, что это была благодатная среда для разработки игр? Уорнер не только внёс свою лепту в пополнение библиотеки программ PLATO, но и приобщился к созданным до него играм, в том числе от первого лица. Этот факт важен для нашей истории!
В 1976 году Уорнера наняли разрабатывать учебные программы для финансовой компании Commercial Credit. Там он подружился с программистом Эдом Зэроном и клерком Джимом Блэком. Троица вскоре стала собираться у Зэрона, который был одним из первых владельцев недавно выпущенного компьютера Apple II, и писать игры и прочий софт. Чтобы не класть написанное в стол, в 1978 году они записали два своих продукта на кассеты (да, это были тёмные времена) и отправились на Трентонский компьютерный фестиваль. Зэрон пришёл с мультиплеерной аркадой Tank Wars, а Уорнер -- с лабиринтом от первого лица Maze Game. Каким-то образом ему удалось не просто перенести с мощных и дорогих университетских мейнфреймов каркасную псевдотрёхмерную графику на домашний Apple II с 1-мегагерцевым процессором и несколькими килобайтами RAM, но и добавить заливку полигонов цветом и плавную анимацию перемещения с клетки на клетку. Да, это не было честным 3D, даже не 2,5D вроде Wolfenstein 3D, перемещение всё ещё было дискретным и с поворотами на 90 градусов, но сам факт существования такого уровня графики на домашнем компьютере тех лет поражает. Конечно, для слабенького Apple II это было непросто. Генерация лабиринта могла занимать до двух минут реального времени. И всё же, кассеты с игрой разлетались как пирожки. Дело пошло настолько хорошо, что Зэрон зарегистрировал компанию MUSE Software и ушёл с постоянной работы, чтобы полностью посвятить себя разработке и продаже софта. Блэк и Уорнер вскоре последовали за ним.
SOUTH
A
i
0
M FOR MAP
YOU HAUE A PASS,старые игры,apple II
Сейчас, смотря на картинку, я очень живо себе представил выворачивающего
из-за угла пикселизованного фашиста.

Видя успех своего продукта, Уорнер решил его усовершенствовать, добавив какого-никакого геймплея: в Maze Game единственной целью игрока было найти выход из лабиринта, проиграть было невозможно. Для новой версии, которую автор назвал Escape!, было придумано что-то вроде предыстории и сеттинга: игрок выступает в роли человека, заблудившегося в некоем странном и сильно охраняемом учреждении. Цель осталась прежней -- выбраться наружу, но сделать это стало сложнее. Каждый раз, входя на новую клетку, игрок может встретить NPC, которые делятся на охранников и обычных сотрудников. Охранники могут конфисковать пропуск героя или арестовать его, если пропуска нет. В последнем случае случается геймовер. Страшно подумать, сколько людей в этом заведении каждый день выходят на обед и пропадают в застенках охраны. Впрочем, иногда попадаются лояльные охранники, которые выдают пропуск и отпускают.
EAST
M FOR MAP	I YOU HAUE A PASS,старые игры,apple II

Что касается NPC-сотрудников, то они могут указать направление, в котором идёт герой, дать ему карту, пропуск или компас. Но важно помнить, что часть NPC врёт, карта и компас, которые они вам дадут, будут неправильными, а пропуск -- фальшивым. Узнать, говорит ли NPC правду, можно только по косвенным признакам. Например, если вы доподлинно знаете, что идёте на север, а NPC говорит, что на запад, то он врёт, и принимать подарки от этого персонажа не стоит. Карта, которую вы добыли, может быть трёх видов: правильной; неточной -- отражённой по вертикали или горизонтали -- такую карту, приноровившись, можно использовать; или же полностью неправильной, которая вообще не имеет ничего общего с реальной формой лабиринта.
,старые игры,apple II
Пойман!
Мне удалось одолеть Escape! с третьего-четвёртого захода. Играя, я вывел для себя некоторые правила, которым нужно следовать, чтобы победить:
1.Рисуйте карту.2.Добыв настоящие карту и компас, другие не берите.3.Прежде, чем идти к выходу, раздобудьте настоящий пропуск.
Зарисовывать весь лабиринт необязательно. Достаточно небольшого фрагмента, чтобы можно было сравнить его с полученной от NPC картой и определить, правильная она или нет. Настоящие карта и компас -- максимальный уровень снаряжения, который вам доступен, ничего лучше уже не дадут, так что, как только уверены в этих устройствах, принимать от NPC больше ничего не нужно.

,старые игры,apple II

Строгость охраны растёт по мере приближения к выходу, поэтому имеет смысл потратить время на поиск настоящего пропуска где-нибудь рядом со стартовой точкой. Это требует времени и везения, но стоит того. Нет ничего хуже, чем попасться за пару коридоров от выхода.
,старые игры,apple II
Игрок всегда начинает на юго-востоке. Выход всегда на северо-западе.
Забавно: во время последнего забега у меня проснулась паранойя. Я разглядел на карте четырёхзначный код и записал его, решив, что придётся ввести его для того, чтобы выйти.
THE EXIT IS AT THE NORTHWEST,старые игры,apple II

Ничего такого, это было просто моё воображение. Выйти из здания оказалось просто -- они даже не позаботились закрыть дверь.
M FOR MAP
YOU HAUE A PASS,старые игры,apple II
Финишная прямая. Так и ждёшь в последний момент окрика "стой!"
Escape! поддерживает сохранение игры на кассету и загрузку с неё. Видимо, автор считал её достаточно масштабной, чтобы проходить в несколько присестов. Ничего такого, удачный забег у меня занял около получаса. При условии, что игрок будет зарисовывать карты лабиринта, Escape! достаточно проста.
CARE TO TRY AGAIN?«,старые игры,apple II

Графически игра впечатляет. Хотя здесь нет настоящего трёхмерного пространства, но переход с клетки на клетку сопровождается плавной анимацией. Вообще Apple II для своего времени поражал изобразительными возможностями, но работал не слишком шустро. Так, чтобы посмотреть на карту лабиринта в Escape!, приходилось ждать около 30 секунд. Разумеется, в эпоху эмуляторов это не проблема, но аутентичный опыт -- он именно такой.
Звука в Escape! практически нет. Режущий ухо писк в момент начала игры -- единственный звуковой эффект, который я могу припомнить.
Оценивать управление в игре с настолько ограниченными геймплейными возможностями я особого смысла не вижу. Конечно, для современного игрока, привыкшего к WASD, перемещаться будет неудобно. Для движения вперёд используется клавиша RETURN, для разворота влево\вправо - стрелки, а для поворота на 180 градусов - слэш.
Тем не менее, в своё время Escape! имела большой успех и даже вдохновила молодого Ричарда Гэрриота добавить в свой первый хит Akalabeth подземелья с видом от первого лица. Это не единственный случай, когда работы Уорнера сподвигали будущих гигантов индустрии на технические или художественные свершения, но об этом мы поговорим в другой раз. Что же касается самого Уорнера, он работал в MUSE Software до её распада в 1985 году, после чего перешёл в Microprose под крылышко к Сиду Мейеру, где и продолжил радовать нас своим техническим гением. К сожалению, Сайлас Уорнер умер рано, всего в 54 года, но влияние этого тихого и незаметного человека на индустрию компьютерных и видео игр сложно переоценить.

,старые игры,apple II
Сайлас С. Уорнер
Я думаю, точка, когда можно было оставаться в стороне, отговариваясь тем, что не мы такие, а жизнь такая, пройдена. Я ходил на митинги против пенсионной реформы и ареста Навального, и всё, что я оттуда вынес - ощущение, что здесь всем на всех плевать. Но то, что происходит сейчас, коснётся каждого, лично, независимо от его политических убеждений. Если не из гуманистических или политических взглядов, то из инстинкта самосохранения сейчас все россияне должны организоваться и остановить ёбаного маразматика. Я это запощу здесь и везде где смогу вместе с фрагментами своей личной переписки с соображениями относительно обозримого будущего России
Медуза — UVE I Медуза —UVE
I Министр обороны РФ Шойгу заявил, что Россия не ост_
Также Шойгу заявил, что Россия проведет «первый международный антифашистский конгресс*
ДАННОЕ СООБЩЕНИЕ (МАТЕРИАЛ) СОЗДАНО И (ИЛИ)
^	РАСПРОСТРАНЕНО ИНОСТРАННЫМ СРЕДСТВОМ
МАССОВОЙ ИНФОРМАЦИИ. ВЫПОЛНЯЮЩИМ ФУНКЦИИ
И всё, скуа, потому, что вова - ссыкливый параноик, которс V наличие ядерного оружия не казалось достаточным сдерживающим фактором для НАТО. Ему, блядь, хотелось буферную зону между ними и его мягкими булками
14:11 >//,политика,политические новости, шутки и мемы,песочница политоты,Вторжение в
Я понимаю, что страшно. Не только страшно, но и обидно из-за понимания, что идёшь подставляться ни за что с небольшой группкой людей за огромное равнодушное стадо. И чтобы пересилить себя и начать что-то делать, нужно не меньше, чем под бомбёжками, потому что там - есть враг, а есть друзья и союзники, есть осознание своей правоты. Здесь враг - всё и все, любой встречный ватан может пырнуть тебя ножом и ещё окажется героем, менты опустят тебе почки ради смеха и получат повышение, кто-то стуканёт и тебя посадят, а если есть кто-то, кто от тебя зависит, то страшнее вдвойне. Но если не сделать ничего сейчас, потом будет поздно. Лично для тебя и для меня и вот для того чувака, а не для абстрактной "страны". Страна - это ты, пидор.
Постскриптум специально для реактора: диванный свергатель, когда будешь шитпостить в комментах про то, как мы неправильно протестовали, думай о том, что если скажешь мне это лично, я тебе нахуй лицо обглодаю.

История видеоигр, часть 34: Destroyer (1977)

,старые игры,arcade
,старые игры,arcade
Сегодня на нашем столе снова морская аркада наподобие Sea Wolf и Depthcharge. В Destroyer игрок, управляя эсминцем, должен за отведённое время потопить как можно больше вражеских кораблей и подлодок. Звучит увлекательно? Умерьте ожидания: два гениальных дизайнерских хода сделали из игры цифровой аналог феназепама. Во-первых, "управляя" -- громко сказано; корабль движется от одного края экрана к другому независимо от желания игрока, во власти которого только замедлить его ход. Во-вторых, вражеские суда не могут дать сдачи и покорно идут ко дну. Да, Destroyer -- что-то вроде тира с уточками.
,старые игры,arcade
Сброс глубинных бомб выполнен чуть интереснее, чем в Sea Wolf, за счёт необходимости заранее устанавливать глубину детонации, перемещая вверх-вниз пунктирную линию. К тому же, опускаются снаряды медленнее, из-за чего подгадать верный момент для сброса сложнее. Графически игра приятнее предшественниц: анимации по-прежнему почти нет (за исключением взрывов и движущихся волн на поверхности моря), зато спрайты крупнее, детальнее и выполнены в целых трёх оттенках серого!
,старые игры,arcade
Звук и управление в игре функциональны и нареканий не вызывают. Стоит ли сегодняшнему геймеру ворошить прошлое и играть в Destroyer? Не думаю. Слабый челлендж и отсутствие режима для двух игроков сильно обесценивают этот реликт семидесятых. Впрочем, и откровенно плохого об игре сказать нечего. Середнячок.

ОСдев №10: основной загрузчик, часть 3. GDT.

Подготовительный этап закончен, можно приступать к интересному. Кроме собственно загрузки файлов наша программа должна подготовить для ОС рабочую среду. Это значит: переключить процессор в 32/64-битный режим, настроить таблицу прерываний и создать базовую GDT. Сегодня разберёмся с последним пунктом.
GDT - сокращение от Global Descriptor Table, глобальной таблицы дескрипторов. Что это такое? По сути - набор записей одинакового формата, описывающих области памяти и разрешения, которые они имеют. Упрощённо это выглядит так:
//область 0
адрес области
размер области
параметры доступа
флаги
//область 1
адрес области
размер области
параметры доступа
флаги
...
В 32/64-битном режиме дескрипторные таблицы используются вместо старой схемы адресации сегмент:смещение. Зачем? Сегмент:смещение - небезопасная технология, которая позволяет переписать любой участок памяти. Надо ли говорить, что при неосторожном обращении это легко может закончиться бедой? Дескрипторная таблица даёт возможность ограничить запись или выполнение кода в отдельных областях RAM. Дескрипторные таблицы появились как часть аппаратной защиты памяти вместе с 286 процессором.
Как это работает? После выхода из 16-битного режима процессор больше не принимает адреса в формате сегмент:смещение. Если попытаетесь так сделать - получите исключение GPT (General Protection Fault). Вместо этого в сегментном регистре процессор ожидает получить смещение дескриптора внутри ДТ. При этом для операций над этим сегментом будут действовать правила, указанные в дескрипторе. Например, попытка обратиться к памяти за пределами сегмента или запись в защищённый от записи сегмент будут вызывать исключения (кстати, про обработку исключений поговорим позже, пока давайте примем, что это фатальная ошибка, которая приведёт к остановке программы).
Кроме глобальной таблицы дескрипторов существуют ещё локальные (ЛДТ), TSS и таблицы дескрипторов прерываний (IDT). Для того, чтобы наша ОС могла начать работу, обязательно наличие только двух таблиц: GDT и IDT. Давайте теперь взглянем на GDT поподробнее. Скажу сразу, зрелище будет не очень приятное. Но начнём с лёгкого. Так как GDT - часть аппаратной схемы защиты памяти, у неё есть свой регистр: GDTR. Это 48-битный регистр, 4 байта которого предназначены для смещения GDT, а 2 - для её размера. Таким образом, GDT не может быть больше 65536 байтов в размере. Размер записи в GDT - 8 байтов, значит,< таблица может иметь максимум 8192 дескриптора. Зная всё это, хорошим тоном было бы сразу зарезервировать 64К под GDT, но в моей архитектуре ОС создаёт свои таблицы, так что сейчас я обойдусь минимумом. Минимум в данном случае - 3 дескриптора. Нулевой, сегмент кода и сегмент данных. Зачем отдельно выделять нулевой дескриптор? Дело в том, что обращение к нему в GDT приводит к, вы угадали, исключению. Это тоже своего рода мера предосторожности.
А теперь время взглянуть на структуру дескриптора. И тут, увы, наследие тяжёлого прошлого во всей красе. Ради обратной совместимости в кодом для старых процессоров дескриптор GDT превратили в кашу.
Первые два байта - это первые 16 битов границы сегмента.
Следующие три байта - первые 24 бита основания сегмента.
Следующий байт - параметры доступа. Рассмотрим ниже.
Следующий байт совмещает в себе биты 16-19 границы и флаги. Об этом тоже подробнее ниже.
Ну и последний байт - биты 24-31 основания.
Неудобно? Не то слово. Когда будем писать ядро - обязательно замутим процедуру для комфортной работы с этим месивом. К счастью, сейчас у нас статичная структура всего из трёх сегментов, так что заполнить можно и вручную. Создадим и подключим модуль GDT.inc. Как это сделать, мы рассматривали в прошлый раз. И добавим в него вот такую таблицу:

Это и есть наша GDT, ничего ужасного. Значения в нулевом дескрипторе для нас не важны, а вот остальные давайте рассмотрим подробнее. У нас есть два дескриптора: один - для кода, другой - для данных. Оба начинаются с 0 и занимают FFFFF*4Kib = 4Gib. Фактически это значит, что, начав работать, ОС сможет использовать всю память по своему усмотрению. Давайте теперь разберём параметры доступа и флаги.
Бит 1 - флаг чтения/записи. Его значение различается для сегментов кода и данных.
Для сегментов кода установленный флаг означает, что чтение разрешено.
Запись в сегменты кода запрещена всегда.
Для сегментов данных установленный флаг означает, что разрешена запись. Чтение из сегментов данных
Таким образом, значение параметров доступа 10010010b даёт нам вот что: это сегмент данных, запись в него разрешена, сегмент растёт вверх, уровень привилегий - ring0. А теперь флаги. Биты 0-3 здесь заняты границей сегмента, не обращаем на них внимания.
Бит 4 зарезервирован и должен быть равен 0.
Бит 5 указывает на 64-битный сегмент. Так как мы пока переходим в 32-битный, должен быть равен 0.
Бит 6 указывает на 32-битный сегмент. Наш выбор, устанавливаем в 1.
Бит 7 - гранулярность. Если равен 0, то значение границы сегмента используется как
Окей, теперь у нас есть GDT. Но как указать системе, что её нужно использовать? Процессор ведь не дурак, сам искать не станет. Всё просто, джентльмены из IBM в кои-то веки о нас позаботились. При помощи специальной ассемблерной команды lgdt (load GDT) мы можем передать в регистр GDTR линейный адрес таблицы и её размер. Для этого добавим перед GDT такую структуру:
60ТК_р1:г:
dы 00171п	;Размер таблицы - 1 (23 байта).
dd 00000000И	;Абсолютный адрес таблицы.,программирование,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор,OSDev,Операционная система,ассемблер,разработка,длиннопост
Размер таблицы мы уже знаем, а вот адрес придётся посчитать, так что пока оставим 0 и напишем процедуру инициализации GDT:
init_GDT ргос
init_GDT endp
push eax pushfd
xor eax,eax
mov ax,offset GDT
add eax,00000500h
mov dword ptr [GDTR_ptr+2],eax
cli
lgdt pword ptr GDTR_ptr sti
popfd pop eax ret,программирование,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор,OSDev,Операционная система,ассемблер
На случай, если тут не всё очевидно, поясню. Мы помещаем в EAX смещение GDT относительно сегмента, а потом добавляем адрес сегмента*16. Это и есть линейный адрес, сохраняем его в структуре. После этого отключаем прерывания, передаём структуру процессору командой lgdt и включаем прерывания обратно. По идее прерывания можно не трогать, так как в 16-битном режиме GDT не используется, но я перестраховщик.
Собственно, на этом всё. Добавьте вызов init_GDT в конец загрузчика перед cli и дело в шляпе. Сегодня без картинки, но вот вам котик.
Чистая дискета: https://drive.google.com/file/d/1Bold4ds8oEruHQ7fJZKHglVo7A2Vc5MR/view?
Предыдущие части:

История видеоигр, часть 33: Indy 500 (1977)

game program'"
INDV 500
Use with Driving Controllers,старые игры,Atari 2600
Недавно я писал про Street Racer, которая, как и Indy 500, была одной из стартовых игр для Atari 2600. В конце статьи я сделал игре скидку из-за новизны системы и отсутствия у автора опыта работы с ней. Это было до того, как я увидел Indy 500. Теперь я беру свои слова обратно -- на Atari 2600 уже тогда можно было реализовать динамичную и графически привлекательную гоночную игру, просто приняв правильные дизайнерские решения.
,старые игры,Atari 2600
Ларри Каплан жаловался, что не смог сделать плавный скроллинг трассы в Street Racer -- в Indy 500 вся трасса умещается на одном экране и скроллинг не нужен.
В Street Racer нет ощущения скорости -- в Indy 500 машина ускоряется, тормозит и дрифтует так, что через несколько минут игры начинаешь чувствовать её массу и инерцию.
В Street Racer машина управляется как пушка из Space Invaders -- Indy 500 поддерживает аналоговый контроллер и плавное вращение спрайтов.
,старые игры,Atari 2600
В Indy 500 почти в два раза меньше вариантов игры, чем в Street Racer, но это тот случай, когда качество победило количество.
,старые игры,Atari 2600
Эта трасса называется Devil's Elbow, Локоть Дьявола.
Я не смог проехать ни одного круга без десятка-другого
вылетов на обочину.

Эд Риддл при создании игры вдохновлялся гоночным событием под названием Indianapolis 500, знакомому многим любителям заездов на скорость. В отличие от прототипа, Indy 500 не ограничивается нарезанием кругов наперегонки. Кроме традиционных гонок тут  есть состязание по сбиванию призовых коробок, "автосалочки" и гонки на льду со "скользкой" физикой.
,старые игры,Atari 2600
Здесь моя задача -- протаранить как можно больше голубых коробок,
пока не истекло время. Каждый раз, когда я наезжаю на цель, мне
засчитывается очко, а цель появляется в другом месте.

В каждую из представленных игр можно сыграть как с другом, так и одному, наперегонки с таймером. Единственная обязательно парная игра -- салочки, но и тут соперника может заменить компьютер.
,старые игры,Atari 2600
Моя машина (жёлтая) сейчас мигает, поэтому её не видно на скриншоте.
Это значит, что я должен убегать, а игрок в синей машине -- пытаться
меня догнать.

,старые игры,Atari 2600
Эта ледяная трасса выглядит проще остальных, но на деле игроку,
не освоившему управляемых заносов, здесь придётся туго.

Indy 500 можно со спокойной совестью рекомендовать всем любителям ретрогейминга. Она не пытается прыгнуть выше головы и не ломает представления о возможностях системы. Это просто качественная и разнообразная для своего времени игра. И в отличие от Street Racer, где было всё что угодно кроме стритрейсинга, Indy 500 -- действительно про гонку Индианаполис 500.

История видеоигр, часть 32: Air-Sea Battle (1977)

ata ni 7600 VIDEO GAME
ATARI aVW cartridge
ÄIR-SEA BATTLE,старые игры,Atari 2600
Могу себе представить радость маленького милитариста из семидесятых, когда родители вручали ему картридж с Air-Sea Battle для новенькой Атари VCS. Бомбардировщики, зенитки, истребители, вертолёты, дирижабли, линкоры и картонные уточки из тира -- всё это умещалось в одной маленькой коробочке, рассортированное на 27 игр.
,старые игры,Atari 2600
Которые, в свою очередь, были организованы в шесть тематических групп. В первой игрок или игроки отстреливали воздушные цели из стационарных орудий. Во второй -- управляли подвижными субмаринами, которые атаковали торпедами проплывающие корабли. Как обычно в случае с ранними аркадами, единственная цель в любом варианте Air-Sea Battle -- набрать счёт больше, чем у соперника.
,старые игры,Atari 2600
Дирижабли (или воздушные шары) с литерой А стоят 0 очков и
только мешают стрельбе.

Далее по списку игрокам представлялась возможность поуправлять ружьём в тире, кораблём и бомбардировщиком. Некоторые поздние вариации игры были устроены в виде дуэли, где игрокам приходилось выбивать очки друг из друга.
,старые игры,Atari 2600
Тир. Кролики, уточки и клоунские рожицы.
Журнал Video назвал Air-Sea Battle ультимативной игрой для любителей взрывать всё подряд, прочая игровая пресса тоже не скупилась на оценки. Конечно, старушке не тягаться с играми на современных платформах, но держится она достаточно бодро. И бонусный факт: Air-Sea Battle была первой игрой от Ларри Каплана, одного из сооснователей Activision.

История видеоигр, часть 31: Street Racer (1977)

k Warne* Communicaiions Company
STREET RACER
GAME PROGRAM "
winery STREET RACER '-SLALOM-y #DODGEM'-JET SHOOTER •
# GAM E5 NUMBER CRUNCHER™ • SCOOP BALL™,старые игры,Atari 2600,гонки

Чего бы вы ждали от игры с названием Street Racer? Тюнингованных тачек с хромированными дисками? Адреналиновых заездов по брызжущим неоном ночным улицам? Лихих заносов и воя полицейских сирен за спиной? А вот вам:
,старые игры,Atari 2600,гонки
Street Racer - одна из девяти стартовых игр для Atari 2600 (в девичестве Atari VCS). Как удручённо признал сам автор, Ларри Каплан, программа слабо использовала возможности системы. Так, например, он не смог реализовать эффект уплывающей назад трассы, благодаря чему Street Racer -- единственная в мире гоночная игра с нулевым ощущением динамики. Спрайты машин и препятствий тоже не претендуют, даже по меркам Atari 2600. Зато, как это часто бывало на Atari 2600, Street Racer -- это целый набор игр с немного различающимися правилами и сложностью, всего 27 штук. Все их можно разделить на шесть больших групп.
Street Racer
Титульная игра, в которой вам надо уклоняться от вылетающих навстречу соперников. Похожи ли машинки на скриншоте на автомобили, которые можно встретить на улицах города? Чёрта с два. Скорее это формульные болиды. Но при чём тогда здесь стритрейсинг?
,старые игры,Atari 2600,гонки

Slalom
Вместо гоночной трассы теперь (предположительно) горный склон, перегороженный стенами с узкими воротами, в которые вам предстоит ужом проскальзывать.
013101310131013101310131013101310131013101310131013101000131,старые игры,Atari 2600,гонки

Dodgem
Дурацкая вариация, в которой машина игрока не фиксирована в нижней части поля, а раз за разом проезжает весь экран снизу вверх, уворачиваясь от некоего ромбовидного объекта.
,старые игры,Atari 2600,гонки

Jet Shooter
Смехотворная пародия на шутер, где игрок управляет самолётом и отстреливает летящих ему навстречу врагов. Несостоятельным в геймплейном смысле его делает то, что игрок может выпустить только один снаряд, и если тот прошёл мимо, то придётся ждать, пока он не скроется за горизонтом. А летит он, поверьте, медленно.
,старые игры,Atari 2600,гонки

Number Cruncher
Странным образом, этот вариант оказался довольно приятным. Вместо того, чтобы уворачиваться от чего-то, здесь игроку нужно ловить летящие на него цифры, зарабатывая очки. Ловить, впрочем, надо аккуратно -- сталкиваться с цифрами можно только фронтально, иначе -- ДТП.
,старые игры,Atari 2600,гонки

Scoop Ball
Scoop Ball сажает игрока за руль чего-то типа скоростного бульдозера, снабжённого ковшом, которым нужно подбирать на трассе знаки "+", в то же время уворачиваясь от бульдозеристов-конкурентов.
,старые игры,Atari 2600,гонки

В целом, учитывая молодость системы, тогда игра вышла не полной катастрофой. Но в наши дни удовольствия от неё вы не получите. Графика и звук -- чуть получше, чем в Miniature Golf, анимация спрайтов отсутствует, а главное -- это одна из очень немногих гоночных игр, во время которых можно уснуть от скуки. И она не имеет никакого отношения к стритрейсингу.

Beneath the Citadel v.0.18

Опоздал на целых три недели, прошу прощения. Рад бы сказать, что всё это время был активно занят разработкой и теперь выкачу вагон фич, но нет, виновники - работа и личная жизнь. Тем не менее, готова важная механика - события. Использована она пока не на полную катушку, но попробовать на зуб можно. Неуникальные события происходят на первом этаже с вероятностью 7% на комнату.
Кроме этого - пара новых монстров и видов оружия. Полный список изменений (на этот раз скромный) как всегда будет в комментах.
^te snapshot » a Reset suspeno Power-
i Ш M û ù Ф
Toadmen patrol
You see three toad like humanoids arguing about something in this room. They are armed with spears and wield light wicker shields. You remember their description from one of your lectures: they are waqiri, swamp-dwelling savages.
Куда двигаться дальше? Выбор возможных направлений всё ещё огромен: крафт, доработка магии, стелс, дополнительные боевые умения и перки, лор. Думаю, для следующей версии я сосредоточусь на свойствах предметов и дополнительных умениях игрока и существ. Это позволит сделать сразу большую пачку контента, который будет приятно пощупать.
^te snapshot » a Reset suspeno Power-
i Ш M û ù Ф
Husk
ft thin human figure shambles across the room. It is dressed in worn and dirty clothes and wears a common leather cap. Even in such dim illumination you can see that this is a husk - a dead and withered body animated by sorcery.
The figure
Ссыль на bochs:
Ссыль на дискету:
^te snapshot » a Reset suspeno Power-
i Ш M û ù Ф
jagged sword
Crude sword with jagged blade and leather-wrapped grip. Type: weapon Durability: 32/32 Physical damage: 16
iq? Bochs for Windows - Display
CTRL + 3rd button enables mouse	IPS: 91,325M	A:	NUM	CAPS	SCRL,gamedev,Игры,Roguelike

История видеоигр, часть 30: Tank Trap (1977)

For the ATARI 400/800
An Exciting Graphic Animation Game By Don Ursem
QS
QUTJLny
SOFTW7IR6™,старые игры,atari
Случается, что витающая в воздухе идея попадает совсем не в ту голову. Так, игра, которую мог придумать только сходящий с ума от скуки рядовой российской армии, вдруг материализовалась в уме американца Дона Арсема. Судите сами: в самоволку ушёл танк (вероятно, с танкистами), и начальство поручает вам поймать мерзавцев, используя только списанные кирпичи и цемент.
TANK	TRAP
BY OOM	URSEM
CCJ 1980 Quality Software
DIFFICULTY LEVEL
1,старые игры,atari
Процесс ловли подарит вам пару часов весёлого времяпрепровождения. Выглядит так: по одноэкранному игровому полю беспорядочно носится танк; игрок контролирует человечка, который, хотя и бегает медленнее танка, зато оставляет за собой бетонную стену. Задача игрока - запереть танк в небольшом замкнутом пространстве. Потыкавшись в стены и не найдя выхода, тот рано или поздно сдастся. Игрок терпит поражение, если его давит танк.
,старые игры,atari
Победа, танк заперт в левом верхнем квадрате. На скриншоте его не видно, потому что
танк перестаёт отображаться после вывода сообщения.

На самом деле условие победы звучит так: "столкнувшись со стеной, танк сделает девять случайных разворотов; если при этом он не найдёт выхода, то сдастся". Это значит, что теоретически не обязательно окружать танк стеной. Достаточно нескольких блоков и везения. Кстати, построенный мной в этой партии квадрат - не оптимальное решение. Кривые стены с выступами и нишами поставят танк в тупик гораздо быстрее.
,старые игры,atari
У левой границы экрана мы видим два танка. Сначала стирать, потом перерисовывать!
Игра имеет четыре уровня сложности. На первом поле обнесено стеной по периметру и танк не может выехать за пределы экрана. На втором ограждающей стены нет, и танк, выехав с одной стороны поля, появляется с противоположной. Кроме того, часть оставленных игроком блоков состоит из долго застывающего бетона, который танк может протаранить. Впрочем, есть вероятность, что при ударе бетон затвердеет и задержит танк.
,старые игры,atari
Синие участки стены - ненадёжные. Если танк натолкнётся на них, то
они или превратятся в нормальные или исчезнут.

На третьем уровне на поле появляются гражданские. Их, по идее, надо защищать, но, как я ни старался узнать, что будет, если танк переедет одного из них, ничего не вышло; водитель машины наотрез отказывался давить людей. Насколько я понимаю, гибель гражданского - не конец игры, но очков с финального счёта спишут.
,старые игры,atari
На четвёртом уровне танк иногда стреляет из пушки и ломает построенные игроком стены, но только если игрок отдаляется от танка на четыре или более клетки.
,старые игры,atari
Tank Trap не может похвастаться детальной графикой, но звуковое сопровождение не раздражает, а коротенькие мелодии, звучащие в начале и конце раунда, вполне приятны на слух. Управлению несколько недостаёт чувствительности. Часто игрок гибнет под гусеницами танка просто потому что персонаж не отреагировал на нажатие кнопки направления.
YOU TRAPPED THE TANK IN 285 MOOES AND USED ONLY 180 TRAPS.
FOR THIS, YOU'VE EARNED..
THE RANK OF
★ ★ ★ ★
FULL GENERAL,старые игры,atari
По окончании партии игрок получает звание в соответствии со своей
эффективностью.

Найти в интернете информацию об авторе у меня не вышло. Tank Trap была выпущена компанией SPD Software. Отсутствие у этой фирмы каких-либо других игровых проектов заставляет меня думать, что SPD Software -- и есть Дон Арсем, зарегистрировавшийся как компания для распространения Tank Trap. В 1981 году он ещё раз появится на сцене со Starbase Hyperion, после чего навсегда покинет игровую индустрию.