Дев-блог, №20

SPENCER
Добро пожаловать в 20-й Hurtworld Дев блог! На этой неделе не так много того, что я вам могу показать, Shigi Tools SDK для интеграции потребуется время.

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

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

Лаги автомобилей
Было не очевидно, почему автомобили настолько лагают (передвигаются рывками), когда всё остальное работает нормально.

У нас очень сложные системы компенсации лагов при передвижения игрока. Это ни в коем случае не из-за обычного FPS, его (лаг при передвижении) вызывала клиентская сторона прогнозирования. Это (среди прочего) заставляет сервер работать на пике CPU по каким-то причинам, потом догнать событие/действие и продолжать работать без клиента, показывая, что все в порядке. Единственный раз, когда вы видите лаги на клиенте в движении, когда сервер серьезно борется и ваш пинг превышает допустимый предел.

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

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

Эти пики CPU вызываются джиттером (сильные колебания пинга). Hurtworld более чувствителен к джиттеру, чем другие игры на выживания или ММО игры. Мы считаем, что когда мы получим хорошую производительность сервера, это позволит нам предоставить нашим клиентам гораздо более интересные и жесткие перестрелки, чем в играх, которые пытаются замаскировать большие пики CPU. Мы считаем, что мы очень близки к налаживанию производительности сервера, надеюсь этот патч поможет добиться хороших успехов.

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

Здесь только 2 решения: получить сервера со свободным управлением пиками CPU или переписать модель работы транспортного средства. Прямо сейчас мы следуем первому варианту, так как это принесет пользу всем аспектам игры и эта цель вполне достижима.

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

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

Программисты: исправить ошибки, реализовать функции изменения геймплея, балансировать предметы
Художники: рисовать концепт-арт, 3D-геометрию, иногда рисовать текстуры одушевленных существ
Battlemu1e: начинал как менеджер сообщества, сейчас мастер серверов и инфраструктуры. Следит за тем, что бы сервера были всегда онлайн.

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

MILS
Кто-то сказал рейд?

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

RaidDrill01.jpg


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

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

RaidDrill02.jpg


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

Изменения транспортного средства
Каждый игрок теперь может иметь свой личный автомобиль. Вы можете это сделать открыв инвентарь автомобиля и кликнуть но кнопке CLAIM(утверждено). Любой может водить утвержденный автомобиль и модифицировать его инвентарь. Утвержденные автомобили не исчезают если их оставить.
Неутвержденные автомобили будут самоуничтожаться. По умолчанию это будет занимать 3 часа
Вы можете демонтировать не утвержденные автомобили с помощью нового предмета- гаечного ключа. При демонтаже автомобиля будет падать лут.

Изменения долей собственности
Вы можете разместить не более 5 янтаря в тотеме, он будет медленно тратиться. По умолчанию один янтарь раз в 24 часа, хотя это настраивается на сервере владельцев. Это означает что через 5 дней тотем потеряет своего хозяина.
Как только в тотеме останется минимум янтаря, он создаст шлейф дыма, видимого издалека. Как только янтарь в тотеме закончится пойдет обратный отчет к разрушению и в конечном итоге уничтожит себя, тем самым сделает территорию ничейной.
Это сделано для того что бы игроки смогли разбирать заброшенные дома, для лёгких ресурсов. Будьте осторожны, это может быть ловушкой!
Мы думаем, что стоимость разумна, что даже соло игроки могут содержать пару домов, если они играют не каждый день. Это должно, также создаст некоторые области утверждения вокруг больших баз, которые становятся заброшенными и невостребованными.

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

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

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

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

GAVKU
Всем привет, я только что вернулся после нескольких недель отсутствия, чтобы догнать друзей, вот не много информации от меня сегодня. В настоящее время я работаю над станком с ЧПУ, который даст игрокам несколько вариантов крафта
1f609.png
делаю как в высокой, так и низкой полигонностью и в настоящее время я работаю над текстурами карты.

Ниже первоначальная концепция.
CNC_Concept2.jpg

А это скриншот из высокополигональных

CNC_HMAX.jpg


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

Этот процесс почти завершен, я уверен, что вы видели перенос серверов на новое оборудование, это практически идет в прямом эфире. На момент написания статьи сервера, которые не были перемещены на новое оборудование: все Гонконгские сервера, все сервера Сингапур, Нью-Йорк 1, 2 + 7 и Монреаль, но я практически уверен, что эти сервера будут на новом оборудовании к моменту вайпа (если что-нибудь случится, я обязательно отмечусь на reddit и расскажу о причинах. Может быть, стоит отложить запуск в этих регионах, но пока мы можем заверить вас, что вы не будете иметь дело с простоями проблемами из-за DDoS-атак). Между этими изменениями и улучшениями производительности сервера мы будем работать на rubber bending, как раз вовремя, перед следующем вайпом.

По теме вайпов, я буду внедрять некоторые изменения в расписание вайпов, имена серверов и количество серверов после следующего вайпа. В ответ на опасения, что нынешний график вайпов слишком долгий, начиная со следующего вайпа, они будут каждые 7 дней и 14 дней. В дополнение к этому, мы также будем предлагать сервера с полным лутом, вайпы на котором будут каждые 21 дня, и из-за значительного улучшения производительности сервера, мы также тестируем ‘infini wipe’ сервера. Эти ‘infini wipe’ сервера не будет иметь запланированного вайпа, вайпы будут как только этого потребует патч. Мы также отказались от отдельных стран для серверов и теперь сервера будут разделены по регионам (EU, EU Infini Wipe и т. д. в отличие Амстердам 1, 2 Амстердам…). Читайте на reddit полный список серверов, которые будут доступны после вайпа.

Я буду начинать переделывать эти сервера в 18:00 по местному времени, в пятницу, для каждого региона. Это должно дать каждому шанс начать новую игру после вайпа на равных (никаких больше преимуществ для полуночников). Из-за этого, я немного продлю расписание вайпов на текущих серверах. То есть текущие сервера будут работать приблизительно до 17:00 – 18:00 AEDT в пятницу и как только мы доберемся до 18:00 в каждом регионе регионы, сервера будут возвращаться. Чтобы убедиться, что этот процесс пройдет плавно, я буду в ручную запускать и мониторить сервера. Любые изменения или обновления я буду опубликовывать на reddit, так что не стесняйтесь заходить и поболтать во время ожидания вашего сервера онлайн!

DAZZLER
Я зараундил Дарт ( имя насекомого), сделал анимацию и Stateflow, Cowtrix будет работать над AI (искусственный интеллект) и реализацией в ближайшие недели. Они должны быть сложными существами, колебалась, как Токарь, имея стелс/псевдо-телепорт, роя норы. Я работаю сейчас над анимацией Осы.
 
Сверху