Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5

в 12:05, , рубрики: ClickTeam Fusion, Fantasy Beast Footbal, GamesJamKanobu, Блог компании ВШБИ — Менеджмент игровых интернет-проектов, ВШБИ, геймдев, игровые движки, игры, разработка игр

Слушатели нашей программы «Менеджмент игровых проектов» OneTwoOne и osin_pa сейчас работают над своим первым проектом Fantasy Beast Football, который кстати попал в число финалистов GamesJam Kanobu 2017.

В этой статье хотим рассказать про то, как выбирали движок для проекта и о ClickTeam Fusion 2.5, на котором в итоге остановили свой выбор. ClickTeam Fusion 2.5 на первый взгляд не пользуется большой популярностью, по крайней мере мы не встречаем большое кол-во информации о нем в сети. А жаль. Ведь сам движок оказался весьма удобным для разработки небольших 2d проектов.

За подробностями добро пожаловать под кат.

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 1

Для начала, расскажем кратко о нашем проекте, и о его особенностях, которые оказали влияние на выбираемый движок.

What the project?

Мы давно обсуждали идею головоломки в стилистике американского футбола, но до серьезной работы как-то не доходили. Когда же стартовал GamesJam Kanobu 2017, мы решили, что это наш шанс.

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

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

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

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 2

Закончив расстановку, игрок нажимает кнопку «Start» и наблюдает, что же происходит дальше.

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 3

Условие победы – один из юнитов игрока должен донести мяч до тачдауна, избежав все опасности и не столкнувшись с юнитом противника.

Подробнее почитать о проекте, либо поиграть в демо, можно на сайте GamesJam Kanobu либо в нашей группе ВК/

Критерии, влияющие на выбор движка.

К выбору движка мы подошли ответственно. Выделили для себя следующие критерии, которые были важны для нас:

  1. Стоимость движка. Какой-то существенный бюджет на разработку отсутствовал, поэтому этот пункт играл для нас огромную роль.
  2. Низкий порог вхождения. Джем Канобу длится один месяц, а это значит, что мы должны были как можно быстрее приступить к разработке, а не изучать тонны документации по движку или новый язык программирования.
  3. Быстрота разработки. За месяц джема мы должны успеть как можно больше, а значит мы не можем позволить себе долгую разработку.
  4. Размер приложения на выходе. Мы поставили себе жесткие рамки, что приложение после установки не должно занимать более 50 мб. на устройстве.
  5. Разработка под Android. Наша целевая платформа – Android, поэтому нам важно, чтобы для создания билда не приходилось «плясать с бубном ночи напролет»
  6. Наличие хороших и подробных уроков по работе с движком.

Как выбирали движок

«Вооружившись» списком требований, пошли на Slant.

Просто шли по списку и искали подробную информацию по каждому движку, сверяя инфу с нашими критериями.

Забавно, что во время изучения списка с сайта, мы, сперва, не обратили внимание на Clickteam Fusion 2.5, хотя он там представлен.

В итоге, после изучения движков на портале по критериям, наш список сузился до следующего:

  • GameMaker Studio
  • Cocos2d-x
  • Construct 2
  • ClickTeam Fusion 2.5

Сначала рассматривали GameMaker Studio. Показался интересным, но, в итоге, оттолкнула его цена (399.99 $).

Далее стали рассматривать Cocos2d-x.Программист команды использует этот движок в основной работе, но он категорически отказывался разрабатывать на нем. Причина в том, что все надо писать кодом, что замедляет разработку. И у него постоянно возникают проблемы при сборке под Android с этого движка.

Затем перешли к рассмотрению Construct2. Движок вроде приглянулся, правда немного смущала цена. 5 799 руб. за персональную лицензию с ограниченным коммерческим использованием и 18 999 руб. за бизнес лицензию.

Обсуждая за обедом на основной работе Construct 2 с коллегами, услышали про Clickteam Fusion 2.5. Так и началось наше знакомство с ним.

Что привлекло в Clickteam Fusion 2.5

  1. В первую очередь, в движке привлек низкий порог вхождения. Достаточно посмотреть 7-ми минутный урок по созданию Арканоида на Clickteam, чтобы начать разработку своей игры. В конструкторе очень просто ориентироваться, ты не ищешь часами нужный тебе функционал, не скачешь по форумам с нерешенными вопросами. Создатели достигли такого эффекта, что ты ощущаешь себя опытным разработчиком ClickTeam, уже с первых минут все кажется знакомым и понятным.
  2. Также, показалась заманчивой цена движка, которая варьируется в зависимости от платформы разработки. Основной модуль обошелся нам в 1 299 руб. К основному модулю мы приобрели SDK для разработки на Android. Он обошелся нам еще в 1 299 руб. В финале, нам необходимо будет докупить версию для разработчиков, если мы хотим внедрять платежи, которая стоит 5 174 руб.
  3. То есть, полностью движок нам обошелся в 7 772 руб. (против 18 999руб. за Construct 2 и 399$ за GameMakerStudio).
  4. Еще одна особенность, которая сразу же привлекла наше внимание, при разработке на Clickteam Fusion 2.5 не используется язык программирования. Все строится на условиях. Ты задаешь условие, затем действие. Мы еще расскажем об этом чуть ниже.
  5. Плюс, были найдены очень хорошие и подробные уроки

Этого было достаточно, чтобы мы решили попробовать работать с ClickTeam.

Работа с ClickTeam Fusion 2.5

Проблем с началом разработки не возникло, т.к. все интуитивно понятно. При первом запуске движка бросился в глаза его интерфейс «Привет 90-е!»

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 4

Но это впечатление быстро оставило нас, когда мы поняли его простоту и интуитивность.

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

Далее, покажем на примере, как задаются условия взаимодействия объектов в ClickTeam Fusion 2.5. Начнем немного издалека. В нашей игре есть тип игрока Раннер. Его задача добежать с мячом до тачдауна. У Раннера есть два состояния: бег с мячом и бег без мяча. Причем, двигаться Раннер может только вперед. У ClickTeam есть интересная особенность, которые мы использовали. Мы можем задать для каждого направления объекта свою картинку / анимацию. Т.к. наш Раннер всегда бежит вперед, то было решено не использовать внутренние переменные и прочее, а воспользоваться следующей логикой. Мы загрузили в конструктор две картинки Раннера: с мячом и без. А дальше решили, что по направлению вверх будет лежать картинка с мячом, а если Раннер смотрит вправо, то будет отображаться картинка без мяча. Таким образом, переключая в конструкторе направления, мы получаем два разных состояния Раннера.

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 5

Раннер с мячом

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 6

Изменили направление. Раннер без мяча.

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

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 7

  • Строка 155 задает условие: Если происходит столкновение Раннера с Валуном и Раннер смотрит вверх (то есть держит мяч)
  • Строка 156 задает условие: Если происходит столкновение Раннера противника с Валуном и Раннер противника смотрите вверх.
  • Строка 157: Если происходит столкновение Раннера с Валуном в любом состоянии Раннера (с мячом или без)
  • Строка 158: Тоже самое описывается для Раннера противника

Мы задали условия, теперь задаем действия, которые происходят при срабатывании условий.

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 8

  • Строка 155: Если Раннер с мячом столкнулся с Валуном, то мы создаем объект Мяч по нулевым координатам относительно этого Раннера
  • Строка 156: Тоже самое повторяем для Раннера противника
  • Строка 157: Если происходит столкновение Раннера с Валуном, то мы создаем объект Взрыв, удаляем Раннера и удаляем Валун.
  • Строка 158: Тоже самое повторяем для Раннера противника

В принципе, это всё. За пять минут задается логика взаимодействия двух объектов на поле при разных условиях. И это главное преимущество ClickTeam.

А теперь ложка дегтя

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

Вы не можете сесть и прописать свою логику для объекта на C++, например. В ClickTeam Fusion зачастую будет получаться «простыня» из условий, что выглядит не очень элегантно. Как на скриншоте ниже:

Выбор игрового движка для инди-проекта: опыт работы с ClickTeam Fusion 2.5 - 9

Поэтому важно понимать, что представляет из себя Ваш проект. Если вы планируете делать Action-RPG с открытом миром и фотореалистичной графикой, то этот движок точно не для вас :-) Если же вы готовите проект с простыми механиками и 2d графикой, например платформер, или какие-то несложные головоломки, то Clickteam может стать для вас хорошим решением.

Итог какой?

Плюсы:

  1. Низкая стоимость.
  2. Низкий порог вхождения.
  3. Возможность работать с движком, не изучая новый язык программирования.
  4. Хорошие и подробные видеоуроки.
  5. Быстрая и простая сборка билда.
  6. Малый вес приложения после установки.
  7. Удобен в работе с простыми механиками и 2d графикой

Минусы:

  1. Интерфейс «Привет 90-е!»
  2. Не поможет вам в создании ААА

А вывод?

В случае нашего проекта, плюсы серьезно перевешивают минусы. Мы получили движок, в котором смогли разобраться за пару часов. Добились высокой скорости разработки и малого веса приложения (АПК весит 6,66 мб. И 20,48 мб после установки).

Минусы движка не стали для нас существенными.

В итоге, мы смогли серьезно продвинуться в разработке за месяц с момента старта GamesJam Kanobu 2017 и смогли стать финалистами. Будем рады встретиться пообщаться лично на грядущем DevGAMM и на выставке-конференции по VR, которая будет проходить у нас в ВШБИ 17 мая.

Кстати у ClickTeam есть триальная версия, так что, если вы выбираете движок для небольшого проекта, то попробовать ClickTeam на наш взгляд стоит.

В комментариях будем рады ответить на ваши вопросы и напишите, пожалуйста, какой игровой движок используете вы?

Автор: viacheslavnu

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js