Моя попытка в симуляторы кризис-менеджера
Начало истории
Привет коллеги и геймеры! Меня зовут Кромсалыч, и я инди-разработчик. В профиле можете чекнуть предыдущие статьи. Но сейчас не о них, а о моей игре.
Цена Мира - джем-проект, который вырос в самостоятельную игру. Всё началось с демки Keep The Peace, где был только интерфейс, события, задний фон и музычка. Планы были грандиозны: восстания, управление городом, эпидемия, строительство, проекты, смена дней, сюжет, способности, динамические звуки и адаптивный саундтрек.
Конечно, из запланированного я сделал меньшую часть. Это и игрой нельзя было назвать, отчего я занял последнее место на джеме и прекратил разработку игры, занимаясь чем угодно, но не ею. Ссылка на большее число скринов - https://kromsalych.itch.io/keep-the-peace
Спустя несколько месяцев, где-то в ноябре я вернулся к этой игре и решил довести её до ума. И это решение кардинально поменяло мою жизнь. По ходу текста ещё вернёмся к этому.
Цена Мира 0.1
Город на грани. Война, эпидемия и корпорации разрывают его на части. Вы — мэр, у которого есть 9 дней до прихода армии. Каждое ваше решение имеет цену: ресурсы, жизни, мораль. Спасёте ли вы город и, если да, то какой ценой?
Целый месяц я активно разрабатывал ЦМ, превращая её в игру. Я добавил проекты (они делились на категории: экономические, социальные и строительство). Механика построена была так, что игрок мог выбрать 1 проект социальный, 1 экономический (они действуют, пока есть ресурсы или игрок не сменит их), а строить можно было лишь раз в день. Также я поменял внешний вид проектов.
Тогда же я допилил расход параметров и влияние проектов на них. Добавил множество событий (изначально было 10 где-то, а я сделал 50) и увеличил длину игры до 9 дней. Здесь хочу показать пользу тестов. Когда мой друг пробовал игру, события вылетали во время чтения описаний проектов и мне в голову пришла идея, как это исправить. Я сделал панель уведомлений, где игрок мог сам нажать в удобный ему момент.
13 декабря я объявил о своих планах, что оставалось сделать и когда выпущу первую версию игры. И начал кранчить перед релизом 25, успев завершить всё запланированное лишь 26 декабря, в аккурат к новому году.
Я выпустил игру и получил хороший отклик от друзей. Это было приятно, и я понял, что не зря вернулся. За месяц работы я разобрался c UI в Unreal Engine и UX. С хорошим результатом, встретил новый год, параллельно, участвуя в новом джеме, после чего вернулся к игре, занявшись версией 0.2.
Цена Мира 0.2
Новая версия стала улучшением фундамента. Я начал её разработку с идеи: "не хочу вносить правки в код, хочу просто менять значения в таблице". Спустя несколько дней моё пожелание было исполнено и события с проектами стали полностью контролируемы таблицей. Я использовал для этого десятки различных параметров.
После перехода на Data-Driven систему, я занялся рефакторингом кода и отказался от большинства тиков, т.к. игра моя была пошаговая. Для этого были освоены принципы работы с Event Dispatchers. Правил баги и стал реализовывать систему сохранений. Появились первые наброски главного меню, разобрался с Game Instance и ещё много чего полезного. Обновил интерфейс, перерисовав несколько элементов самостоятельно. Поясню: сперва я брал sci-fi интерфейс, но только в 0.2 занялся своим.
Именно за счёт этих изменений игра встала на прочный фундамент, а игрок получил возможность поражения. Однако разработка была осложнена поездкой на вахту, где я не успевал закончить всё, но выложить было нужно, как обещано 25 января. Я успел.
Цена Мира 0.3
Следующая версия стала пополняться контентом и подверглась замене старого интерфейса на новый. Наконец-то была добавлена эпидемия, сильно влияющая на мир игры. И появилась необходимость к ней готовиться, принимая правильные решения, чтобы минимизировать риски. И самое интересное - появились сообщения, которые игрок может читать в течение дня, пока он принимает решения, а люди или СМИ реагируют на них.
Также в игре стал прорабатываться сюжет, вместе с добавлением корпораций, которые хотят откусить кусок города за время кризиса. А ещё на удивление игра стала легче на 2 мегабайта)
Обновленный интерфейс стал целиком моей работой. Там я уже не просто брал чужие элементы и накладывал цвет, а рисовал вручную или редактировал. Зачем? Я хотел привести игру к профессиональному виду, где всё будет выполнено в единой цветовой палитре.
Эту же версию я называл той, во что уже нужно поиграть. Но выпущена она была во время моей вахты, поэтому без переноса обойтись я не смог. Вышла она 6 марта, а не 25 февраля, как планировалось. Правда, в этом не было ничего плохого на мой взгляд. С тех пор я прекратил разработку до конца месяца, желая доработать уже до конца и доделать её дома.
Цена Мира 0.4
Для новой версии у меня был прилично пополненный список после пары человек, которые сыграли в 0.3. И понемногу стал реализовывать всё. Появилась статистика, настройки, улучшено главное меню, добавлены фоны для поражения и победы, изменён шрифт на новый.
От себя же я добавил новые саундтреки, которые включаются в зависимости от дня, а также динамические звуки. То есть, чем стабильность ниже, тем чаще можно было слышать выстрелы или звук сирены. Однако игра выросла на 20 мегабайт после всего.
Также улучшил систему сообщений и добавил проект "Заглушить СМИ". Он создан для контролирования настроения людей. По факту, игра близилась к своему концептуальному завершению, а мои навыки разработчика выросли в какой-то геометрической прогрессии.
Для всех, сыгравших в 0.3 версию я говорил: поиграйте в 0.4, она будет насыщеннее и лучше. В будущем подобное я повторил с 0.5 версией, однако друг дал мне важный совет: не заставляй одних и тех-же игроков тестить каждую версию. И это, знаете, логично. По себе замечал, что когда тестируешь свою игру, со временем начинаешь от неё плеваться, зная вдоль и поперёк.
Цена Мира 0.5
Я добавил в игру долгожданную механику - восстания. Но здесь она звалась бунтом. Статистика расширилась в угоду бунтов и теперь можно было видеть их число. И это оказалась мини-игра, которая разбавляет основной геймплей и может удивить в первый раз. Итогом релиза стал мой пост в тгк:
Да, я захотел уйти в 3д с полноценным городом. Но об этом чуть позже. Дело в том, что с релизом версии 0.5 была выпущена андроид версия, которая находится только в моём телеграмме "kromsalych_prod". Однако все версии можно скачать с итча и там-же глянуть списки изменений. Ссылка - https://kromsalych.itch.io/price-of-peace.
Из запланированного было реализовано всё и версия 0.5 стала той, что я видел ещё на джеме.
Конец альфы
На этом всём я закончил с альфа-тестированием, получив воодушевляющие отзывы от людей. Я решился заняться 3д городом, думая потратить на это всё лето, но столкнулся с проблемой в виде слабых навыков работы в трёхмерном пространстве.
И вот когда на меня навалилась эта трудность, дополненная марафоном по разработке, мной было решено прекратить разработку. Я поучаствовал в джеме, раскачался в 3д моделинге, вспомнил текстурирование в substance painter, освоил анимации, стал пробовать скульптинг, а в движке настраивал мультиплеер.
В итоге Цена Мира 3D ушла в ящик, а я сконцентрировался на своём хорроре - переосмыслении Experiment 99 (первой игры, которая заняла 3 года разработки и вышла сырой). Сейчас я занят именно ей, о чём рассказываю на своём ютуб канале, который, при желании, вы можете найти по моему нику.
2д версия дала мне очень много знаний в плане рефакторинга (читать, как: оптимизация кода), в создании интерфейса, в работе с таблицами данных. Всё это осело в памяти. И с помощью этого следующие мои игры будут гораздо лучше.
Спасибо всем за чтение этой статьи. Здесь я реально постарался изложить всё, что помнил. Если мой пост даст вдохновение кому-нибудь - это будет лучшая для меня награда.













