Командная система в rust: описание, команды

Как выдать права администратора или модератора

После загрузки на сервер у вас возможно появился вопрос: «А как назначить себя администратором?». Ответ на который довольно прост. Для этого мы сворачиваем игру и разворачиваем нашу консоль сервера. В последних строчках командной строки (если вы недавно подключились) находим сообщение о вашем коннекте и скопировав от туда ваш Steam_ID пишем следующую команду.

В данном примере STEAM_ID взят не из строки подключения к серверу, а из строки принудительного дисконнекта.

После проделанным манипуляций должна появиться строчка «Added owner … «, что свидетельствует об успехе.

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

Команда в Rust: как это работает?

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

ХОСТ команды

Если вы хотите создать свою команду, нажмите на кнопку TAB, справа внизу вы увидите надпись «CREATE TEAM».

Создание команды

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

«Пригласить игрока в команду».

В нижнем левом углу экрана будет показан состав вашей команды.

Состав команды. Галочкой отображается хост (Лидер) команды.

Как только человек принимает приглашение в команду, его ник автоматически становится зелёным.  Подсвечивание игрока работает на расстоянии до 150 метров.

Отображение союзника

Если член команды мёртв, то он будет отображаться красным цветом, как показано на скриншоте ниже:

Отображение мёртвого члена команды

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

Назначение игрока на пост лидера команды

В любой момент вы можете удалить игрока из команды.  Для этого откройте инвентарь, после чего наведите мышкой на того игрока, которого хотите удалить. У вас появится надпись «KICK». Далее после нажимайте на эту надпись.

Удаление игрока из команды

Игрок команды

Когда вас пригласили в команду, вам придёт звуковое уведомление. Для принятия приглашения откройте инвентарь, а уже оттуда примите приглашение, нажав «Accept», или же отклоните, нажав «Reject».

Приглашение в команду. «Accept» — принять, «Reject» — отказать.

Для того что бы покинуть команду, нажмите «Leave team».

Покинуть команду – Leave team

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

Легенда

Значения команд условно делятся на несколько типов:

— Логический. Имеет 2 возможных значения, как принято в программировании — истина и ложь. Говоря простым языком в контексте консольных команд включить и выключить. Значение true (оно же 1) включает параметр команды, значение false (оно же 0) выключает.

— Числовой тип. Значения могут быть как положительные, так и отрицательные

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

— имя игрока.

— Steam ID

— текстовый тип. Тут может быть любой текст.

— В этом параметры допустимы только цифровые значения не меньше 1.

Некоторые команды можно использовать только в клиенте, некоторые только в консоли сервера, а другие в обоих интерфейсах. Это обозначено в колонке «Тип» где:
C — Клиент
S — Консоль сервера

Как создавать бинды

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

bind bind bind

Разберем на примерах:

  • bind k kill — в данном примере k — это кнопка к которой привязывается команда, а kill — это консольная команда.
  • bind z +duck — а здесь +duck — это действие, в данном случае заставляет персонажа присесть.
  • Действий может быть несколько , при этом они разделяются точкой с запятой — bind z +attack;+duck
  • Можно использовать сочетания клавиш — bind  kill

Список доступных действий для использования в биндах:

Для того чтобы удалить бинд с кнопки достаточно ввести в консоль команду unbind с одним аргументом — кнопкой которую вы хотите разбиндить. Например — unbind k. Или использовать clearbinds — данная команда удаляет все бинды.

Команды для разработчиков

Команды разработчиков для отладки сценариев, скриптов и модов.

Команда Тип Значение по умолчанию Описание
developer global.developer C false Показывает некоторую информацию для разработчиков.
vis.attack C false Показывает траекторию полёта пуль. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.damage C false Показывает нанесённый урон. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.metab C false Показывает информацию по метаболизму. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.triggers C false Показывает триггеры. Примечание: Работает только в режиме разработчика (developer) или отладки.
debugmode global.debugmode C false
dev.culling C
dev.hidelayer C
dev.netgraph C false Показывает качество связи с сервером.
dev.sampling C
dev.shaderlod C 2147483647 Примечание: Команда больше не поддерживается.
dev.showlayer C Показывает количество игроков на сервере.
dev.togglelayer C
cui.test C, S
data.export S
ddraw.arrow
ddraw.line
ddraw.sphere
ddraw.text
entity.debug_toggle C

Использование сторонних программ

Есть несколько программ, которые предназначены для очистки, оптимизации и расширения возможностей вашего компьютера. Что касается объема ОЗУ, вы получаете только то, что у вас есть.

Хотя есть такие программы, как Mem Reduct, которые могут очистить вашу память. Он очищает вашу память, отключая службы, которые не нужны, но в настоящее время работают на вашем компьютере.

Это освобождает больше места в ОЗУ, которое можно выделить для Rust, если вы увеличите приоритет в диспетчере задач, как упомянуто выше. Mem Reduct прост в использовании, вам нужно только установить его, запустить и нажать кнопку «Очистить память».

Контроллеры ударной мертвой зоны

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

Мертвая зона слева VS Мертвая зона справа

Левый и правый относится к левому и правому джойстикам. Правый джойстик будет иметь гораздо большее влияние на ощущение задержки ввода. Это потому, что правый джойстик управляет перемещением камеры / сетки во всех направлениях. Право мертвой зоны должно быть установлено в пределах от 1 до 5%. Установка слишком низкой мертвой зоны приведет к тому, что экран будет двигаться очень быстро, что затруднит управление прицеливанием и направлением. Левый стик не так важен. Геймеры могут оставить настройку 10% или ниже, чтобы деазоны выглядели единообразно, или установить ее на 12-15%.

  • Левая мертвая зона : 10-15%
  • Мертвая зона справа : 1-5%

Команды для администраторов сервера

Плагин на телепорт также имеет несколько команд для администраторов сервера. Разберём их более детально.

tp – все команды начинаются с неё. При её вводе в чате показываются команды, а также их описание.

Команды для администратора

/tp «Ник игрока» — позволяет администратору переместиться к игроку без его ведома. Игрок не узнает о вашем присутствии, только если он не увидит вас;

/tp «Ник игрока» «Ник игрока» — даёт возможно переместить определённого игрока к другому. На это не требуется согласие ни одного из игроков;

/tp «x» «y» «z» — телепорт по определённым координатам;

/tp «Ник игрока» «x» «y» «z» — позволяет телепортировать любого игрока по введённым координатам;

Команды телепорта в Rust для классических серверов

teleport “playername” – при помощи этой команды администратор может телепортироваться к игроку;

teleport “playername1” “playername2” – данная команда перемещает первого игрока ко второму;

teleportany entity – телепортирует игрока к объекту. Пример «teleportany “Bradleyapc”» — телепортирует вас к танку;

teleport2me “playername” – телепортирует игрока к администратору;

teleportpos x y z – телепортирует администратора по введённым координатам.

Rust. Как строить сразу в камень с помощью плагинов?

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

«/bgrade ». Пример команды: «/bgrade 2». Введя её в чат, вы установите автоматическое улучшение всего, что строится вашими руками, до уровня камня. Чтобы процесс шел, необходимо наличие соответствующего ресурса в инвентаре. Как вы поняли, 1 – это дерево, 2 – камень, 3 – металл, 4 – броня. Вы так же можете установить период, на который плагин активируется. Введите «/bgrade t ». Изменения вносятся на постоянной основе. То есть, в дальнейшем, при всякой активации, плагин будет работать заданный период времени. Изменить можно, установив новое время после ввода соответствующей команды.

Если же вам попался up, то он работает по схожему принципу. Введите в чате «/up БЕЗ ПРОБЕЛА» и включите тем самым автоматическое улучшение. Стены, и все прочие элементы здания будут создаваться сразу каменными, железными или бронированными, в зависимости от указанной вами цифры.

У Rust настоящая zero-cost abstraction

Помимо Rust, я присматривался и к другим языкам. Три года назад, когда впервые сменил работу, думал погрузиться в светлый мир JVM и написать что-нибудь на Kotlin. Но языки вроде Scala, Java и Kotlin можно применять далеко не везде. Виртуальные машины создают дополнительную нагрузку и для встраиваемого ПО в микрокомпьютерах не подходят. В таких системах пишут на чистом С, С++ или совсем страшных штуках вроде MISRA C.

У Rust, скомпилированного в native, нет дополнительного рантайма. RAII, деструкторы, конструкторы как в «плюсах». Только у Rust линейные типы и zero-cost с ними настоящий, а у C++ — нетривиальный деструктор у типа, и хоть убейтесь, но не получится передать его значение через регистры.

Ещё есть Zig — он очень похож на Rust. Там, например, тоже есть проверка lifetime, но организована она иначе, и то, как это сделано в Rust, мне нравится больше. Других языков с проверкой lifetime я не знаю, а в языках со сборщиками мусора она не нужна: если есть ссылка на объект, значит, он точно живой.

В Go механизм похожий, но там есть сборщик мусора. Мне предлагали перейти на него четыре года назад. Я попробовал, и синтаксис меня рассмешил. Стоит автоформатеру неправильно перенести строки, и программа не скомпилируется. А всё из-за неявной расстановки точек с запятой.

Полезные консольные команды Rust

В первые несколько месяцев «эспериментального» развития Rust большинство изменяемых игроками параметров, таких как цензура изображений обнажённых тел и чувствительность мыши контролировалось только консольными командами (так называемыми «cvars»). К счастью, большинство из этих элементов управления сейчас включено в игровое меню. Нужно просто нажать клавишу Escape и открыть вкладку «Параметры»!

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

Команда perf, представляющая собой замену для fps.graph с длительным временем выполнения, это один из наиболее полезных инструментов Ньюмана, который предназначен для определения нагрузки на компьютер. У этого инструмента две рабочие опции: «perf 1» и «perf 2». Perf 1 показывает только FPS, тогда как Perf 2 демонстрирует FPS + использование RAM.

Вывод данных Perf 2 можно увидеть в нижней левой части игрового экрана.

Antihack команды

Команды управления, встроенной в игру antihack системы.

Команда Тип Значение по умолчанию Описание
antihack.debuglevel C, S 1 Оповещение нарушений в консоль сервера:

0 = Ничего не выводить
1 = Выводить сообщения о серьёзных нарушениях
2 = Выводить все замечания

antihack.enabled C, S true Команда включает или выключает Antihack на сервере.
antihack.enforcementlevel C, S 1 Автоматическое принятие сервером решения о судьбе игрока:

0 = Ничего не делать
1 = Выкинуть игрока
2 = Забанить игрока

antihack.maxviolation C, S 5 Количество нарушений, которое приведёт игрока к бану на сервере.
antihack.relaxationpause C, S 5 Откатит изменения назад до момента обнаружения нарушения.
antihack.relaxationrate C, S 0.1 Скорость, с которой значение нарушения будет снижаться.
antihack.userlevel C, S На кого будет реагировать Antihack:

0 = Игроки
1 = Администраторы
2 = Разработчики

antihack.flyhack_protection C, S 1 Включить защиту от flyhack:

0 = Выключен
1 = Включён
2 = Расширенные настройки

antihack.flyhack_forgiveness C, S 2 Преодолённая дистанция в полёте, после которой Antihack начинает реагировать на игрока.Примечание: Чем меньше значение, тем больше ложных срабатываний.
antihack.flyhack_penalty C, S 4 Количество предполагаемого использования Flyhack, после которого автоматически будет выдан бан.
antihack.flyhack_reject C, S При обнаружении Flyhack, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак.Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки, кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.
antihack.noclip_protection C, S 2 Включить защиту от noclip:

0 = Выключен
1 = Включён
2 = Расширенные настройки

antihack.noclip_penalty C, S 4 Количество предполагаемого использования Noclip, после которого автоматически будет выдан бан.
antihack.noclip_reject C, S При обнаружении Noclip, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак.Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.
antihack.speedhack_protection C, S true Включить защиту от speedhack.
antihack.speedhack_deltatime C, S 0.2 Интервал времени для проверки скорости. Чем ниже значение, тем выше шанс ложных срабатываний.Примечание: Чем меньше значение, тем больше ложных срабатываний
antihack.speedhack_forgiveness C, S 2 Предполагаемая минимальная скорость при использовании speedhack.
antihack.speedhack_history C, S 20 Преодолённое расстояние с использованием speedhack, при котором будет выдано нарушение.
antihack.speedhack_penalty C, S 4 Количество предполагаемого использования speedhack, после которого автоматически будет выдан бан.
antihack.speedhack_reject C, S При обнаружении speedhack, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак. Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки, кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.

Головоломка

Для решения головоломки нам понадобится:

  • зелёная ключ-карта;
  • синяя ключ-карта;
  • предохранитель.

Порядок действий будет следующий:

  • Направляйтесь к зданию с фургоном, под лестницей которого активируйте уже известный вам переключатель;
  • После отправляйтесь в одноэтажное здание, которое располагается на окраине станции, неподалёку от переработчика. В нём будет ещё один переключатель, а рядом таймер;
  • Нажимайте на переключатель, а затем на таймер;
  • После отправляйтесь к зданию-головоломке, расположенное в центре РТ. Открывайте дверь при помощи зелёной ключ карты;
  • На первом этаже найдите очередной переключатель. Найти его можно по красному свечению. В той же комнате, где вы нашли переключатель, будет металлическая дверь, открыв которую, вы увидите спуск в канализацию; 
  • Эту дверь мы используем как ориентир. Справа от неё будут установлены ящики. Запрыгивайте по ним наверх. Там вы увидите лестницу. Поднявшись по ней, перед вами будет синяя дверь, а справа держатель предохранителя. Устанавливайте предохранитель, после чего открывайте дверь при помощи синего ключа-карты.

Здание-головоломкаЗдание с рубильником на окраине РТ

В Rust более лаконичный синтаксис, но к нему нужно привыкнуть

Вообще, синтаксис Rust меня вначале сильно раздражал, но я уже почти смирился с ним.

Раздражает символ ; в конце expression, который меняет возвращаемый тип на аналог сишного void. Поставил точку с запятой — программа перестаёт компилироваться. А компилятор молотит type-чекером, который занимает целое ядро, чтобы rust-analyzer и IDE написали красным: «Смотри, у тебя тут типы не сошлись».

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

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

Команды для разработчиков

Команды разработчиков для отладки сценариев, скриптов и модов.

Команда Тип Значение по умолчанию Описание
developer global.developer C false Показывает некоторую информацию для разработчиков.
vis.attack C false Показывает траекторию полёта пуль. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.damage C false Показывает нанесённый урон. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.metab C false Показывает информацию по метаболизму. Примечание: Работает только в режиме разработчика (developer) или отладки.
vis.triggers C false Показывает триггеры. Примечание: Работает только в режиме разработчика (developer) или отладки.
debugmode global.debugmode C false
dev.culling C
dev.hidelayer C
dev.netgraph C false Показывает качество связи с сервером.
dev.sampling C
dev.shaderlod C 2147483647 Примечание: Команда больше не поддерживается.
dev.showlayer C Показывает количество игроков на сервере.
dev.togglelayer C
cui.test C, S
data.export S
ddraw.arrow
ddraw.line
ddraw.sphere
ddraw.text
entity.debug_toggle C

Antihack команды

Команды управления, встроенной в игру antihack системы.

Команда Тип Значение по умолчанию Описание
antihack.debuglevel C, S 1 Оповещение нарушений в консоль сервера:

0 = Ничего не выводить
1 = Выводить сообщения о серьёзных нарушениях
2 = Выводить все замечания

antihack.enabled C, S true Команда включает или выключает Antihack на сервере.
antihack.enforcementlevel C, S 1 Автоматическое принятие сервером решения о судьбе игрока:

0 = Ничего не делать
1 = Выкинуть игрока
2 = Забанить игрока

antihack.maxviolation C, S 5 Количество нарушений, которое приведёт игрока к бану на сервере.
antihack.relaxationpause C, S 5 Откатит изменения назад до момента обнаружения нарушения.
antihack.relaxationrate C, S 0.1 Скорость, с которой значение нарушения будет снижаться.
antihack.userlevel C, S На кого будет реагировать Antihack:

0 = Игроки
1 = Администраторы
2 = Разработчики

antihack.flyhack_protection C, S 1 Включить защиту от flyhack:

0 = Выключен
1 = Включён
2 = Расширенные настройки

antihack.flyhack_forgiveness C, S 2 Преодолённая дистанция в полёте, после которой Antihack начинает реагировать на игрока.Примечание: Чем меньше значение, тем больше ложных срабатываний.
antihack.flyhack_penalty C, S 4 Количество предполагаемого использования Flyhack, после которого автоматически будет выдан бан.
antihack.flyhack_reject C, S При обнаружении Flyhack, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак.Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки, кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.
antihack.noclip_protection C, S 2 Включить защиту от noclip:

0 = Выключен
1 = Включён
2 = Расширенные настройки

antihack.noclip_penalty C, S 4 Количество предполагаемого использования Noclip, после которого автоматически будет выдан бан.
antihack.noclip_reject C, S При обнаружении Noclip, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак.Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.
antihack.speedhack_protection C, S true Включить защиту от speedhack.
antihack.speedhack_deltatime C, S 0.2 Интервал времени для проверки скорости. Чем ниже значение, тем выше шанс ложных срабатываний.Примечание: Чем меньше значение, тем больше ложных срабатываний
antihack.speedhack_forgiveness C, S 2 Предполагаемая минимальная скорость при использовании speedhack.
antihack.speedhack_history C, S 20 Преодолённое расстояние с использованием speedhack, при котором будет выдано нарушение.
antihack.speedhack_penalty C, S 4 Количество предполагаемого использования speedhack, после которого автоматически будет выдан бан.
antihack.speedhack_reject C, S При обнаружении speedhack, сервер может игнорировать перемещение игрока, фактически замораживая его положение на сервере в том месте, где был обнаружен хак. Примечание: Перемещение игрока останавливается только на сервере. Это видят все игроки, кроме нарушителя. На клиенте нарушителя он продолжит двигаться, но после остановки его откатит на позицию, сохранённую на сервере. Всё это произойдёт в том случае, если не настроены жёсткие правила автоматического бана.

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

Откройте панель управления, выполнив поиск в строке поиска Windows и щелкнув приложение. Щелкните «Системы и безопасность». Снова нажмите «Системы», и откроется другое окно.

Справа после открытия «Системы» вы увидите «Расширенные настройки системы» под соответствующими настройками. Щелкните по нему, и откроется другое окно. Перейдите на вкладку «Дополнительно» и нажмите «Настройки ..» в разделе производительности.

Снимите флажок «Автоматически управлять размером файла подкачки для всех дисков». Выберите диск, на котором установлен Rust, и используйте под ним нестандартный размер.

Есть два входа для нестандартного размера: начальный и максимальный размер. Для исходного размера просто скопируйте рекомендуемый размер, указанный в разделе «Общий размер файла подкачки для всех дисков».

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

Для максимального размера вам необходимо вычислить точный размер. Он рассчитывается путем умножения текущего выделенного размера файла подкачки на 1,5. В приведенном выше примере показано, что в настоящее время выделено 14848 МБ.

Если вы умножите это на 1,5, вы получите 24576. Это число, которое вам нужно вычислить для себя, и ввести это число для максимального размера. Нажмите «ОК», и это должно максимально увеличить объем доступной на вашем компьютере памяти.

Команды для администратора

moderatorid STEAMID Эта команда используется для того, чтобы предоставить кому-либо доступ к командам администратора

kick NAME Позволяет отключить указанного игрока от сервера. Вам не понадобится полное имя, достаточно будет его уникального фрагмента. Эта команда также передает на сервер сообщение об исключении игрока.

ban Выполняет отключение игрока с последующим баном. Распространяется на весь сервер.

banid STEAMID Эта команда позволяет забанить пользователя с учётом его SteamID. Это единственная команда такого рода, которая не распространяется на оставшуюся часть сервера.

server.writecfg Эта команда полезна для того, чтобы заставить сервер записывать всех забаненных игроков и id модераторов в конфигурационные файлы (находятся в папке /server/*identity*/cfg). Конфигурационные файлы записываются при завершении работы, однако при сбое сервера все данные будут потеряны. Таким образом, не будет лишним запускать эту команду после каждого бана, чтобы убедиться, что он сохранился.

status Эта команда выводит на консоль неполный список подключенных клиентов вместе с их параметрами ping, ip и steamid.

inventory.give ITEM AMOUNT (пример: inventory.give wood 1000) Эта команда позволяет вам присваивать себе элементы. Однако в связи с тем, что меню элементов в настоящее время доступно из интерфейса F1, эта команда действительно полезна только для вбрасывания очень большого количества ресурсов. Имя элемента должно быть в короткой форме или в виде ID элемента. В документации Oxide имеется большой список, который регулярно обновляется, ознакомится с ним можно здесь!

say «I am server console» Позволяет вам говорить от лица сервера

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

server.globalchat 0 Делает текстовый чат локальным (это означает, что только находящиеся поблизости люди смогут видеть сообщения друг от друга). По умолчанию установлено значение 1.

env.time 0 — 24 Изменяет время на сервере. 6 = Dawn (рассвет) / 12 = Noon (полдень) / 18 = Dusk (сумерки) и т. д.

teleport «playername» Теперь в Rust есть функция телепортации! Просто введите часть имени игрока или его полное имя.

teleportany Довольно странная команда… Она позволяет вам телепортироваться к любому типу сущности по вашему выбору. Например, чтобы телепортироваться к ближайшей лошади, нужно набрать: teleportany horse.

noclip Включает и выключает noclip. Не будет лишни привязать эту функцию к какой-нибудь клавише (bind L noclip).

debugcamera Отрывает камеру от вашего персонажа или от игрока, за которым вы наблюдаете, и позволяет осмотреть местность незаметно для других игроков. Удерживайте «шифт», чтобы ускориться или пробел, чтобы замедлиться. Тоже очень хорошая функция для привязки, мы рекомендуем использовать клавишу P (bind P debugcamera).

Code-assistant rust-analyzer отлично работает с шаблонами

В последнее время я оборачиваю небезопасные библиотеки языка С, чтобы подцепиться к каноническому Rust API. Если бы сразу начал писать на «плюсах», уже давно бы закончил и общался с железом, к которому эта библиотека поставляется. А так как пишу на Rust, то пришлось целую неделю аккуратно оборачивать код в канонические Rust-структуры. Столкнулся с тонкостями системы типов: вариантностью ссылок, контравариантностью типов. Если не обращать на них внимания, то safe-обёртка над C API будет некорректной.

Оборачивать низкоуровневый unsafe-код в safe на Rust довольно долго, но оно того стоит. «Плюсовой» IntelliSense вряд ли сравнится с мощным rust-analyzer и справится далеко не со всем кодом, особенно с шаблонами.

Выделите больше оперативной памяти для Rust с помощью диспетчера задач

Чтобы открыть диспетчер задач, удерживайте Ctrl + Alt и нажмите Del на клавиатуре. Он откроет некоторые параметры Windows и выберет диспетчер задач.

Это откроет приложение диспетчера задач. Вы также можете выполнить поиск в строке поиска Windows и открыть оттуда.

После открытия диспетчера задач перейдите на вкладку «Подробности». В этом разделе вы можете найти все службы, запущенные на вашем компьютере, и объем памяти, который они используют в реальном времени.

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

Щелкните правой кнопкой мыши службу Rust в диспетчере задач и наведите указатель мыши на «Установить приоритет». Выберите «Выше нормального» или «Высокий», чтобы увеличить объем оперативной памяти в Rust.

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

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

Добавить комментарий

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

Adblock
detector