Gamedev Владимир Семыкин
6 407

На стыке головоломки и платформера: геймдизайнерские находки BoxBoy!

Грамотная работа с камерой, построение базовой сетки и важность дизайна персонажа.

В закладки

Геймдизайнер Чад Кейбл, принимавший участие в разработке Where's My Water?, в своём тексте на сайте Gamasutra сделал разбор системы управления главным героем в головоломке BoxBoy!. Особенное внимание он уделил дизайну персонажа, системе линий на сетке и «ленивой» камере. Мы выбрали из текста главное.

BoxBoy! и множество его сиквелов — бесконечно умные платформеры. В них игроки управляют кубом Qbby, который может создавать блоки по своему желанию. С помощью этих блоков он может формировать самодельные платформы, строить мосты и решать разные задачи. Студия HAL Laboratory совместила эту механику с удивительным набором головоломок и отличным левелдизайном.

Во многом прелесть этой игры связана с тем, как главный герой исполняет все действия — прыгает, бегает, реагирует и в целом управляется. BoxBoy! — особенно хороший пример платформера. Во-первых, студия HAL Laboratory уже почти четыре десятилетия занимается созданием игр подобного жанра, поэтому они определённо набрались в этом опыта. Во-вторых, более медленный темп игры облегчает управление персонажем. Простота дополняется сложностью механики копирования, которая позволяет игрокам изменять свою форму по желанию.

В управлении Qbby есть три основных аспекта: специфика дизайна персонажа, базовая сетка и «ленивая» камера. Ноги Qbby улучшают коллизию героя, что делает его движения более плавными и приятными при платформинге. Например, если во время прыжка нога персонажа окажется, на краю блока, то Qbby автоматически подтянется. Это особенно важно, поскольку длина прыжка Qbby равна одному блоку. Без ног эти прыжки были бы очень сложными.

Даже расстояние между его ногами влияет на геймплей, так как оно определяет размер его коллизии по горизонтали. Если обе ноги отрываются от выступа, Qbby падает. Это позволяет ему легко втискиваться в одиночные ячейки — это необходимый навык для решения головоломок.

В других платформерах, например в Super Mario Bros., ноги персонажа расположены по краям его фигуры, чтобы его форма была похожа на прямоугольник. Это наилучшим образом подходит для больших движений, а геймплей BoxBoy! требует более точного подхода.

Разработчики явно пытались сделать платформер таким образом, чтобы он не вызывал чувство фрустрации. Это также подтверждается механикой прыжков. Их особенность заключается в том, что герой проводит почти половину всего времени прыжка на самой вершине — это создаёт ощущение плавности. Комбинация форм коллизии и прыжка делает управление доступным и простым.

Герой зависает в воздухе на значительный отрезок времени

Одним из самых удивительных открытий в BoxBoy! является её строгая привязанность к базовой сетке. Тем не менее разработчики в некоторых моментах смягчили это условие, чтобы добиться плавности управления.

Сетка, в рамках которой игрок должен действовать

При нажатии кнопки копирования Qbby скользит к ближайшей ячейке сетки — благодаря этому его границы всегда совпадают с клеткой на поле. Хоть такое решение слишком очевидное, оно было необходимо, чтобы игрок всегда находился в идеальном положении для решения головоломок. Тем не менее это срабатывает только в том случае, если обе ноги Qbby находятся в одной ячейке сетки, что ещё раз подтверждает важность дизайна персонажа.

Даже бросание блоков происходит в рамках сетки. Вне зависимости от того, как герой кидает объект — с боковой или с верхней грани — блок всегда будет приземляться через клетку от персонажа. Это также упрощает управление, так как пользователям не нужно беспокоиться о траектории, с которой полетит объект.

Без привязки к сетке BoxBoy! начинает восприниматься заметно менее волшебной. Блоки больше не оказываются в нужном месте и приходится постоянно заботиться о том, как они упадут. Сдвиг на один или два пикселя — не конец света. Но усталость от этого накапливается после сотни брошенных блоков. С сеткой всё происходит значительно проще и приятнее.

Последняя механика напрямую связана с камерой. Камера BoxBoy! обрамляет действия, основываясь на текущем направлении движения Qbby. Когда он движется влево или вправо, камера медленно перемещается, пока герой не коснётся края кадра.

Край кадра обозначается красными линиями

При копировании камера использует те же правила кадрирования, но перемещается быстрее. Если игрок копирует блоки в противоположном направлении, камера перефокусируется с шагом в половину ячейки сетки.

Половины ячейки сетки обозначены зелёными линиями

Всё это хорошо продумано: камера всегда закреплена за действиями. Если игрок перестаёт двигаться или отпускают кнопку копирования, то же самое делает и камера. Она пытается соответствовать решениям пользователя. Чаще всего, если игрок остановился, то пытается найти решение загадки. Поэтому ничто не должно его отвлекать — ни движения камеры, ни яркие цвета.

В совокупности эти детали указывают на основную философию дизайна BoxBoy!: это игра-головоломка, а не платформер. Механика платформера обеспечивает множество приятных тактильных ощущений. Но суть этой игры заключается в решении головоломок. Коллизии в Boxboy облегчают платформинг и прощают ошибки. Система сетки постоянно пытается принести пользу пользователю. И камера отказывается двигаться без согласия игрока, чтобы не нарушать их ход мыслей. Все эти элементы дарят уникальный игровой опыт.

#геймдизайн

{ "author_name": "Владимир Семыкин", "author_type": "editor", "tags": ["\u0433\u0435\u0439\u043c\u0434\u0438\u0437\u0430\u0439\u043d"], "comments": 18, "likes": 31, "favorites": 64, "is_advertisement": false, "subsite_label": "gamedev", "id": 48371, "is_wide": false, "is_ugc": false, "date": "Mon, 29 Apr 2019 15:22:56 +0300" }
{ "id": 48371, "author_id": 94357, "diff_limit": 1000, "urls": {"diff":"\/comments\/48371\/get","add":"\/comments\/48371\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/48371"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }

18 комментариев 18 комм.

Популярные

По порядку

Написать комментарий...
13

Клевая игра, наверное, но не за 700 же рублей

Ответить
4

Если она клёвая, то в чем проблема заплатить за неё как за одну большую пиццу?
В ней 270 уровней, на минуточку.

Ответить
2

Проблема в том что она не настолько клевая. Это как покупать большую пиццу с одним только тестом.

Ответить
1

Настолько.
P.S. а потом жалуемся на игры-сервисы, засилье вышек, донат и пр.

Ответить
0

Я донат-сервисы не покупаю, как и примитивные инди для айфона за 50р

Ответить
1

Я донат-сервисы не покупаю, как и примитивные инди для айфона за 50р

Молодец. Так что купи BoxBoy + BoxGirl. Там геймдизайна больше чем в сотне айфонных индюшек.

Ответить
1

Обязательно куплю как только цена со скидкой перейдет мой психологический рубикон. После GRIS за 1к очень не хочется жалеть о потраченных деньгах.

Ответить
0

Так держать!
(Но вряд ли будут скидки больше чем в 50% когда-либо, это же Nintendo)

Ответить
0

Тогда сыграю через 10 лет, на взломанном сыче

Ответить
0

На 3дс есть 3 части этой замечательной игры. А взломанную 3дску сейчас найти не так сложно.

Ответить
7

Тогда это уже получается 9к за игру.

Ответить
1

Разница только в бантике и ресничках, это трап!

Ответить
0

А что там между ног, доктор?

Ответить
9

Пространство для фантазии

Ответить
0

Это же кубики!Они бинарные.

Ответить
0

Похоже, есть небольшой лаг после нажатия на прыжок, чтобы герой чуть присел?

Ответить
0

Тоже смутила эта просадка на графике, но видимо так и есть.

Ответить
–1

Если писать книгу "Игры как искусство", то эта игра и эта статья должны быть в этой книге. Никто не сможет после прочитаного сказать фу в игрушки играете.

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
В Steam появилась функция продажи
подержанных цифровых копий игр
Подписаться на push-уведомления