FatalRace (Demo) Release

Доброго всем времени суток! С момента предыдущего поста я почти не спал, спеша выполнить свое обещание сделать рабочий билд игры в срок. Глаза слипаются, а все запасы кофе давно закончились, но я готов вам представить рабочий прототип FatalRace!

FatalRace (Demo) Main Menu Mak Ruder
FatalRace (Demo) Main Menu Mak Ruder

FatalRace общее описание

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

FatalRace (Demo) PC gameplay Mak Ruder
FatalRace (Demo) PC gameplay Mak Ruder

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

FatalRace (Demo) Boxes Mak Ruder
FatalRace (Demo) Boxes Mak Ruder

Кроме всего прочего на трассе попадаются канистры. Зачем они? Все просто: у игрока 2 основных жизнено-важных параметра - это, собственно говоря, само здоровье, и топливо. Если здоровье тратиться только при столкновениях и вражеском обстреле, то топливо заканчивается само по себе в процессе увеличения пройденного километража. Не исключена ситуация, когда вам просто не хватит запаса топлива, чтобы доехать до финиша. Подбираем канистры и пополняем бензобак.

FatalRace (Demo) Boses Mak Ruder
FatalRace (Demo) Boses Mak Ruder

В конце трассы нас ожидает Босс. В игре их пока 2 - один для PC версии игры, второй - для Android. У боссов больше HP, чем у обычных машин и они отстреливаются. Из вооружения у них пока только пулемет с очередями по 5 патронов. Но еще видов оружия добавить не проблема. После битвы с боссом игра заканчивается, игра подсчитывает набранные очки и выводит таблицу с предыдущими результатами. Ну а теперь самое вкусное! То, за счет чего я собираюсь потягаться с другими участниками конкурса - режимы игры:

FatalRace PC version

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

PC Basic mode

FatalRace (Demo) PC Basic mode Mak Ruder
FatalRace (Demo) PC Basic mode Mak Ruder

Basic mode - стандартный режим для PC версии игры и он выбран по-умолчанию. В этом режиме вы управляете автомобилем с помощью клавиатуры (1), где А - движение влево, D - движение вправо, а SPACE -огонь. Единственное, что хочу отметить, что при стрельбе пулеметом кнопку огня можно зажать и огонь будет вестись очередями постоянно, а при стрельбе ракетами, одно нажатие - один выстрел.

PC Advanced mode

FatalRace (Demo) PC Advanced mode Mak Ruder
FatalRace (Demo) PC Advanced mode Mak Ruder

Advanced mode - самый "вкусный" режим для PC, ради чего все и затевалось изначально. Режим включается на начальном экране с помощь переключателя "Альтернативное управление". Для работы этого режима необходимо наличие web-камеры в вашей системе (как встроенной в случае с ноутбуками, так и USB для стационарных систем). При старте игры камера запоминает изначальное положение вашего лица, что позволяет в процессе игры отклоняясь влево или вправо управлять автомобилем (1). Иначе говоря, камера осуществляет треккинг вашего положения относительно изначальной позиции при старте игры, поэтому важно в момент запуска трассы сидеть относительно ровно напротив монитора на расстоянии примерно вытянутой руки. Далее отклоняясь в сторону вы передвигаете автомобиль на экране. Происходящее перемещения для удобства обозначатся на экране в верхнем правом углу (2), где квадратик - базовое положение, езда прямо; стрелки влево - перемещение влево; стрелки право - перемещение вправо. Так же важно понимать, что в этом режиме стрельба ведется автоматически, без вашего участия (этот способ стрельбы не самая хорошая идея, есть решения поинтересней, но об этом ниже).

FatalRace Android version

FatalRace для Android тоже состоит из двух режимов, один из которых стандартный, а второй "с изюменкой". Проще говоря, есть базовый режим Basic, где игра происходит стандартно на экране вашего смартфона/планшета, а есть режим AR mode, расшифровывающейся как " Augmented Reality" (Дополненная Реальность), где вы спокойно можете "положить" трассу себе на стол и при этом спокойно управлять игрой.

Android Basic mode

FatalRace (Demo) Android Basic mode Mak Ruder
FatalRace (Demo) Android Basic mode Mak Ruder

Вначале важно сказать, что версия для Android визуально отличается от версии для PC. Это связано с тем, что изначально я начал делать проект с PC версии на Unity 5, а когда настало время заниматься Android версией, выяснилось, что чтобы интегрировать в игру платформу Vuforia, которая и отвечает за все фишки связанные с AR режимом, необходимо перейти на Unity 2017 (а лучше 2018), где данная платформа уже интегрирована в движок и поддерживается нативно. При переносе билда на новую Unity столкнулся со множеством багов и проблем. Т.к. время на разработку крайне ограничено, принял решения собрать Android версию заново, заодно внеся некоторые изменения, необходимые при портировании на данную систему.

Итак, Basic mode - стандартный режим для Android. Здесь вы играете на экране своего устройства, управляя автомобилем при помощи наэкранного джойстика и кнопки "Fire". Стрельба, в отличии от PC версии, ведется по нажатию на кнопку. Т.е. одно нажатие - одна очередь из трех пуль. То же касается и ракет: одно нажатие - одна ракета выпущена.

Android AR mode

FatalRace (Demo) Android AR mode Mak Ruder
FatalRace (Demo) Android AR mode Mak Ruder

Режим AR mode - уникальный режим Android версии FatalRace. В этом режиме игра осуществляется в тесном взаимодействии с предметами из окружающего мира. Для начала игры в этом режиме вам необходимо предварительно распечатать специальные маркеры, которые можно скачать в архиве по ссылке выше или сохранить отсюда:

FatalRace (Demo) Android AR mode MAP Mak Ruder
FatalRace (Demo) Android AR mode MAP Mak Ruder
FatalRace (Demo) Android AR mode YELLOW CAR Mak Ruder
FatalRace (Demo) Android AR mode YELLOW CAR Mak Ruder
FatalRace (Demo) Android AR mode RED CAR Mak Ruder
FatalRace (Demo) Android AR mode RED CAR Mak Ruder

Размер изображений непосредственно влияют на размер объекта в реальном мире и на качество их захвата движком игры. Поэкспериментируйте сами, как вам будет удобно играть. Я, например, карту (изображение) основной игры (MAP) распечатал в формате А4, а вспомогательные карты автомобилей (Yellow Car и Red Car) в формате 1/4 А4. Т.к. последнии нам понадобятся только на начальном этапе игры, этого вполне достаточно. После того, как карты (изображения) распечатаны, кладем основную карту MAP, например, на центр стола, а вспомогательные где-нибудь рядом. Основная суть в том, чтобы камера вашего устройства не захватывала все картинки одновременно, т.к. переход на новый объект осуществляется только после потери предыдущего.

После подготовки запускаем игру. Режим AR mode выбирается за счет установки галочки "AR mode" на начальном экране игры. Далее нажимаем кнопку "Начать игру" и начинается волшебство...

FatalRace (Demo) Android AR mode Mak Ruder
FatalRace (Demo) Android AR mode Mak Ruder

Перемещаясь камерой с одной картинки на другую, вы можете выбирать между двумя разными автомобилями. Каждую машину вы можете рассмотреть со всех сторон, при этом вам никто не запрещает приближаться к модели, чтобы рассмотреть все делали (понятно, что в данной игре я использовал простые низкодетализированные модели и рассматривать тут особенно нечего вблизи, но я экспериментировал с высокополигональными моделями, там действительно дух захватывает). После того как вы остановили свой выбор на одной из машин, нажимает кнопку "Выбрать" и переводим камеру на картинку с картой (MAP). Начинается сама игра. Управление осуществляется все теми же средствами, что и в Basic mode - наэкранным джойстиком и кнопкой "Fire". НО! Вы все так же, как и при выборе автомобиля, можете рассмотреть трассу со всех сторон! Можете приближаться и отдаляться!

FatalRace (Demo) Android AR mode Mak Ruder
FatalRace (Demo) Android AR mode Mak Ruder

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

На этом основную часть презентации игры FatalRace для Джема DTF я заканчиваю, далее пойдут мои размышления и комментарии, которые можно и не читать)) Спасибо всем за внимание, с уважением, Mak Ruder.

Идеи, косяки и планы

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

Итак. Прошу всех отнестись к моему творению снисходительно. Как я говорил в первом своем посте, о конкурсе я узнал только за 3 дня до его завершения, поэтому сроки разработки были крайне ограничены. Отсюда следует:

Косяки (читать ошибки)

  • В игре, наверняка вы найдете много багов, хотя совсем "вырви-глаз" косяки я всесторонне старался фиксить
  • Не все места, требующие "защиту от дураков" успел вычленить. В некоторых местах возможна некорректная реакция игры на действия пользователя.
  • Android версия игры тестировалась на меленьком количестве устройств (2 телефона, 1 планшет). Поэтому вполне возможно, что не все заявленные функции у всех будут работать штатно.
  • В игре я делал акцент на механики треккинга лица в PC версии и AR режим в Android версии. Поэтому просто не хватило времени на озвучивание игры (к сожаления в этот билд я не успел добавить ни звуки, ни фоновую музыку). По этой же причине вся графика (модели, текстуры итд) взята из бесплатных ассетов и с простора интернета.
  • Не успел толком доработать тайминг. Имею в виду то, что где то надо чаще спаунить противников, где то более рандомно раскидывать ящики, какие то объекты раньше удалять со сцены итд. Этим буду занимать в следующим билде
  • Таблица рейтинга коряво получилась. Честно признаюсь, добавлял ее уже в самом конце. Доработаю.

Идеи (чего хотел добавить, но не успел)

  • Неавтоматическая стрельба в Advanced mode в PC версии. Стрельба будет происходить, благодаря треккингу пальцев руки. Например, сжал кулак - выстрел ракеты; соединил подушечки пальцев (как когда берете щепотку соли) - выпустил очередь из пулемета.
  • Определение пользователя в Advanced mode в PC версии по технологии распознавания лиц. В главном меню камера определяет лицо игрока и автоматически присваивает его имя персонажу. Очень удобно, если в игру на одном компьютере периодически играют разные люди.
  • Большее разнообразия механик взаимодействия с окружающей средой в AR mode в версии для Android. Не секрет, что технологии Vuforia позволяют тречить не только статичные изображения, но и 3d модели и предметы из реальной жизни. Идей здесь много, главная беда в том, что не успел разобраться, тупо не хватило времени. Но поле для новых механик, на мой взгляд, просто безграничное.
  • Нормальный масштабируемый интерфейс. Сам интерфейс допиливал уже на финише. Получилось мелковато как то... и вообще не фонтан. Буду переделывать.

Планы (в том числе и тасклист на следующий билд)

  • ПРОДОЛЖАТЬ РАЗРАБОТКУ ИГРЫ. Вне зависимости от результатов этого конкурса, мне очень понравилось заниматься разработкой. Поэтому буду стараться дальше прорабатывать механики и развивать игру в целом. Возможно когда-нибудь из нее и вырастет какой-нибудь полноценный коммерческий продукт.
  • Фиксим баги и вообще устраняем все текущие косяки, о которых говорил ранее
  • Графика. В спокойном уже режиме пойду моделить объекты и рисовать текстурки. С последним правда есть большие проблемы, но ютуб с видео-уроками еще никто не отменял.
  • Озвучка. Глухонемая игра - плохая игра. Я уже упомянул, что акценты при разработки делались в основном на игровые механики, но это не значит, что озвучивание игры надо постоянно переносить на потом. Одна из приоритетных задач на следующий билд.
  • Найти единомышленников. Если честно, за последние пару суток я, мягко говоря, ОЧЕНЬ притомился. Делать все и сразу одному очень тяжело. Знаний и хард скиллов тоже катастрофически не хватает. Да и зная себя, прекрасно понимаю, что рано или поздно иссякнет мотивация, наступит апатия и я заброшу разработку до новых времен. Выход тут один - искать единомышленников, людей которые готовы чем то помочь, что то посоветовать, где то поддержать итд. Короче, работать в команде продуктивней, хотя и тут есть свои нюансы. В любом случае, если есть желание поучаствовать в проекте - пишите, буду рад))

Обо мне

Мне 30 лет и я из Питера. По образованию юрист, примерно тем же и занимаюсь по жизни. Ни каких вузов или курсов по программированию или тем более геймдеву никогда не заканчивал, все знания что к настоящему времени наковырял - все за счет самообучения по разным ютубам и тематическим сайтам. Наверное, последние пару лет катастрофически не хватало какого нибудь хобби, которое поможет отвлечься и переключить голову от текущих проблем и работы. Выбор как то странно сам пал на программирование. Правда, все что до сегодняшнего дня делал, все исключительно в прикладных целях для себя любимого. Программки там всякие, CRM'ки ускоряющие мой рабочий процесс, несколько сайтов, весьма любительского качества итд... Но главное мне сам процесс творчества и разработки (в моем понимании - ваяния) своего творения мне приносит удовольствие. Относительно недавно обратил внимание на Unity. Посмотрел и почитал кучу туториалов. Подвигал кубики-шарики в сцене, разобрался с основными механиками движка и... опять начал делать всякие программки-полезности для себя. оказалось в Unity очень удобно работать с графикой и если мне раньше на создание каталога фотографий уходило уйма времени, то тут все делается гораздо быстрей, а главное красивей. И все бы хорошо, но угораздило меня на ваш Джем набрести... "А почему бы мне не попробовать сделать игру" - подумал я... и понеслось)))

При принятии решения участвовать в конкурсе и разработке концепции прототипа я руководствовался следующим:

  • требуется создать ПРОТОТИП а не игру. Отсюда делаем вывод, что главное показать основные механики, на которые разработчик делает акцент.
  • " Джем направлен на молодых разработчиков — то есть тех, у кого за плечами либо несколько небольших проектов, либо нет вообще ". Эта постановка вопроса идеально мне подходит))
  • Тема Джема: "игры, которые оказываются не такими, как кажется сначала ". А вот тут остановлюсь поподробнее. На мой взгляд, хотя организаторы и говорят при объявлении темы конкурса, что "нам не хочется сильно ограничивать творчество участников, поэтому тема у джема широкая ", но к данной теме нельзя подходить спустя рукава! В теме как раз говорится о том, что надо придумать что то оригинальное, не такое как у всех, при этом прилично завуалировать смысл игры вначале и раскрыть изюминки механик игры в процессе. Честно говоря, над этим вопросов, я мучился дольше всего. В итоге выбор пал на альтернативное управление с использованием технологий захвата и треккинга движений и Дополненную реальность.

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

Еще раз большое спасибо за внимание, с уважением, Mak Ruder.

UPD: Уже после релиза выяснилось, что .APK файл с игрой не везде хочет устанавливаться. На каких то устройствах вообще проблем нет, на каких то отказывается ставиться, на каких то первый раз ставится, но если игру удалить, на второй раз выдает ошибку. Я пока разбираюсь, проблему пока не нашел. Если есть идеи, в чем может быть проблема, прошу помочь в комментах.

UPD2: Частично проблему пофиксил. Теперь приложение при первой установке ставится корректно. Однако, если его потом удалить, то при повторной установке выдаст ошибку "Приложение не установлено". Ну, во всяком случае теперь вы хотя бы сможете оценить результаты моих трудов. Проблему пофиксю в следующем билде.

6464
19 комментариев

AR мод и распознавание лиц выглядят очень круто.
Жесть ты заморочился.

10
Ответить

Ваще офигенно.
Столько интересных фишек, да еще и на две платформы.
Респектую и качаю на Андрюшу.

5
Ответить

Блин, в попыхах залил на Яндекс старый билд((( Славу Богу заметил сейчас это. Перезалил. Если уже скачали, перекачайте, пожалуйста. И спасибо за ваш отзыв, надеюсь после ознакомления с демкой ваше мнение не изменится )) Все, я спать))

5
Ответить

Ты крутой!

3
Ответить

Комментарий недоступен

2
Ответить

Комментарий недоступен

2
Ответить

Забавно.
Тоже юрист, тоже из питера, возраст схож и пытаюсь делать игры, так как обычная работа надоела.

2
Ответить