Привет! Имея за плечами довольно серьезный опыт разработки игр и приложений, я долгое время боялся браться за RPG. Я имею ввиду полноценную ролевую игру, а не казуальный кликер или айдлер (idle). Итак, я поделюсь с вами историей о том, как по-быстрому за 1 месяц сделать свою RPG, с блэкджеком и всем остальным.

Начну с того, что в копилке мертвых проектов у меня уже есть целых две RPG. Нужно прекрасно осознавать, сколько времени и ресурсов потребуется для полноценной разработки. А поскольку объективного понимания этого не было, проекты вставали. Первой здравой идеей было переиспользовать накопившиеся наработки. Чтобы хоть как-то отбить потраченное время, мы решили опубликовать редактор персонажей со спрайтами из наших игр в Unity Asset Store.

Зашло неплохо, сделали несколько вариаций в разных сеттингах. А потом решили целиком переключиться на разработку ассетов, поскольку цикл разработки короткий, а деньги платят сразу) Прошло 2 года, и прошлым летом мы начали замечать игры, сделанные из наших ассетов. Причем, некоторые вполне успешные (по меркам инди). И мы подумали, не сделать ли нам свою RPG из своих же ассетов? Еще раз, по-быстрому, за месяц. Составили план и начали работать.
Чтобы игра не превратилась в типичный кликер, мы решили реализовать механики с таймингами из таких взрослых игр, как Dark Souls или Monster Hunter. Уклонение, мувсеты, чардж двуручников и все такое. Получилось довольно необычно. Из-за этого сильно выросла сложность, героя могут побить за пару ударов, если не уворачиваться и не ставить щит. Сразу решили упростить игру за счет отказа от открытого мира. Пришлось, надеемся временно, реализовать классическую казуальную дорожку с уровнями. В каждом уровне нужно победить с десяток врагов и сразиться с боссом.
Про систему инвентаря рассказывать особо нечего, она классическая, как в Diablo. Вся одетая экипировка отображается на персонажах. К сожалению, это редко встречается в современных казуальных «RPG».

… и так незаметно идет 10 месяц разработки. Оказывается, даже имея 7-летний опыт работы в геймдеве очень трудно оценить свои силы. Конечно, параллельно приходилось заниматься ассетами и другими проектами, например Pixel Studio или 0xWarriors.
Начну с самого сложного в RPG. И нет, это не графика, экипировка или сюжет. Это игровой баланс и тестирование. Совершенно невозможно просчитать или смоделировать бесконечное количество параметров — монстры, экипировка, локации, навыки, прогрессия игрока и так далее.
Визуализация данных сильно упрощает работу с ними. Например, мы используем Google Таблицы с иконками экипировки.

Первое решение — сводить все к небольшому набору ключевых параметров, таким образом делая все остальные параметры их производными. Например, будем считать, что абстрактное оружие 1 уровня имеет урон 100. Далее для каждого типа оружия прописываем коэффициенты урона, например 100% для мечей, 120% для топоров, 80% для кинжалов и так далее. То же самое можно сделать с монстрами. Именно поэтому в таблице выше нет конкретных параметров оружия — только тип и уровень. Игра сама просчитает все остальное.
Второе решение — моделирование. Нужно писать бота, который будет имитировать действия игрока. Он будет сам покупать экипировку, изучать навыки, а потом отправляться в сражения и собирать статистику. Таким образом можно грубо подобрать кривые основных параметров и настроить сложность игры.
Следующий этап — игровые тесты. Нужно интегрировать аналитику и отслеживать поведение игроков. Кто что покупает, где застревает, а где наоборот — слишком просто.
В общем, не буду сильно заморачивать вам голову) Если кого-то интересуют детали, задавайте вопросы в комментариях.
В данный момент мы уже во всю готовимся к Early Access в игровых магазинах Google Play, Steam, App Store, создаем всякие промо-материалы, пиаримся и общаемся с издателями. Не забываем и про сообщество, так что проявляем активность в Reddit, Discord, VK и других социальных сетях.
Мы используем игровой движок Unity и свой собственный ассет Fantasy Heroes: 4-Directional Character Editor из Unity Asset Store. Для монетизации используем сервисы «из коробки» — Unity Ads и Unity IAP. Для аналитики — Unity Analytics и Yandex App Metrica. Чтобы иметь возможность гибко настраивать баланс и сложность без обновления игры, мы используем Unity Remote Config (очень удобная вещь). Отдельно поработали над оптимизацией — удалось сократить размер APK (только x64) до 37 мегабайт (в основном, благодаря атласам и максимальному сжатию графики и аудио-файлов). Для сравнения, размер самой первой сборки был около 1 гигабайта. Для анализа размера файлов очень помогают текстовые логи Unity о сборке.
Про запуск постараюсь написать отдельную статью, поскольку все еще тол��ко начинается. Провалится ли наша RPG или ее ждет успех? Найдем ли мы издателя или будем публиковаться сами? Самим интересно) Всем спасибо, удачи!

Про неудачные попытки
Начну с того, что в копилке мертвых проектов у меня уже есть целых две RPG. Нужно прекрасно осознавать, сколько времени и ресурсов потребуется для полноценной разработки. А поскольку объективного понимания этого не было, проекты вставали. Первой здравой идеей было переиспользовать накопившиеся наработки. Чтобы хоть как-то отбить потраченное время, мы решили опубликовать редактор персонажей со спрайтами из наших игр в Unity Asset Store.

Зашло неплохо, сделали несколько вариаций в разных сеттингах. А потом решили целиком переключиться на разработку ассетов, поскольку цикл разработки короткий, а деньги платят сразу) Прошло 2 года, и прошлым летом мы начали замечать игры, сделанные из наших ассетов. Причем, некоторые вполне успешные (по меркам инди). И мы подумали, не сделать ли нам свою RPG из своих же ассетов? Еще раз, по-быстрому, за месяц. Составили план и начали работать.
Чем удивить игрока?
Чтобы игра не превратилась в типичный кликер, мы решили реализовать механики с таймингами из таких взрослых игр, как Dark Souls или Monster Hunter. Уклонение, мувсеты, чардж двуручников и все такое. Получилось довольно необычно. Из-за этого сильно выросла сложность, героя могут побить за пару ударов, если не уворачиваться и не ставить щит. Сразу решили упростить игру за счет отказа от открытого мира. Пришлось, надеемся временно, реализовать классическую казуальную дорожку с уровнями. В каждом уровне нужно победить с десяток врагов и сразиться с боссом.
Про инвентарь
Про систему инвентаря рассказывать особо нечего, она классическая, как в Diablo. Вся одетая экипировка отображается на персонажах. К сожалению, это редко встречается в современных казуальных «RPG».

Где застряли?
… и так незаметно идет 10 месяц разработки. Оказывается, даже имея 7-летний опыт работы в геймдеве очень трудно оценить свои силы. Конечно, параллельно приходилось заниматься ассетами и другими проектами, например Pixel Studio или 0xWarriors.
Начну с самого сложного в RPG. И нет, это не графика, экипировка или сюжет. Это игровой баланс и тестирование. Совершенно невозможно просчитать или смоделировать бесконечное количество параметров — монстры, экипировка, локации, навыки, прогрессия игрока и так далее.
Визуализация данных сильно упрощает работу с ними. Например, мы используем Google Таблицы с иконками экипировки.

Первое решение — сводить все к небольшому набору ключевых параметров, таким образом делая все остальные параметры их производными. Например, будем считать, что абстрактное оружие 1 уровня имеет урон 100. Далее для каждого типа оружия прописываем коэффициенты урона, например 100% для мечей, 120% для топоров, 80% для кинжалов и так далее. То же самое можно сделать с монстрами. Именно поэтому в таблице выше нет конкретных параметров оружия — только тип и уровень. Игра сама просчитает все остальное.
Второе решение — моделирование. Нужно писать бота, который будет имитировать действия игрока. Он будет сам покупать экипировку, изучать навыки, а потом отправляться в сражения и собирать статистику. Таким образом можно грубо подобрать кривые основных параметров и настроить сложность игры.
Следующий этап — игровые тесты. Нужно интегрировать аналитику и отслеживать поведение игроков. Кто что покупает, где застревает, а где наоборот — слишком просто.
В общем, не буду сильно заморачивать вам голову) Если кого-то интересуют детали, задавайте вопросы в комментариях.
В данный момент мы уже во всю готовимся к Early Access в игровых магазинах Google Play, Steam, App Store, создаем всякие промо-материалы, пиаримся и общаемся с издателями. Не забываем и про сообщество, так что проявляем активность в Reddit, Discord, VK и других социальных сетях.
Коротко о технической части
Мы используем игровой движок Unity и свой собственный ассет Fantasy Heroes: 4-Directional Character Editor из Unity Asset Store. Для монетизации используем сервисы «из коробки» — Unity Ads и Unity IAP. Для аналитики — Unity Analytics и Yandex App Metrica. Чтобы иметь возможность гибко настраивать баланс и сложность без обновления игры, мы используем Unity Remote Config (очень удобная вещь). Отдельно поработали над оптимизацией — удалось сократить размер APK (только x64) до 37 мегабайт (в основном, благодаря атласам и максимальному сжатию графики и аудио-файлов). Для сравнения, размер самой первой сборки был около 1 гигабайта. Для анализа размера файлов очень помогают текстовые логи Unity о сборке.
Про запуск
Про запуск постараюсь написать отдельную статью, поскольку все еще тол��ко начинается. Провалится ли наша RPG или ее ждет успех? Найдем ли мы издателя или будем публиковаться сами? Самим интересно) Всем спасибо, удачи!
