Skip to content

it-workshop/RoboMobo

Repository files navigation

RoboMobo

Что это?

Robomobo - проект игры с элементами дополненной реальности для мобильных устройств на платформе Android. Проект разрабатывается совместными усилиями мастерских IT и дизайна в рамках Летней Школы (http://letnyayashkola.org).

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

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

Сборка

Предупреждение: проект не тестировался на устройствах с версией Android ниже 4.0.3. Планируемая минимальная поддерживаемая версия - Android 2.2

Сборку проекта рекомендуется проводить в IntelliJ IDEA Community Edition, однако допускается использование Android Studio. Необходимо наличие Android SDK с установленным пакетом Android API 8 или выше.

Порядок действий:

  • Импортировать проект

  • В случае необходимости скорректировать настройки проекта

    Для IntelliJ IDEA:

    В окне Project Structure на вкладке SDKs убедиться в налчии в списке SDK хотя бы одного Android API

    В том же окне на вкладке Modules в выпадающем списке Module SDK выбрать SDK из предыдущего пункта

  • Собрать проект и запустить его

В будущем планируется выкладывать установочный файл проекта для тестирования

Workflow

Для каждой новой фичи заводится issue, которому присваивается непосредственный исполнитель. Для этой фичи создается ветка под названием pr/<номер issue>. Коммитить в эту ветку разрешается только непосредственному исполнителю, ответственному за фичу. По завершении работы над фичей производится формирование pull request и тестирование силами команды. После окончания тестирования фичи и отлова багов производится вливание ветки в master с последующим закрытием issue.

Стиль кода

Используется Google Java Style (http://google-styleguide.googlecode.com/svn/trunk/javaguide.html). Настройки автоматического форматирования в IntelliJ IDEA можно импортировать из файла GoogleJavaStyle.jar в корне репозитория (File -> Import Settings...).

Technoworks (http://technoworks.ru), 2014