Как я делал карту в Doom SnapMap

Как я делал карту в Doom SnapMap

Прямым текстом — Как я делал карту в Doom SnapMap
За один час Артемий Козлов сделал в SnapMap свою маленькую, убогую The Stanley Parable.
Игроманияhttps://www.igromania.ru/
Прямым текстом
Как я делал карту в Doom SnapMapКак я делал карту в Doom SnapMap
Как я делал карту в Doom SnapMap

В рубрике «Прямым текстом» автор выражает исключительно собственное мнение, которое может не совпадать с мнением редакции. Он волен это делать как угодно и в любом удобном для себя формате. Здесь можно всё.

В недавнем тексте про карты из SnapMap я обещал сделать свою. И сделал.

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

И, если быть до конца честным, делать свои карты в редакторе нового Doom мне было интереснее, чем играть в чужие. Пока я с ним экспериментировал, постоянно вспоминались обучающие игры вроде Colobot и логические головоломки в духе Infiniminer. То есть SnapMap сам, по сути, игра. Тут даже есть отдельный раздел с задачами порядка «Заставь барона ада сделать то-то, не прибегая к тому-то».

Как я делал карту в Doom SnapMap

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

И да, я установил себе одно ограничение: у меня всего час на то, чтобы начать и закончить работу.

Итак, карта

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

Сперва занялся компоновкой комнат. Пока я их собирал, вспоминал о Dark Souls (говорить «черпал в ней вдохновение» тут не стану): старался выстроить из комнат восходящую спираль, которая в конце концов все равно сходилась бы к тому месту, с которого все началось.

Как я делал карту в Doom SnapMap

Покончив с геометрией, выбираю стартовую позицию. Моя карта рассчитана на одного игрока, поэтому расстановкой остальных я голову себе не морочу. Равно как и назначением индивидуальных стартовых условий, объектом «игрок-прокси» (через него можно задать параметры и действия, касающиеся вообще всех игроков на карте; для монстров тоже имеется сходная штука) и фильтрами, определяющими доступность разных объектов разным игрокам. Игрок один — вокруг него и танцуем.

Как я делал карту в Doom SnapMap

За спиной у морпеха дверь — помните ведь, что карта у нас закольцованная? Надо четко дать понять, что идти следует вперед. А в качестве защиты от дурака установим за дверью консоль, с помощью которой ее можно будет открыть только с противоположной стороны. Добавим первую булевую (то есть способную принимать только значения «Истина» или «Ложь») переменную и привяжем ее значение к состоянию двери. Нажатие на кнопку консоли меняет значение на противоположное.

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

Как я делал карту в Doom SnapMap

Теперь условия победы. Я решил поступить просто: оставить где-то на уровне некую штуку (назовем ее «Штука») и заставить игрока принести ее к началу уровня. Начало уровня пометил нажимной плитой. Как только морпех на нее наступает, запускается проверка булевой переменной, которой изначально выдано значение «Ложь», но при подборе нужной штуки оно сменится на «Истину».

Дальше два варианта: если в переменной «Ложь», выдаем уведомление: дескать, нужна штука. Если «Истина» — выдаем уведомление (я выбрал одну из заготовленных реплик ИИ) и засчитываем игроку победу.

Как я делал карту в Doom SnapMap

Но куда поместить штуку?

Копаясь в списке объектов, я нашел чудесный стул, названный «креслом начальника». Почему бы не добавить на карту начальника? Начальником стала потерянная душа, названная мной Евстахием. После ее убийства на землю падает розовый чайник. Как только вы его подберете, изменится значение переменной, о которой мы говорили абзацем ранее.

Как я делал карту в Doom SnapMap

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

Как я делал карту в Doom SnapMap
Как я делал карту в Doom SnapMap

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

Как я делал карту в Doom SnapMap

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

Как я делал карту в Doom SnapMap

А дальше пошло чистейшее, полное дебильной радости детское творчество. К той же консоли я прицепил активацию воздушного текста (не забудьте помечать такие объекты как неактивные после создания, чтобы они не светились до нажатия кнопки), всяких спецэффектов и саундтрека. Размножить слова было легко: сочетание Ctrl+G создает точную копию объекта вместе со всеми свойствами.

Как я делал карту в Doom SnapMap
Как я делал карту в Doom SnapMap
Как я делал карту в Doom SnapMap

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

Смотрите, на моей карте можно делать выбор — более того, если вы ослушаетесь, никто не станет пытаться вас пристыдить. Моя карта лучше, чем первый Dishonored!

Как я делал карту в Doom SnapMap
Как я делал карту в Doom SnapMap

Вот что получилось. Прохождение начинается на 1:20.

* * *

Что еще можно было бы сделать, будь у меня время?

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

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

Но это не означает, что SnapMap не нужно больше возможностей. Слышите, id? Готовьте обновления!

Хотите скрыть партнерские блоки? Авторизуйтесь и читайте материалы не отвлекаясь.
Комментарии
Загрузка комментариев  
HP OMEN 15HP OMEN 15
Об авторe
Артемий Козлов
Артемий Козлов
Уверен, что надо чаще играть в плохие игры, чтобы понимать свое счастье. Любит, когда шумно. Фетишизирует абстрактные игровые механики и хороший мультиплеер. На сегодняшний день в Игромании не работает.