LD49. Unstable. Мистер Унс и его стол.

Это является некоторым пересказом по памяти как шла разработка игры на 49-ый Ludum Dare.

Начало

Началось всё с того, что я просто игнорировал этот LD. Участвовал всего 2.5 раза и как-то не воодушевляет меня этот LD, как те же КОД или BAL (с Коленки). Но время от времени поучаствовать можно.

Собственно, решил не участвовать. Вернее как, я даже не думал о возможности поучаствовать. Прошёл уже один день джема и на второй день Kot211 просто спросил меня участвую ли — решительно ответил «нет», что тут думать-то. Описал, что у меня лишь две банальные идеи, но одна из них мне всё же показалась интересной и решил накидать концепт на бумажке.

CgSdOWI

Так что в моём участии на LD виноват Кот!

Описание идеи

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

Самый сюжетный элемент в этой поделке это название т.к. слово темы я разбил на имя и слово «стол». Вот это да.

Многократно я писал о том, что от игры к игре у разработчика образуется некоторый фреймворк — набор полезных скриптов, которые пригождаются в каждом проекте. В этот раз я решил пойти чуть другим путём и писал по сути с полнейшего нуля — даже свой скрипт spawn не взял, который упрощает создание объектов в коде. Разумеется взял GameMaker:Studio 2.

Идея взаимодействия игрока с реально-виртуальными кнопками и прочие геймплеи «сидеть за столом» разумеется не нова. Тут можно вспомнить как минимум Please Don’t Touch Anything, или вот была игра от Rs11_s21_n  и Chlora_Virgo недавно. Основа простая — игрок используя мышку должен был нажимать на кнопки, двигать рычаги\потенциометры* и все они находились бы в модулях, которые выходили бы из строя и нужно было их заменять, доставая из коробки.

Потенциометры. Виды и устройство. Работа и особенности

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

Цель гамеплея

А что собственно делать в игре? В чём (не)стабильность? Простая мысль посетила — это игра с 100% поражением. То есть, это вот около тех самых казуалок наверно, однокнопочные игры с телефона. Раз в какой-то промежуток времени происходило бы изменение, к которому игрок должен был бы подстраиваться используя модули. По идее сначала медленно и по одному параметру, но чем дальше, тем чаще и\или больше параметров одновременно менялось бы.

В итоге центральную штуку я назвал ЯДРО, у которого были параметры: размер, цвет, «волна» (амплитуда и фаза), сдвиг позиции. В игру не вошли такие понятия как «голод» (что отсылает к тому, что возможно это не просто ядерная реакция), тепло, поворот и самая сложная штука — сигнал.

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

Как проходила разработка

Вечером того же дня, когда описал Коту концепт, сел за ГМ, чтобы накидать хоть что-то.

Результатом стало вот такое:

1kBTXIO

Визуально отличий дальше не будет т.к. многое завязано было на коде всё же. В силу всего 1−2 дней приходилось писать как пишется, но всё же думать об удобстве иногда забивая на логику и усложнения. Какие-то вещи, которые выглядят как баги были полностью игнорированы т.к. зачем тратить на них время, если они не мешают геймплею (да-да, я про ползунки, которые двигаются, если тащить модуль).

Из оригинального концепта с электрическими цепями пришли лишь выключатели O\I, который полу-захардкожены на то, чтобы включать или выключать пару слотов для модулей. По идее и сами выключатели должны были быть модулями, но нет. А почему и их модулями делать? У модуля есть ресурс использования, при истечении которого ломается модуль или его логика и требуется замена**.

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

Где-то здесь первый день и второй сливаются в едино и не могу различить что делал в один, а что в другой.

** Вторая важная вещь, которая была отброшена из концепта — это коробка с элементами-модулями. По идее нажимая на неё у игрока появлялась бы коробка на полэкрана, где нужно было бы отыскать нужный модуль. Думал, что тут мне помогут слои в ГМС2, но нет, они работают по своей мифической логике, прямо как и глубина-сортировка для отображения. В экстренном порядке нужно было придумать откуда брать модули, хорошо, что быстро сработала идея расширения размеров комнаты ГМ — на кнопку пробел камера просто сдвигалась на другой «экран», где будут кнопки для получения модулей. Кнопки не подписаны.

Начинаются финальные штрихи и ощущения истощения мотивации. Удачно совпало, ведь около 1−2 часа до конца приёма работ. Вроде всё работает, кое-как можно выдержать первые несколько секунд и ладно.

Итоговый вид игры:

teFmplc

ССЫЛКА НА САЙТ ЛУДУМА С ИГРОЙ

Итог

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

В который раз подумал пару замечаний к тому, что в ГМ до сих пор нет хоть какого-либо UI для встраивания в игру. Тут поможет только создание своей какой-то сверх универсальной модели т.к. у меня были наработки, но они пригодились бы скорее для статичного интерфейса, тут же он достаточно динамичен (модули двигаются). Впрочем, ничего не помешало мне наговнякать код для таких элементов за 1−2 дня.

А вот так выглядит концеп-мокап-где-я-рисовал-графику:

vlKeXBi

Всем спасибо за внимание!