Торговые автоматы и открывающиеся дверные люки теперь в игре. Помимо этого, демонстрируется прогресс по работе над зарастанием, декор элементами бункеров и прочим.
Торговый автомат
Продолжаю свою работу над реализацией некоторых идей из лимба концептов. На этой неделе я занимался реализацией торгового автомата. Было не легко, но теперь он полностью функционален и добавлен в игру.
Первое, что необходимо знать — этот объект крафтится и размещается только игроками. В игровом мире в виде статики его встретить нельзя. Изначально я думал, что такой вещи в игре не будет, но в конечном счёте, я реализовал её и сейчас можно смело сказать, что она открывает совершенно новый стиль игры, который идёт в разрез с привычным фармом.
Принцип работы у него достаточно прост. Если у вас есть доступ к задней части (и к замку, который можно на неё повесить), вы можете открыть панель администратора:
В ней вы увидите текущие предложения на обмен. Каждое из них вы можете удалить, а также добавить новые. У вас есть возможность поставить предложение, где вы предлагаете обменять один предмет в выбранном вами количестве на другой в, опять же, выбранном вами числе.
Хотите обменять топор на камень? Да, пожалуйста! Хотите обменять компоненты на металлические фрагменты? Нет проблем. Правда, стоит иметь в виду, какие бы предложения вы не поставили, автомат будет давать людям только то, что вы положили в его инвентарь (доступ к нему также доступен сзади).
На первый взгляд в голову приходит несколько интересных идей. Например, вы можете поставить предложение, где вы обмениваете свой камень на дерево и рядом поставить предложение обмена дерева на, к примеру, ткань. Таким образом, автомат будет долгое время работать самостоятельно, а вы — извлекать нужную вам прибыль. Вообще, этот автомат можно превратить в своеобразный генератор дерева, если поставить его возле пляжа и продавать фрешспавнам всякую всячину за дерево.
В общем, много чего ещё предстоит сделать. Подозреваю, что без багов и эксплойтов не обойдётся, поэтому я буду следить за каналами связи. Наслаждайтесь.
P.S. Сейчас имеются проблемы с невозможностью апгрейда пола под автоматом. Они будут исправлены в следующем патче, но так или иначе, разве есть смысл размещать его на чём-то хуже, чем камень?
P.P.S. Осторожно! Сейчас автомат принимает вещи без учёта их состояния! Пока что не стоит делать предложения с обменом на вещи, которые имеют параметр кондиции.
Люки в армированных дверях
На этой неделе я также разбирался с более-менее легко реализуемыми вещами. В их числе как раз и были люки в армированных дверях. Теперь они действительно открываются, и не только с визуальной точки зрения, но и с функциональной: через них можно стрелять, бросать гранаты и прочее. Будьте осторожны!
Домашняя трансляция Steam и Steam Controller
Забыл упомянуть в последнем блоге, что на прошлой неделе я возился с Steam Machine и в итоге так и не смог сделать так, чтобы на ней заработал Rust. В конечном счёте, я нашёл проблему (она крылась в ЕАС) и теперь всё работает! Мне реально понравилось стримить Rust на свой Surface Pro с ПК. Наслаждайтесь.
Цвета в кодовом замке
Однажды мы что-то сломали, из-за чего цвет «открытого» замка горел жёлтым, а не зелёным. Теперь это исправлено.
Снижение стоимости бумаги
Теперь крафт бумаги обходится в 5 древесины.
Изменения большой печи
Теперь в лут-панели большой печи появились кнопки «вкл/выкл». Кроме того, теперь вы можете получить к ней доступ только около «окошек», а не какой-нибудь случайной её части, вроде дымохода и т.д.
Урон от падения в воду
Во время игры на прошлой неделе, я столкнулся с группой вооружённых парней в порту, чтобы сбежать от них, я прыгнул в воду и получил около 40 ед. урона от падения. Это бред. Я убрал урон от падения в воду, если глубина водоёма позволяет плавать. Позже я вернусь к этому вопросу для проработки дополнительных параметров, например высоты падения, но пока что я просто решил убрать раздражающий элемент геймплея.
Эксплойтинг консольных команд
На прошлой неделе вскрылся один эксплойт, с помощью которого игроки находящиеся в очереди на коннект к серверу получали доступ к rcon или серверной консоли. Соответственно, не составляло никакого труда прописать giveall ak47 и тому подобное.
Мы нашли проблему и выпустили патч в течение часа, однако из-за ущерба, нам пришлось вайпнуть некоторые сервера. На этой неделе я работал над рефакторингом кода нашей консоли, чтобы в будущем таких ситуаций не возникало.
Нам определённо нужна программа «нашёл баг — сообщи нам — получи награду». В ближайшее время я займусь её реализацией.
AI
Работа над искусственным интеллектом, хоть и медленно, но всё же продолжается. Поделиться с вами, увы, пока нечем. Работники Unity говорят нам, что исправили ошибку, которая приводила к неработоспособности pre-release-ветви, так что вскоре мы сможем приступить к тестированию.
Зарастание растениями
Я закончил с окутыванием наших данжей растениями. Само собой, есть ещё много пространства для доработок, однако я предпочту дождаться реакции сообщества, в частности относительно изменений в производительности игры. Помимо непосредственного окутывания данжей, некоторые растения на земле также были заменены на новые. Сделано это было для того, чтобы поддержать гармоничность флоры. Также, я добавил немного новых растений на прилегающие территории различных лут-поинтов.
Помимо всего прочего, Андре начал заменять обычную траву на новую.
Бункерные комнаты
На этой неделе я закончил с модульными трубами, которые я показывал вам ещё в прошлом Dev-Блоге. Последние 2 дня я провёл в работе над поломанными вариациями труб, а также заполнением и доработкой военных бункеров. После того, как я закончу со всем этим, я займусь схожей деятельностью в отношении других интерьеров лут-поинтов.
Новая система листвы
Недавно начал работать над новой системой эффективного рендеринга листвы. Она позволит объединить новую улучшенную систему травы с зарастанием монументов, которыми выше хвастался Винс. Всё это даст возможность добавлять на карту высоко детализированную траву, которую можно будет размещать как вручную, так и с помощью алгоритмов. Надеюсь, что смогу продемонстрировать вам наглядные результаты всей этой работы в следующем Блоге.
Краши серверной физики
Я также наконец-то разыскал причину крашей серверной физики, которые возникали при запуске сервера и загрузке объёмных сейвов. Теперь, надеюсь, эта проблема больше никогда не даст о себе знать.
Улучшения анти-хак системы
Разработчики читов в последнее время неплохо шагнули вперёд, особенно по части флай-хака. Сейчас я подготовил для них очередные палки в колёса, кроме того, я внёс в систему анти-хака дополнительные улучшения.
Эксплойтинг крафтинга
Как оказалось, был эксплойт, который с помощью консоли позволял игрокам крафтить некрафтобельные вещи (LR-300, Мельница и пр.). Теперь он устранён.
Новый шейдер листвы
Я начал работать над новым шейдером, который будет ориентирован на новоиспечённое «зарастание местности». По сути, новая версия — это просто хорошо оптимизированная старая + некоторые дополнительные функции передачи света:
Улучшение шейдеров самого низкого уровня
Если вы привыкли играть на самых низких параметрах графики, в частности выставляли параметр Shader Level на самый низкий уровень, то с этого обновления вы заметите, что скалы и ландшафт в целом стали выглядеть немного лучше. Мы решили немного повысить планку, при этом практически не потеряв в производительности.
Вот как выглядело раньше:
Теперь и валуны, и местность имеют более высокую детализацию. Чтобы добиться этого, я постарался создать самый быстрый шейдер, воздействие на производительность которого бы не превышало 25%.
Система динамического отключения рендеринга
После долгих тестов, я таки решился добавить систему динамического отключения рендеринга. Лучший способ начать первую итерацию — пустить первую версию в «боевые условия» и уже основываясь на реальных данных проводить тонкую настройку.
На данный момент система поддерживает модели игроков и рэгдоллы. Отключение NPC к этому обновлению, увы, ещё настроено не было. Тем не менее, мы добавили больше окклюдеров, которые позволяют таким элементам базовой стройки, как фундаментам, стенам и пр. также способствовать отключению рендеринга модели персонажа.
В будущем мы добавим ещё больше, что позволит ещё сильнее ослабить нагрузку на железо. Сейчас эта система включена по умолчанию, если у вас возникли проблемы — используйте команду culling.enabled 0 для её отключения, а также не забудьте сообщить нам о них.
Анимации персонажа
На этой неделе я закончил работать над новыми анимациями в виде от 3-го лица для арбалета, двустволки, ЕОКи и огнемёта.
Я также переделал модели всех этих предметов, так что теперь, к примеру, у арбалета тянется тетива, стволы двустволки анимированы и т.д.
Новые анимации в виде от 3-го лица более схожи с привычным анимациями от 1-го. Сейчас глядя на игрока вы сможете точно определить, когда он закончит перезарядку и когда он сможет снова начать стрелять. Тоже самое относится и к анимациям самодельного пистолета ЕОКА, попытка стрельнуть из него теперь также анимирована.
World модели компонентов
Я закончил со следующими моделями: взрывчатые вещества (Explosives), порох, МВК, руда МВК, большая консервная банка, маленькая консервная банка, металлические фрагменты, ткань, кожа, камера, животный жир, сера и компьютер.
Справка: world модели — это такие модели, которые отображаются непосредственно в игровом мире. Например, когда вы выбрасываете предмет из инвентаря на пол, отображается его world модель.
Звуки
На этой неделе я сделал и добавил новые звуки огнемётной турели. Материалы для неё я записывал со своего инвентаря в гараже, в частности с дерьмовой старой газонокосилки. Надо сказать, было достаточно весело.
Помимо этого, я также занимался звуками размещения. Большинством из них я в принципе доволен, но есть парочка звуков, которые по-прежнему нуждаются в доработке. Ещё я создал много новых звуков для предметов, у которых раньше звуков не было вообще. Как пример: таблички, ловушка для рыб, замки и пр. Также я как обычно занимался различными фиксами.
Список изменений:
- Добавлены новые звуки огнемётной турели.
- К различным размещаемым объектам были добавлены звуки размещения.
- Старые звуки размещения были доработаны.
- Устранены глюки визуализации металлической нагрудной пластины.
- Исправлены недочёты скининга на торсе женского персонажа.
- Исправлены случайно возникающие краши системы физики при загрузке больших сейвов.
- Теперь при инициализации игрового мира, серверный менеджер (AI, сеть, система стабильности) будет приостанавливать работу.
- После инициализации условных моделей (на стороне сервера) коллайдерная сетка будет обновляться.
- Теперь сетка рендерера будет обновляться на экране загрузки (клиент).
- Система анти-хака была улучшена (в частности, относительно обнаружения флай-хака).
- Устранён эксплойт, который позволял крафтить некрафтобельные вещи через консоль.
- Был улучшен самый низкий уровень шейдеров.
- Реализована новая система отключения рендера [dynamic occlusion culling] (оптимизация).
- Добавлена/оптимизирована world модель болтовой винтовки, длинного меча, пайп-шотгана, АК47, тесака, "бобовой" гранаты, копья с каменным наконечником, ведра, лука, топора, бинтов и кирки.
- Исправлены баги анимации связанные с удерживанием Lr300, m249, полуавтоматической винтовки и огнемёта.
- Исправлен скин деревянной двери (ранее не работал).
- Добавлена команда entity.deleteby( steamid ) для удаления всех строй. блоков и размещаемых объектов одного конкретного игрока.
- При бане ЕАС-античитом
- все строй. блоки и размещаемые объекты игрока будут автоматически удалены.
- Исправлена ошибка при открытии экрана Steam-инвентаря.
- Исправлены некоторые недочёты workshop-а.
- При прыжке в воду с большой высоты, игроки больше не будут получать урон от падения.
- Оптимизировали сетевой код относительно огнемётной турели.
- Увеличили замедление передвижения от огня огнемётной турели.
- В лут-панели большой печи появились кнопки "вкл/выкл".
- Доступ к содержимому большой печи теперь доступен только около "окошек".
- Добавлен звук поедания шоколадной плитки и батончика.
- Снижена стоимость крафта бумаги.
- Люки в армированных дверях теперь функциональны.
- Добавлен торговый автомат.
- Исправили незначительные баги огней кодового замка.
- Домашняя трансляция Steam и Steam-контроллер теперь функциональны.
Комментарии