Age of Revenge: Игра, воспитанная программистами

Age of Revenge: Игра, воспитанная программистами

Меня зовут Денис, и я разработчик из инди-команды Fruitshake. Вы скорее всего не слышали ни обо мне, ни о нашей команде, но мне хотелось бы поделиться нашим опытом.

Скриншоты игры из Google Play
Скриншоты игры из Google Play

Я расскажу об Age of Revenge -- мобильной фритуплей игре, которую мы запустили шесть лет назад, и в которую сейчас ежедневно играет около 10 тысяч игроков. Эта игра стала точкой опоры нашей команды, и по сей день позволяет нам фултайм заниматься разработкой игр без инвесторов и СМС.

Команда

Age of Revenge: Игра, воспитанная программистами

Наша команда состоит из 3-х человек:

  • Костя Черняков (программист)
  • Серёга Галкин (программист)
  • Денис Ершов (программист)

Каждый из нас изначально -- фулстек веб-разработчик, и это тот бэкграунд, с которым мы пришли в геймдев. Этого бэкграунда нам было достаточно, чтобы освоить другие игродельные профессии и стать полноценной инди-студией. Помимо кодинга, мы распределяем между собой задачи геймдизайна, UI-дизайна, арт-дирекшена и маркетинга. У нас в команде очень слабая специализация (нет чётких ролей) и, как следствие, сверхвысокая заменяемость. У этого есть свои плюсы и минусы, но для нас этот подход оказался рабочим по крайней мере для разработки Age of Revenge.

Геймплей

Core геймплей в одной гифке

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

Так вот, приступая к Age of Revenge мы хотели сделать клон Разрушителей с более крутой графикой и отзывчивым UI, в котором не нужно было бы нажимать на кнопку перезагрузки страницы, чтобы увидеть обновлённые данные.

Базово геймплей представляет из себя набор из очень простых PvE режимов, обложенных кулдаунами и тикетами для контроля скорости прохождения. PvE режимы приправлены щепоткой нарратива в духе текстовых РПГ и классическим hand-painted артом.

Квесты в таверне
Квесты в таверне

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

Режим клановой войны
Режим клановой войны

Не скрою, что в первый год работы мы многое взяли у Разрушителей, вплоть до чисел в экономике. Но потом мы стали придумывать свои режимы и заимствовать из других игр. Вдохновлялись механиками из Questlands, Dungeon Rushers, соревновательными режимами в Township, Idle Heroes.

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

Технологии

Процесс дизайна архитектуры
Процесс дизайна архитектуры

Age of Revenge -- браузерная игра, соответственно для её разработки преимущественно применялись веб-технологии:

  • React + Typescript + Phaser.js на клиенте
  • ASP.NET + SignalR + MongoDB на сервере

Почему “преимущественно” -- потому что для издания в мобильных сторах мы обернули игру в нативные приложения, а сейчас работаем над версией, обёрнутой в Unity.

Отмечу, что на клиенте 90% интерфейсов свёрстаны в HTML, а основные игровые сцены (сражения, подземелья) реализованы с помощью игрового движка для браузеров Phaser.

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

Пацанский гейм-дизайн

Один из немногих сохранившихся документов
Один из немногих сохранившихся документов

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

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

Очень гибкая разработка

Парное программирование
Парное программирование

От начала работы над проектом до первого релиза ушло чуть меньше года. Думаю, что это очень хороший срок для маленькой команды. В первом релизе игра была очень сырой, и мы сами удивлялись, что игроки проводят в ней хоть какое-то время и даже (!) делают платежи. В MVP было всего два игровых режима, которые практически не отличались друг от друга, и несколько базовых прокачек.

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

70% дизайна интерфейса производилось прямо в продукте методом HTML-вёрстки и сборки сцен в Phaser. Какую-то часть интерфейсов рисовали художники, но это были скорее идеи. Финальный вид игра приобретала непосредственно в браузере. Качество немного страдало, но такой подход позволял делать быстро, без лишних согласований. Что очень важно -- весь дизайн производился с учётом сложности разработки. То есть не было таких ситуаций, чтобы дизайнер нарисовал классную менюшку, а потом разраб сказал, что делать её нужно месяц.

Я не топлю за главенство программистов, но в данном конкретном проекте это сработало очень круто. Если бы у нас был более сложный проект с бóльшим количеством оригинальных фичей или со сложным дизайном -- то, да, мы бы погрязли в обсуждениях. Что собственно и произошло с нашим следующим проектом, но об этом в другой раз :)

Окупаемость

Платёжная статистика ВК
Платёжная статистика ВК

С финансами у нас дела обстояли примерно как с геймдизайном -- почти ничего не считали, бизнес-план не составляли. За первые два года мы потратили около 2 миллионов на игру, если не считать наши собственные трудозатраты. 90% этих расходов -- это арт. Остальное -- сервера и инструменты. Примерно за этот срок мы стали выходить на окупаемость. Происходило это очень плавно по мере подключения новых площадок.

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

Монетизация

Стартер пак
Стартер пак

Монетизация в Age of Revenge на 100% инапная. Я бы даже сказал, агрессивно-инапная, что вызывает сильное раздражение у многих игроков и коллег. Игрок в первые часы игры понимает, что покупки значительно облегчают игру. Хорошо это или плохо -- вопрос творческий. Будь монетизация более лайтовой, не факт, что у нас были бы возможности и желание долго развивать игру. А она прожила уже 6 лет, и у неё всё ещё есть будущее.

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

Тем не менее, 95% игроков играют без какого-либо доната. Некоторые из них играют годами. Уходят. А потом возвращаются. Есть в этой игре какая-то магия, которая влюбляет в себя.

Кстати, исторически сложилось, что в игре нет рекламы. Сейчас это фича, которая выгодно отличает нас на фоне других фритуплей игр. Но, возможно, мы пересмотрим этот момент, и начнём проводить эксперименты с рекламой.

Площадки

«‎Если у вас браузерная игра, то выбор площадок для публикации очень велик», -- Лао Цзы, VI век до Н.Э.
«‎Если у вас браузерная игра, то выбор площадок для публикации очень велик», -- Лао Цзы, VI век до Н.Э.

Изначально нашей целевой площадкой были Одноклассники. В ОКах уже успешно издавалось несколько игр, которые парни сделали до моего прихода в команду. Также игра сразу была доступна на домене xrpg.mobi, куда потёк кросс-промо трафик с других наших игр. Долгое время Одноклассники составляли львиную долю нашей аудитории. Было время, когда на площадке проводилось активное развитие мобильной платформы, различные акции и ивенты для привлечения игроков. Со временем эта активность поутихла (либо нас перестали звать).

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

Также, вскоре после релиза мы сделали приложения для Android и iOS. Это два независимых нативных приложения, которые представляют из себя обёртку из WebView и разных нативных SDK. Сейчас мы переходим на Unity-приложение с WebView, чтобы разрабатывать одно приложение, а не два. А ещё для того, чтобы проще было встроить рекламную монетизацию.

Google Play -- это самая перспективная площадка для нас сейчас, так как там самая широкая аудитория и самые широкие возможности по привлечению. Даже для нашей нишевой игры можно найти десятки тысяч новых игроков, надо только научиться это делать. С App Store аналогичная ситуация, но инструменты по привлечению чуть более ограничены в возможностях, поэтому отложили прокачку этого канала на попозже.

Помимо мажорных площадок периодически пробуем что-то новое (вдруг взлетит как ВК). Из последнего -- примерно год назад подключились к Яндекс.Играм. На данный момент площадка составляет 3-5% от общего дохода.

Заключение

В течение последних двух лет развитие игры сильно замедлилось, так как мы всей командой переключались на новый проект. Но, как я уже упоминал выше, недавно мы заключили контракт с паблишером для издания Age of Revenge. Очень надеюсь, что это откроет игре второе дыхание.

Лично для меня Age of Revenge стала главным проектом в моей жизни. Работая над артом и нарративом, общаясь с игроками и модераторами, я оставил в ней частичку своей души.

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

3030
29 комментариев

Денис Ершов - раз вы разработчик ,будьте добры по чаще заходить на свое детище - я 5 лет играю ,вложила не мало в игру и не я одна !
Виснет игра и выкидывает в ответственные моменты - с одиссеи ,с порталов, вторжение вообще отдельный калапс

2
Ответить

Вот разработчик и встретил своего игрока!

Ответить

Интересный факт - все успешные wap игры это или игры овермобайла или игры клоны от конкурентов :)

1
Ответить

Несут золотые яйцы :)

Ответить

Спасибо за статью! Видел игру в сторе!

1
Ответить

Братцы давайте развивать игру!!! 🥳🎄🎉
С новым годом ❄️😜❄️

1
Ответить

Интересно, ЦА подобных игорь, сидит на дтф в разделе инди?

Ответить