Advertisement
  1. Code
  2. Coding Fundamentals
  3. Game Development

Portal 2 Дизайн Уровня: От первоначальной идеи до готового уровня

Scroll to top
Read Time: 13 min
This post is part of a series called Portal 2 Level Design.
Portal 2 Level Design: Creating Puzzles to Challenge Your Players

() translation by (you can also view the original English article)

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


Прежде чем мы начнем

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

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

Portal_2_Level_Design_Concept Image 1Portal_2_Level_Design_Concept Image 1Portal_2_Level_Design_Concept Image 1

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

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


Разработка идеи и концепции

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

Portal_2_Tractor_BeamPortal_2_Tractor_BeamPortal_2_Tractor_Beam
Левитационный луч (экскурсионная воронка) в Portal 2.

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

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

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

Игрок входит в тестовую камеру в секции A и покидает ее в секции D.

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

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

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

Там будет стена, которая не позволит им добраться из секции B к секции D и заставит их перейти от секции B к A и от секции C к секции D. Для того, чтобы перемещаться между секциями, игрок будет использовать левитационный луч.

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

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

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

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

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

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

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

Изучая мою головоломку, я понял, что если игрок правильно разместил порталы, была возможность пройти без остановки мимо секции C и просто продолжить использовать левитационный луч для перехода к секции D. Для предотвращения этого, нужно разместить испаритель в открытой части секции D и поставить кнопку в секции C, которая отключает его. Это заставляет игрока выйти из левитационного луча и выяснить, как выключить испаритель, прежде чем перейти от секции C к D.

Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1Portal_2_Level_Design_PSConcept 1

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

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


Анализ вашего первого проекта

Вот скриншот карты, как она выглядит в редакторе:

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

В этом видео я прохожу уровень и делюсь своими соображениями:

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

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

Речь идет о шагах, которые игрок должен предпринять для завершения головоломки:

  1. Используйте порталы вместе с левитационным лучом, чтобы перейти из секции A в секцию B.
  2. Подберите куб
  3. Возьмите куб в секции B и переместите его в секцию A с помощью левитационного луча.
  4. Используйте луч или порталы для перехода из секции A в секцию C.
  5. Деактивируйте испаритель, стоя на кнопке в секции C.
  6. Установите левитационый луч так, чтобы он проходил из секции C до секции D.
  7. Поместите куб в левитационный луч, пока испаритель деактивирован и переместите его из секции C в секцию D, не уничтожая его.
  8. После того, как куб прошел испаритель, отпустите кнопку и войдите в левитационный луч, чтобы переместить себя из секции C в секцию D.
  9. Оказавшись в секции D, используйте куб, чтобы открыть дверь выхода.
  10. Выйдите из тестовой камеры.

Проблема, которую я заметил после перечисления действий игрока, заключалась в том, насколько просто можно получить куб, а затем как легко переместить его из секции A в секцию C. Эти два действия очень важны для решения головоломки, и все же они могут сводиться к единому оператору действия. Сравните это с тем, как игрок перемещает куб из секции C в секцию D, что составляет половину перечисленных действий, и вы поймете, почему это такая простая головоломка. Очевидно, что именно здесь головоломка должна быть более сложной.


Создание сложной задачи

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

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

(С этого момента я начинаю реализовывать идеи непосредственно в редакторе, не зарисовывая сначала их. Я пытаюсь начать работу на бумаге или в программе Photoshop, чтобы иметь возможность продумать основные аспекты головоломки, такие как цели игрока и общее представление о том, как он может их достичь. Однако, как только я начну работать в редакторе, итеративный процесс будет настолько быстрым, что не стоит метаться туда и обратно, если только я не делаю большие изменения, например, добавляю новую тестовую камеру или перепроектирую большую секцию.)

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated
Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

Это видео показывает, как решить головоломку после всех последних изменений:

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

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

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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

Чтобы найти новое решение для головоломки, я провел некоторое время в редакторе и на уровне, пытаясь выяснить, что я могу сделать в качестве игрока. Я определил, что если бы я добавил белые портальные стены в секции B, это позволило бы игроку разместить портал к секции B из секции C когда он стоит на краю секции C лицом к секции D.

Я реализовал эту идею, а затем вернулся к уровню, чтобы попытаться использовать это решение:

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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

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


Завершение головоломки и поиск эксплойтов

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

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

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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

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

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

Portal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - UpdatedPortal_2_Level_Design_Editor Image 1 - Updated

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


Закругляемся

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

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

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.