Вторжение России в Украину

Doom SnapMap или когда ты слишком серьезно относишься к достижениям…

Дата публикации: 26.07.2018 19:16:18
Поделиться:  

Здравствуйте, уважаемые Дамы и Господа!

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

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

Я думаю, примерно такими же взглядами руководствовалась id Software – побудить игроков познакомиться со всем внедренным в Doom функционалом. Итак, встречайте виновника сегодняшнего торжества:

Небольшой экскурс в историю: спрос на редакторы карт в играх id Software появился еще со времен Wolfenstein 3D (который, кстати, многие ошибочно считают первой FPS игрой), тогда энтузиасты, поковырявшись в коде игры, нашли способы делать моды, а после и написали свой полноценный редактор карт. Все это подкреплялось огромным ажиотажем со стороны игрового сообщества, так что в следующем своем проекте под названием Doom разработчики решили упростить жизнь мододелам, отделив файлы движка от игровых ресурсов, которые теперь помещались в файл с особым расширением .wad (Where All the Data), что обеспечивало более простой доступ к ним.


Интерфейс одного из редакторов карт Wolfenstein 3D

Думаю, не ошибусь, если скажу, что именно Doom и Doom 2 1993 и 1994 годов выпуска соответственно, являются рекордсменами по количеству пользовательского контента среди игр id Software, так что не удивительно, что в современном ремейке разработчики решили добавить со старта свой редактор карт, что для жанра FPS очень большая редкость.

А теперь давайте поподробней поговорим о самом редакторе, называется он SnapMap.

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

 
Как мне удалось выяснить позже – все-таки можно, но для построения геометрии нужно использовать объем в виде прямоугольного параллелепипеда, на грани которого наносится текстура. Если говорить проще, то вся основа карты будет состоять из «прямоугольников», т.е. сделать качественные детализированные карты при таком подходе очень сложно и большинство выглядит довольно пусто и уныло, особенно учитывая ограничения на количество объектов. Хотя надо признать есть и те, кто смог построить действительно что-то интересное, но про них я бы сказал, что они мастера своего дела, и с наскока так сделать, явно не получится.
Далее мы уже заходим в сам модуль и редактируем непосредственно его, в этом и будет заключаться основная часть работы. Изначально модуль, как правило, практически пустой и мы заполняем его различными предметами окружения, интерактивными объектами, расходниками (броня, аптечки, патроны), эмиттерами частиц, декалями и т.д. и у каждого, размещенного нами, объекта настраиваем свойства в соответствии с нашими требованиями. Ниже пара примеров до и после редактирования.

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

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

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

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


Шутки от разработчиков могут скрасить рабочий процесс

Переходим к самому интересному – написанию скриптов для нашего уровня. В SnapMap для этих целей была разработана специальная визуальная система, в которой необходимо выстраивать связи между блоками, представляющими собой всевозможные функции. Несмотря на то, что количество этих функция составляет всего несколько десятков, с их помощью, при креативном подходе, можно сделать множество интересных нестандартных вещей. Мне попадались карты, которые пытались совместить классический геймпей Doom с симулятором фермы или Tower Defence`ом. Стоит отдельно упомянуть, что такие жизненно необходимо вещи при программировании как переменные, условные операторы, циклы, рандомизаторы и таймеры здесь присутствуют, именно за счет них в основном и достигается та гибкость, о которой я говорил выше. Когда мы строим связь между блоками, мы можем передавать входные и выходные данные, если того требует используемая функция. Выглядит это все как-то так:


Порядок нужен лишь глупцу, гений властвует над хаосом. – Альберт Эйнштейн

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

Что отдельно хотелось бы выделить – так это то, что редактор карт имеет абсолютно одинаковый функционал как на PC, так и на PS4 и XOne (к сожалению, до Switch SnapMap не добрался). Я не могу даже вспомнить ни одного подобного случая, так что, возможно, id Software стали первооткрывателями на данном поприще. К слову я работал на PS4 и при управлении с геймпада никаких проблем не было, все сделано весьма удобно.

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

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

Видео здесь!

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

На этом все, спасибо за внимание! Если у Вас есть вопросы, не стесняйтесь задавать их в комментариях.

Ах да, чуть не забыл самое главное biggrin :

Рейтинг публикации 13 нравится 3 не нравится
Загрузка...
новыестарые5 ком.
Ком. на странице5102050100
Игровой разум
MALEFICIST (уровень 23)30.07.2018 17:46:31
Mega4uvak писал(а):
Трофей далеко не крайне редкий)
Мой скриншот был в сделан программе PS App (официальная от PlayStation), она считает процент от всех игроков, запустивших эту игру, а PSNProfiles и ему подобные сайты ведут расчет исходя из данных пользователей зарегистрированных на сайте, отсюда и такая разница)
Игровой разум
Mega4uvak (уровень 25)30.07.2018 14:54:34
Трофей далеко не крайне редкий)
PSNProfiles
TROPHIES Shareware
Create and publish a SnapMap
30,037 ACHIEVERS 150,678 OWNERS 19.93% RARE
Игровой разум
MALEFICIST (уровень 23)27.07.2018 12:43:17
Tiru писал(а):
Неплохая такая заявка на левелдизайн)
Спасибо, приятно слышать)
P.S. Жду обещанный блог от тебя smile

VladPlasmius писал(а):
Мне понравился твой уровень, простой прямолинейный.
Спасибо, значит работа была проделана не зря)

VladPlasmius писал(а):
эм.. создать пустую комнату поставить туда мостра и сразу выход с уровня и профит ачивка
Это было бы слишком просто, тем более не хотел отказываться от возможности познакомиться с чем-то новым.

VladPlasmius писал(а):
Так почему всего 3% людей только эту ачивку получили
Если посмотреть статистику по другим достижениям, то видно, что хотя бы компанию до конца прошли 24%, а уж Doom ради нее и покупают, так что если считать, что каждый восьмой из прошедших добрался до редактора карт то, это уже неплохо. Кстати, на сайтах для трофихантеров количество получивших ачивку с 3% растет до 20%.
Игровой разум
Furret (уровень 22)27.07.2018 05:03:18
Неплохая такая заявка на левелдизайн)
Вообще редакторы карт - очень мощный инструмент в любой игре, каждый раз радует, что их люди используют не только чтобы члены рисовать какими предметами
Кандидат на место подручного
VladPlasmius (уровень 20)27.07.2018 02:19:46
эм.. создать пустую комнату поставить туда мостра и сразу выход с уровня и профит ачивка. Да ж создавать не надо, при первом включение уже с генерируется что то. Так почему всего 3% людей только эту ачивку получили dntknw
Мне понравился твой уровень, простой прямолинейный.good а то бесили эти большые открытые локации на марсе в сюжетке. Аж самому захотелось создать, прям чистейший коридор прямой с постоянным прогрессивным наращиванием мостров так сказать, дедран, либо ты их либо они тебя!crazy