И далеко не всегда все так просто, как в этом примере.
Настоящий геймдизайн – это паутины зависимостей; изменения в одном месте почти всегда подразумевают много изменений в другом месте. Обычное изменение высоты прыжка может повлиять на границы уровней, движение врага (чтобы он мог поймать прыгающего игрока), головоломки прыжка, аудиовизуальные эффекты прыжка и многое другое. И каждое из этих изменений может подразумевать дальнейшие изменения – изменение движения противника может включать изменения его графики и анимации. Изменение головоломки прыжка может означать изменение сюжета уровня, если эта головоломка связана с сюжетом. Последствия неудачного плана отражаются на дизайне, графике, коде, механике и задумке.
Геймдизайн выделяется среди современных творческих поисков тем, что в каждой системе заложена неопределенность.
Как сказал Сорен Джонсон, ведущий дизайнер Civilization IV: «Быть геймдизайнером – значит быть неправым». Дизайнер может только догадываться, как будет работать система или уровень, но он никогда не сможет сказать это наверняка. Обычно когда игра готова, игровая система работает совсем не так, как предполагалось. Вот почему отличные игры склонны значительно меняться в процессе разработки.
Например, Halo – это один из самых популярных шутеров от первого лица. Но изначально это был совсем не шутер и совсем не от первого лица. Это была стратегическая игра с нисходящим методом проектирования. Вместо того чтобы стрелять в голову космического десантника, игрок смотрел на поле боя сверху и использовал указательный интерфейс, чтобы управлять войсками. Но в процессе разработки дизайнеры обнаружили, что чем ближе они показывали происходящее, тем лучше становилась игра. Они все больше и больше приближали камеру, пока в конечном итоге главный герой не стал смотреть на происходящее собственными глазами. Этот странный путь развития не был ошибкой – он был необходим для того, чтобы игра стала успешной. Halo была известна своими инновациями в крупномасштабных сражениях, включающих нескольких персонажей, гонками на выживание и открытым окружением. Все это изначально было стратегической игрой. Никто не мог запланировать полученный результат, и никто этого и не делал.
BioShock – это исследование подводного города, построенного в стиле ар-деко. Город под названием Восторг был попыткой создания утопии, основанной на принципах философии объективизма Айн Рэнд. Персонаж игрока прибывает в город в 1960 году, утопия потерпела крах, и Восторг погрузился в гражданскую войну. Игра прославилась этим богатым и уникальным нарративом о мире. Но с самого начала события игры BioShock происходили не под водой и не имели ничего общего с Айн Рэнд. Это была научно-фантастическая игра на космическом корабле. Позже они переместились в заброшенный нацистский бункер, кишащий мутантами. Прошло всего несколько лет, и игра превратилась в подводный город в стиле ар-деко и обрела свою тему объективистский утопии. Дизайнеры не планировали этот мир на бумаге; они разработали его за годы работы над самой игрой.
The Sims начиналась как архитектурная игра. Изначально Уилл Райт не планировал помещать в дом семью. Игра была о строительстве и не более. Игрок экспериментировал с различными формами дома, цветами и обстановкой в абсолютно стерильной среде. Только добавив простого персонажа в пространство, Райт обнаружил, насколько сильно это понравилось игрокам. Райт следовал возможностям, которые он видел, и игра все больше и больше сосредоточивались на людях, и так до тех пор, пока они не стали ее центром. Он не планировал такой результат; он обнаружил его в процессе создания игры.
Меняется весь дизайн, как это случилось с Halo, BioShock и The Sims. Но даже самый маленький кусочек игры может преподнести сюрпризы. Например, когда я работал над уровнями головоломки в загружаемом контенте для BioShock, в моем уровне была комната с рядом ракетных пусковых установок вдоль стены. Я хотел, чтобы игроки о них узнали, но чтобы при этом их не убило. По этой причине я использовал старый трюк сообщения игроку об опасности: когда он входил в комнату, появлялся враг и бежал на игрока только для того, чтобы ракетные пусковые установки его обстреляли. Отлично сработало. Враг кричал и взрывался. Проблема казалась решенной. Потом я смотрел, как кто-то другой проходит этот уровень. Он вошел в комнату. Враг закричал и побежал на него; так как это был уровень головоломки, у игрока не было оружия. Поэтому он повернулся и выбежал из комнаты, чтобы убежать от врага. Мне пришлось создать вокруг игрока непробиваемое стекло, чтобы он чувствовал себя в безопасности, не отступал и наблюдал за происходящим.
Геймдизайн всегда изменчив. У каждого опытного дизайнера множество историй о том, как игровые системы работают и не работают там, где этого не ждешь. Невозможно узнать, как будет работать дизайн и будет ли он работать вообще, прочитав дизайн-документ на бумаге. Именно этот разрыв между ожиданиями и реальностью приводит к перегрузкам сотрудников, а также нарушению сроков и бюджета. Когда вы предполагаете, что планы надежны как скала, хотя на самом деле они очень неопределенные, вы будете перепланировать, что не приведет ни к чему хорошему.
ИТЕРАЦИЯ – это практика составления краткосрочных планов, их реализации, тестирования и повторения.
Итерация
Мы не можем вообще не планировать, но мы также не можем планировать каждую деталь до конца проекта. Нам нужно нечто среднее. Нам нужна итерация.
Традиционный творческий подход является линейным. Планируем, затем компилируем, затем тестируем, чтобы проверить качество и готовность продукта.
Итерация работает иначе. Действия выполняются не поочередно, а циклично.
Это означает, что нам не нужно прогнозировать события наперед. Нам нужно планировать только до конца текущего цикла. Каждый раз, когда мы тестируем игру, мы сверяем наши предположения с реальностью. Эта проверка дает надежную информацию, на основании которой мы планируем следующий цикл.
Этот цикл может повторяться несколько раз или тысячи раз в зависимости от проекта. Иногда разработчики планируют количество циклов, которое им нужно, перед выпуском. В других случаях они просто повторяют цикл, пока игра не достигнет необходимого уровня качества или пока не закончится бюджет.
Итерация осуществляется не только для всей игры. Мы можем применять ее для уровня, инструмента или интерфейса. В больших командах должно быть много разных циклов итерации, работающих одновременно.