[Перевод] Как написать длинную интерактивную повесть
Это - мой перевод статьи “В цифрах, или как написать длинную интерактивную повесть, которая не будет отстоем” Дэна Фабулича из компании Choice of Games, которая выпускает платные интерактивные романы. Оригинал вы можете прочесть по этой ссылке. Он датируется июлем 2011 года. Все ссылки в статье ведут на английские ресурсы.
Традиционные книги-игры чаще выходят довольно краткими. Средний сюжет в книге на сто десять страниц в самой популярной серии “выбери путь”1 занимает всего шесть параграфов.
Несложно увидеть, почему. Если каждый параграф книги-игры позволяет читателю взять один из только двух вариантов, то история на семь параграфов потребует 128 страниц текста. Если вы захотите восемь параграфов, то автору придётся предоставить вдвое больше текста, 256 страниц. А если вам захочется написать короткий рассказ на двенадцать параграфов, то вам понадобится книга длиннее миллиона страниц. Вы никогда не закончите писать “короткую историю” таких размеров!
Трудно рассказать отличный сюжет за меньше, чем восемь страниц. (Вы можете рассказывать детские истории — возможно, поэтому бренд CYOA традиционно приманивал детей.) Вам придётся писать рассказы подлиннее, если вы хотите, чтобы их читали взрослые.
Но как?
Один из способов написать длинную интерактивную литературу - это агрессивно соединять свои ветки сюжета, примерно так:
Но это создаёт очевидную проблему: если ваше изложение выглядит именно так, то повести всё равно, что происходит в предыдущих решениях. Не имеет никакого значения, что вы выберете в главе первой, второй, третьей… ничего не изменится в остальной истории на основании этих решений. Именно такое соединение веток ворует у интерактивной повести её интерактивность.
Решение этой проблемы - это использование отложенных ветвлений, в которых ранние решения не разветвляют историю прямо сейчас; вместо этого, они определяют результат поздних решений.
Для примера, в “Выборе Дракона”, вы решаете в первой главе, к чему тяготеет ваш дракон: к “Жестокости” или “Искусность”. В поздней главе, ваш дракон сражается против группы героев; вы можете выбрать, драться ли с ними на честной дуэли или выложить ловушку вместо этого. Только игроки, которые выбрали Жестокость, выиграют в честной дуэли; игроки, которые выбрали Искусность, проиграют её. С другой стороны, драконы с высокой Искусностью успешно выложат ловушку, когда драконы с Жестокостью поставят ловушку неумело, и герои легко обойдут её.
Откладывая ветвления и агрессивно соединяя ветки, авторы могут продумать линейную историю, которая всё ещё будет очень интерактивной. Наши игры - это полностью линейные последовательности глав; в конце первой главы вы всегда перемещаетесь на вторую, независимо от того, какие решения в приняли в первой главе. Но эти решения могут повлиять на вторую главу.
Вы не сможете переигрывать наши игры столько же раз, сколько вы можете перечитать традиционную книгу-игру, но наши истории на порядки длиннее и глубже, так что мы думаем, что это хороший обмен.
Следите за отложенными ветками при помощи цифр
Мы следим за отложенными ветвлениями, используя горсть числовых значений, которые мы называем “характеристиками2”. Мы показываем эти числа, когда игрок нажимает на кнопку “Показать характеристики”. Вот пример из “Выбора Дракона”, где нашими характеристиками являются Жестокость, Искусность, Хитрость, Честь, Презрение, Месть, Дурная слава, Богатство, Раны и Богохульство. (Богохульство - это скрытый параметр; он не виден на экране характеристик.)
В ранних главах, игрок выбирает, какие параметры будут высокими, а какие — низкими; в поздних главах, мы предлагаем игроку некоторые возможности, которые требуют определённой высокой характеристики, например, игроки могут сыграть в шахматы, что требует высокой Хитрости. Если драконы с низкой Хитростью выберут сыграть в шахматы, они проиграют; драконы с высокой Хитростью выиграют партию.
Несколько новых авторов ChoiceScript3 спросили нас: почему нам нужны числовые параметры, чтобы отслеживать отложенные ветки? Можем ли мы делать отложенное ветвление каким-то другим путём, который не требует никаких вычислений?
К сожалению арифмофобов, не существует более простого пути, чтобы управлять отложенным ветвлением, насколько мы знаем. Это трудно доказать, не перечисляя все возможные способы сделать это, так что вам просто придётся поверить нам на слово. (Или отправить своё предложение в комментарии!)
Есть одна соблазнительная альтернатива, которую я коротко упомяну: вместо использования характеристик, поздние главы могли бы смотреть напрямую на отдельные решения из ранних глав. Выигрыш в шахматах в восьмой главе может требовать от игрока выбора попрактиковаться в шахматах в третьей главе, а не зависеть от большого количества накопленной Хитрости.
Мы используем эту технику время от времени, но редко, потому что если вы будете использовать её слишком часто, ваша история быстро станет слишком сложной, чтобы её писать.
За одно прохождение наших игр, игрок обычно делает сотни отдельных решений. Используя числовые значения, мы можем быть уверены в том, что каждый выбор несёт значимые последствия: если выбор меняет характеристику, то у него есть какой-то эффект. Без характеристик вам бы пришлось держать список каждого решения в игре и убедиться в том, что некоторые поздние главы обращаются назад к этим решениям. Представьте, как вы пытаетесь нарисовать диаграмму сотен кружков с соединительными линиями; намного сложнее избежать чисел, чем просто жить с ними.
По счастью, тот вид чисел, о котором мы говорим, не сложен для работы. Выдайте дополнительные очки Жестокости, когда игрок требует крови, отберите Честь за бесчестные поступки, и так далее. Мы сохраняем характеристики на шкале от 1 до 100%, так что нам легко сказать: “Вы можете выиграть в шахматах только если ваша Хитрость равна 80% или лучше.”
Вся игра - об этих числах
Если вы используете числовые значения, чтобы откладывать ветвления, вы быстро обнаружите, что вся игра начинает вращаться вокруг этих чисел. Каждая глава должна менять характеристики и проверять их, чтобы делать предыдущие решения значимыми.
Характеристики воплощают существенные конфликты вашей истории — главные решения, которые игроки будут делать по мере прохождения вашей игры — так что критически важно хорошо их выбрать.
1: Choose Your Own Adventure - “Выбери себе приключение”, торговая марка, давшая название жанру. Для удобства читателя в переводе эвфемизмы были заменены.
2: Наследие настольных игр, где у каждого персонажа есть лист с характеристиками. В оригинале - “stats”.
3: Язык программирования, на котором написаны все игры Choice of Games, легко компилируется в игры под веб-браузеры, iOS, Kindle и Android. Вы можете оценить его на Github.