Перевод Отчёта Разработки DayZ Standalone за 8 марта

Перевод Отчёта Разработки DayZ Standalone за 8 марта

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

Отчет разработчика / Хикс

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

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

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

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

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

Кроме того, мы отслеживаем и исправляем такие баги как:

  • Падение производительности серверов (связано с машинами)
  • Баг связанный с невидимыми игроками

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

Брайан Хикс / Креативный Директор

Отчет разработчика / Питер

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

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

Хоть эта система и работает весьма неплохо, в ней есть и свои минусы, например, практически невозможно определить куда попадет удар и попал ли он вообще.

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

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

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

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

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

Питер Неспешний / Ведущий Дизайнер

Отчет разработчика / Виктор

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

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

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

Виктор Костик / Ведущий Аниматор

Отчет разработчика / Мирек

Сегодня я не буду говорить о 0.63 патче, мы все еще работаем над задачами, обозначенными в прошлый раз, но раз мы вернули машины на 0.61 патч, необходимо уточнить некоторые моменты. Я бы хотел описать некоторые текущие ошибки и как мы их будем исправлять.

Для начала, нужно обозначить разницу в поведении машин в Arma 2 и DayZ MOD. Есть два самых больших изменения:

1. Физика

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

2. Сетевой Код

На данный момент игра использует архитектуру client-server вместо peer to peer, и с 0.61 патча вся ответственность за связь между игроком/машиной полностью лежит на сервере, что предотвращает любой читинг (телепортацию/полет/спидхак).

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

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

Как вы уже могли понять, машины в DayZ Standalone сильно отличаются от машин в ARMA и DayZ MOD, что является причиной многих ошибок. Машины вышли на экспериментальную ветку 21 декабря, сразу после выхода 0.61 патча. Мы надеялись что это поможет удержать игроков на эксперименталке, но мы ошиблись, на данный момент экспериментальные серверы почти пусты.

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

Мирослав Манěна / Ведущий Геймплейный программист

Перевод: Андрей Жарков
Под редакцией: DayZilla

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