Breach and Clear
Обновление этого месяца приносит блокираторы монументов, разрушаемую броню штурмового вертолёта, узлы HQM, масштабирование содержания от размера группы, различные баффы предметов, изменения качества жизни и баланса, а также множество улучшений производительности и многое другое!
Ищите и выбирайте подходящий для игры сервер в нашем разделе серверов!
Блокираторы монументов
Блокираторы монументов — новое препятствие, которое добавляется на монументы с комнатами-головоломками с красной картой. Задумано, чтобы замедлить ранний доступ к луту на этих монументах. Чтобы разрушить их, нужно нанести значительный урон, но, будучи разрушенными, они не появляются снова. Также можно встретить несколько блокираторов послабее, которые разрушаются оружием ближнего боя.
Разработчики не думают, что это сильно повлияет на скорость прогрессии, но это может сделать ранний вайп чуть интереснее для тех, кто зашёл первыми.
Если их не разрушить в течение первых 24 часов, они начнут разрушаться сами.


Масштабирование содержания базы от размера группы
Начиная с этого месяца шкафы для инструментов теперь применяют дополнительный налог на содержание в зависимости от числа игроков на базе. При подсчёте этого числа учитывается несколько вещей:
- Все игроки, напрямую авторизованные в шкафу
- Все игроки, деавторизованные из шкафа за последние 24 часа
- Все игроки, авторизованные на кодовом замке на базе (включая гостевой доступ по коду)
- Все игроки, деавторизованные с кодового замка за последние 24 часа
Ставки содержания разбиты по уровням в зависимости от числа игроков:
- Первые 4 игрока не облагаются налогом
- Следующие 6 игроков дают 2% налога на игрока
Последующие игроки дают 4% налога на игрока. Это значит, что шкаф с 6 авторизованными игроками получит +4% к содержанию, а шкаф с 12 игроками — +20% к содержанию. Максимальный размер налога — 300%. Текущую применяемую ставку налога можно увидеть, наведя курсор на стоимость содержания при открытом шкафу.

Крупные группы игроков — хитрая проблема игрового баланса, ведь они по сути обходят большинство механик сложности в игре одной лишь численностью. Разработчики не хотят делать такой стиль игры нежизнеспособным — Rust это песочница, в которую лучше всего играть с друзьями, и играть в неё стоит так, как считаете нужным вы.
Есть надежда, что это добавит крупным группам интересную задачу, которую нужно решить, не в ущерб малым группам и одиночкам — ведь у последних, как считают разработчики, не так уж много интересных геймплейных задач.
Как обычно, за этим будут следить со временем и вносить правки по мере необходимости. Владельцы серверов найдут набор конваров в классе Decay, которыми можно менять это поведение, вплоть до полного отключения.
Узел и собираемый ресурс HQM
Рудные узлы и собираемые ресурсы металла высокого качества (HQM) теперь можно найти по всему острову. Они крайне редки, но найти узел HQM больше шансов в джунглях.

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

Как только батарея достигает 50%, маркетплейс может начать принимать покупки. Пока в электростанцию вставлен хотя бы один предохранитель, заряд не уменьшается, но если он падает ниже 50%, маркетплейс снова отключается.
Текущий уровень заряда виден на экране карты маркетплейса.
Медовый медицинский бинт
Медовый медицинский бинт — совершенно новый лечащий предмет на верстаке 1 уровня. Задуман, чтобы закрыть разрыв между обычным бинтом и медицинским шприцем, и даёт начинающим пчеловодам ещё один способ пустить в дело запасы мёда. У игроков с процветающими пасеками часто оказывается больше мёда, чем они знают куда деть, так что есть надежда, что новый предмет сделает излишки чуть слаще.


Условная броня штурмового вертолёта / воздушного шара
Разработчики услышали ваши отзывы — штурмовой вертолёт слишком трудно контрить.
Существующая броня кабины штурмовых вертолётов теперь будет отпадать поэтапно по мере получения урона, открывая и пилота, и стрелка. Пилотам теперь придётся аккуратнее выбирать, насколько близко подлетать к «солнцу».
Состояния брони штурмового вертолёта
- 80% левая панель — 680 hp
- 70% правая панель — 595 hp
- 60% передняя панель — 510 hp

Нельзя забывать и о бронированных воздушных шарах — у них тоже будет условная броня.
Состояния брони бронированного воздушного шара
- 90% левая панель — 2250 hp
- 80% правая панель — 2000 hp
- 70% задняя панель — 1750 hp
- 60% передняя панель — 1500 hp

За вашими отзывами, как всегда, будут следить.
Улучшения управляемости модульных машин
Разработчики немного занялись тем, как управляются модульные машины. Руление, повороты и подвеска подкручены, чтобы ощущаться лучше. Есть надежда, что также улучшилось то, как они едут у игроков с высоким пингом.
Помимо этого, добавлена механика ручника — активировать его можно клавишей CTRL. Теперь вы сможете проходить шпильки, входить в более крутые повороты, дрифтить и даже крутить «пончики».

Бафф радиоактивной воды в разбрызгивателях
Да: радиоактивная вода (Radwater) снова получает бафф. На этот раз ей дали крупный бафф при использовании в разбрызгивателях, особенно против тех, кто в броне.

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

Заметные изменения
В этом месяце внесён ряд более мелких изменений баланса по всем фронтам, часть из них закрывает болевые точки сообщества.
Переделка фонарика
Да будет свет!

В этом месяце фонарик получил новое обновление — совершенно новую высококачественную модель, текстуры высокого разрешения и новые анимации. Также обновлена функциональность: ПКМ включает/выключает его, прямо как у факелов. И вы даже получите разную анимацию осмотра в зависимости от того, включён он или выключен!
Переработка стрел
Стрелы освежили. Деревянные стрелы теперь обновлены, чтобы выглядеть интереснее (в комплекте с новым оперением) и ощущаться более «в духе RUST».
Под капотом это оказалось делом мудрёным: меш стрелы был вшит напрямую в каждое существующее оружие, так что понадобились обновлённые риги и префабы.


Если возникло чувство дежавю — вы правы. В прошлом девблоге это оставили по случайности. На этот раз оно точно в игре.
Новый workshop-скин: деревянная броня
Workshop-скин этого месяца — все четыре части деревянной брони:
- Деревянный нагрудник
- Штаны деревянной брони
- Шлем деревянной брони
- Перчатки деревянной брони
В этом месяце разработчики берут все четыре части деревянной брони — и ждут не дождутся, когда сообщество приукрасит workshop!

Чтобы создать собственные скины деревянной брони, зайдите во внутриигровой workshop и найдите перечисленные выше предметы экипировки деревянной брони. Оттуда можно скачать файлы моделей, добавить свои материалы и сделать что-то по-настоящему «древесное».
DLC «Хрустальная штурмовая винтовка»

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

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

Это сохраняется для каждого предмета отдельно, так что можно включить её для одних предметов и оставить конкретный скин у других.
Новый navmesh
В одном из прошлых патчей был представлен полностью новый navmesh, выключенный по умолчанию, доступный при запуске серверов с параметром командной строки -useNewNavmesh.
С тех пор производительность сильно улучшена, размеры сохранений уменьшены, а множество багов исправлено.
В этом патче он будет включён на части серверов разработчиков, чтобы понаблюдать, как он себя ведёт.
Цель — сделать его значением по умолчанию хотфиксом или в рамках следующего патча, если всё пройдёт хорошо.
Чего ожидать игроку:
- возможно, какие-то животные будут заходить на вашу базу или попадать в монументы
Чего ожидать владельцу сервера:
- navmesh сохраняется на диск и загружается при перезапуске сервера, что потенциально ускоряет запуск
- постоянная стоимость навигации NPC в реальном времени легче для главного потока, но использует больше фоновых потоков
Это часть курса на улучшение производительности и стабильности NPC в долгосрочной перспективе, а также на то, чтобы иметь возможность заставить разных NPC корректно перемещаться по базам игроков.
Улучшено сохранение серверных событий
Большинство серверов Rust следуют расписанию ежедневных перезапусков — это помогает стабильности и производительности сервера.
В идеале эти перезапуски должны быть быстрыми и никак не влиять на геймплей, чтобы игроки после перезахода просто продолжали заниматься своими делами.
До сих пор так было не со всеми крупнейшими событиями игры, например с нефтевышкой: если вам не повезло брать вышку в неудачный момент и вас прервал перезапуск сервера, все ящики с лутом и, что важнее всего, взламываемый запертый ящик просто исчезали.

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

Визуализатор кисти
В интерфейс рисования добавлена новая опция, которая проецирует текущую кисть на объект, который вы красите! Это должно сильно помочь, когда вы рисуете кистями разного размера и текстуры при разном приближении.
Мини-переработка обслуживания водоочистной станции
Бак под давлением и редукторы на водоочистной станции получили мини-переработку ради упрощения.
Каждый полностью прокрученный редуктор даёт 3 часа реального времени подачи воды в трубы. Максимального давления бака при прокрутке обоих редукторов хватает, чтобы трубы работали, как вы уже догадались, 6 часов.
Кроме того, количество воды, производимой трубами, теперь линейно зависит от давления в баке. Проверить давление можно в служебной будке, где стоит редуктор нижнего этажа.
Когда давление в баке заканчивается и вода не производится, трубы по всей карте тоже начнут терять воду.
Чтобы компенсировать часть потерь, увеличен выход IO. По расчётам, одна водопроводная труба должна примерно равняться 2 насосам, но с лучшей скоростью подачи IO. Количество труб на карте также увеличено, и расставлены они должны быть более равномерно.
Производительность — улучшения физики
В этом месяце физический движок (PhysX) допилен ещё сильнее и всё больше подгоняется под Rust. Добавлен совершенно новый режим широкой фазы (broadphase) на основе структуры BVH, которую применили и к нижележащим структурам для физических запросов.
Если по-простому, старые реализации этого масштабировались с числом коллайдеров в мире, которое постоянно растёт в течение вайп-цикла. Теперь они масштабируются больше с числом изменений, а оно зависит больше от числа активных игроков, и притом растёт куда медленнее.

Данные выше сравнивают выходные до обновления физического движка и выходные после; на этом конкретном сервере производительность удвоилась.
Как всегда, больше всего от этих изменений выиграет сервер, ведь он в целом делает намного больше. Однако и клиент всегда получит выгоду от этих изменений.
Производительность — многопоточность скриптов
Одно из ключевых правил Unity: вызывать скриптовые API нужно из главного потока. Так что такие вещи, как доступ к transform игрового объекта или даже к текущему времени (Time.time), должны выполняться в главном потоке. Из-за этого проталкивать параллелизм в игровой код очень неудобно, а иногда и ограниченно.
Но Unity применяет эти проверки только в редакторе и в отладочных сборках — в релизных сборках эти проверки вырезаются ради производительности. То есть теоретически можно писать код, который в редакторе играет по правилам, а в релизе — быстро и опасно, но проверять и отлаживать это было бы огромной головной болью.
В этом месяце удалось найти способ обмануть Unity, заставив его считать любой поток главным. Это позволяет унифицировать реализации и уверенно тестировать всё в редакторе. Так открывается путь к ускорению частей кода, которые раньше были недоступны — но это не бесплатный обед: у Unity может быть внутренняя синхронизация или устройство, не рассчитанное на конкурентное обращение (что может привести к багам). И код всё равно нужно дорабатывать, чтобы получить выгоду.
Для технических подробностей другим разработчикам/пользователям Unity: это процесс из 2 шагов — есть проверка на стороне управляемого кода только для редактора (Object.EnsureRunningOnMainThread), которую можно заменить заглушкой, и есть нативная переменная TLS, которую можно выставить с 0 в 1, чтобы сообщить Unity «это главный поток» (её можно вычислить, просканировав все TLS-переменные в главном потоке и найдя те, что хранят 1). У разных сборок и платформ будут разные расположения TLS, а также свои защиты памяти для прямой её модификации.
Ускорение параллельной генерации серверной окклюзии
Чтобы это проверить, механику опробовали на генерации серверной окклюзии — процесс проходит несколько фаз, и определённые шаги легко распараллелить. Это: семплирование высот меша террейна Unity и фильтрация результатов физических запросов на наличие компонента. В обоих случаях это по 2 однострочных цикла.
До: 44 с на мир 4,5k — параллелизм на нативных потоках есть только у оранжевых блоков, поэтому отображение управляемых рабочих потоков не включено

После: 22 с на мир 4,5k — синие точки на графике ниже это все занятые управляемые рабочие потоки

Справедливости ради, это не совсем сравнение «яблоко к яблоку»: пара правок сама по себе дала 8 с ускорения, так что реальное ускорение именно от использования асинхронных задач составляет 37 с → 22 с.
И насчёт того самого «бесплатного обеда не бывает»: у Unity, к сожалению, в ходу куча синхронизации, которая душит производительность:

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

Производительность — улучшения памяти
В этом месяце внесён ряд улучшений по памяти в разных частях игры:
- Снижено потребление памяти множеством объектов в мире — на каждом объекте совсем чуть-чуть, но в сумме это около 15k объектов / 10 МБ памяти меньше
- Уменьшен размер многих текстур окклюзии окружения (AO), что дало сокращение примерно на ~630 МБ почти без визуальной разницы; это повлияет на использование VRAM.
- Уменьшен размер текстур у далёких объектов — ещё экономия VRAM
Также выявлено ещё несколько областей для улучшения, которые должны реализовать в следующем месяце.
Раннее тестирование показывает солидную экономию памяти более 0,5 ГБ, но это будет варьироваться от машины к машине.

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

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

Новый интерфейс получает много исправлений и улучшений на основе отзывов внутренней команды трейлеров и сообщества. Кажется, он потихоньку доходит до состояния, когда его можно включить по умолчанию; до следующего патча вы можете поучаствовать в его тестировании командой demo.newui 1 в консоли.
Что до улучшений: исправлена куча проблем UX в интерфейсе, починена работа отмены (undo) с камерой на тележке, добавлен предпросмотр в режиме редактирования тележки, чтобы не приходилось слишком часто переключаться между двумя видами — плюс куча других улучшений.
Также переработана панель песочницы для будущих улучшений; одно из таких будущих улучшений — привязка (parenting), которая уже есть в этом обновлении. Сейчас можно привязывать источники света к игрокам, а в будущем можно будет привязывать друг к другу больше объектов.
Есть и новый редактор кривых, позволяющий анимировать ключевые кадры куда свободнее; его можно использовать с камерами на тележке, чтобы делать разгон/замедление скорости или замедлять камеру, пока она проходит сквозь сцену.

Не терпится увидеть, что создадут люди!
Серверы Facepunch
Чтобы консолидировать игроков, из эксплуатации выводятся следующие серверы:
- EU Primitive 2
- CAN Primitive 1
- US West Primitive 1
Если вы играли на любом из перечисленных — не бойтесь. Серверы режима primitive от Facepunch в этих регионах всё ещё будут.
На следующих серверах размер карты уменьшается с 4250 до 3750:
- EU Hardcore 1
- US East Hardcore 1











