В поисках «Орегонской тропы»

Предисловие переводчика. Приветствую сообщество DTF и любителей ретро-гейминга! Вашему вниманию предлагается перевод материалов из блога Джимми Мехера под названием «Археолог цифрового века» (Digital Antiquarian). В нем повествуется о развитии интерактивного повествования (нарратива), с экскурсами в историю компьютерной техники, а также биографиями выдающихся личностей разных периодов.

Планируется полный перевод всего блога (в данный момент ведется работа над первым томом, который посвящен играм и событиям 1966-1979 гг.). Ввиду особенностей формата все материалы публикуются на сайте Author.Today, периодичность обновления 1-2 раза в неделю. Особо интересные материалы я буду загружать в виде лонгридов на DTF несколько раз в месяц.

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

Итак, слово Джимми Мехеру…

Недавно я приобрел книгу 1001 Video Games You Must Play Before You Die («1001 видеоигра, в которые каждый обязан сыграть за свою жизнь»). Книга, признаться, так себе, однако сейчас мне бы хотелось поговорить о первой игре, упомянутой там: The Oregon Trail. Именно она, собственно, и заставила меня нырнуть в ту кроличью нору, откуда я только теперь вернулся, совершенно ошарашенный, поскольку был вынужден полностью пересмотреть свой взгляд на историю развития интерактивного повествования.

Главное меню (Apple II)
Главное меню (Apple II)

Почти все без исключения американцы моего поколения знают про The Oregon Trail: с начала 80-х и чуть ли не до середины 90-х практически во всех школах где-нибудь в углу пылилось несколько Apple II, на которых среди прочего непременно была установлена эта небольшая образовательная игрушка. Игроку предлагалось взять на себя роль переселенца, который отправляется в долгое и трудное путешествие по так называемой Орегонской тропе из штата Миссури на территорию Орегон. Интерфейс у тех версий был текстовый, однако игровой процесс сопровождали красочные иллюстрации, благодаря которым игра стала популярной среди школьников и до сих пор вспоминается ими с ностальгической теплотой.

Многие, однако, не подозревают, что на момент выхода версии для Apple II The Oregon Trail уже была очень и очень старой. Именно поэтому она и стоит первой в хронологическом списке «1001 видеоигры…». (Правильность датировки меня, сказать по правде, удивила, поскольку ошибок в книге, на самом деле, уйма… Впрочем, сейчас речь не об этом.) Исходная версия была написана на языке BASIC на мини-компьютере серии HP 2100 тремя учителями — выпускниками Карлтон-колледжа, небольшого гуманитарного вуза в г. Нортфилд, штат Миннесота: Доном Роуичем, Биллом Хайнеманном (не родственник Ребекки/Билла Хайнеманна, работавшего, в частности над играми серии The Bard’s Tale) и Полом Дилленбергером.

Когда я писал книгу по истории интерактивной литературы, то в числе двух основных предтеч знаменитой Adventure (1976-77) я выделил ELIZA (1966) Джозефа Вайценбаума, где впервые была реализован принцип текстового взаимодействия с игроком (пусть и в формате салонного развлечения, а не полноценной игры), и Hunt the Wumpus (1973) Грегори Йоба — простенькую игру, в которой игрок, перемещаясь по текстовому лабиринту, сначала скрывается от вынесенного в название Вампуса, а затем убивает его. И вот теперь оказалось, что в этот список следует добавить третью игру: The Oregon Trail.

Итак, что же можно сказать об уровне развития интерактивного повествования в 1971 году? Первые эксперименты по включению игрока в повествование появились довольно давно (см., например, «Уголовное дело» Денниса Уитли), но до сих пор это происходило весьма спорадически. Эдвард Паккард пытался опубликовать первые книги своей будущей линейки «Выбери себе приключение», но издатели как один отказывали ему. Воплощение идеи пришлось отложить на более поздний срок. В штате Висконсин группка настольщиков решила внести разнообразие в правила любимых варгеймов, но первое издание Dungeons & Dragons появится только через несколько лет. Безусловно, в варгеймах и прочих симуляционных играх тоже есть компонент погружения: игроки вольны сколь угодно подробно представлять себе события, происходящие на игровом столе, но это отстраненное представление, не отражающее чувств конкретных персонажей игрового мира. Наконец в лабораториях искусственного интеллекта велись кое-какие работы по программно-генерируемому повествованию, но результатом были самодостаточные, не интерактивные истории, которые компьютер генерировал из готового набора исходных данных и предлагал пользователю.

И вот на сцене появляется The Oregon Trail, которая начинается словами: «Вашей семье из пяти человек предстоит преодолеть 2040 миль по Орегонской тропе за 5-6 месяцев и выжить при этом. На путешествие вам удалось накопить $900, и $200 из них вы только что потратили на фургон». Нас сразу же погружают в игровой мир, дают примерить на себя конкретную роль, а затем предоставляют полную свободу действий. Хоть одна компьютерная программа до этого предлагала пользователю не прочитать созданную для него историю, а, наоборот, поучаствовать в ее создании? Даже если такие и были, я про них не знаю.

В общем, я задался целью отыскать вариант The Oregon Trail, который был бы как можно ближе к исходной версии. Сразу скажу: дело оказалось нелегким, почти безнадежным.

Итак, напомню: первоначальная версия The Oregon Trail была написана на мини-компьютере серии HP 2100. Остановимся на этом аспекте поподробнее.

HP 2100, первая серия компьютеров Hewlett-Packard, поддерживала целый ряд операционных систем. Самой распространенной была HP Time-Shared BASIC (BASIC с разделением времени), под которой и была написана The Oregon Trail. Эта ОС не имела аналогов и в каком-то смысле даже опережала свое время. Если почти во всех ОС того периода пользователь должен был работать через интерфейс командной строки, то HP TSB, как следует из названия, после авторизации помещала пользователя в интерактивную среду BASIC, в которой можно было не только сразу писать программы на BASIC, но и взаимодействовать с компьютером (запускать программы, сохранять файлы и т.п.), используя тот же синтаксис.

По сравнению с другими ОС того времени HP TSB представляла собой более дружелюбную среду для работы и программирования. Кроме того, компьютеры серии HP 2100 отличались сравнительной дешевизной и простотой в эксплуатации, благодаря чему их особенно полюбили в университетах и даже некоторых школах. Конструкторы из HP немало постарались, чтобы сделать эти машины максимально удобными в использовании. Особого внимания заслуживает руководство пользователя, рассчитанное на людей, никогда до этого не работавших с BASIC. Авторы отлично сумели сделать его понятным и доступным, не скатываясь при этом в назидательность. Ввиду вышесказанного неудивительно, что HP 2100 в итоге попали и в Карлтон-колледж.

На HP-BASIC было написано довольно много игр и обучающих программ, которые затем сохранялись на магнитных кассетах. В интернете мне попался образ одной из них, представлявший собой, по сути, несортированный массив данных. Среди шести мегабайт было действительно немало программ на BASIC, большая часть размером всего в несколько килобайт. Увы, The Oregon Trail там не оказалось.

Что ж, раз поиски первоначальной версии в том виде, как она была написана выпускниками Карлтон-колледжа, успехом не увенчались, я решил разыскать самую раннюю версию из возможных. Ею оказалась версия, напечатанная в номере Creative Computing за июль-август 1978 г. Прежде чем углубиться в нее, однако, я хочу рассказать, что произошло за семь лет между появлением первоначальной версии и публикацией кода в Creative Computing.

Дон Роуич рассказывает об истории создания The Oregon Trail на конференции GDC

В 1971 году Дон Роуич, Билл Хайнеманн и Пол Дилленбергер — трое старшекурсников из Карлтон-колледжа, снимавших вместе жилье, — проходили педагогическую практику. Хайнеманн с Дилленбергером преподавали математику, а Роуич — историю. Именно он придумал, как рассказать школьникам об Орегонской тропе в виде настольной игры, а соседи предложили перенести ее на компьютер, написав код на HP-BASIC. Таким образом, первыми, кто сыграл в The Oregon Trail, помимо разработчиков, стали ученики Роуича: 3 декабря 1971 года он прикатил на урок телетайпный терминал. По словам Роуича, игра ученикам «чрезвычайно понравилась». Он и его коллеги по школьному округу Миннеаполиса затем часто использовали The Oregon Trail на своих уроках до конца полугодия. В 1972 году практика у Роуича закончилась, и он удалил игру из системы, забрав с собой распечатку исходного кода, которую затем забросил куда-то в дальний ящик стола.

Так выглядела игра до появления графического интерфейса
Так выглядела игра до появления графического интерфейса

Тем временем штат Миннесота превратился в центр компьютерных инноваций. В 1973 году по решению законодательного собрания штата был организован Миннесотский консорциум компьютерного образования (МЕСС), занимавшийся внедрением компьютеров в сферу образования. В штаб-квартире консорциума в г. Миннеаполис установили мейнфрейм UNIVAC 1100, к которому были подключены 1500 терминалов в школах по всему штату. В 1974 году МЕСС нанял Дона Роуича в качестве «специалиста по связям с местными учебными заведениями».

Воодушевленный возможностью снова вернуться к интересовавшей его теме — применению компьютеров в образовании, — Роуич вспомнил про ту самую распечатку с кодом The Oregon Trail. Во время «длинных выходных по случаю Дня благодарения» он бережно перенес код с пожелтевших от времени листов на UNIVAC, попутно внося исправления, связанные с различиями в архитектуре мини-компьютера и мейнфрейма, а также используемых версиях BASIC.* Кроме того, Роуич расширил и улучшил саму игру, сделав ее более целостной, исторически достоверной и увлекательной. В течение следующих нескольких лет в The Oregon Trail сыграли тысячи школьников по всему штату.

*На самом деле все происходило не совсем так, однако правду я выяснил несколько позже.

В 1977 году MECC заменил устаревающий UNIVAC на мейнфрейм серии CDC Cyber 73, и The Oregon Trail был портирован на него. Именно эту версию в итоге и напечатали в Creative Computing в 1978 году. К этому времени MECC, который всегда на шаг опережал свое время, уже перешел на новейшие, как их тогда называли, «микрокомпьютеры». С 1978 года в школах Миннесоты начали появляться Apple II. Естественно, The Oregon Trail портировали и на этот компьютер тоже.

Впрочем, удивительные открытия, как оказалось, были впереди. В какой-то момент к моим археологическим изысканиям подключились специалисты по HP 2100 из группы в Yahoo, и один из них, Майкл Джемени, изучая образ кассеты из школы округа Йорк, штат Пенсильвания, нашел программу с многообещающим названием Oregon. Запустив ее, мы поняли, что перед нами версия The Oregon Trail от 27 марта 1975 года, то есть на три года старше версии, напечатанной в Creative Computing. Если вам интересно покопаться в исходном коде, то я загрузил его на свой сайт. Сравнив, таким образом, две имеющиеся версии, мы узнали немало интересного.

Прежде всего, это позволило мне исправить историческую неточность, допущенную ранее. В 1974 году, когда Роуича только взяли работать в МЕСС, он явно не занимался портом The Oregon Trail на UNIVAC — по крайней мере, не сразу. Сначала он, скорее всего, просто заново набрал код на имевшемся у консорциума НР 2100: вполне логично, если учесть, что эти мини-компьютеры стояли почти в каждой школе, причем не только в Миннесоте, но и по всей стране, а к началу 1975 года МЕСС активно распространял игру по образовательным округам соседних штатов.

Нетрудно также заметить, что сам Роуич, программисты из МЕСС — или кто-то еще — в последующие годы продолжали доводить игру до ума, и в таком обновленном виде она попала на Apple II. В версии 1978 года есть ряд нововведений, отсутствующих в версии 1975 года. Возьмем ситуацию, когда игроку — во время охоты, нападения бандитов и т.п. — нужно быстро ввести в терминал какое-то слово. В версии 1978 года появляются уровни сложности: в начале игры программа просит игрока указать, насколько он хороший стрелок — от «меткого аса» до «трясущихся рук». От выбранного варианта зависит, сколько времени будет даваться на ввод. Кроме того, нужное слово каждый раз выбирается случайно: BANG, BLAM, POW или WHAM, — тогда как в версии 1975 года это всегда старое доброе BANG.

Если вам интересно поискать другие отличия, версию 1978 года я тоже выложил у себя на сайте, хотя она, конечно, не настолько аутентичная, как версия 1975 года. Мне пришлось довольно долго вычитывать код, чтобы убрать все ошибки распознавания, но зато я бэкпортировал ее с BASIC, которой использовался на мейнфреймах линейки CDC Cyber, на HP-BASIC. Так что теперь вы можете почувствовать, как The Oregon Trail могла выглядеть на «родном» мини-компьютере серии НР тогда, в 1978 году.

Итак, возьму на себя смелость условно обозначить эти две версии номерами 2 и 3 соответственно. Логично предположить, что следующей моей целью должен был бы стать поиск версии номер 1… Увы, эта задача при всей ее привлекательности кажется неосуществимой. Поскольку первоначальная The Oregon Trail, по всей видимости, существовала только на том компьютере, на котором Роуич с Хайнеманном и Дилленбергером ее написали, и поскольку в 1972 году, уходя из школы, Роуич ее удалил, единственным источником остается та самая пожелтевшая распечатка, которую Роуич принес с собой в МЕСС. На снимке, сделанном в ТЦ «Молл оф Америка» (г. Блумингтон, штат Миннесота) во время мероприятия, посвященного годовщине выхода The Oregon Trail, Роуич держит в руках нечто очень похожее:

Билл Хайнеманн, Дон Роуич, Пол Дилленбергер. Роуич (в центре) держит в руках распечатку
Билл Хайнеманн, Дон Роуич, Пол Дилленбергер. Роуич (в центре) держит в руках распечатку

Мне удалось связаться с Роуичем, но, увы, распечатки у него не осталось. Если не случится чуда, видимо, ничего старше версии 1975 года нам уже не найти. Тем не менее даже одна эта находка дорогого стоит.

К томе же, изучая исходный код, можно узнать немало занятного. Здесь я даю слово Майклу Джемени, поскольку он гораздо лучше меня разбирается в тонкостях HP-BASIC:

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

Тот «другой программист» — это, конечно же, Роуич, который переписывал программу для МЕСС, внося свои изменения. В коде сохранились свидетельства, что он — по крайней мере, сначала — работал один и профессиональными познаниями в программировании, в отличие от Хайнеманна и Дилленбергера, не обладал.

Почти все строки кода пронумерованы числами, кратными пяти, но в некоторых местах последовательность нарушается, и это довольно странно, учитывая, что в HP-BASIC, по словам Майкла, реализована довольно продвинутая функция перенумерации строк. Вероятно, Роуич о ней просто не знал, а следовательно, по «выбивающимся» строкам можно отследить те изменения или добавления, которые он внес в версию для MECC. Если вдруг кому-то интересно, Майкл выделил эти строки, а я их прокомментировал:

Строки 8-11: указание на MECC, автора изменений и текущую версию

Строки 262-263: предупреждение, чтобы игрок не использовал знак ‘$’

Строка 999 (и далее): комментарии с названиями разделов кода

Строка 1332: напоминание, чтобы игрок использовал целые числа

Строка 1537: предупреждение о разумных тратах

Строка 1752: комментарий о том, что команда «‘7» запускает велосипедный звонок (единственный звуковой эффект, доступный на телетайпном терминале)

Строка 1902: разделение вопроса на две строки

Строка 2392: исправлен баг, связанный с ненападением разбойников

Строка 2672: проливной дождь также приводит к потере патронов

Строка 2792: пожар также приводит к потере патронов

Строка 2891: нападение индейцев (вероятно) заменено на нападение волков

Строка 3147: повреждение фургона также приводит к потере патронов

Строка 3317: снежная буря также приводит к потере патронов

Строки 3650-3658: добавлены родственники и тетушка Нелли

Строка 4012: еще один комментарий о велосипедном звонке

Строка 4279: изменено поздравление в конце игры

Сопоставив эти комментарии с известной нам историей, теоретически можно было бы «реконструировать» первоначальную версию The Oregon Trail, однако после долгих размышления я решил отказаться от этой затеи. Поскольку нет никакой возможности определить, вносил ли Роуич изменения в основной код (и если да, то какие), все наши попытки будут основаны лишь на догадках.

Что ж, на этом увлекательные поиски завершились, и в заключение я все-таки расскажу о самой игре.

Весь геймплей The Oregon Trail завязан на управлении ресурсами. В начале игры вы получаете $700, и эти деньги надо тратить с умом, потому что возможности заработать не будет. Нужно купить волов в упряжку, еду, патроны, одежду и «прочие припасы» (в частности, лекарства). Сама игра состоит примерно из 18 «ходов», каждый из которых примерно соответствует двухнедельному отрезку пути по Орегонской тропе. В начале каждого отрезка вы выбираете: поохотиться или продолжить движение. Кроме того, через каждые два хода на дороге попадается форт, где, если понадобится, можно докупить припасы. Необходимо также решить, как будет питаться ваше семейство: скудно, умеренно или плотно, — то есть необходимо взвешивать запасы провианта против возможных последствий недоедания, например, болезней. Также в течение каждого хода могут происходить различные случайные события, как правило, неприятные. Все эти лишения и невзгоды, пожалуй, запоминаются игрокам лучше всего:

«ПОВОЗКА СЛОМАЛАСЬ. ВЫ ТРАТИТЕ ВРЕМЯ И ПРИПАСЫ НА РЕМОНТ.»

«ВОЛ ПОВРЕДИЛ НОГУ. СКОРОСТЬ ПУТЕШЕСТВИЯ УПАЛА.»

«НЕСЧАСТНЫЙ СЛУЧАЙ: ВАША ДОЧЬ СЛОМАЛА РУКУ. ПРИШЛОСЬ ОСТАНОВИТЬСЯ И ПОТРАТИТЬ ПРИПАСЫ, ЧТОБЫ НАЛОЖИТЬ ШИНУ.»

«НА ВАС НАПАЛИ ДИКИЕ ЗВЕРИ!»

Если верить некоторым свидетельствам, в первоначальной версии вместо зверей нападали индейцы — событие гораздо более захватывающее, но менее политкорректное. Признаки вмешательства в код по соседству со строкой 2885 подтверждают эту гипотезу. (Интересный факт: знаменитая фраза «ВЫ УМЕРЛИ ОТ ДИЗЕНТЕРИИ!», породившая множество интернет-мемов, появилась только в более поздних версиях.) Череду неудач иногда разбавляют события вроде «ДОБРЫЕ ИНДЕЙЦЫ ПОДСКАЗАЛИ ВАМ, ГДЕ НАЙТИ ЕЩЕ ЕДЫ», но в целом жизнь игрового переселенца весьма трудна, что, насколько мне известно, вполне соответствует действительности.

Роуич приложил массу усилий, чтобы максимально достоверно воспроизвести все особенности путешествия по Орегонской тропе, — немалый подвиг в условиях технических ограничений того времени. Вероятность выпадения тех или иных случайных событий в общем соответствует исторической действительности. Учитываются и изменения ландшафта: при переходе через Скалистые горы поездка становится медленнее и опаснее. Реализована даже смена погоды, когда семейству игрока требуется больше одежды. На самом деле, за кадром происходит немало расчетов и процессов, которых от столь простой игры и не ожидаешь.

Еще одна особенность The Oregon Trail (которая, впрочем, роднит ее со многими играми той эпохи, написанными на BASIC): от игрока ожидается — и я бы сказал, даже требуется, — что он будет подсматривать в исходный код, чтобы разобраться в игре. В частности, я даже не подозревал, что остановка в форте резко снижает расстояние, пройденное за ход, пока не увидел соответствующую строчку кода! Точно так же легко не заметить, как изменения ландшафта влияют на игру, если предварительно хотя бы бегло не ознакомиться с кодом.

С точки зрения нарратива The Oregon Trail тоже выглядит на удивление достойно. Текста в ней, конечно, мало, но даже несмотря на это создается впечатление, будто действительно отправляешься в полное трудностей и опасностей путешествие. Преодолевая последние мили до Орегона на хромых волах, почти без еды и припасов (а зима близко!), я в самом деле переживал за свою маленькую компьютерную семью. Ощущение «присутствия» дополнительно подкрепляется периодическими экшн-вставками, где за короткое время нужно успеть ввести слово BANG (или другое), чтобы подстрелить добычу на охоте или отбиться от разбойников.

Игра также очень сурова и не прощает ошибок: не сумеешь запасти достаточно еды, лекарств и патронов на очередной ход — все, смерть. Однако в отличие от ранних адвенчур, где внезапные смерти были зачастую абсурдны и жестоки до нелепости, в The Oregon Trail подобный исход выглядит совершенно логичным. Путешествие по Орегонской тропе действительно было подвигом, и множество переселенцев в самом деле погибали по тем же самым причинам, что представлены в игре. Даже в современных сюжетно-ориентированных играх такое единство между геймплеем и нарративом встречается довольно редко.

Для себя я выработал следующую стратегию прохождения: закупиться на старте только самым необходимым минимумом, сэкономив деньги на потом. Еду можно не брать совсем, а вместо этого через ход охотиться (благо я умею печатать вслепую). Если не набирать много вещей, то не так страшно потерять их в результате того или иного несчастья (а они происходят чуть ли не на каждом шагу). С другой стороны, в этом случае приходится чаще останавливаться в фортах. Моя вечная проблема: не успеть до зимы и застрять где-нибудь на горных перевалах. Чаще всего это заканчивается проигрышем. А вообще, у каждого игрока, как правило, есть своя излюбленная стратегия.

История The Oregon Trail после 1978 года задокументирована гораздо лучше, поэтому сильно углубляться в нее я не стану. К 1980 году МЕСС приобрел 500 компьютеров Apple II и распределил их по всем школам Миннесоты. Новенькие компьютеры, помимо, конечно же, образовательных приложений, могли похвастаться и свежепортированной версией The Oregon Trail. В 1985 году в игру добавили цветные иллюстрации, а в 1995 году вышла делюкс-версия на компакт-диске. Кроме того, The Oregon Trail породила ряд пародий и подражаний, например, Organ Trail (2011-2013) в условиях зомби-апокалипсиса. Однако если стереть весь мультимедийный лоск, то окажется, что все они на удивление недалеко ушли от той концепции, которую придумал Роуич в далеком 1971 году.

Ни в коем случае не утверждаю, что в The Oregon Trail самый лихо закрученный нарратив в игровой индустрии, но он на самом деле гораздо лучше, чем от него можно было бы ожидать. Я очень рад, что смог познакомиться с этой игрой поближе, причем в наиболее первозданной форме из доступных. И я, не колеблясь, включаю ее вместе с Eliza, Hunt the Wumpus и Adventure в список игр, в которые должен сыграть каждый, кто желает погрузиться в историю интерактивного повествования.

(Ссылка на Patreon автора: https://www.patreon.com/DigitalAntiquarian/posts)

4343
12 комментариев

Оригинальный блог просто топ. Удачи не бросить перевод...ибо дохера

3
Ответить

Это точно :) Больше полугода уже читаю, пока дошел до 1989 года. Объем гигантский, но стараюсь стимулировать себя регулярными публикациями на автор тудей.

2
Ответить

В середине 90-х в моей провинциальной школе можно было ещё застать класс информатики с какими то очень старыми советскими ЭВМ, на одной из которых мы с одноклассником играли в русскую версию сабжа.
Судя по тому, что я слышал и читал про различные версии Орегонской тропы, то была уникальная локализация, которая, похоже, навсегда канула в лету вместе с гибкими дисками, на которых она хранилась.

3
Ответить

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

1
Ответить

Версию для Вии еще забыли:

2
Ответить

Спасибо за добавление! Там можно перечислять, на самом деле, очень долго. Одних "официальных" версий, которые с 1975 г. выпускались под грифом МЕСС, насчитывается не менее десятка :)

1
Ответить

Смотрел где-то на просторах ретрогеймерского Ютуба про эту игру. Тоже упоминали, что для своего времени прям очень продуманная, и при том ещё хардкорная

2
Ответить