О важности левел-дизайна, или как не сломать кор игры плохим лэйаутом

907469946310dc3c5edd6d281ae88c87.jpg

Левел-дизайн позволяет нам создавать карты, а игрокам — получать удовольствие от геймплея. Оба эти утверждения будут работать только в том случае, если левел-дизайн поддерживает механики игры.

В этой статье я расскажу, как на проекте War Robots при создании карт мы учитываем основные механики, усиливаем их положительные стороны и сглаживаем недостатки.

Для начала немного об игре. War Robots — это мобильный сессионный PvP-шутер про огромных роботов. Игроки здесь делятся на две команды и сражаются в одном из режимов: захват маяков или дезматч. Кор-геймплей формируют следующие механики:

  • Стрельба;

  • Перемещение;

  • Режимы боя.

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

Особенности стрельбы

Автоматическая вертикальная наводка

В War Robots игроки могут наводить прицел вручную только в горизонтальной плоскости — то есть, перемещать его влево-вправо. В вертикальной плоскости он перемещается автоматически в центр вражеского робота. Пример изображен на картинке: враг находится ниже игрока, и прицел опускается до его уровня автоматически вместе с камерой. Такая наводка упрощает управление стрельбой, но может приводить к некоторым проблемам в геймплее.

689acb57351e4f22a5809510cd5a937f.jpg

Одна из таких проблем — игрок плохо контролирует прицеливание во врагов на разной высоте. Если враг находится слишком высоко, игрок его не увидит: он окажется за пределами обзора камеры. Но если игрок наведется в горизонтальной плоскости на противника, камера сама поднимется высоко вверх. А если игрок случайно отведет прицел влево или вправо, камера упадет обратно вниз. Такие плохо контролируемые скачки камеры могут раздражать игроков. 

cd6c7cb405908269b4b65f1c0ca7a357.jpg

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

Например, на изображении ниже показаны три уровня высоты на карте Powerplant: большая часть карты — первый уровень, низина — нулевой уровень, крыши зданий и возвышенности — второй уровень.

5c710f4b9a6c3cb6335ebf0adec821e6.jpg

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

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

652052035f42e44d91719c5d5bee7313.jpg

Чтобы этого избежать, мы стараемся не использовать многоуровневую геометрию, по которой можно перемещаться одновременно сверху и снизу. Вместо этого мы применяем ступенчатую геометрию, позволяющую снизить вероятность возникновения таких проблем с наводкой.

da0d3662b788d1da922d4fc930d92cd8.jpg

Еще одна проблема автоматической наводки — положение точки сведения отличается от расположения пушек

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

b2607294e383cff040c0892c0f233b7e.jpg

Благодаря разнице в положении этих точек можно встать за укрытием так, чтобы центр робота был спрятан, а пушки выступали за край. Игроки используют эту особенность для безопасной стрельбы из-за укрытия. 

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

Проблему можно разделить на две части: абьюз боковых пушек и абьюз верхних пушек.

785f3d139a1a05be64b36b9a56038240.jpg

Абьюз боковых пушек меньше влияет на геймплей, ведь так можно высунуть из-за укрытия только одну боковую пушку, а с нее много урона не нанесешь. Это хорошо, потому что левел-дизайном эту проблему решить не получится: игроки перемещаются вдоль укрытий и всегда найдут возможность высунуть боковую пушку за край. 

Абьюз верхних пушек — более серьезная проблема. На одном роботе может быть три и даже четыре верхних пушки, которые выдают существенный урон. Но, к счастью, эту проблему можно уменьшить с помощью левел-дизайна. 

Что мы для этого делаем? Во-первых, закладываем решение в метрики укрытий. Минимальная высота укрытий должна быть не меньше, чем положение верхних пушек на самом высоком роботе. 

4b07fd70bdf0422139c051fbbd6f6234.jpg

Во-вторых, осторожно размещаем на картах наклонные поверхности. Их тоже можно использовать для абьюза верхних пушек, если наклонная поверхность загораживает точку сведения робота. В таком случае лучше сделать ее ниже или размещать подобные наклонные поверхности в тех местах карты, где нет смысла абьюзить их верхними пушками. 

3607447c51f7cfbb9645ac9d999b500a

Самонаводящиеся ракеты и урон по площади

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

На примере карты Dead City можно видеть, что большая часть укрытий — низкая (отмечены красным), но есть и высокие (отмечены зеленым). 

0d42cf40f14a03bf1e75c5e39ee222c2.jpg

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

Наглядный пример изображен на картинке ниже. За узким укрытием робот не может избежать урона по площади, а за соседним широким — может.

bf686847bfb73ea2b0f9a28af6ea3ab5.jpg

Разная дистанция стрельбы

Обычное дело для шутеров, что пушки отличаются дистанцией стрельбы. У нас она делится на дальнюю, среднюю и ближнюю. Чтобы поддерживать спрос на все виды пушек и дать игрокам больше тактического выбора в бою, карты должны предусматривать возможность сражаться на разных дистанциях. Акцент на дистанции боя формируется соотношением количества укрытий к открытому пространству: большее количество укрытий смещает акцент в сторону ближней дистанции боя, а большее количество открытого пространства — в сторону дальней дистанции. 

Ниже — два фрагмента одной и той же карты Rome. На ней хорошо виден контраст между пространствами с разным количеством укрытий.

cc23c1844b3fd36c296c9f80cc174792

Другой пример — карта Factory. На ней есть зона для ближней (красная рамка) и средней (зеленая рамка) дистанции боя. То есть, акцент сделан только на две дистанции из трех. И так со всеми нашими картами.

e2813c510cb8edfead29077c88a84d94.jpg

Почему мы не используем три дистанции на каждой карте? Это обусловлено размером карт и совокупностью механик, которые не позволяют нам этот размер увеличить. Бой длится 10 минут, в нем участвует 12 игроков. Увеличивая размер карты, мы не сможем равномерно распределить геймплей по всем ее зонам и при этом сохранить длительность боя в пределах 10 минут. 

df8ad0158609f5c33ddad608c4f8a585.jpg

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

6ac9742078b55b2f51109920937845f7

Особенности перемещения

Управление

War Robots — игра для мобильных телефонов, поэтому управление в ней менее отзывчивое, чем могло бы быть на ПК. В результате робот игрока перемещается неточно: есть погрешность между его фактическим движением и тем, как это планировал игрок. Мы это учитываем при построении лэйаута таким образом:  

  • Делаем пространства просторнее и шире: арены — достаточно большие для возможности маневрировать; коридоры — достаточно широкие, чтобы не цепляться за стены при движении; мосты и рампы — достаточно широкие, чтобы с них случайно не упасть. 

ff2ebd6d209635a137578be56eb60b4d.jpg
  • Никаких элементов платформера: если игрок может где-то пройти или куда-то запрыгнуть, это должно быть легко — не нужно заставлять его сражаться с управлением. Например, на карте Castle есть пропасть, которую игроки могут без проблем перепрыгнуть. Для этого не нужно подходить к самому краю обрыва или разбегаться перед прыжком. 

e60c85732f38f7da915b528e74e59691.jpg

Низкая скорость

Большинство наших роботов имеет относительно низкую скорость в сравнении с дальностью пушек. Это повлияло на типовые размеры карт, предрасположенные к определенным дистанциям боя. Так, у нас есть маленькие карты для ближней дистанции боя (800×800 м), средние — для средней (1000×1000 м) и большие — для дальней (1200×1200 м). При этом карты максимального размера многие игроки уже воспринимают как слишком большие: они успевают заскучать на них, пока идут от спавна к точке столкновения. 

1b246cc1e8de87de54a3367859235252

На примере изображена одна из таких больших карт — карта Springfield. Чтобы дойти от спавна до ее центра, нужно примерно 40 секунд. Игрок спавнится в бою до шести раз — то есть, четыре минуты из десяти он будет только идти от точки спавна до места столкновения. 

197f72d5547de2169523e22106348512.jpg

Низкая скорость влияет не только на размеры карт, но и на траекторию движения. В контексте медленных роботов проблема запутанных путей на карте ощущается особенно остро. Мы стараемся их упрощать. 

Во-первых, мы не используем сложных траекторий вроде зигзага

На карте Springfield есть коридор, в котором раньше были полуоткрытые ворота. Чтобы его пройти, нужно было двигаться по зигзагообразной траектории движения. В какой-то момент мы решили эти ворота раскрыть, и теперь игроки могут быстро пройти этот коридор по прямой.

a9d5e37685d67a7a567ab6ae1ac63598.jpg

Во-вторых, мы упрощаем заходы на возвышенности

На картинке показаны одновременно плохой и хороший примеры. Длинная рампа — неудачное решение: подниматься наверх по ней слишком долго. Со временем рядом появилась еще одна, по которой подниматься гораздо быстрее. 

3a7768389235a02a6536fe34981af84c.jpg

В-третьих, мы следим за частыми развязками движения

На изображении ниже — неудачный пример с карты Powerplant. Если игроку нужно захватить маяк в низине, он спрыгивает вниз, а обратно может подняться только по двум рампам, расположенным в противоположных концах карты. Это неудобно и долго. Хорошим решением было бы добавить подъемы ближе к маяку.

fe8da43b6f614e6f277f1c2b1902e283.jpg

Размеры роботов

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

6089dbda86beb2d276ebe613e534f35f

Так, с введением пауков нам пришлось расширять проходы на картах. При этом мы зафиксировали максимальную ширину пауков и больше не выпускали роботов шире. 

9a28f1cedd42ea8228e6610ff5687f0d.jpg

Титанов разрабатывали сразу той же ширины, что и пауков, но они должны были оказаться гораздо выше обычных роботов. У нас на картах есть проходы, ограниченные по высоте. Обычные роботы там проходят спокойно, а Титаны — нет. Или, что еще хуже, они вообще могут там застрять. Поэтому нам пришлось увеличивать высоту проходов везде, где это возможно. Например, мы разломали мосты на карте Springfield, и теперь Титаны могут без проблем там пройти.

29008be8a84139ea9e8e83259ab1bdef

Там, где высоту проходов поднять было нельзя, мы ее намеренно уменьшали, чтобы Титаны точно не могли там застрять. К примеру, именно так в тоннелях Dreadnought появились металлические балки под потолком.

82cca63bfe226a1cdf5a4a6113059482

Чтобы новые Титаны и роботы не испытывали проблем с перемещением в дальнейшем, мы ввели метрики высоты и ширины роботов: чтобы обычный робот помещался в низком проходе, он должен быть не выше 25 метров. В свою очередь, чтобы Титан там точно не застрял, он должен быть не ниже 28,5 метров.

ada88eb6badad01d7acd5309f8b996df

Прыжки и полет

Многие роботы, помимо перемещения шагом, могут использовать абилки, которые позволяют им прыгать или летать. Активное использование такого способа перемещения по воздуху определенно влияет на построение лэйаута карты. В результате формируется целый список вещей, которые необходимо учитывать.

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

8c8b33e5b82e69a73463be73828da75e.jpg

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

06c71df6714d011aeac02afac6a0ad94.jpg

Прыгающие и летающие роботы атакуют противника с воздуха. Соответственно, геометрия карты должна давать возможность игрокам на земле укрыться от таких атак. Для этого подходят высокие объекты или пространства, закрытые крышей.

65f5553b0e2073062215ee375c8d03cc.jpg

Игроки могут приземлиться после прыжка или полета почти в любое место карты. То есть, по всей карте не должно быть мест, где робот может застрять. Для этого, во-первых, объекты на карте не должны образовывать узких щелей и ям. Так, на карте Castle роботы намертво застревали в дыре между трубами, и нам пришлось ее оперативно закрывать. 

fcadf385da20f502c66eddfbb8f937e0.jpg

Во-вторых, сложная геометрия должна иметь упрощенные коллайдеры. На картинке ниже изображен хороший пример объекта со сложной геометрией — металлоконструкция с карты Canyon. Чтобы робот не мог провалиться внутрь, ее коллайдер упрощен до куба, повторяющего габариты объекта.

61e815e4d816295e2e4cc877780fa851

Килл-зоны на картах

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

На карте Carrier геймплейная зона — корабль — окружена килл-зоной — водой. Она не влияет напрямую на геймплей, но обретает значимость при использовании роботами прыжков и полета. В таком случае игроки рискуют свалиться за борт при неточном исполнении абилки. Это добавляет напряжения и вообще ощущается весело. Таким образом, применение абилок движения добавляет смысла механике карты.  

606d65274db824065c8bea9290272dcd.jpg

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

Но главное — теперь механика килл-зоны сама поддерживает механики движения. У роботов с прыжками и полетом появляются дополнительные тактические возможности перебраться через пропасть по кратчайшему пути.

618057625fa8be6722b0f168b795e8eb.jpg

С картой Factory примерно та же ситуация, что и с картой Castle: в центре карты размещены модификации килл-зоны — дамаг-зоны. Роботы в них не уничтожаются мгновенно, но получают периодический урон. То есть, сохраняется риск использования абилок движения. Вдобавок к этому, у роботов есть возможность быстро преодолеть дамаг-зоны, не получив урон, но добравшись до цели по кратчайшему пути.

1d1faf7c803394a3a813186733b4497a.jpg

Особенности режимов

В нашей игре четыре режима: по два на захват маяков и на убийства. Все они играются на одних и тех же картах, но у каждого есть свои особенности левел-дизайна.

Domination

Это основной режим игры, и все карты строятся в первую очередь под него. Его особенности:

  • На карте 5 маяков;

  • 2 команды по 6 игроков;

  • У каждой команды своя база со спавнами;

  • Контроль маяков приносит команде очки;

  • Побеждает команда, первая набравшая заданное количество очков.

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

f431f2befcae4857388544b5befd2eff

Вокруг маяков разворачиваются самые интенсивные столкновения. Чтобы их поддержать, мы формируем в этих местах арены — просторные зоны для сражения большого количества игроков. 

1fcc1fd302c6bf953a3760c69b650fec.jpg

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

43dcaf70cb769aec753334cddf066d63

Зоны спавна команд мы размещаем по одной для каждой команды в разных концах карты. 

7d5f16f17b210e652b652781fd2cff9c.jpg

При таком построении лэйаута от маяков игрокам удобно воевать на карте. От них требуется захватывать маяки — и геометрия карты построена с учетом этой задачи.

Но в режиме Domination есть одна проблема: игрокам слишком долго идти от спавна до зоны столкновения с врагом, особенно на больших картах. Эту проблему удалось решить в новом режиме — Beacon Rush, который в итоге самым стал популярным в игре.

303f220b3210d56aa46043fb79584f07.jpg

Beacon Rush

Это тот же Domination, но теперь игроки могут спавниться на маяках. Вместе с этой особенностью в режим добавили миникарту, на которой игроки могут выбирать место спавна. Синие и красные круги на ней — союзные и вражеские маяки и спавны, красные и синие треугольники — другие игроки.

1df927c31202d2aa0f0804dd3dbcb332.jpg

Введение дополнительных спавнов привело к некоторым положительным изменениям в геймплее:

  • Сократилось время сближения с врагом: игрокам теперь не нужно долго идти от стартового спавна до точки столкновения;

  • Повысилась динамика боя: столкновения на маяках стали более ожесточенными, ведь игроки теперь спавнятся прямо на них;

  • Увеличилась важность захвата маяков: например, можно захватить маяк рядом с вражеской базой и спавниться у противника в тылу.

Так, введение одних лишь дополнительных спавнов сделало режим самым популярным в игре.

Team Deathmatch

Переходим к режимам на убийство игроков. Первый из них — Team Deathmatch, классический режим для шутеров. Его особенности:

  • 2 команды по 6 игроков;

  • Цель — уничтожение вражеских роботов;

  • Побеждает команда, уничтожившая всех роботов противника.

Этот режим играется на тех же картах, что и режимы с маяками. При построении лэйаута от маяков в нем уже закладываются все элементы, необходимые и для TDM: арены, фланги и снайперские позиции. 

2360f6fcc4e6df69a8f51263c6654b4c

Но в этом режиме мы используем по три зоны спавна на команду. Теперь здесь нет маяков, на которых можно высаживаться, поэтому три зоны спавна позволяют игроку быстрее попасть в нужную ему часть карты. Кроме того, если противник заблокировал одну из зон спавна, игрок может высадить робота на соседней и зайти противнику в тыл.

80ee6b2dd5340061d3f6fdb97c47f5ad.jpg

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

489c729ce31a00e03ac43e014c808e72

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

5aaff88a4a6237ad8ff351a7f4d33fd5.jpg

Free for All

Последний режим — «каждый сам за себя»:

  • всего 6 игроков;

  • цель — уничтожить вражеских роботов;

  • побеждает игрок, совершивший наибольшее количество убийств.

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

7a5bdb40d156e385b07f4e284dc23381.jpg

Так как игроки сражаются каждый сам за себя, в начале боя их нужно распределить по всей карте, чтобы у каждого было одинаковое количество врагов вокруг. В этом нам помогают двенадцать точек спавна, равномерно распределенных по периметру карты. 

Вдобавок к этому, игрок спавнится на максимальном удалении от противников. То есть, в начале боя все игроки распределены по спавнам через один, а каждый последующий спавн игрок попадает в наиболее безопасное место на карте. Так мы избегаем ситуации, когда игрок спавнится прямо перед противником и сразу попадает под обстрел.

331a109f8243d0b07d770dec9e0399ac.jpg

Хотя спавны распределены по всему периметру карты, между соседними часто бывают открытые прострелы. Мы их закрываем дополнительными укрытиями: так мы создаем безопасную зону вокруг каждой точки спавна. 

24ad7f88075dc0b8fb285e6e6ebc6f45

Итак, мы рассмотрели влияние на левел-дизайн основных механик кор-геймплея игры War Robots: стрельбы, перемещения, режимов боя. Учитывая их особенности при построении лэйаута, мы поддерживаем и дополняем механики игры, на выходе получая интересный геймплей на картах.

© Habrahabr.ru