Перейти к основному содержанию
Это руководство охватывает несколько примеров команд Toolshed. Обратите внимание, что некоторые из этих команд и упомянутые C#-типы специфичны для SS14, но они всё равно дают хорошее представление о том, как использовать Toolshed для других игр.

Взаимодействие с сущностями

В большинстве случаев при работе с Toolshed вы будете манипулировать сущностями.

Основы

ent — это команда Toolshed, которая позволяет получить сущность по её ENTID. Передавая вывод команды через pipe, мы можем выполнять различные действия над сущностью. Вот несколько примеров:
> ent 12345 delete
Удалит указанную сущность.
> ent 12345 replace PlushieBee
Заменит сущность указанным прототипом, например, превратит её в плюшевую пчелу.
> ent 12345 comp:ensure Mindshield comp:rm Electrified comp:rm Airtight
Проверит, есть ли у сущности компонент “Mindshield”, и добавит его при необходимости, затем удалит компоненты Electrified и Airtight.

Нацеливание на себя

Команда self всегда возвращает сущность, которой вы в данный момент управляете. Альтернативно можно использовать переменную $self.
> self rejuvenate / Исцелит вашего персонажа

Запросы и фильтры сущностей

entities и nearby возвращают либо все существующие на сервере сущности, либо сущности в пределах указанного радиуса в тайлах от входной сущности. Имейте в виду, что для них требуется разрешение QUERY.
> entities
Вернёт список всех сущностей на сервере.
> self nearby 20
Вернёт все сущности в радиусе 20 тайлов от вашего персонажа.
> ent 12345 nearby 3
Вернёт все сущности в радиусе 3 тайлов от сущности 12345.
> entities with ZombifyOnDeath visualize
Откроет UI со всеми заражёнными людьми на станции, откуда можно VV или TP к ним.
> self nearby 20 replace PlushieBee
Заменит каждую сущность в радиусе 20 тайлов указанным прототипом (в данном случае PlushieBee).
> entities prototyped CableApcExtension delete
Удалит все LV-кабели питания на сервере. Наиболее важные команды для фильтрации вывода:
named "СТРОКА"
Принимает список сущностей и фильтрует их по имени. Эта команда совместима с wildcard .*.
> entities named ".*cable"
Вернёт все сущности, чьё имя заканчивается на “cable”.
> entities named ".*power.*"
Вернёт все сущности, содержащие в имени строку “power”.
with [компонент]
Принимает список сущностей и возвращает только те, у которых есть указанный компонент.
> entities with MobState
Вернёт всех мобов на сервере.
actor:controlled
Принимает список сущностей и возвращает все сущности, которыми в данный момент управляет игрок.
> entities actor:controlled tp:to $self
Выше переменная $self используется как аргумент команды — это телепортирует всех игроков к вам.
select [N]
Принимает список сущностей и случайным образом выбирает n сущностей из входа.
select [N%]
Принимает список сущностей и выбирает процент от входа. Комбинируя фильтры, можно делать следующее:
> entities actor:controlled select 5 tp:to $self
Телепортирует 5 случайно выбранных игроков к сущности, которой вы управляете.

Забавные команды

ПЧЁЛЫ БУДУТ ПРОДОЛЖАТЬСЯ, ПОКА МОРАЛЬ НЕ УЛУЧШИТСЯ:

> self rep 10 spawn:on "MobAngryBee" nearby 10 prototyped MobAngryBee select 1 tag:add "DoorBumpOpener" do "makeghostrole $ID \"Queen Bee\" \"Lead the bees!\"" do "rename $ID \"Queen Bee\"" nearby 10 protoyped MobAngryBee not with GhostRole do "makeghostrole $ID \"Angry Bee\" \"You are an angry bee and you want some pizza.\""
Эту команду можно разделить на несколько частей для лучшего понимания:
  • Начинаем с получения текущего персонажа через self.
  • Затем для этого персонажа выполняем команду spawn:on 10 раз: rep 10 spawn:on "MobAngryBee".
    • Часть rep 10 повторяет команду десять раз, а spawn:on создаёт указанный прототип MobAngryBee на указанной сущности — здесь это self.
  • Затем мы получаем всё в радиусе десяти тайлов и фильтруем созданных пчёл с помощью nearby 10 prototyped MobAngryBee.
  • Получив всех пчёл, выбираем одну из них командой select 1 и добавляем тег DoorBumpOpener с помощью команды tag:add.
    • Теги — это как компоненты, не содержащие данных; DoorBumpOpener позволяет открывать шлюзы, просто входя в них, как это делает игрок.
  • Далее, для той же пчелы выполняем устаревшую команду makeghostrole — первый аргумент это ID, второй — имя, третий — описание. Важно использовать символ \ перед кавычкой, чтобы экранировать её.
  • Наконец, переименовываем нашу пчелу в “Queen Bee”.
  • Затем берём всех остальных девять пчёл и также превращаем их в ghost role, как мы сделали с Queen Bee.
Гораздо более эффективный способ — использовать две отдельные команды: одну для Queen Bee и одну для Angry Bees. Это просто демонстрация того, насколько сложным может быть toolshed.

GHOSTULARITY:

> entities with Singularity comp:ensure MobState comp:ensure MovementIgnoreGravity comp:ensure InputMover comp:ensure MobMover do "makeghostrole $ID \"Singularity\" \"FUCK\""
Эта команда превратит все сингулярности на сервере в ghost role, управляемые игроками.

Плюшевая пчелиная граната

Когда-нибудь хотели плюшевую пчелиную гранату? Вы можете получить её с помощью этой простой команды!
> self spawn:on "GrenadeStinger" do "rename $ID \"bee plushie grenade\"" do "vvwrite /entity/$ID/ClusterGrenade/FillPrototype \"PlushieBee\""

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

Введите станцию в долги

Спасатели слишком увлекаются? Введите станцию в долги этим простым решением!
> stations:get do "vvwrite /entity/$ID/StationBankAccount/Balance 1000"
Не забудьте заменить 1000 на нужный баланс. Альтернативно, можно зайти в F7 > Objects > Stations, найти ENTID станции и выполнить:
> vv /entity/ENTID/StationBankAccount

Скрипты и вы

Скрипты можно использовать для автоматизации определённых задач или команд. Чтобы создать новый скрипт, создайте новый файл в директории данных клиента Space Station 14. Имя файла может быть любым, под которым вы хотите вызывать скрипт. Вы можете редактировать его любым текстовым редактором, только сохраните как файл без расширения. Администраторы часто имеют скрипт для настройки своих призраков. Вот пример такого скрипта:
> self not prototyped AdminObserver do "aghost"
> self comp:ensure ShowCriminalRecordIcons comp:ensure ShowJobIcons comp:ensure ShowMindShieldIcons comp:ensure ShowSyndicateIcons comp:ensure Grammar comp:ensure Identity
> self do "vvwrite entity/$ID/Ghost/color '#00D2AD'"
> self do "vvwrite entity/$ID/Description \"GHOST GANG!!\""
> self do "vvwrite entity/$ID/Grammar/Attributes[gender] Male"
  • Первая строка проверяет, что вы являетесь admin observer.
  • Затем мы добавляем компоненты, полезные для администрирования, если их нет. Это отображает иконки профессий, антагов, майндшилды. Компоненты Grammar и Identity используются позже для настройки aghost.
  • Третья и четвёртая строки устанавливают цвет и описание призрака через vvwrite с указанием пути и значения.
  • Последняя строка меняет местоимения на “Он” при осмотре призрака.
Когда вы хотите запустить скрипт в игре, достаточно использовать команду exec. Если вы назвали скрипт выше “admin”, выполните команду exec /admin.
Последнее изменение 21 июня 2026 г.