Как сделать стекло в расте

Добавил пользователь Alex
Обновлено: 04.10.2024

КОМЕНТАРІ • 130

На счет урона бобовой С4 всё правильно! Наносит 58 урона! Это я попутал просто) 1 С4 + 3 Бобовых С4 для полного выноса стекла!

Ну на счет смотреть как-то все равно, а вот то, что днём в полностью застроенном доме появилась возможность сделать относительно безопасное окно для освещения вот это норм.

Спокойно смотреть как вас рейдят😂

Прикольно было бы если бы добавили винтовку крупнокалиберную типа ксвк чтобы только оно пробивало окна

Наконец то можно будет смотреть в окна и знать что тебя какой нибудь болтовщик не снимет

Лучше бы сделали что снаружи через него не видно ничего , а изнутри прозрачное чтобы впустить в дом солнечного света ))

Надо было гранёное стекло создать , такими квадратами через которые ничего не видно

Сделать стекло из металла, это новый уровень.

когда сидишь за стеклом и смотришь как тебя рейдят )))))))))

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

Можете спокойно смотреть за тем как вас рейдят (с) Флеш

Там имелось ввиду 1 С4 + 3 бобовых С4.

Надо заснять когда стоишь за стеклом а в тебя летят пули!

Скорее всего 1 сишка и 3 побобки, т.е. в сумме а не по отдельности)

Нееет флэш ты не понял , когда ты кинул топ сишку осталось 148 вроде хп и тобишь надо ещё 3 бичсишки что бы добить

"Вы можете спокойно смотреть кто вас рейдит"

Надеюсь на стекле будет система повреждений,например 100 хп осталось везде трещины или 400 хп несколько трещин маленьких.Было бы неплохо

придется из-за тебя rust покупать.) где можно поиграть ученику на каких серваках?

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

Обложка статьи

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

Здесь мы постараемся рассказать о самых важных моментах, связанных с данным видом транспорта в игре.

Гараж и подъемник

Прежде чем мы найдем нашу первую машину и поедем на ней, построим гараж для хранения нашего "болида". В отличии от других транспортных средств, например, мини-коптера или моторной лодки, машина будет "гнить" (терять хп) даже под крышей. Полностью отремонтированная машина пропадет примерно через 3.5 часа. Как избежать гниения? Оно не происходит в двух случаях: если машина была заведена 10 и меньше минут назад, либо стоит на подъемнике, который мы и рассмотрим.

Подъемник

Название: Подъемник для транспорта (Modular car lift)
Крафт: 200 фрагментов металла, 5 МВК, 1 шестерня
Для крафта требуется верстак 2 уровня и выше
Имеет 1 вход для электричества. Потребляет 5 единиц энергии.

Подъемник в меню крафта

Подъемник в меню крафта

Гараж

Подъемник для машины занимает достаточно много места: ему требуется 3 фундамента в длину, а также два в ширину по центру. Для примера построим гараж 3x2x1, лифт запитаем от тестового генератора. На настоящем сервере при использовании солнечных панелей потребуется как минимум 4 правильно направленных панели и средний аккумулятор (маленького не хватит), а в случае использования ветрогенератора, должно быть достаточно и маленького.

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

Пример построенного гаража с подъемником и машиной

Пример построенного гаража с подъемником и машиной

Где найти машину

Единственный на данный момент способ: найти у дороги. На момент выхода обновления, на карте размером 4000 появлялось около 50 машин. Спавнятся машины в сломанном виде, без деталей в двигателе (о них далее), а также топлива. Единственное, что будет: сама рама (на 2, 3 или 4 места для модулей), а также несколько случайных модулей (о них тоже дальше), однако обязательно будет либо кабина со встроенным двигателем, либо двигатель и кабина отдельно.

Пример машины рядом с дорогой

Пример машины рядом с дорогой

Да только вот просто найти машину недостаточно. Чтобы уехать на ней, придется сделать много чего другого:

Детали для двигателя

Всего есть 5 деталей (коленвал, поршни, свечи, клапаны и карбюратор) и 3 качества этих деталей (низкого качества, среднего и высокого).

Все детали от низкого до высокого качества

Все детали от низкого до высокого качества

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

Каждая деталь влияет на определенные параметры машины:

  • Коленвал - на скорость
  • Поршни - на ускорение и скорость
  • Свечи - на ускорение
  • Клапаны - на экономию топлива
  • Карбюратор - на экономию топлива и скорость

В случае полного набора деталей низкого качества все параметры машины будут на уровне 75%, в случае среднего - на уровне 85%, а при использовании деталей высокого качества будут получены максимальные характеристики по 100%.

Все компоненты имеют прочность и со временем ломаются. Починить их можно в верстаке.

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

Кабина с двигателем (слева) и отдельный мотор (справа)

Кабина с двигателем (слева) и отдельный мотор (справа)

Починка и заправка

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

Есть два способа починить машину: киянкой (что мы и сделаем первый раз) и на подъемнике через меню. Для починки нужны: дерево, фрагменты металла и МВК. Бьем киянкой по каждому модулю машины, чтобы из них перестал идти огонь и дым.

Заправка производится топливом низкого качества. Бак машины расположен спереди или сзади рамы и вмещает до 500 топлива.

Ставим детали в двигатель (он открывается как обычный ящик), чиним модули, загружаем топливо и едем.

Управление машиной

Рассмотрим стандартные клавиши управления.

  • Посадка в машину - E (смотреть на нужную дверь)
  • Выход из машины - пробел
  • Движение - W, A, S, D
  • Включение и выключение фар - F
  • Сигнал - левая кнопка мыши
  • Смена сидения - X (может быть не настроено, см. настройки игры)

Какие бывают машины

Сама по себе машина - это рама без модулей. На данный момент есть три вида рам: на 2 места, на 3 и на 4. Кроме количества мест различий больше нет.

Некоторые модули занимают одно место, некоторые два.

Примеры машин на 2, 3 и 4 места

Примеры машин на 2, 3 и 4 места

Установка замка на машину

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

После этого подходим к стойке подъемника, открываем меню. Справа снизу будет меню установки ключа. Для установки потребуется 75 металла. Нажимаем на кнопку "Добавить замок" (Add lock). После этого нам будет выдан ключ, которому будет присвоен случайный номер, совпадающий с номером замка машины. В самом ключе можно оставить заметку. Для крафта дополнительного ключа необходимо нажать "Скрафтить ключ" (Craft key), при этом будет потрачено 15 металлических фрагментов.

До установки замка

До установки замка

После установки замка

После установки замка

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

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

Переключатель замка

Какие бывают модули

Всего в игре есть 11 разных модулей. Все они изучаются (все, кроме двух бронированных, на втором верстаке, а бронированные - на третьем) и крафтятся.

Ставятся все модули через меню подъемника. Если не будет установлена кабина, модуль не спустит машину вниз. Все остальные модули необязательны.

Модуль кабины и кабины с мотором

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

Есть два варианта кабины: с мотором, не требующая никаких других дополнительных модулей, и без него. В случае использования кабины без мотора, придется вторым модулем ставить мотор отдельно. Причем встроенный мотор в кабине немного слабее отдельного (в горку едет слабо, на гору не заедет вообще).

Кабина. Занимает 1 слот

Кабина. Занимает 1 слот

Модуль мотора

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

Мотор. Занимает 1 слот

Мотор. Занимает 1 слот

Модуль хранилища

Ящик на 18 слотов. При установленном замке также блокируется для других игроков.

Хранилище. Занимает 1 слот

Хранилище. Занимает 1 слот

Модуль такси

Имеет два пассажирских места, перегородку между пассажирами и водителем, обменник, а также кнопку для выкидывания пассажиров, которая находится со стороны кабины водителя.

Такси. Занимает 1 слот

Такси. Занимает 1 слот

Модуль задних сидений

Имеет два пассажирских места. Окон и дополнительных функций нет.

Задние сидения. Занимает 1 слот

Задние сидения. Занимает 1 слот

Модуль пассажирских сидений

Имеет 6 пассажирских сидений. Без окон и функций.

Пассажирские сидения. Занимает 2 слота

Пассажирские сидения. Занимает 2 слота

Модуль грузовика

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

Модуль грузовика. Занимает 1 слот

Модуль грузовика. Занимает 1 слот

Модуль большого грузовика

Как предыдущий, но в 2 раза больше в длину.

Модуль грузовика. Занимает 2 слота

Модуль грузовика. Занимает 2 слота

Модуль топливного бака

Несмотря на название, на данный момент модуль позволяет хранить только воду. Вмещает около 50000 мл.

Модуль топливного бака. Занимает 2 слота

Модуль топливного бака. Занимает 2 слота

Бронированные модули

Бронированная кабина (без мотора) и задние сидения. Основное отличие от обычных в повышенном хп и бронированных стеклах.

Бронированная кабина. Занимает 1 слот

Бронированная кабина. Занимает 1 слот

Бронированные задние сидения. Занимает 1 слот

Бронированные задние сидения. Занимает 1 слот

Взлом машины

Нашли крутую машину, но на ней замок? Не беда - его можно взломать. Достаточно снизить хп кабины до 15%, после этого появится пункт меню "Сломать замок" (destroy lock).

В примере использовалась обычная кабина и красные патроны. Хватило примерно 18 патронов. Ломается кабина и инструментами, такими как: мачете, кирка и др.

Сломанная кабина

Итоги: зачем это надо?

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

Некоторые наблюдения

  • Удобство управления машиной сильно зависит от пинга. При высоком пинге (более 150) машиной управлять становится достаточно сложно
  • Если машина заедет в воду хотя бы наполовину, двигатель перестанет заводиться
  • Машина не пропадает даже после взрыва (уничтожения модулей). Все модули можно починить и ехать дальше
  • Модуль с предметами нельзя забрать через подъемник, если в нем есть предметы (компоненты в случае двигателя, любые предметы в случае хранилища). Если выбрать этот предмет в меню подъемника, сверху будет кнопка "Забрать все предметы", которая переместит их в инвентарь игрока. Однако этот метод не работает с модулем топливного бака.

Спасибо за прочтение статьи. Если мы упустили некоторые моменты, обязательно напишите об этом в комментариях - дополним.

Владение и заимствование – ключевая концепция языка Rust и его неоспоримое преимущество. Необходимость освоить эту концепцию является насущной для любого разработчика, а ключом к ней станет Lifetime. Поговорим об этом детально.

🛠 Владение и заимствование в Rust: детально о Lifetime для начинающих и более опытных

Для многих программистов, привыкших к мутабельным состояниям данных в объектно-ориентированой упаковке, Rust становится настоящим откровением. Не удивительно, ведь тут нет сборщика мусора, а безопасность памяти есть. Именно это и делает язык по-настоящему мощным, а его систему типов зубодробительно-сложной. Любой начинающий изучать Rust программист в первую очередь читает Rust Book, который очень точно переведён на русский язык. Это отличный текст: следуя современным требованиям к обучению, он создает впечатление, что все достаточно просто. Сложности начинаются во время практики. Borrow checker заставит ваш мозг всосать весь оставшийся в крови сахар, чтобы понять, почему оно не компилируется.

Это стандартное продающее язык объяснение. Посвященные могут его пропустить.

Ещё больше проблема усугубляется потребностью писать многопоточный код, который в нескольких экземплярах имеет прямой доступ к общей для всех потоков памяти. Тут важно понимать, что запросы на модификацию данных в памяти могут быть (с точки зрения процессора) не атомарными, а значит может потребоваться несколько инструкций для одной операции. Если же выполняются два потока одновременно, то инструкции процессора, скажем, перемешиваются, и получается бардак, называемый гонкой данных (Data Races), что в свою очередь является неопределенным поведением (Undefined Behaviour, далее UB). Отладка программы в поисках причины UB – чрезвычайно трудоемкий процесс.

Разработчики Rust поняли причины этих проблем и применили практики хороших статических анализаторов кода на C/C++ (но это не точно) для создания языка, который по своей семантике не позволяет программисту отстрелить себе ногу. При этом Rust не создает прослойку между кодом и железом в виде избыточного runtime с garbage collector.

Ссылки

В целом &ссылки/*указатели нужны когда данные: находятся в куче (отдельная тема), или просто ради того, чтобы избежать избыточное копирование данных в стеке.

В Rust есть ровно два типа ссылок (про сырые указатели не говорим):

  • Ссылки на чтение (shared reference): &lnk_name – позволяет только читать данные.
  • Изменяемые (мутабельные) ссылки: &mut lnk_name – позволяет изменять данные.

Ссылки подчиняются двум правилам, называемым правилами заимствования :

Что такое Lifetime?

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

Любая переменная – это память на стеке. Ссылка на другую переменную (или на данные в куче) – тоже переменная в стеке. Если ссылка проживет дольше чем сами данные, то при попытке обратиться через неё (разыменовать), произойдет обращение к освобожденной памяти – классическая ошибка сегментирования.

Lifetime – именованная область программы, ссылки в которой будут действительными. Эти области могут быть очень сложными, поскольку они соотносятся с ветвлением при выполнении программы.

Вот прямо так. Не время – область кода. Для нас это абстрактное время, поскольку области кода выполняются последовательно. Lifetime – это как имя самой области, так и метка для ссылки на эту область. Запомним это.

Возьмём простой пример:

При попытке собрать эту программу компилятор выдаст ошибку:

🛠 Владение и заимствование в Rust: детально о Lifetime для начинающих и более опытных

Попробуем смоделировать на C что могло получиться, если бы Rust нас не защитил.

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

Скомпилируем и исполним:

Получим следующий результат:

🛠 Владение и заимствование в Rust: детально о Lifetime для начинающих и более опытных

Borrow-checker просто не позволяет нам написать подобную программу на Rust. GCC видит проблему, но все равно компилирует код. Наш пример слишком прост, чтобы он пропустил ошибку (clang программу с такой функцией и вовсе убережет от ошибки сегментирования), однако C и C++ никак не защищают от подобного с точки зрения семантики языка. В простых случаях мы можем положиться на компилятор, но нет языковых механик, которые уберегут нас от проблемы в принципе. На помощь придёт стандартная библиотека C++, хотя даже с ней можно отстрелить себе что угодно.

Мутабельные ссылки и модель алиасинга

Этот вопрос мы рассмотрим в контексте однопоточного исполнения без прерываний. Асинхронное программирование выходит за пределы темы.

Возьмем пример из Rust Book:

Давайте разберем другой код, в котором это эффект в глаза не бросается, но покажет, почему мутабельная ссылка должна быть уникальной:

При логичном её использовании результат будет ожидаемым – в output будет положено число 2:

Однако в функции compute() есть один интересный эффект. Что если мы передадим в качестве обоих аргументов ссылки на один и тот же кусок памяти?

В результате после первого блока if значение input изменится и второй блок if просто не сработает, поскольку input тоже изменился и содержит значение менее 5. Это и было названо в Rust Book внезапным изменением значения, поскольку наше внимание приковано к именам переменных и подразумевает, что эти данные разные.

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

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

Rust так делать не позволяет и пытается оптимизировать функцию:

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

Компилятор пожелает сделать код функции, который можно выразить так:

Rust может позволить себе такую оптимизацию, так как точно знает, что input и output указывают на разные значения, потому можно все разыменования заменить на обращение к копии данных в локальном кеше в регистре. Либеральные C и C++ такого позволить себе не могут: вдруг программист рассчитывает на мутабельный алиасинг.

Lifetime как блок и как тип

Например, этот код:

можно выразить так:

Lifetime всегда указывается через апостроф. Сама метка ничего не говорит нам об относительных размерах lifetime (за исключением ‘static). Для нас имя времени жизни служит только признаком равенства или неравенства, остальное – забота компилятора. Однако вложенность блоков явно показывает, какой lifetime длиннее.

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

Передача ссылки за пределы scope заставит Rust вывести более длинные lifetime:

Функции и структуры могут содержать ссылки, и тогда их сигнатуры приобретут генеричный вид. Имя lifetime в таком случае является неотъемлемым входным параметром дженерика как и типовый параметр. Даже если мы не будем прописывать параметр(ы) lifetime явно, они в любом случае будут выведены компилятором сразу после появления в сигнатуре символа “&”.

Можно выразить так:

🛠 Владение и заимствование в Rust: детально о Lifetime для начинающих и более опытных

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

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

Переменная x – ссылка на часть вектора. Так как вектор – это умный указатель, то при добавлении элемента хранилище в куче может быть перераспределено вне зависимости от нас и все ссылки на старые данные станут недействительны (ошибка сегментирования и/или UB). Однако компилятору не надо ничего знать про то, что x является ссылкой на часть вектора или что такое вектор, и как он оперирует данными в куче. Компилятору достаточно того, что нарушено правило заимствования.

Компилятор выведет следующий код из которого сразу видно проблему с lifetime:

Таким образом Rust видит, что x должен прожить время ‘b , чтобы быть напечатанным в println!() , что и отражено в выведенной сигнатуре функции Index::index , которая в качестве входного аргумента дженерика принимает lifetime ‘b . Ниже мы пытаемся заимствовать data с меньшим lifetime, на что и ругается компилятор. Если просто убрать println!(“<>”, x) , все будет работать корректно, поскольку висящий указатель/ссылка – не проблема. Проблема – разыменовывание такой ссылки. На самом деле это может быть проблемой, если мы пишем свой деструктор, но об этом поговорим в другой статье.

Замалчивание Lifetime (Elision)

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

Эта фича и называется замалчиванием lifetime или Elision. Это плюс, только вот правила выведения lifetime обратно в сингратуру функций достаточно жесткие – имеет смысл знать их наизусть. А ещё они не описаны в Rust Book явным образом.

Исправим это досадное недоразумение.

Lifetime может входить в сигнатуры тремя способами:

  • &'a T – ссылка на переменную типа T .
  • &'a mut T – мутабельная ссылка на переменную T .
  • T – сигнатура типа T в случае, если поля структур или сигнатуры методов трейтов содержат ссылки.

То есть у нас есть входные и выходные lifetime, что было видно и в предыдущем разделе. Поговорим подробнее об их взаимосвязи. Обращаю внимание, что если вам не подходит выведение замалчиваемых (elided) lifetime, вы всегда можете определить их явно.

Правила следующие (их надо запомнить):

  • Каждый замалчиваемый (elided) lifetime в сигнатуре функции уникален, т.е. в функции fn do_something(a: &str, b: &str) у аргументов a и b будут разные lifetime.
  • Если в функции только один ссылочный аргумент с замалчиваемым или явным lifetime, то все выходные lifetime будут ему равны, т.е. fn do_something(s: &’a str) -> (&’a str, &’a str) в нашем случае вернет кортеж с двумя ссылками, но это может быть и структура с более чем одним ссылочным полем
  • Если один из аргументов функции &self или &mut self , то все выходные замалчиваемые lifetime будут выведены равными lifetime ссылки на self .
  • В противном случае Rust не сможет вывести lifetime и заставит вас сделать это явным образом

Давайте теперь посмотрим на примерах:

Вывод

Начав читать эту статью, вы хотели избавиться от проблем. На деле все прозаично: надо понять, как в действительности работает владение и заимствование в Rust, а также воспринимать ругающийся компилятор как великое благо. Да, он заставит вас переписать код, зато этот код не выстрелит вам в ногу, руку или в голову 31 декабря в 23:30 и не заставит отлаживать себя в самое неподходящее время. В следующий раз мы заглянем ещё глубже под капот и немножко приоткроем тайну, как компилятор делает магию владения. За пределами этой статьи остались такие важные темы, как автоматическое управление данными в куче и связывание их с переменными на стеке.

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

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

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

Rust : как избежать смерти в первые моменты

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

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

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

Rust : создание инструментов и оружия

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

  • Деревянное копье: 300 дерева — с помощью этого игроки смогут защитить себя от врага, который пытается атаковать их с близкого расстояния, но также очень полезно для открытия бочек.
  • Каменный топор: 200 дерева и 100 камня — игроки могут использовать это, чтобы быстрее рубить деревья и более эффективно добывать древесину.
  • Каменная кирка: 200 дерева и 100 камня — похожи на топор, но используются для более быстрого дробления камней.
  • Лук: 200 дерева и 50 ткани — это должно быть предпочтительным оружием игрока в начале игры, потому что оно позволяет им уничтожать врагов на расстоянии.

Сотрудники Activision Blizzard скептически относятся к тому, что руководитель, отрицавший проблемы сексизма, может

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

Rust: быстрое урегулирование

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

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

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

Rust : создать печь

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

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

Читайте также: