Бесплатно по России

С 10:00 до 21:00

С 10:00 до 21:00

Заполнить бриф

Онлайн заявка

#

Разработка игры в жанре RPG | цены, примеры

Редакция Appfox

Редакция Appfox

Время чтения: 10 минут

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

Во сколько обойдётся

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

Обратите внимание, намеренно опущены затраты на рекламу, амортизацию оборудования, аренду помещения под офис и т. д. Всё это индивидуально и зависит от особенностей не только конкретного проекта, но величины компании, её расположения, множества других, сложно учитываемых факторов. Можно лишь сказать, что затраты на рекламу сравнимы с остальной ценой rpg на заказ. Стоимость разработки RPG в IT компании СНГ вам обойдется от 3 млн. рублей за MVP и базовую версию, до 40-50 млн. рублей за проект с ААА графикой.

Разработка игры в жанре RPG

Графика

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

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

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

#

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

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

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

Код

Это не видимая для геймера часть создания рпг игр. Делится на логику и сервер. На первое приходится около трети вложений и где-то 10% на сервер.

#

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

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

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

Чем проект сложнее, тем вариантов больше. Их не бесконечное количество, но огромное. Не удивительно, что некоторые проекты весят гигабайты. Такое число строк кода один-два программиста физически не смогут написать за обозримый срок. А ведь это не просто чего-то перепечатать, его придумать надо. Даже если учесть, что с нуля игры сейчас практически никто не пишет, есть специальные движки. Всё равно крайне сложно. Самые распространённые из движков Unreal или Unity. Тот и другой имеют свои преимущества и недостатки. Подробнее на тему можно прочитать, например, в статье.

Положение осложняется тем, что не все высококлассные специалисты требуются всегда. Напомним, написание кода – лишь один из этапов разработки. Зарплату же требуется платить каждый месяц. Хорошо если есть заказы сразу на несколько проектов, тогда вся команда при деле и окупает себя, а если нет… Имеется и масса других сложностей. Можно, конечно, использовать agile, но с ней практически невозможно более менее точно спланировать бюджет.

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

#

Тестирование

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

Общие рекомендации

Просьба не считать их банальными и очевидными. Истинность приведённых ниже советов признают как бы все, но вот следуют до конца в основном только авторы успешных проектов.

  1. Постарайтесь максимально реалистично оценить свои силы и бюджет. Иначе рискуете не довести проект до конца или сделать его гораздо хуже, чем ожидалось.
  2. По максимуму пользуйтесь аутсорсом. Делайте сами только ту работу, которую сможете выполнить качественно и в срок.
  3. Минимизируйте число членов своей команды. Оставляйте лишь тех, что приносят реальную пользу и доход.

Надеюсь, статья вам помогла, вы узнали что-то новое для себя. Возможно, вас заинтересует, как разрабатывать шутеры или андроид приложения. Помните, побеждает не тот, кто ошибок не делает (таких нет), а тот кто извлекает из них для себя урок. Удачи.

Автор

Редакция Appfox

Редакция Appfox