Бумажки, Trello и UE4: прототипирование игры Sky Unlimited Inc
KiraLinchПривет. Меня зовут Маргарита Шаповалова (aka KiraLinch), и я младший геймдизайнер студии игровой разработки OctoBox Interactive. Расскажу о своем опыте прототипирования игры с кор-механикой "Да-Нет".
Начало Sky Unlimited Inc
Sky Unlimited Inc начался с демки для Epic MegaJam. Проект получил положительные отклики, поэтому его стали развивать. Игрой занимались в свободное от разработки основного проекта студии время — MMO-шутера Project Echo. Была идея, но цельности в видении Sky Unlimited Inc не было. И чем дальше шла работа, тем сильнее игра расслаивалась. Проект было решено заморозить на неопределенное время.
После релиза High Noon VR, в котором я поработала нарративным геймдизайнером, захотела большего — решила попробовать себя в хард-геймдизайне.
И вот мне в наследство достаётся замороженный Sky Unlimited Inc. "Вот тебе задание на геймдизайн: сможешь собрать и отогреть проект — продолжим разработку, а нет — ну может геймдизайн и не твоё :3"
Первый прототип: кубики-бумажки
Как не моё?
Первое, что я сделала — написала геймдизайнерский документ с определением целевой аудитории, основной идеи и описанием кор-геймплея.
Sky Unlimited Inc
Жанр: Point and Click, Wage simulator, Survival, Story driven
Платформы: PC, Nintendo Switch, мобильные устройства
Движок: Unreal Engine 4
Для кого игра: Для менеджеров и их друзей
Sky Unlimited Inc – сюжетный сурвайвел хоррор про бытие менеджера.
...Каждый день они приходят. А у тебя даже дробовика нет!
Их стоны, жалобы, нелепые истории, мольбы о повышении зарплаты сводят тебя с ума. Но ты – топ-менеджер, и только ты можешь принять важные решения. Одно за другим эти решения развалят коллектив, обанкротят компанию, ну или вознесут тебя на небеса космического менеджмента.
Стол, милый стол! Теперь он твой. А я иду на повышение.
Поиграв немного в голове, сделала прототип с помощью маркерной доски, карточек и генератора случайных чисел — шестигранных кубиков. Прототип нужен для визуализации и отслеживания закономерностей.
В такой форме я показала игру старшему геймдизайнеру и руководителю проектов и рассказала о сложностях, с которыми столкнулась.
Мне предложили попробовать поиграть не в цифры, а в персонажей.
Второй прототип: Trello
Для игры в персонажей я выбрала Trello. Это простой и гибкий инструмент для управления проектами, позволяющий организовывать и визуализировать любые задачи.
Благодаря тому, что Trello есть как на компьютере, так и на телефоне, прототип получился кросплатформенным :3
Основные игровые элементы
Я создала две доски: для гейм-мастера и для игрока. На доске гейм-мастера доступна вся внутренняя логика, прописаны события/диалоги и расписаны драфтовые персонажи. На доске игрока доступна лишь часть игровой информации.
По структуре обе доски идентичны.
В списке "Игрок" содержатся карточки с параметрами игрока и игровыми правилами.
Карточка игрока состоит из четырех параметров: доход, эффективность, лояльность и мораль. Каждый параметр оформлен в виде чек-листа.
Чек-лист заменяет процентную шкалу и удобен для подсчета параметров.
Карточки персонажей состоят из тех же четырех параметров, но в соотношении: три единицы параметра персонажа равны одной единице параметра игрока.
Помимо параметров карточки содержат визуальный образ и характеристику персонажа.
В списке "Все сотрудники" находятся карточки всех персонажей прототипа. Список "Очередь" — это некоторое число персонажей на один игровой цикл. В список "Очередь" попадают персонажи из списка "Все сотрудники".
Список "На приёме" — это основной игровой элемент, в котором происходит взаимодействие с событием и персонажем. В список "На приёме" персонаж попадет из списка "Очередь".
Список "События/диалоги" содержит карточки событий и тексты реплик персонажа.
Пример игрового цикла в Trello
- Задаём начальное значение параметров игрока и персонажей, отмечая единицы в соответствующих чек-боксах. У меня 33 % всех параметров у игрока и 50% всех параметров у персонажей.
- С помощью генератора случайных чисел выбираем персонажей из списка "Все сотрудники" и перетаскиваем в список "Очередь"
- Первого персонажа из "Очереди" перетаскиваем в список "На приёме"
- По правилу выбора отдаваемого/запрашиваемого параметра отдаваемым становится наибольший из параметров персонажа, а наименьший становится запрашиваемым. Но так как все параметры равны, то выбор отдаваемого/запрашиваемого параметра производится с помощью генератора случайных чисел.
- Далее выбирается соответствующее параметрам событие. Например, при запрашиваемом параметре "мораль" и "отдаваемом" параметре "доход" для персонажа Есеня будет следующее событие, на которое предлагается ответить игроку "Да" или "Нет".
- В случае, если игрок отвечает "Да", то персонажу прибавляется запрашиваемый параметр, а у игрока отнимается соответствующий параметр. Соответственно отдаваемый персонажем параметр падает, а у игрока растет в соответствующей пропорции. Если же игрок отвечает "Нет", то запрашиваемый параметр у персонажа падает.
- Все изменения параметров отмечаем в чек-листах карточек персонажа и игрока.
- Отыгранного персонажа переносим в список "Все сотрудники", на его место добавляем персонажа из "Очереди"
- Всё повторяется до тех пор, пока список "Очередь" не становится пустым.
На этом основной игровой цикл заканчивается.
Этот прототип понравился коллегам. Они предложили сделать новый прототип в движке UE4 и поиграть с балансом, а про опыт прототипирования в Trello написать заметку.
Третий прототип: Unreal Engine 4
В блюпринтах я пока не сильно шарю, поэтому с реализацией основной логики мне помогает программист и руководитель проектов Горбачёв Леонид.
Я делаю виджеты, что могу прикручиваю, и слежу, чтобы код работал в соответствие с ГДД.
А ведь играть уже можно. Игрок спокойно живёт 50 и более дней. Скучно!
Где баланс?!
Что такое баланс и как его найти, я пока не знаю. Но если узнаю, то расскажу об этом вам.
Дайте знать, если будет интересно почитать подробности прототипирования на UE4. Со временем могу рассказать и об этом. Надеюсь, было интересно и полезно. Спасибо!
Найти меня можно
Telegram channel https://t.me/setvisibility
Discord chat https://discord.gg/8XxUUsc
Twitter https://twitter.com/setvisibility
Vk https://vk.com/setvisibility.gamedev
#UE4 #GameDesign #setvisibility