В этом посте я собрал свои заметки из книги Дональда Нормана «Дизайн промышленных товаров» (книга еще известна под названием «Дизайн привычных вещей»). Это книга о юзабилити, о таком дизайне, которым удобно пользоваться, о ключевых принципах дизайна интерфейсов, о психологии пользователей.
Я считаю, что книга полезна не только для дизайнеров интерфейсов, но и для гейм-дизайнеров, так как игры являются своего рода интерфейсами. Взаимодействие игрока с игровыми объектами (юнитами, фишками, персонажами, миром…) происходит через понимание структуры игры, управление и отслеживание результатов действий. Это и есть интерфейс.
Как и в других заметках, я пишу свои комментарии. Здесь они выделены цветом.
П.С. Для ознакомления с темой советую также почитать статью Тараса Короля «Компьютерная игра как интерактивный интерфейс». Мой пост может служить некоторым дополнением к этой статье.
Фундаментальные принципы дизайна вещей
ПОНЯТНАЯ КОНЦЕПТУАЛЬНАЯ МОДЕЛЬ
Хорошая концептуальная модель вещи – это когда пользователь может предсказать результат своих действий.
«Концептуальные модели являются разновидностями ментальных моделей – моделей, которые складываются в нашем сознании о себе, других, окружающей среде и повседневных вещах. Такие модели возникают на основе опыта, практики и обучения».
Играя, человек создает в своей голове концептуальные модели разных частей игры. Приведу несколько примеров:
Концептуальные модели, которые вкладывали в игру разработчики, могут не совпадать с концептуальными моделями игроков.
В лучшем случае игрок продолжит играть, используя ошибочную концептуальную модель. Из последних примеров – это параметр «лидерство» в прекрасной игре Kings Bounty от Katauri Interactive. Несмотря на наличие описания этого параметра, один мой знакомый долго играл, используя следующую концептуальную модель: «лидерство» аналогично мешку – если убрать, например, лучника из мешка, то вместо него можно взять, к примеру, двух фей. Реальная же концептуальная модель подразумевает, что «лидерство» характеризует, сколько юнитов одного типа может быть в армии. Т.е., лучников может быть N штук, а фей – M, и изменение количества одного типа юнитов не влияет на возможное количество другого типа.
В худшем случае игроки не поймут каких-то аспектов игры и перестанут играть. Такое происходит, например, с «казуальными» западными игроками, пытающимися играть в хардкорные jRPG. Расы-классы-профессии, их взаимосвязь, сложная система крафтинга и непонятная прокачка – все вместе не укладывается в понятную концептуальную модель, и игрок покидает игру.
НАЛИЧИЕ ОБРАТНОЙ СВЯЗИ
Обратная связь – получаемая пользователем информация о результате действия. Отсутствие обратной связи порождает ненужные домыслы и неуверенность в совершении действия (или в правильности/неправильности совершения действия).
Об обратной связи в играх сказано очень много, в частности, об этом можно прочитать в статье «Компьютерная игра как интерактивный интерфейс».
ОГРАНИЧИТЕЛИ
Чтобы исключить неверные действия пользователя, нужно использовать ограничители.
«Вы хотите, чтобы люди правильно вставляли батарейки и карты памяти в фотоаппарат? Разработайте такой дизайн, чтобы их нельзя было вставить по-другому или чтобы фотоаппарат нормально работал независимо от их положения».Я выделил для себя два подхода к ограничителям в играх:
- Жесткое ограничение – игроку полностью блокируется возможность совершения некоторых неправильных действий.
- Например, из комнаты с боссом нельзя выбежать. Игрок должен понимать, что выбежать он не может, так как двери заколочены, по краям комнаты горит огонь или торчат шипы. Такие явные ограничители показывают, что побег – неправомерное действие.
- Штраф – ограничение, которое допускает неправомерное действие, но явно доносит игроку, что за такие действия полагается некоторое наказание (или последующее отсутствие награды).
- Опять приведу в пример комнату с боссом. Но на этот раз выход из комнаты ничем не ограничен. За боссом виден охраняемый им золотой меч. Игрок может не биться с боссом, побежав дальше, но в этом случае меч игроку не достанется.
НАЗНАЧЕНИЕ
«Железнодорожная компания British Rail в качестве материала для доски объявлений (для пассажиров) использовала сверхпрочное стекло. Оно было разбито сразу же после установки. В следующий раз вместо стекла рабочие компании поставили фанеру. Ущерб доске был нанесен минимальный, она была всего лишь изрисована (учтите, что и стоимость материала намного ниже)».
«Назначение – это наглядная подсказка, как пользоваться предметом. Кнопки нажимают, ручки управления крутят, в гнезда что-то вставляют, мячи бросают или бьют ими по полу».О назначении написано в упомянутой выше статье, в пункте "Доступность".
Семь этапов действий
- Формирование цели
- Убить монстра
- Формирование намерения
- Зарезать мечом (могут быть и другие намерения: сделать хедшот; поставить мину и т.д.)
- Определение последовательности действий
- Переключиться на меч – подбежать к монстру – несколько раз ударить мечом по монстру – блокировать контратаку – еще несколько раз ударить мечом
- Выполнение действий
- Провести задуманную последовательность действий
- Восприятие изменений в окружающем мире
- На монстре появились рубцы и кровь
- Интерпретация изменений
- Рубцы и кровь на монстре означают то, что у монстра осталось мало «жизни»
- Оценка результата
- Цель не достигнута, монстр еще жив
Дальше, в зависимости от игровой ситуации игрок может
- сформировать новую цель (убить и немного побить другого монстра)
- изменить намерения (пристрелить монстра)
- определить другую последовательность действий (сделать еще два удара мечом)
РАЗРЫВ ВЫПОЛНЕНИЯ
«Обеспечивает ли система действия, которые соответствуют намерениям пользователя? Разрыв выполнения определяется тем, насколько система позволяет пользователю выполнять намеченные им действия, не требуя при этом дополнительных усилий, то есть соответствуют ли предусмотренные системой действия его намерениям».В примере с монстром, если игра разрешает пользоваться огнестрельным оружием, игрок логично ожидает, что обрабатываются хэдшоты. Если же нет, то произойдет разрыв выполнения.
РАЗРЫВ ОЦЕНКИ
«Предлагает ли система физическую репрезентацию, которая может быть правильно и легко интерпретирована пользователем, исходя из его намерений и ожиданий? Разрыв оценки отражает усилия, которые уходят на интерпретацию физического состояния системы и определение связи между ожиданиями и намерениями и действительным результатом».Вернемся к нашему примеру с монстром. Если бы после нескольких ударов мечом на монстре не появилось рубцов и/или крови и если бы монстр никак не реагировал на удары персонажа, то игрок не смог бы оценить результат – ведь нет никаких изменений. Игрок может подумать, что он что-то неправильно делает, или что-то не так с игрой. В данном случае происходит разрыв оценки.
ВЫВОДЫ
Дизайн должен:
- подсказывать, какие действия возможны в данный момент (использование ограничителей);
- соответствовать принципу наглядности, включая концептуальную модель системы, возможные действия и результаты этих действий;
- делать возможной оценку текущего состояния системы;
- отражать естественное соответствие между намерениями и необходимыми действиями; между действиями и их результатом; между видимым и реальным состоянием системы.
Другими словами, потребитель должен знать следующее:
1) что делать; 2) что происходит с системой в данный момент.
Не правда ли, это является одним из главных правил гейм-дизайна?
КАК СДЕЛАТЬ ВСЕ НЕПРАВИЛЬНО
- Откажитесь от принципа наглядности действий. Максимально затрудните выполнение: не давайте намеков на возможные действия. Сделайте невозможной оценку: исключите обратную связь и обеспечьте несоответствие действий результатам.
- Пусть игрок не знает, кто из монстров ранен, а кто – полностью здоров. В таких боях закаляется характер.
- Указывать направление к цели – путь для слабаков. Игрок должен сам понимать, куда идти и что делать.
- Важно повесить какой-то тайный удар на клавишу посреди клавиатуры или на сложную комбинацию на джойстике. А еще лучше – спрятать где-то в меню. Только настоящий игрок найдет эту команду.
- Побольше случайностей. Компьютер позволяет это. Используйте произвольные названия команд и действий. Делайте случайными соответствия между намеченными действиями и их результатом.
- Истинным ценителям понравится, если одни и те же монстры будут умирать иногда от пяти пуль, а иногда – от пятнадцати. Так будет более реалистично и интересно.
- Не обязательно дробовик называть дробовиком. Чем пафоснее – тем лучше. Например, «Двойная плазма». Заклинание «Разряд» тоже нужно назвать более солидно. Например: «Шторм». Ведь во время шторма бывают молнии? Во. Игрок не тупой – поймет, что к чему.
- Будьте непостоянны: меняйте правила.
- Нужно, чтобы здесь деревянный заборчик можно было прострелить и пройти дальше. А этот не будем разрешать простреливать, пусть игрок идет дальше, нечего ему тут делать.
- На этом куске уровня нужно сделать напряженную ситуацию. Сделаем, чтобы монстров, которые раньше убивались из пяти пуль, теперь можно было убить как минимум из двадцати пяти. Пусть игрок думает, что здесь живут эти же, но прокачанные монстры.
- Сделайте действия непонятными. Используйте бессмысленный язык и аббревиатуры. Сделайте сообщения об ошибках неинформативными.
- В задании напишем: «Найти и спасти девушку». Игрок должен сам догадаться, какую девушку найти и откуда спасти. Ничего страшного, что он может запустить игру через неделю и не понять, что это задание значит. В игру нужно играть постоянно, а не раз в неделю.
- Применив кактус на телевизоре, игрок получит часы. Смешав часы с огурцом, получит соленый огурец. Если скормить соленый огурец коту, то кот убежит и взорвет соседский гараж, откуда нужно будет украсть машину. Игрок применит все предметы на всех и найдет правильный вариант. Это ж фан, чо.
- Будьте грубы. Относитесь к ошибкам пользователей как к нарушению условий контракта. Огрызайтесь. Наносите оскорбления.
- Не смог пройти босса? Значит, купил пиратку. Не получается плести заклинания? Пусть проходит с холодным оружием. Я вообще, прохожу игру с одним ножом и не жалуюсь.
- Только неудачник мог не заметить эту дверь.
- Только лошара мог тридцать локаций назад не выполнить этот квест. Из-за твоей же тупизны тебе придется начинать игру заново. Не выполнив тот квест, дальше ты не пройдешь, лузер.
- Сделайте действия опасными. Позвольте одной ошибке уничтожить бесценный труд. Облегчите возможность катастрофы. Но не забудьте сделать предупреждение в инструкции. В этом случае в ответ на жалобу вы сможете смело спросить: «Вы что, не читали инструкцию?»
- Нужно, чтобы было, как в реальности: такого огромного босса нужно убивать двадцать минут, не меньше. Причем, в реальной жизни, если такой огромный босс по тебе попадет, то ты умрешь сразу. Так что и персонаж пусть сразу же умирает от одного пропущенного удара. Это нормально – ведь это же босс.
- Да зачем писать лишние диалоги, делать ограничения? Лучше давай напишем в инструкции: «Не переходите на локацию «Царский сад» гномом или валькирией, так как потом вы не сможете вернуться».
- Сделаем такую цепочку квестов: 1) Найти Джекки; 2) Отбить его от преступной группировки; 3) Украсть машину возле полицейского участка; 4) Сбежать вместе с Джекки от преследователей. Сохраниться дадим только после всего этого. Нужно, чтобы игрок почувствовал, как это все напряжно в реальной жизни. А если где-то посреди убьют героя или Джекки, то придется все начинать заново.