Всем привет!
Этот пост в большей степени — рассказ о пути одной идеи к реализации. И немного — о трудностях, с которыми я сталкиваюсь прямо сейчас, когда вроде бы всё готово — но никто о твоей игре не знает.
Если вкратце: шесть лет трачу вечера на то, чтобы написать собственную игру.
Игра доступна на своём сайте, но в Play Market её не видно.
Предисловие
Меня зовут Андрей, и по профессии я программист. Да, наверняка история о том, как далёкий от «айтишечки» человек пишет игру, собрала бы больше восторженных откликов, но, к сожалению, это не тот случай.
Когда я начал работать над своей игрой, я знал, что до меня уже пытались сделать что‑то подобное. Среди них были либо любители без специального образования, либо школьники, горящие энтузиазмом. У последних, как правило, было преимущество — больше свободного времени. Однако я считал, что мое образование даст мне важное преимущество и облегчит процесс создания игры.
Как же я ошибался :)
Данный пост был опубликован мной же на Пикабу, я решил, что на Хабре ему будет найти аудиторию чуть легче, так как без технических моментов не обошлось. В любом случае, по любым вопросам и с критикой буду ждать вас в комментарииях и ЛС.
Идея
Суть моей игры — симулятор политики, экономики и СМИ в формате «песочницы».
Игрок начинает свой путь в игре, появляясь в случайном регионе мира, повторяющем реальный (но все совпадения случайны), и далее волен строить свою игру и взаимоотношения с другими людьми и организациями так, как считает нужным.
До того момента как я начал свой путь инди‑разработчика, я играл в нечто подобное. Это был малоизвестный, но уже состоявшийся проект, где большие группы игроков со всего света делили карту мира игрового. Но при умении общаться и находить своё место, новичкам там всё было чем заняться и как себя реализовать.
Основная механика игры строится на взаимодействии групп игроков, объединённых в «партии». Партии — это местный аналог кланов, привязанный к конкретному региону. Эти партии могут участвовать в выборах в парламент государства, контролирующего их «домашний» регион, или выдвигать своего кандидата на пост президента — если такие выборы в стране вообще проводятся.
После участия в нескольких «мировых войнах» и знакомства с большинством возможностей игры, я осознал, что в ней полно недочётов и ошибок, которые игроки либо игнорируют, либо злоупотребляют ими в своих интересах. Администрация же не проявляла к этому никакого интереса. Именно безразличие разработчиков я считал главной проблемой той игры.
Однажды, когда мы ехали с моим отцом в машине, он рассказал о сыне своего друга, который пишет сайты и зарабатывает на этом. Это мог бы быть с типичный поучительный рассказ о «сыне папиного друга» — но он им не стал.
Он просто спросил: «А ты мог бы делать сайты?» И я задумался.
В то время из опыта у меня была только семестровая в вузе, где мне нужно было сверстать магазин спорттоваров на несколько страниц. Но когда я решил, что наличие даже такого небольшого опыта — уже неплохо.
Так я принялся за свой собственный проект под девизом
«хочешь сделать что‑то хорошо — сделай это сам».
Версия 1 (альфа)
Желая сделать действительно достойную альтернативу своему теперь уже конкуренту, я начал с того, что действительно стоило сделать, чтобы не совершить тех же ошибок - с анализа.
На этот момент мною были выделены следующие недостатки в уже существующей игре:
-
Гиперинфляция. Игроки оперировали триллионами денег. Чтобы вы понимали масштаб катастрофы, наш коллектив однажды купил Мексику (примерно десяток территорий) за 80 триллионов, передав эту сумму от одного человека к другому напрямую. Забавно, но подобные суммы в бюджетах государств не застаивались. Насколько мне известно, на данный же момент у некоторых игроков есть квадриллионы.
Это, если что, вот такое число - 1 000 000 000 000 000. -
Бюджет государства. Это отдельная тема для разговора. Пополнялся либо налогами, либо пожертвованиями игроков напрямую.
Без-воз-врат-но (голосом Совы из советского мультика про Винни-пуха).
Почему это проблема? Потому что бюджеты государств были замкнутой системой, со своей экономикой. Существовал дуализм цен - для игроков и государств. Два отдельных рынка.
-
Рыночек. Сам по себе не проблема, так как действовал по принципу оголтелого капитализма — кто предложил цену лучше, у того и скупают.
Проблема была в том, что выставлять товар можно было на всеобщее обозрение по всему игровому миру. Если кто‑то мог производить дешевле всех, весь мир покупал у него, оставляя остальных игроков, особенно новичков, за бортом. Новичкам, стремившимся стать торговцами или промышленниками, просто не было шансов конкурировать. -
К слову, о производстве. Оно было очень банальным — отдай руду, получи танк. Сразу.
Без мам, пап и промежуточных материалов.
Эти ошибки в игре были системными, то есть шли не от игроков, а от самой системы построения игры. И некоторые из них так глубоко уходили корнями, что единственным решением было бы создание новой версии игры с исправленными правилами.
Чтобы не допускать тех же ошибок, была продумана следующая концепция новой игры:
-
«Физический» склад, с регионом расположения. Игрок не может таскать с собой в «кармане» тысячу танков, так что они должны иметь место размещения.
А ещё игрок не должен иметь возможность торговать через всю планету — по крайней мере, не оплачивая доставку. Если рядом с покупателем окажется продавец с немногим более дорогим товаром, то разница в доставке может сыграть свою роль в выборе.
Картинка для понимания: доставка оплачивается один раз за покупку, и для небольших партий может играть существенную роль в формировании стоимости.
Чтобы не пугать вас «ультра‑графикой», сразу оговорюсь — эта вёрстка в игре уже не используется. Но концепция физического склада жива до сих пор, и вот как та же страничка торговли выглядит сейчас:
Наличие у Склада местоположения рождает другое отличие нового проекта от своего идейного родителя — уязвимость запасов. А на момент «альфы» и количество денег, которое игрок мог иметь с собой, ещё и было ограничено. Нет места — сложи на Склад.
Но помни — если регион, в котором он находится, будет захвачен, ты лишишься части ресурсов, товаров, а все деньги — сгорят:
Эта механика стала частью системы защиты от инфляции. Со временем были добавлены и другие способы вывода денег из оборота. А у меня появились аналитические таблицы, показывающие, сколько в среднем игрок зарабатывает и тратит. Если баланс начинает скуднеть, в игру вводятся события, которые помогают пополнить запасы игроков.
-
Производственный процесс стал более реалистичным. Сначала игрок перерабатывает ресурсы (руду и нефть) в Материалы, что требует времени и денег. Затем, снова затратив средства и время, материалы превращаются в готовый товар.
За время наличия в игре этой механики произошёл интересный случай: топ‑игрок, накопивший с начала игры полтора миллиона денег (максимум за десять минут можно было добыть тысячу), уходя, отдал их дружественному коллективу. Они потратили их на производство без остатка!
-
-
Так что, производство — тоже хороший способ борьбы с инфляцией.
Скриншот того времени показывает ещё и часть интерфейса игры, усердно верстаемого в меру познаний:
Чтобы вам как можно скорее полегчало после эстетического шока, держите скриншоты того, как это выглядит сейчас:
-
Когда-то давно, у меня, как создателя игры, существовали мысли объединить личную и государственную экономику при помощи государственных закупок.
Если вкратце, то это аукцион наоборот — законодатели выставляют потребность в товаре, и бюджет, который они на него готовы потратить. Кто предложит больше всего товара на этот бюджет (получается, по самой маленькой цене) — тот и победил.
Даннный функционал на сегодняшний день успешно реализован и эксплуатируется. Более «законопослушными» игроками — по прямому назначению. Менее — как способ «попила бюджетов», когда игроки извлекают из государственного оборота круглые суммы в обмен на не менее круглые объёмы товаров — чтобы не нашлось людей с такими же запасами, способных сбить цену.
-
О треугольнике компромиссов
Иногда я слышу от игроков вопрос: почему я так долго работаю над проектом? Мол, можно было давно уже набросать всё на коленке и выпустить в релиз. И что раньше уже существовали проекты, которые за более короткое время создавали куда больше контента для своих игроков.
Но, как я уже говорил, именно такие проекты и «канули в лету». Возможно, их создатели переключились на другие дела или им не хватило знаний. Однако я считаю, что одна из ключевых причин их провала — отсутствие прочной базы.
Очень важно заложить в проект крепкий фундамент, который позволит в будущем легко его расширять и улучшать, а не превратить игру в хаос и для разработчика, и для игроков. Быстро сделанная игра может стать проблемой сразу же. Без тщательно продуманной логики возникают баги, которые подрывают смысл игрового процесса и открывают множество лазеек для злоупотреблений и накруток.
Поэтому для себя я поставил качество на первое место — хотя бы на том уровне, который я способен обеспечить. Поскольку это мой личный проект, бюджет у него отсутствует. Следовательно, при фиксированном уровне качества и нулевых затратах на разработку третий угол «треугольника компромиссов» — время — растягивается ровно настолько, насколько это необходимо:)
Что пошло не так на данном этапе
Главной «детской болезнью» проекта стал недостаток привлекательного и вменяемого дизайна. Это стало настоящим «проклятием» — никто не хотел работать над чужой идеей бесплатно, а редкие добровольцы, которые соглашались, быстро «терялись» по разным причинам. Дизайн всегда оставался слабым местом, несмотря на все усилия.
Но окончательно добило первую итерацию игры другое — нерешаемая ошибка в серверных процессах.
Попробую объяснить. В каждом игровом государстве выборы проводились раз в неделю, причём — в своё время. Это фоновый процесс, не зависящий от активности игроков. Этот процесс должен был работать стабильно каждую неделю, без сбоев. Однако, в лучшем случае, он функционировал исправно только две недели подряд, после чего продолжал «существовать», но переставал исполняться. Проблема была непредсказуемой, и никакой системы в этих сбоях я не мог найти.
Решение пришло ко мне спустя долгое время. Оказалось, что библиотека, которую я использовал для управления фоновыми задачами (Celery‑beat), имела баг, который приводил к таким сбоям. Когда разработчики библиотеки исправили этот баг, я наконец‑то получил стабильный механизм для фоновых процессов.
Но это случилось позже. На тот момент я решил кардинально изменить концепцию игры, превратив её в стратегию и избавившись от механики выборов вообще. Так началась работа над новой версией, которая стала своего рода «ответвлением» от первоначальной идеи.
Версия 2 (отступление)
Новая концепция игры сосредоточилась на противостоянии городов‑колоний на неизведанной планете. Игрокам предстояло развивать свои колонии, наращивать добычу ресурсов и подавлять конкурентов с помощью армии.
Хотя идея была далеко не новой, в тот момент она показалась мне привлекательной. Как и с оригинальной задумкой игры, у меня был опыт в подобных проектах, и я хотел создать что‑то достойное для игроков, избежав типичной модели «заплати‑и-победи».
Игра сохраняла цветовую схему и некоторые элементы логики от предыдущей итерации. Например, партии (аналог кланов) сохранились, хотя потеряли свои внутрипартийные «праймериз». Однако большинство механик пришлось создавать с нуля: это и строительство базы, управление ресурсами, рекрутинг армии, механики разведки и сражений с другими колониями.
Найти скриншоты того периода было непросто, но кое‑что всё‑таки сохранилось:
Многие игроки до сих пор вспоминают эту итерацию проекта с теплотой. Однако в конце концов я закрыл эту версию игры. К тому моменту я набрался опыта и решил вернуться к своей оригинальной задумке — политическому симулятору.
Версия 3 (бета)
Главной ошибкой этой версии стал «легаси‑код» — наработки первой итерации, которые, как мне казалось, можно было успешно использовать повторно.
Самый яркий пример — система складов у игроков. У каждого игрока могло быть несколько складов, по одному на регион, и на каждом складе хранились ресурсы. В начале разработки я допустил архитектурную ошибку: каждый новый ресурс, который я добавлял в игру, должен был быть прописан во всех складах. То есть, даже на пустом складе автоматически числилось 0 угля, 0 железа, 0 бокситов, 0 стали и так далее.
Эта ошибка обошлась мне дорого. Пришлось тратить время на переработку логики игры, причём делать это «на живую» — так, чтобы изменения улучшили систему, не затронув текущий прогресс игроков. Для этого пришлось провести много тестов на отдельном сервере, но в конце концов проблему удалось решить.
К тому моменту вопрос с отсутствием фронтенд‑разработчика всё ещё не был решён. Несмотря на это, старый голубой стиль игры не перекочевал в новую версию проекта. Игровой гайд тех времён демонстрирует игру такой:
Из того же гайда видно, что, хотя интерфейс производства был простым, его функциональность стала ближе к современной версии:
Панель прокачки персонажа также постепенно приближалась к своей нынешней форме:
А вот так этот интерфейс выглядит сейчас:
Версия 4 (текущая)
И вот, наконец, я подошёл к той версии игры, которую разрабатываю, дополняю и улучшаю прямо сейчас. Путь к ней был ОЧЕНЬ долгим, но, как я уже упоминал, я не гнался за скоростью.
Нельзя сказать, что всё это время я работал в абсолютном одиночестве. Важно отметить и поблагодарить тех, кто помогал на разных этапах. В первую очередь — моего друга, который помогал развёртывать первые версии игры в общем доступе. Также хочу сказать спасибо школьникам и студентам, кто принимал участие в разработке на разных этапах, хотя и оставил это дело.
На текущем этапе у меня есть люди, помогающие с дизайном игры и консультациями по серверной части. Друг занимается настройкой рекламы, а моя девушка активно тестирует игру.
И, конечно же, я благодарен тем игрокам, кто поддерживает мой проект онлайном, а кто‑то — даже рублём. К слову, деньги расходуются только на нужды игры. Я считаю, что так правильнее:)
Но я всё ещё рад буду людям, которых заинтересует моя игра, и которые хотят приложить к ней руку.
Я обязательно оставлю свои контакты в конце поста.
К слову, важность нормального дизайна игры, её внешнего вида, сложно недооценить. До тех пор, пока новый визуал не был внедрён в игру, многие обходили её стороной. Их можно понять — игра не открывалась нормально на смартфонах (а основная масса играет с них), и даже с компьютеров выглядела максимально...убого.
Так что, несмотря на то, что технологически новый визуал игры не на передовой технологий, он выполняет главную задачу, которая на него возложена — позволяет людям играть с комфортом с разных устройств.
С внедрением нового дизайна онлайн постепенно начал расти. Если раньше потолком были около двух десятков человек и случайные посетители, то теперь число активных игроков стабильно держится на уровне 130 человек. Конечно, это ничтожно мало по сравнению с мобильными гигантами с миллионами игроков, но у нас и бюджеты несравнимы. Надеюсь, всё ещё впереди:)
Рост аудитории — постоянная работа. Честно говоря, таргетированная реклама не приносит значительного увеличения онлайна. Как говорит друг, она лишь «прокачивает узнаваемость». Зато хорошую отдачу дали публикации об игре в ролевых сообществах, а также среди любителей стратегий и военно‑политических игр (ВПИ). Так в игру приходили целые группы — от нескольких человек до десятков. Кто‑то задерживался ненадолго, а кто‑то остаётся с нами до сих пор. Каждый из этих людей оставил след в истории игрового мира.
Помня о главной ошибке конкурентов — «мёртвой» администрации, я стараюсь оставаться со своими игроками на связи. В группе игры ВКонтакте и её телеграм‑канале регулярно публикуются патчноуты, а в чатах, в которые можно попасть оттуда, можно пообщаться и со мной лично.
Конечно, я понимаю, что с ростом онлайна управление общением и модерирование нужно будет передать инициативным игрокам. Хотя это неизбежный шаг, я стараюсь его отложить, ведь мне важно поддерживать личный контакт с сообществом. Даже когда появятся посредники, избранные самими игроками, я всё равно планирую оставаться на связи, чтобы продолжать прислушиваться к мнению сообщества.
Интересно, как мой проект привлёк внимание не только новых игроков, но и даже одной небольшой игровой студии. Однажды со мной связался человек, который с большим усердием расспрашивал о жанре игр, конкурентах, целевой аудитории, интересе игроков и возможных сложностях разработки. Он внезапно исчез так же, как и появился, и, видимо, его студия решила, что жанр оказался бесперспективным.
Однако я с этим не согласен. Рынок мобильных игр огромен — как по числу игроков, так и по обороту средств. Хотя я не строю иллюзий насчёт головокружительного успеха или инвестиций в свой проект, наблюдаю интерес к нему даже со стороны иностранных игроков из конкурирующих проектов. Они уже начинают предлагать свои услуги по переводу игры на их родной язык.
Этот шаг открывает возможности выхода на международный рынок, что увеличит аудиторию и сделает игровой процесс более захватывающим. Ведь согласитесь, вести переговоры с другой страной куда сложнее, если ты не понимаешь их языка!:)
О приложении
Именно для того, чтобы выйти на этот самый международный уровень, я занялся приложением игры. По сути своей это такой же браузер, просто открывающий только сайт моего проекта. Но по мере разработки появились пожелания игроков, которые сделали даже эту «обёртку» более презентабельной.
Приложение игры добралось до возможности релиза, и в данный момент находится в состоянии открытого тестирования. Однако, ещё на стадии открытия предварительной регистрации я столкнулся с тем, что приложение не видно никак, кроме как по прямому запросу:
Вопрос в поддержку ничего не дал — мол, подождите немного, оптимизируйте описание игры для лучшей индексации и всё такое. Так что, если вы разбираетесь в том, как правильно публиковаться в Гугл Плее — напишите мне, пожалуйста, в чём моя ошибка.
О планах на ближайшее и не очень будущее
Прямо сейчас у меня в первом приоритете — сделать так, чтобы игра была максимально дружелюбна для новичков, причём со всего света. Для этого нужно сделать много всего:
-
перевести игру как минимум на английский полностью;
-
добавить справку в интерфейсе (та самая нейро‑девушка, рассказывающая о прокачке);
-
заполнить Wiki‑сайт игры;
-
улучшить обучение, которое даётся игрокам вначале.
И это только те вещи, которые хотелось бы сделать до публикации игры. В целом же — огромный список вещей, которые напрашиваются сами по себе, которые просят сделать игроки и которые хочу сделать в игре я сам.
Я благодарю вас, что дочитали до конца.
Оставляю в конце разные ссылки на себя и свой проект. Буду рад обратной связи и новым игрокам.
Наша игра в Play Market (поддержите нас там, пожалуйста)
Соцсети:
Спасибо за внимание!
Автор: m4troskun