Мир из слов: интерактивные текстовые приключения

Предлагаю вашему вниманию… нет, не совсем перевод. Это слегка сокращенный пересказ выступления Джона Ингольда “Мир из слов: интерактивные текстовые приключения” на конференции Independent Games Summit. Джон — один из создателей компании inkle, создающей текстовые приключения для мобильных платформ. В журнале IFprint было несколько статей, посвященных играм этой компании.

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


Мир, созданный из слов


Если поговорить с людьми о текстовых играх, выясняется, что все слышали о них. У каждого свое мнение, но в итоге они сводятся к двум вариантам: “Вау, текстовая игра, это такое ретро, я помню как сложно в них было играть” или же “О, это авангард, все так странно и интересно, но ничего не понятно”. Разрабатывая Sorcery, мы постарались найти середину между этими двумя крайностями, создать игру, которая была бы понятна и удобна обычному игроку.

Так почему же мы выбрали текст в качестве инструмента?

Текст многогранен

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

Вот вам наглядный пример из Sorcery 2:

Вы идете напрямик через поля, вдаль от дороги, направляясь к холмам у реки.
Описываем текущее действие игрока.
Где-то в центре Кхаре находятся доки — оживленное место,
Немного рассказываем о мире впереди.
где вы можете найти место, чтобы переночевать
Устанавливаем среднесрочную цель игры.
и возможно, узнать побольше о городе.
И еще одну — мы только что задали две среднесрочные цели в одном абзаце.
Вы поднимаетесь на вершину холма, где травы не так много, затем замираете, услышав звук позади вас. Это тихий шелест клинка, вынимаемого из ножен…
Перебрасываем игрока к тому, что происходит сейчас и на что нужно немедленно отреагировать.

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

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

Или вот еще пример. В Sorcery игрок делает выбор из нескольких вариантов действия — “Вытащить меч”, “Произнести заклинание” и т.п. Действия могут быть как немедленными (“Бежать”, “Закричать”), так и долгосрочными (“Идти в том направлении”, “Сесть и отдохнуть”, “Поспать”). Несмотря на то, что это абсолютно разные временные категории, мы можем совместить их в одном списке вариантов выбора. Я полагаю, ни одна другая система не позволяет сделать что-то подобное.

Текст легко менять, как ничто другое

Sorcery — не книга-игра, здесь нет страниц текста в привычном для книг понимании. Да, текст написан автором, но он не статичен — он собирается на лету, в соответствии с условиями, которые игрок создал в игре. В зависимости от того, что знает игрок, каков его персонаж, каковы его текущие цели, текст одного и того же игрового экрана будет меняться.

Посмотрим еще раз на текст из предыдущего примера, но в других обстоятельствах:

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

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

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

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

Конечно, если мы поменяем один глагол в одном абзаце или одно прилагательное в одном описании главного героя, это никак не поможет в раскрытии образа. Но если мы поменяем это прилагательное везде, где мы описываем героя — мы очень наглядно и заметно для игрока сможем характеризовать персонажа. Меняя таким образом текст, мы можем легко достичь эффекта, аналогичного некоторым RPG-играм, где анимация героя зависит от его состояния и навыков.

Текст дешев и надежен

Когда я говорю “дешев”, я имею в виду не цену, а количество усилий для создания текста по сравнению с созданием 3D-графики, анимаций, рисунков. К примеру, в Sorcery 2 около 300 тысяч слов и 1216 сцен, и все это создано одним человеком за шесть месяцев. Мы можем сравнительно быстро создавать большое количество игрового контента и так же быстро модифицировать и дополнять его. Это важно не только с точки зрения бизнеса, но и с точки зрения дизайна игры, поскольку мы можем позволить себе создавать очень разветвленный сюжет.

Sorcery построена вокруг карты игрового мира. Игрок может попасть в любую локацию на карте, но не сразу. Вы можете сделать один шаг в нужном направлении, затем еще один, и так до тех пор, пока не попадете в нужную локацию. Там будет уникальный игровой контент, потому что автор написал его специально для этой локации — у нас нет необходимости использовать повторно контент из других мест игры. Нет никакого программно генерируемого сюжета или квестов, весь игровой контент создается автором.

Опасности текста

Конечно, помимо преимуществ, у текста есть свои недостатки и опасные моменты, на которые следует обратить внимание. Я выделил три вещи, которых следует избегать и которые часто встречаются в других текстовых играх — обычно из-за того, что с текстом не поработали должным образом.

Чтение может быть тяжелым

Современный человек не любит читать. Это тяжело и скучно. Вот, полюбуйтесь:



Слайдом с такой стеной текста можно заставить умереть от скуки любого читателя. Но вот что странно — разработчики, создающие текстовые игры, именно так и поступают. Есть множество приложений с книгами-играми, которые выглядят аналогичным образом. Сначала на читателя вываливают три-четыре страницы текста, а потом предлагают варианты действий.

Конечно, автор может решить: “Ну, это как-то суховато выглядит, давайте добавим картинку!”



Теперь стало еще хуже. Не потому, что тут фото Питера Молинье (я выбрал его, потому что уверен — он сможет выдержать и не такое). Этот вариант хуже, потому что теперь игрок смотрит на картинку и читает еще меньше текста. Конечно же, это не решает нашу проблему.

Текст — это в первую очередь визуальная среда, ведь вы же смотрите на него. И поскольку мы заботимся о визуальности, то стараемся придерживаться правила, доказанного Твиттером — обычный человек легко может сконцентрироваться на примерно 140 символах текста. Поэтому мы делим текст на небольшие фрагменты, как это делают авторы комиксов. Важную информацию мы обычно помещаем в начало абзаца, поэтому она легко воспринимается даже при беглом чтении. Вот как это выглядит в игре:



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

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

Повторения повторяются

Если вы делаете игру вроде Uncharted, то можете создать одну анимацию персонажа, перекатывающегося за укрытие, и использовать ее хоть тысячу раз. Игрок не заметит этого и будет с удовольствием играть. Но если вы напишете в текстовой игре фразу наподобие “Вы быстро перекатываетесь в укрытие, спасаясь от выстрелов” дважды в одном абзаце, или даже по одному разу в двух разных абзацах на странице — это немедленно вызовет раздраженную реакцию игрока. Люди очень чувствительны к повторениям текста и звука, они улавливают их мгновенно.

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

Но в боевых сценах нам удалось справиться с этой задачей. Боевая механика в Sorcery очень проста — игрок выбирает силу удара, перемещая ползунок, затем наносит удар, и вверху экрана появляется текстовое описание происходящего, сгенерированное программно. Для этого мы используем огромное количество изменений и подстановок текста, вроде такого:

Ваш противник [смеется|делает шаг в сторону|уклоняется|взмахивает мечом]. [Затем|В тот же момент] он [бросается|нападает] на вас.



Игроки не замечают повторов, хотя мы используем те же предложения, заменяя слова синонимами или меняя порядок слов. Правда, перевод подобных игр на другие языки намного сложнее из-за огромного объема работы — недостаточно просто заменить слова в файле перевода, нужно менять весь код для построения фраз и предложений.

Недостаток вовлеченности игрока

И наконец, еще одна серьезная проблема, о которой я хотел бы поговорить. Есть мнение, что игры с выбором вариантов не дают игроку чувства вовлеченности из-за отсутствия “аналогового контроля”.

Под аналоговым контролем я понимаю возможность управлять каждым аспектом поведения игрового персонажа; когда игрок выбирает куда идти, когда стрелять, куда именно стрелять, сколько раз, делать ли перерыв и так далее. Ни одна игра не является действительно аналоговой, всегда есть какие-либо ограничения — возможности движений, проработка мира или точность игрового контроллера. Тем не менее, игрок все равно чувствует, что находится в игре.

Игры с выбором вариантов плохо справляются с этой задачей. Вот игроку даются варианты действий: “Вы хотите А) убить бродягу Б) спасти бродягу?” Он делает движение пальцем — и готово. Само действие и все возможные последствия этого действия произошли из-за того, что игрок ткнул пальцем. Один раз.

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



Эту же структуру можно увидеть и в больших коммерческих проектах, к примеру, в Mass Effect. Игрок доходит до определенной точки и делает бинарный выбор. “Хотите убить того парня или вон того? Выберите вариант А или Б”. Игрок думает что-то вроде “нууу, я не знаааю...” и тыкает пальцем. И игра продолжается. И игрок тут же забывает о сделанном выборе. Как игровой дизайнер, я впечатлен, что игра такого масштаба имеет разветвленный сценарий с разными вариантами развития событий. Но как игроку мне все равно, потому что я нажал одну кнопку один раз, не сделав ничего, что могло бы привести к осознанному выбору.

Как именно игрок делает выбор — вот что действительно важно.

В “Walking dead” для перехода по ветвям сюжета игрок делает один и тот же выбор снова, снова и снова. И в момент, когда на самом деле происходит ветвление сюжета, игрок чувствует свою причастность к этому, потому что помнит как делал этот выбор. Аналогичный подход использован в Heavy Rain, где ветвление происходит в зависимости от результатов долгих последовательностей QTE, но мне это кажется менее эффективным.

В Sorcery мы применяем концепцию аналогового контроля внутри отдельных игровых сцен. Игрок выбирает каждое движение главного героя, каждую строку диалога, которые тот произносит, и продвигается по сцене от одного маленького решения к другому. В конце концов наступает развязка, которая ведет историю в том или ином направлении. Примерно так:



Последовательность множества мелких ветвлений в итоге приводит к бинарному изменению. Давайте разберем этот подход на примере из Sorcery 2.

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

— Спрятаться в хижине
— Смешаться с той группой людей (как в Assassin's Creed)
— Опустить голову, чтобы нас не узнали


Попробуем остаться неузнанными. Опускаем голову… но стражник хватает вас за руку и говорит: “Мы уже где-то виделись, не так ли?”. И у нас есть новый выбор:

— Нет
— Да


Что же делать – солгать или нет? Буду ли я отыгрывать роль нечестного персонажа? Знает ли он, что я сделал, или нет? Неясно.
Итак, я отвечаю “Нет”, и это ложь. Но для решения проблемы этого недостаточно, и ставка теперь повышается.
Стражник говорит “Ведь это ты был в здании стражи прошлой ночью?”, и конечно же, я был там. Продолжать ли мне обманывать или нет?

— Наверное, это был мой брат.
— Возможно. Но сейчас я на свободе.


Выбираем первый вариант ответа. И стражник говорит “Да, пожалуй. И ты наверняка хотел бы увидеться с ним.”, снова повышая ставки в нашей с ним игре.

В конце сцены игрок или будет схвачен стражниками, или сбежит от них. Конечно, мы могли бы сразу дать игроку для выбора эти два варианта, например, в виде “напасть на стражников” / “убежать от стражников”. Но это будет не интересно. Аналоговый контроль дает игроку возможность прийти к тому же разветвлению сюжета, совершая множество других осмысленных и интересных выборов.

Это также означает, что нам не обязательно делать ветвление слишком часто. Если бы в сцене со стражниками все решения приводили бы к тому, что игрок всегда ускользает от стражи – он бы не догадался об этом. Игрок бы подумал: “О, какой я умный, я ускользнул от стражи”. Если игрок намеренно не постарается чтобы его арестовали, он никогда не узнает что его не арестуют ни при каких обстоятельствах.

Ну и наконец, если мы сделаем менее экстремальное ветвление, то можем сделать причинно-следственную связь более явной. Каждый раз в момент ветвления сюжета мы можем сказать “Это случилось потому, что ты сделал то-то”. Мы даже можем сказать, что именно игрок сделал, потому что в игре не так много ветвей, которые нужно отслеживать. Таким образом мы можем завоевать доверие игрока и дать ему чувство контроля над игрой.

Перевод Сергея Можайского

6 комментариев

fireton
Отлично! Спасибо большое. Только почему-то у меня ощущение, что статья оборвалась на середине. :)
techniX
Да, есть такое — выводов в докладе не было, только вопросы в конце :) Как оказалось, изложить живое выступление в виде статьи чуть сложнее, чем просто перевести готовый текст. Если при просмотре видео все кажется в порядке, то при изложении в текстовом виде замечаешь ненужные повторы, недосказанности понятные только из контекста или интонации, ну и так далее :)
Peter
Спасибо! Прочитал с большим удовольствием.
ASBer
Ваш противник [смеется|делает шаг в сторону|уклоняется|взмахивает мечом]. [Затем|В тот же момент] он [бросается|нападает] на вас.
Понравился способ формирования разнообразных фраз. Утащу на свою платформу =)
techniX
Посмотри еще видео выступления — где-то в районе 19:30 он показывает скриншоты их инструмента для редактирования подобных фраз. То что я привел в статье — лишь маленький кусочек того что умеет их генератор.
Volt
У меня эта книга как-то не пошла. Она еще и сложная очень. Но многим нравится, с заклинаниями вообще прикольная тема.