Еженедельный отчет [#21]

Вступительное слово

Приветствуем, друзья! Приближается 28 июля, когда на тестовых серверах впервые за последние 8 месяцев разработки будет запущено первое крупное тестирование обновленной архитектуры проекта. Мы много писали о нашей работе, о трудностях, с которыми мы столкнулись в 2016 году, и о причинах задержки обновления. Несмотря на это, нам продолжают поступать вопросы на данные темы. Мы прекрасно понимаем интерес игроков и их опасения, в связи с чем хотели бы еще раз поговорить о состоянии проекта и нашей команды.

Где обновление?

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

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

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

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

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

Остальные же варианты, вроде продажи компании или роспуска команды и максимального «выдаивания» умирающего проекта, мы попросту не рассматривали.

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

В ходе продолжительных переговоров, в конце ноября 2016 года нам удалось привлечь к разработке двух талантливых программистов, уже имевших опыт создания онлайн игр – это Володин Дмитрий и Черных Мария. С нами по-прежнему работал Блинцов Александр, который с июля 2016 года успешно выполнял функции блупринт-программиста. Помимо этого, ряд различных сложных задач, связанных с анимационным блупринтом, взял на себя наш ведущий аниматор Гертанов Андрей.

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

По итогу, за прошедшие 8 месяцев работы нам удалось создать основу обновленного проекта, куда вошли:

  • создание кластера Linux серверов с автоматическим поднятием игровых зон;
  • создание сервиса авторизации;
  • интеграция SDK steamworks в игру;
  • настройка билд-сервера для сборки и выкладки игровых серверов;
  • настройка новой системы контроля версий и документооборота;
  • реализация веб-интерфейса для мониторинга активности серверов в режиме реального времени;
  • создание PostgreSQL базы данных и реализация связи БД с игрой;
  • реализация поднятия индивидуальных и групповых инстанс-зон для игроков;
  • реализация беззагрузочных переходов в открытом мире между серверами;
  • реализация новой системы кастомизации персонажей, включая работу голов с открытыми шлемами, различные расы, десятки татуировок, причесок, шрамов;
  • создание системы смены времени суток, куда вошло изменение плотности атмосферы, солнца, тумана и множества других параметров;
  • реализация новой системы агро мобов, рассчитанная на различные роли игроков в группе;
  • реализация нового искусственного интеллекта для копателей с уникальными умениями и отстреливаемыми частями тела;
  • создание уникальных систем частиц для умений, выстрелов, попаданий по поверхностям, особых атак копателей и разрушения логов;
  • создание физасетов для брони и мобов;
  • создание физматериалов для различных поверхностей;
  • реализация нового искусственного интеллекта для рейдеров, которые научились использовать гранаты и прятаться за укрытиями;
  • реализация системы жизни НПЦ, в которой создано множество типов точек поведения. Неигровые персонажи научились ходить по Ковчегу и уходить спать в определенное время суток. Отдельно стоит отметить, что проведена большая работа над оптимизацией, т.к. симуляция более 300 жителей Ковчега давала огромную нагрузку на процессор сервера;
  • создание более 50 уникальных лиц НПЦ;
  • переработка механик босса Королевы копателей;
  • реализация нового интерфейса, с учетом аддитивной верстки под разные форматы экранов;
  • переработка анатомии базовых персонажей;
  • добавление костей для мимики лица в скелет гуманоидов и реализация рескининга голов части персонажей;
  • создание системы экипировки персонажа;
  • значительная переработка материалов и текстур брони, оружия, НПЦ и мобов;
  • реализация более 3000 дата-ассетов брони и оружия;
  • создание новой системы боя;
  • полная переработка баланса предметов. Количество уникальных геймплейных предметов расширилось более чем в 3 раза;
  • увеличение открытого мира игры до 100 квадратных километров;
  • создание в открытом мире новых биомов со своим набором уникальных объектов, материалов, текстур, растений;
  • доработка инстанс-локаций: Ковчег, Пролог, Убежище рейдеров, Арена;
  • создание инстанс-локаций: Пещера копателей, Свалка, Зараженный улей, Исследовательский лагерь ренегатов;
  • создание огромного количества новых моделей окружения;
  • переписывание более 200 квестов, включая различные способы их прохождения;
  • добавление новых сюжетных и дополнительных квестов;
  • добавление сотен диалогов между НПЦ;
  • реализация системы исследования объектов в мире;
  • реализация основы системы диалогов между игроком и НПЦ;
  • полная переработка контроллера персонажа и его анимационного блупринта;
  • создание с нуля более 400 анимаций для женского персонажа;
  • создание дизайна новых видов мобов, высокоуровневой брони и средств специальной экипировки, которая теперь получит более глубокую роль в развитии персонажа;
  • создание необходимых анимаций для режима персонажа с дробовиком и снайперской винтовкой;
  • внедрение системы локализации (самой локализации еще нет – присутствует только русский язык);
  • создание с нуля анимаций для всех копателей и догов с учетом их геймплейных особенностей;
  • создание множества новых анимаций для неигровых персонажей.

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

Огромную часть времени занял вопрос реализации сетевой архитектуры, и до сих пор большая часть времени ведущих программистов уходит на исправление возникающих ошибок. В данный момент мы имеем техническую альфу с готовой базовой сетевой инфраструктурой, которую нельзя было бы показывать игрокам, будь мы крупной студией. Но реалии таковы, что игра создается при вашей поддержке, и вы должны иметь возможность наблюдать за развитием проекта на всех стадиях. Именно для этого мы каждую неделю отчитываемся о проделанной работе, и именно поэтому 28 числа мы запустим PTS тестирование, где каждый желающий не только сможет вживую увидеть нашу работу, но и поможет нам в кратчайшие сроки начать обновлять текущую Стим-версию игры. Мы осознаем, что часть аудитории выразит резкий негатив по отношению к текущей технической альфе. Многие не прочитают данный текст и не ознакомятся с предупреждением в игре, которое мы будем выводить для всех желающих протестировать PTS. Многие не прочитают отчет №16 от 19.06.2017, где мы по пунктам перечисляем, что будет включено в PTS версию 28 числа, и будут ждать завершенный проект с космосом и ПвП. Многие не читают три различных предупреждения на главной странице магазина, помимо еженедельных аналогичных предупреждений в новостях, призывающих не покупать игру, если игроки не готовы к ранней версии проекта. Но мы в первую очередь нацелены на создание хорошей игры и выполнение обязательств перед игроками, которые поверили в нас и остаются с нами. Подавляющее большинство наших игроков являются настолько грамотными и терпеливыми людьми, что это заставляет нас самих постоянно совершенствоваться. Мы не хотим подводить и обманывать таких людей, мы активно продолжаем разработку и ждем всех, кто действительно хочет покопаться в проекте на его ранней стадии, на наших тестовых серверах 28 июля.

Инструкции по доступу к PTS будут размещены отдельной новостью на странице Стима, официальной странице игры и в социальных сетях непосредственно в день запуска тестирования – 28.07.2017.

Спасибо, что вы остаетесь с нами и помогаете нам делать проект лучше!

Теперь же мы можем перейти к традиционному еженедельному отчету о проделанной работе.

Программная часть

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

Началась активная работа по созданию механик прокачки персонажа.

Работа над созданием базового искусственного интеллекта для рейдеров завершена.

Мир

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

Закончена доработка Исследовательского лагеря ренегатов.

Персонаж

Продолжается работа по созданию модели меха.

Противники

Созданы все необходимые базовые анимации для босса Королева копателей.

На этой неделе началась работа по созданию анимаций гнезд.

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

Созданы все необходимые эффекты для копателей. Эффекты выстрелов, умений, попаданий по копателям и эффекты разрыва некоторых частей тела.

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

Заключение

Мы продолжаем работу с отличным настроением и уверенностью в светлое будущее проекта. Мы ждем 28 число, и надеемся, что игроки серьезно отнесутся к текущему статусу игры и предстоящему тестированию технической альфы. Первое PTS тестирование очень важно для проекта, и на нем нам с вами необходимо будет в первую очередь выяснить состоятельность новой архитектуры, сетевой части, переходов между серверами, работу с базой данных и путь дальнейшей оптимизации мира. Мы обязательно подробно распишем о самых важных аспектах тестирования для тех, кто захочет помочь с выявлением багов. Тем же, кому просто любопытно взглянуть на обновленный мир, мы настоятельно рекомендуем отписываться о первом впечатлении на наших форумах. Что понравилось, а что нет, что вы ожидаете в первую очередь, а что можно сделать позже. Это очень поможет нам в дальнейшей разработке.

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