Перевод Отчёта Разработки DayZ Standalone за 4 апреля

Перевод Отчёта Разработки DayZ Standalone за 4 апреля

Добрый вечер выжившие! На этой неделе Виктор поделился второй частью своего видеоролика «Вопросы и ответы». Мы успели многое рассказать на недавней конференции разработчиков игр в Праге, Питер продемонстрировал пример новой визуализации повреждений автомобилей, которая появится в бете, также мы с Адамом, обсуждали новый лес и как сильно он будет отличатся от старого! Помимо всего этого, у нас есть ещё Мирек, рассказывающий о еще одном важном этапе, которого мы достигли с нашей новой технологией. И Бетти (Менеджер комьюнити) вспоминает довольно крутую первоапрельскую шутку от одного из подписчиков нашего сообщества.

Eugen:

Обычно я не делаю отчёт о разработке, но как получилось что Брайан на этой недели много отсутствовал в офисе, и я могу затронуть тему развития DayZ и общего развития раннего доступа.

Ранний доступ — это очень динамичная среда, которая существенно отличается от традиционной закрытой разработки.

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

Все эти изменения в движке, в случае DayZ Standalone, сделаны с целью сохранить игру на всех её уровнях с расширенными возможностями. Изменения в движке для DayZ включают:

  • Средство визуализации (рендер)
  • Сетевая система
  • Управление
  • Скрипты
  • Звуки
  • Физика
  • Инструменты движка игры
  • Архитектура «сервер-клиент» (в большинстве систем)
  • Консоль
  • Анимации
  • Все системы геймплея написанные в inscript

Нам нужно работать над всем этим. Пока мы создадим необходимые данные и поверхностно протестируем их, пока мы перенесем все системы в саму игру (экспериментальные сервера / стабильная ветка DayZ), чтобы протестировать их более подробно. Этот процесс создает определенную нехватку видимого прогресса. В наши дни большинство базовых систем давно находятся внутри игры, и мы тратим довольно большое количество времени, на удаление многих старых систем, для того чтобы внедрить новые.

Сейчас игра работает со старой системой физики, из за которой, на производительность сервера идёт очень большая нагрузка. Чтобы заменить её, мы в основном должны переделать все прочее, так как многие старые системы, были “глубоко” закодированы в движке игры. Для начала нам нужно переделать из цельного блока (определённой системы), где все старые подсистемы взаимосвязаны, в модульную. Мы почти начинаем с нуля. Большинство из новых систем, упомянутых выше, не были еще частью игры, из-за этой сильной зависимости в старой структуре движка (его системных блоков (частей)). У каждой проблемы в DayZ есть свои причины. Большинство проблем, которые беспокоят вас, нам известны и их решение находится в работе, которую мы уже проделали, и хотим донести её до вас. Всем известный баг с лестницей, она частенько могла убить вашего персонажа, это могло произойти в связи с многими факторами: проблемы с бинаризацией данных, физикой, архитектурой сервер-клиент, ошибкой скрипта и самим игроком.

Чтобы исправить «простую» проблему, нам требуются годы работы, потому что мы не можем просто так взять проблему и быстро решить и “врезать” её в игру, чтобы сэкономить один день. Мы играем на “дальние дистанции”, а не ради краткосрочной выгоды.

Многие вещи требуют времени. Вы не можете купить терпение. И я сейчас понимаю, что работа, которую мы проделали, не в состоянии сделать игру более увлекательной.

Как звуки игрока должны звучать в будущем:

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

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

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

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

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

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

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

Viktor:

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

Peter:

После публикации нового инвентаря, мы постоянно добавляли и реализовывали новые функций, которые напрямую связаны с нашим амбициозной “реконструкцией”, а именно как система работает с действиями пользователя, крафтинга, вложений и управлением предметов.

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

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

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

Mirek:

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

Теперь нам просто нужно связать существующие игровые функции с новыми действиями игроков и AI-существ, а также решить такие проблемы, как например: толкание игроков зомбями и т.д.

Система взаимодействия с игровой средой, теперь также сильно модифицирована. В текущем обновлении 0.61 (и будущих 0.62) клиентская сторона запрашивает серверную сторону, о возможных взаимодействиях и только потом сам сервер возвращает список этих возможных действий. В 0.63, мы решили перенести возможность получать список действий на сторону клиента, так что теперь запаздывания начала действия практически не будет, и между клиентом и сервером будет проходить значительно меньше сетевого трафика.

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

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

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

Adam:

Мы серьезно продвинулись в процессе над выпуском 0.62 патча DayZ Standalone. Эта задача ориентирована на то, чтобы все новые их части, сливались воедино и выглядели правильно и реалистично. В дополнение к этому, мы также используем функцию colorization, которая приносит много нужного цветового разнообразия между отдельными растениями.

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

На первой картинке вы можете сравнить ее с текущей версией Чернорусии (0.61):

До:

После:

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

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

До 0.62 патча DayZ Standalone хвойные Леса были только одного типа, с большими старыми Елями.

Начиная с 0.62 патча хвойные леса будут состоять из разных елей, вплоть до очень молодых как на скрине — Делается это для того чтобы было ощущение что в Черноруси активно вырубался Лес местными жителями!

На данном скрине вы видите Лес возле Дьявольского Замка, где по задумке Разработчиков вырубка Леса шла очень активно в Черноруси!

Перевод: Arthur Naumoff

Не забудьте подписаться на наш Паблик VK https://vk.com/dayzilla — Там всегда вся самая свежая информация по DayZ Standalone.

  • Владислав Лазарев

    Я вас умоляю, перестаньте писать ЧернОрусь! (ЧернАрусь, БелАрусь). Глаза режет.