Dev-блог 160

Rust_DevBlog_160_1.jpg

Дверные ловушки из дробовика, оптимизация и многое другое.

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

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

Rust_DevBlog_160_2.jpg

Rust_DevBlog_160_3.jpg

Размещение огненной турели
На последнем вайпе я столкнулся с некоторыми трудностями при размещении огненной турели в своей буферной зоне, поэтому я немного исправил это и теперь размещать ее вблизи стен стало гораздо проще. Whoop!

Rust_DevBlog_160_4.png

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

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

Оптимизация вызовов (метода invoke)
Я перенес почти все оставшиеся вызовы Unity на нашу оптимизированую систему. Это устраняет издержки и, как я и говорил при первой реализации этой системы, делает наш код более стабильным и надежным. Ничего интересного, но тем не менее, уверенный прогресс.

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

Rust_DevBlog_160_5.jpg

Здание ракетостроительного завода
Я продолжил работу над зданием завода. Сосредоточился я на том, чтобы привести в порядок меш земли. Кроме того, я возвёл строительные леса вокруг ракеты, довел до ума геометрию интерьера, добавил проходам потрёпанный вид и приступил к тестированию общего макета. Мой следующий шаг в этой области — завершить с проходами на всех этажах, закончить с паркур-головоломками и добавить лестничный доступ к разным уровнях данжа.

Rust_DevBlog_160_6.jpg

Rust_DevBlog_160_7.jpg

Rust_DevBlog_160_8.jpg

Rust_DevBlog_160_9.jpg

Rust_DevBlog_160_10.jpg

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

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

Куча металлолома
На этой неделе я закончил с LODами, эффектами разрушения и префабами для переработанного дропбокса, которого вы видели на прошлой неделе, а также создал эффекты разрушения для дверной ловушки из дробовика. Затем я перешел к новым задачам: куче металлолома, которую ранее концептил Пол. Вот, что вы увидите, сломав бочку:

Rust_DevBlog_160_11.jpg

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

Я смог создать трек из гораздо меньшего количества аудиоклипов из-за новой системы воспроизведения, так что мы сможем сохранить много места на вашем диске. Басовая линия, например, построена из 5 различных клипов длиной в 1 байт. В предыдущей системе нам бы понадобилось 6 различных клипов, и все они должны были иметь длину в 8 баров, что было бы примерно в 10 раз больше чем сейчас.

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

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

Звуки канистры для воды
Я сделал несколько записей для канистры на этой неделе и сейчас я почти закончил c их финальной обработкой. Планирую добавить их в игру уже на следующей неделе!

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

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

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

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

Утечки планировщика
Когда ИИ был переведен с pre-release-ветви на основную, он принес с собой довольно большую ошибку. Мы проверяли дамп-файлы сервера и вторым по количеству объектов был файл размещаемых объектов\растений. Эта проблема проявлялась каждый раз при размещении какого-либо объекта. Как это могло случиться? Оказывается, эта проблема была в игре еще с самого начала, но только новая система ИИ помогла нам обнаружить ее. ИИ будут питаться пищей и растениями — растения использовались планировщиком, чтобы контролировать их размещение. Когда ИИ ели саженцы, они просто удалялись как предмет, но при этом удалялись не полностью, каждый раз нагружая планировщик несуществующим объектом. Это так же случалось каждый раз, когда в мире стакались два предмета, выбрасываемых игроками (например, вы бросали бинт друг на друга и они стакались), но поскольку это случалось довольно редко, мы не могли это обнаружить. Сейчас все исправлено.

Количество объектов на заселённых серверах должно упасть примерно на 50 000 ед. и благодаря этому вы заметите некоторые изменения в использовании памяти (после вайпа).

Список изменений:
  • Исправлен недочёт, который делал стены прозрачными издалека.
  • Исправлена ошибка ИИ "look rotation viewing vector is zero".
  • Оптимизировали процессы гниения построек.
  • Гниение теперь воздействует на все веточные строй. блоки.
  • Перенесли оставшиеся процессы вызова на улучшенный обработчик (оптимизация).
  • Добавили возможность размещать над большими печами потолочные фреймы и потолочные решётки.
  • Деревянные колья (наземная ловушка) теперь блокирует возможность размещения фундаментов, по аналогии с баррикадами.
  • Решётки на окнах и амбразуры теперь будут иметь запас прочности + после снятия их с окон, они будут терять 50% от этого показателя.
  • Добавили ловушку-дробовик.
  • Устранили утечку объектов растений (на больших серверах это приводило к 50 000 доп. объектов).
  • Огнемётные турели теперь можно размещать ещё ближе к стенам (теперь есть возможность использовать их в небольших помещениях).
  • Починили некоторые старые скины предметов, которые не работали.
 
Последнее редактирование:
Сверху