Krakoid

Да, это очередная игра по мотивам Krakout.

Середина 2013 года.

Эта игра задумывалась как «возьму Krakout и Arkanoid: Space Ball, быстро переделаю и выпущу новую». Ага, как же, ф-а-н-т-а-з-е-р. Быстро переделать игру не получилось по нескольким причинам: использовать старый код игры было бесполезно, да и смотреть на него без рези в глазах было нельзя; предполагалось использовать новую (с учетом того времени) версию игрового движка и физический движок Box2D вместо собственной упрощенной математики.

Так что старые проекты «добровольно поделились» лишь некоторой частью ассетов и идей, а игра была полностью написана заново. Уровни в игре объединялись в миры, а миров было 10 штук. В каждом мире было от 10 до 40 уровней.
Для экономии времени, некоторые миры были скопированы из предыдущих игр. Но некоторые уровни и даже целиком миры были спроектированы заново. Созданием отдельных уровней и миров занимались разные люди.

Поскольку уровни игры были задуманы динамичными, то для игры был написан внешний редактор миров-эпизодов. Описание уровней хранилось в xml, который содержал информацию о типе, внешнем виде, поведении и прочности объекта. Редактор оперировал группами объектов. Например, траектория в виде окружности с радиусами R1 и R2, скоростью и направлением вращения, количеством и типом объектов на ней. А уже в игре, при загрузке уровня, каждый объект становился самостоятельным, внешне оставаясь членом группы.

Krakoid on the OUYA TV console

Целевыми платформами были iOS, Android, Android TV, OUYA, Linux, macOS, Windows. И игра, и движок написаны на C++. Разработка велась под Linux в моем любимом редакторе VIM.

Так же эту игру запросил какой-то издатель из Китая. Нужно было реализовать особые специализированные способы оплаты. Сложность была в том, что у каждого мобильного оператора был свои наборы SDK, которые были предназначены для разных способов оплаты. Локально проверить правильность интеграции было нельзя, оставалось надеяться на точность скудной документации и свой опыт. Не помню сколько времени ушло на реализацию всех вариантов платежей, но работа в итоге была сделана. Специальный билд игры был отправлен издателю для тестирования. После чего издатель перестал выходить на связь.

И это не первый мой издатель, который после получения билда игры исчезал из поля зрения.
«Гении учатся на чужих ошибках, умные учатся на своих ошибках и только дураки продолжают совершать старые ошибки»
© народное