Что есть TaleSpin?
Из опасений показаться лектором, я лишь коротко объясню суть.
Фабула в IF может развиваться линейно и нелинейно.
ЛИНЕЙНАЯ фабула - заранее созданный Автором сюжет, любые отклонения от которого в процессе игры не допускаются. Она подобна книге - есть завязка, кульминация и развязка.
В Завязке Автор распределяет роли между Игроком, Персонажем (основной/ые персонаж/и Игры) и Рассказчиком (тот, кто произносит все тексты в Игре) и определяет место-время-ситуацию действия, намечает основные конфликты - плохой/хороший и т.п.
В Кульминации напряжение достигает предела, Авторы подсознательно вставляют в Игру эпизоды с ограниченным временем, без права на ошибку и т.п.
В Развязке конфликты сглаживаются или разрешаются, Персонаж и игрок довольны, Game Over.
НЕЛИНЕЙНАЯ фабула отличает IF от книги. Самой простой ее формой является "разветвление сюжета" (plot branch) - Автор в ключевых моментах сюжета вставляет альтернативные сюжетные линии, большинство которых, впрочем, к развязке сходятся, оставляя 3-4 альтернативных финала.
Но
Допустим, автор хочет создать игру "Детектив", где Персонаж расследует преступление, а Преступник (NPC) заметает следы. Фабула здесь должна развиваться динамично, даже если Персонаж бездействует. Plot-Branch явно не поможет. Где выход?
TaleSpin!
TaleSpin - это система динамичной фабулы, автоматического создания сюжета В ПРОЦЕССЕ игры. (читай tale spin - "раскручивание" истории). В замысле TaleSpin - динамичное развитие игрового мира вокруг Персонажа. Я не вижу другого способа создать TaleSpin, кроме как в объектно-ориентированном языке типа Inform.
Суть:
Применительно к нашей игре - Автор должен создать Завязку - распределить роли, наметить конфликты, место-время действия, если возможно (TaleSpin позволяет создать даже альтернативные завязки - скажем, после рестарта игры преступлением будет уже не убийство, а ограбление, или похищение).
Дальше он кодирует множество "событий" - кусочков сюжета. (поэтому по-моему мнению, необходим объектно-ориентированный язык) Мало даже десяти "событий" - их число должно быть не меньше 40. К примеру, событие 5 - Преступник крадет Улику из отделения милиции (или, если вы любите американизмы, из полицейского участка), событие 18 - Преступник убирает Свидетеля и т.п.
Автор создает Двигатель, специальный объект (или подпрограмму, как кому нравится), которая отвечает за "впрыскивание" событий в фабулу каждые N минут/ходов.
Например, если Персонаж взял Улику из милиции, Двигатель отключает событие 5 и повышает "нервозность" Преступника на 1. Если Персонаж даже не чешется о том, чтобы поговорить со Свидетелем, Двигатель может включить событие 29, когда Свидетель сам приходит к Персонажу, или событие 18... Он также может, учитывая "нервозность" Преступника, включить событие 99, когда Преступник начинает охоту на Персонажа.
Все это, конечно, только приблизительно, но суть, я думаю, ясна.
В результате фабула развивается независимо от Персонажа, который лишь направляет ее своими действиями.
Что вы думаете о перспективах такого подхода?
Неактивен
Существуют ли еще приемы, кроме двух описанных выше, по созданию сюжета?
Неактивен