ALT: City Online. Как я в одиночку создавал «GTA Online» для мобильных устройств. Часть 1

Возможно ли в здравом уме замахнуться на подобный проект в одного, и надо ли оно вообще? Спойлер: да (Длиннопост с картинками и видео)

В закладки
Слушать
ALT: City Online

Предыстория:

Разработкой программных продуктов я занимаюсь уже 6 лет, начинал с разработки приложений для iOS. После выпуска нескольких приложений, которые в общей сумме принесли около $500, решил попробовать себя в разработке сайтов и настройке рекламы. В этой сфере я проработал 3 года, и понял, что создавать сайты - не то, чем мне хотелось бы заниматься в жизни. Так как с детства я очень любил игры, решил рассмотреть геймдев как будущую нишу, где хотел бы себя попробовать. Сделал бесплатную игру на SpriteKit (фреймворк Apple для создания 2D игр), начал знакомиться с инструментами для разработки игр. Решил подробно изучать Unity, так как он мне показался оптимальным вариантом для разработки именно мобильных игр. Выпустил в AppStore и в Google Play простенькую игру на Unity, и естественно поиграли в нее условно 3 с половиной человека. Это меня не особо остановило, так как цель разработки этой игры была в основном в том, чтобы познакомиться с процессом разработки в Unity и запуском игры именно в Google Play. Эти цели были выполнены, можно было двигаться дальше. Я начал уже более тщательно изучать Unity: 3-4 часа в день стабильно проходил Advanced курсы по разработке. Думаю, что мне повезло - попался действительно подробный и толковый курс по созданию RPG в Unity, и многое, особенно различные best-practices, я узнал именно из него. В это время мне подвернулась вакансия в одной крупной компании-разработчике мобильных игр, решил попробовать. Проработал там 3-4 месяца. Это была моя первая работа по найму. До этого вполне успешно работал только на себя. После определенного времени я понял, что это не мое. Надо отдать должное - компания предоставляла максимальные удобства для работы. И вообще поразило то, насколько у нас в стране (живу в России, в городе миллионнике) может быть крутое отношение к работникам. Ни в коем случае не хочу сказать, что в других компаниях плохое отношение, просто то что я наблюдал - это очень круто.

В общем, после ухода с работы пришло понимание, что хочу попробовать создать действительно интересную и уникальную игру (наверное термин “уникальная игра” не совсем вяжется с концепцией игры-аналога GTA Online, но об этом дальше). С детства я обожал серию GTA - играл десятками часов напролет в GTA Vice City и GTA San Andreas, ставил моды, крутил параметры машин. Потом после выхода GTA IV все то же самое делал с ней. Потом GTA IV: Episodes from Liberty City, GTA V. И естественно GTA Liberty City Stories, GTA Vice City Stories, GTA Chinatown Wars для PSP. Также было потрачено куча часов в других подобных играх - Saints Row, Godfather 2 и т. д. Эх, хорошие были времена...

Так вот, потом я познакомился уже с различными Role Play проектами, основанными на GTA. Но знакомство с ними, к сожалению, уже происходило через YouTube, так как работа стала занимать практически все время, а найти 30 минут в день на ролик - не проблема. Считаю, что RP проекты создали очень интересную нишу, и вообще переосмыслили GTA.

RP проекты создали очень интересную нишу, и вообще переосмыслили GTA

Как я уже сказал выше, свободного времени становилось все меньше, и я захотел поиграть во что-то по типу GTA Online / GTA RP на телефоне - благо сегодня телефоны действительно мощные, и по идее что-то подобное можно реализовать (например тот же PUBG, который отлично работает на практических любых устройствах). Каково было мое удивление, когда в AppStore я нашел буквально 3 игры, которые хоть как-то можно было отнести к “аналогам GTA Online”, да и те - ужасные. Вот так и появилась идея создать первый аналог GTA Online для устройств на базе iOS и Android.

ALT: City Online

Альт Сити

Геймплей в ALT: City Online - это смесь классической GTA Online и ее Role Play модификаций. В самом начале игры ты появляешься в стартовой точке (предполагается, что это будет либо вокзал, либо аэропорт). Твоя задача - найти работу и начать зарабатывать деньги и опыт. По мере получения опыта, тебе будут открываться новые профессии. Список профессий будет широкий, и я сейчас работаю над тем, чтобы сделать геймплей каждой профессии максимально интересным насколько это возможно. Далее ты сможешь купить себе квартиру, мотоцикл, потом дом, машину, машину получше - в общем все, кто играли в GTA RP, знакомы с этим. Фишка игры заключается в том, что в сессии, в отличии от классической GTA Online, будут сотни человек, ты сможешь взаимодействовать со всеми - разговаривать, наносить урон, кооперировать, обмениваться вещами, продавать вещи.

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

Но главное отличие от RP проектов - в ALT: City Online нет классической для таких проектов консоли, нет администраторов, не нужно “отыгрывать РП”. Ты можешь, но не обязан.

Площадь карты в игре около 225 квадратных километров, но примерно треть площади покрыто водой, так что “эффективная” площадь равна примерно 150-160 квадратным километрам. Естественно, наполнить такой большой мир контентом в одиночку достаточно сложно, поэтому игра будет наполняться контентом в последующих обновлениях.

Важно то, что игра будет работать не только на последних топовых девайсах. Например, если говорить об iOS, то минимально поддерживаемое устройство - iPhone 7. Вообще, основным “боттлнеком” оптимизации игры стала непрозрачность потребления памяти на iOS платформе (это известный недостаток Unity, с которым на данный момент мало что можно сделать), из-за чего было достаточно сложно оптимизировать огромный открытый мир для работы на маленьком устройстве с 2 гб оперативной памяти.

Какие вопросы предстояло решить:

В первую очередь надо было вообще понять, возможно ли реализовать мобильную онлайн игру в большом открытом мире на Unity? Соответственно, был куплен простенький генератор города для Unity, контроллер персонажа, скачаны бесплатные модели оружия и автомобиля и кое-как настроен клиент сервер (вопрос реализации мультиплеера решался достаточно долго, так как официального решения от Unity нет, а фреймворков много, и они очень отличаются, расскажу о сетевой архитектуре подробнее в одной из будущих технических статей). Спустя две недели был готов достаточно играбельный прототип. То есть был запущен тестовый сервер игры на виртуальном сервере, установлены клиенты на телефоны друзей. Мы подключились, поиграли - все отлично работает для прототипа, все довольны. Провел стресс тест, получилось, что минимум 100 игроков сервер точно держит. Для игры это достаточный минимум, но вообще, цель - 600-1000 игроков на сервере (то есть столько игроков будет одновременно в сессии). В общем, пришло понимание, что Unity очень даже подходит под этот проект.

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

Далее нужно было понять, как быть с 3D моделями? А их нужно было действительно много - здания, автомобили, различные пропсы, одежда, оружие. И самое главное - как смоделировать сам мир: ландшафт (террейн), дорожную сеть, город? Написал подробный список всех нужных объектов. Потратил неделю на поиск нужных моделей по списку, и понял, что в принципе все что нужно есть в магазинах 3D моделей.

Сделаю отступление - надо понимать, что я занимаюсь проектом с декабря на фул-тайме (по 10-12 часов в день, без выходных), а практически все средства, отложенные за прошлые годы, я тратил на покупку различных инструментов и 3D моделей. Думаю, это снимет многие вопросы по поводу того, почему на некоторые этапы потрачено “мало” времени.

Все, что я написал выше, произошло в период с декабря прошлого года до февраля текущего. Начал работу над проектом в декабре, то есть за три месяца был протестирован прототип, написан диздок, найдены ресурсы для реализации идеи. Вопрос оставался за малым - все это сделать и собрать в кучу.

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

Текущее состояние проекта

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

Небольшой береговой городок на другой стороне Альт Сити

Для альфа релиза осталось доработать базовые механики, добавить работы, добавить контент (автомобили, одежду), добавить UI и все это хорошенько протестировать.

Скриншоты

Хочется отметить, что все скриншоты сделаны прямо в движке на высоких настройках графики. То есть именно так выглядит игра на высоких настройках графики на девайсе.

Заключение

Спасибо, что дочитали данный пост до конца. Это мой первый опыт написания статьи, так что буду рад фидбеку. Это первая статья из цикла, посвященного скорому релиз игры ALT: City Online. Последняя статья этого цикла будет новостью о релизе игры :) Так что, пожалуйста, пишите, про что хотели бы почитать в будущих постах.

Огромная просьба ко всем, кого заинтересовал проект: скоро мы начинаем открытые альфа тесты в онлайне на Android и iOS, поэтому вступайте в группу ВКонтакте, чтобы узнать, когда начнется альфа тестирование. Тем самым вы очень поможете развитию проекта. Всем тестировщикам естественно полагаются жирные игровые призы сразу после релиза проекта :)

Также подписывайтесь на Twitter, там будут выкладываться новости, а также актуальные фото и видео о разработке: @AltCityOnline

На сайте ALT: City Online вы также можете оставить свой email. На него придет оповещение, когда игра будет доступна для загрузки. Всем, кто оставил свой email на сайте, так же положен жирный бонус при запуске игры!

{ "author_name": "Никита Покручин", "author_type": "self", "tags": [], "comments": 50, "likes": 43, "favorites": 54, "is_advertisement": false, "subsite_label": "indie", "id": 213646, "is_wide": false, "is_ugc": true, "date": "Sat, 19 Sep 2020 18:14:15 +0300", "is_special": false }
Объявление на DTF
0
50 комментариев
Популярные
По порядку
Написать комментарий...
4

ты крутой и упоротый. Держись, будет больно.

Ответить
0

Спасибо))) Да, разработка дается не без боли конечно

Ответить
4

Ну, как говорится: " Страшны не первые 80 процентов разработки, а следующие 80". Но вообще круто выглядит)

Ответить
0

Да, уже сколько раз с этим сталкивался 😂 Посмотрим, надеюсь в этот раз расчёт все-таки плюс минус правильный

Ответить
3

Абзацы бы покороче, мы ж поколение твиттера — сжалься,)

Ответить
1

Учту, спасибо! Сам обычно люблю длинные посты читать, поэтому решил побольше рассказать :)

Ответить
5

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

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

Короче, много маленьких блоков текста читаются в разы легче и комфортнее, чем мало, но больших.

Ответить
1

Да, особенно с телефона куски огромными кажутся кстати. Действительно надо было бы подразбить еще на блоки. Отметил себе)

Ответить
5

Дело не в длине поста, а в удобстве чтения.

Ответить
1

Очень много играл в gta samp и вижу, что это неплохая попытка сделать что-то похожее. Доступность на ios - это хорошо. Еще предстоит большая работа, желаю удачи с проектом. Если понадобиться помощь с дизайном, можешь обратиться, постараюсь помочь)

Ответить
1

Да, работы еще много, но основной объем на данный момент выполнен, не без кучи проблем конечно) А каким именно дизайном занимаешься?

Ответить
1

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

Ответить
1

Могу ток пожелать удачи в развитии проекта и успеха после его релиза)

Ответить
1

Спасибо большое :)

Ответить
1

Если нужна будет сюжетка на криминальный квест, то могу помочь :)

Ответить
1

Я думаю, что вполне вероятно, что с обновлениями возникнет идея добавить что-то такое, так что контакт отметил, спасибо)

Ответить
1

А зачем нам ещё один самп, этих серверов хоть жопой жуй, ну ок тип другие механики и локации но это все тот же самп только в другой обложке
И уже есть модаут 2 (типо гта 5) на андроид, там и карты другие и не только рп сервера, только вот он ху*ня полнейшая, боюсь с этим проектом произойдёт тоже самое
Чел, если начал делать то делай до конца, удачи ✌️

Ответить
0

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

Проект обязательно будет доделан до конца и уже в самое ближайшее время. Год фуллтайма это не просто так) Спасибо, можешь вступить в группу и надеюсь убедишься, что это не «ещё один самп»)

Ответить
0

Отвечай честно - насколько баланс заточен под монетизацию?

Ответить
2

Отвечаю честно - баланс будет существенно дружелюбнее, чем на крупных РП проектах на ПК. Там прям перебор. Но кстати тем не менее их сервера переполнены, людям интересно играть

Ответить
0

Хороший ответ. Записался на тест. Про пк версию не думал.

Ответить
0

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

Ответить
0

Да, для начала надо одну версию до ума довести. На айос через тестфлайт? Примерный месяц начала?

Ответить
0

Да, тестфлайт. Планирую - 1-10 ноября, то есть совсем скоро. 

Ответить
1

ок. буду ждать. попозже еще попристаю с вопросами ибо после игр на ГТАшных РП серверах отметил для себя некоторые неприятные моменты. 

Ответить
0

Буду только рад, если поможешь советами, всегда в лс можешь писать если что) 

Ответить
0

для начала надо разобраться с мобильными. ПК версию я в одного точно не потяну

звучит как заблуждение. На мобилках всё сложнее делать: и перфоманс, и управление, и геймдизайн. Только графика попроще, и то относительно.

Ответить
0

Да, на мобильных это сложнее, а где я с этим спорю собственно?

Ответить
0

с этим спорит построение твоих фраз

Ответить
1

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

Я написал, что взять ещё дополнительный объём работ по переносу клиента на пк я не осилю, а не то что на пк делать сложнее чем на мобильные.

Ответить
0

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

Ответить
0

Будет ли общественный транспорт или телепорты до работы? Необходим ли гараж или квартира для покупки авто? Конечно ли число доступных для покупки квартир, гаражей, машин.

Ответить
0

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

Ответить
0

Сколько у школотронов отжал с обедов? Сколько булкину и между занёс за промо?

Ответить
1

Так еще игра не вышла же - пока только у себя с обедов отжимаю)))

Ответить
0

Прикольно. в стиме выпусти за 8 $. Будет успех. 

Ответить
1

Игра будет бесплатная, это стандарт для этого жанра, думаю игроки не поймут, если за это деньги просить, но спасибо за совет! :)

Ответить
0

А кагда можно скачать её ты очень классна придумал 

Ответить
1

Спасибо! Игра будет доступна в Play Маркет и AppStore ориентировочно в декабре, открытые тесты начнутся уже 1-10 ноября. Если интересно принять в них участие, вступай в группу игры ВКонтакте, там появится информация, как это сделать)

Ответить
0

Если что у сайта кривая вёртска (можно в сторону скроллить)

Ответить
0

Странно, у меня вроде не скроллится в бок вроде... 

Ответить
1

 ошибка в body width: 100vw т.к. появляется вертикальный скролл

Ответить
0

На какую вместимость рассчитан 1 сервер?

Ответить
0

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

Ответить
0

Не знаю что написать я просто не могу войти на сайт этой игры. 

Ответить
0

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

Ответить
0

Проект готов к альфа релизу на 85%.

фига наивный
и надо ли оно вообще? Спойлер: да

слишком рано ответил на вопрос, спойлер совсем в другом

Ответить
0

Время покажет)

Ответить
0

Что тут сказать, лучше чем автор сего опуса и не скажешь "Твоя задача - найти работу и начать зарабатывать деньги и опыт. " LMAO

Ответить
0

В данном жанре это действительно одна из основных задач, что не так? 

Ответить

Комментарии

{ "jsPath": "/static/build/dtf.ru/specials/DeliveryCheats/js/all.min.js?v=05.02.2020", "cssPath": "/static/build/dtf.ru/specials/DeliveryCheats/styles/all.min.css?v=05.02.2020", "fontsPath": "https://fonts.googleapis.com/css?family=Roboto+Mono:400,700,700i&subset=cyrillic" }
null