|
|
Строка 1: |
Строка 1: |
| {{In development|Прогрессирующий}} | | {{In development|Заморожено}} |
|
| |
|
| __TOC__ | | __TOC__ |
|
| |
|
| |
| Данная статья посвящена всяким полезностям для админов.
| |
|
| |
| Консоль открывается по клавише <code>`</code> (<code>ё</code>).
| |
|
| |
| Переход между состояниями админа и простого игрока с помощью команд:
| |
| * <code>deadmin</code> убирает с вас права и делает обычным игроком;
| |
| * <code>readmin</code> возвращает вам права администратора.
| |
|
| |
| <code>setadminooc #FFFFFF</code> устанавливает цвет вашему нику, который будет виден в чате OOC.
| |
|
| |
| == Отыгрыш ЦК ==
| |
|
| |
| === Установка кодов угроз ===
| |
|
| |
| Позволяет менять код на станции и блокировать его смену персоналом с консоли связи:
| |
|
| |
| <code>setalertlevel <ID кода> [заблокирована ли возможность сменить ("true" или "false")]</code>
| |
|
| |
| ID кодов:
| |
| * <code>green</code> - <span style="color:308E30">зелёный</span>;
| |
| * <code>blue</code> - <span style="color:394FCC">синий</span>;
| |
| * <code>yellow</code> - <span style="color:808000">жёлтый</span>;
| |
| * <code>violet</code> - <span style="color:9932CC">фиолетовый</span>;
| |
| * <code>red</code> - <span style="color:8B0000">красный</span>;
| |
| * <code>gamma</code> - <span style="color:C6A500">гамма</span>;
| |
| * <code>delta</code> - <span style="color:800080">дельта</span>;
| |
| * <code>epsilon</code> - эпсилон.
| |
|
| |
| Значения кодов см. [[Стандартные_Рабочие_Процедуры#Уровни_угрозы]].
| |
|
| |
| === Эвакуационный шаттл ===
| |
|
| |
| * <code>callshuttle #</code>, где <code>#</code> - кол-во минут до шаттла, вызывает эвакуационный шаттл.
| |
| * <code>dockemergencyshuttle</code> мгновенно стыкует эвакуационный шаттл к станции.
| |
|
| |
| == Раунд ==
| |
|
| |
| <code>customvote <вопрос> <ответ1> <ответ2> ... <ответN></code> - создаёт голосование с заданными параметрами, которое видно и в раунде, и в лобби.
| |
|
| |
| <code>delaystart [seconds]</code> - ставит старт раунда на паузу в лобби. Если указан аргумент, то откладывает старт на указанное количество секунд.
| |
|
| |
| === Режимы игры ===
| |
|
| |
| Существующие режимы игры:
| |
| * Extended
| |
| * Secret
| |
| * Sandbox
| |
| * Traitor
| |
| * Nukeops
| |
| * Zombie
| |
| * Pirates
| |
| * Deathmatch
| |
|
| |
| <code>setgamepreset</code> устанавливает режим следующего раунда.
| |
|
| |
| <code>forcegamepreset</code> устанавливает режим и мгновенно запускает раунд.
| |
|
| |
| ==== Внутриигровые ивенты ====
| |
|
| |
| Понятия игровых режимов и игровых ивентов тесно связаны (почему-то), поэтому вызывать их можно через команды тоже...
| |
|
| |
| <code>addgamerule <rules></code> добавляет режим или ивент к следующему или идущему раунду.
| |
|
| |
| <code>endgamerule <rule></code> останавливает текущий в игре ивент.
| |
|
| |
| Список ID событий:
| |
| * <code>BasicStationEventScheduler</code> - спавнер редких игровых ивентов. Стоит во всех режимах игры кроме выживания.
| |
| * <code>RampingStationEventScheduler</code> - спавнер частых игровых ивентов для режима выживания.
| |
| * <code>Secret</code> - режим игры "Секрет"
| |
| * <code>DeathMatch</code> - режим игры "Все против всех".
| |
| * <code>NukeOps</code> - режим игры ядерных оперативников - спавнит пять нюкеров и их базу.
| |
| * <code>Pirates</code> - режим игры "Пираты" - создаёт шаттл с пиратами, пиратов по хорошему переспавнить и сделать через Уристов, сломаны.
| |
| * <code>Sandbox</code> - режим игры "Песочница", игроки имеют права спавнить энтити/декали/тайлы.
| |
| * <code>Suspicion</code> - TTT - Все вооружены, среди вооруженных есть предатели, задача не-предателей найти их и убить.
| |
| * <code>TraitorDeathMatch</code> - режим игры, резня агентов.
| |
| * <code>Zombie</code> - режим игры "Зомби".
| |
| * <code>VentClog</code> выпускает жидкости из скрубберов.
| |
| * <code>PowerGridCheck</code> выключает свет на неопределённый срок.
| |
| * <code>FalseAlarm</code> - ивент, создающий фальшивые обьявления о игровых ивентах.
| |
| * <code>BluespaceArtifact</code> создаёт рядом со станции/На ней артефакт.
| |
| * <code>BreakerFlip</code> отключает в некоторых местах ЛКП.
| |
| * <code>DiseaseOutbreak</code> выпускает рандомную болезнь рядом с игроком.
| |
| * <code>AnomalySpawn</code> создаёт аномалию.
| |
| * <code>BureaucraticError</code> - бюрократическая ошибка.
| |
| * <code>GasLeak</code> создаёт в рандомном месте рандомный газ.
| |
| * <code>KudzuGrowth</code> - кудзу.
| |
| * <code>MeteorSwarm</code> - метеоритный рой.
| |
| * <code>RandomSentience</code> даёт некоторым объектам роль призрака.
| |
| * <code>Dragon</code> - дракон, не работает, админу нужно спавнить вручную.
| |
| * <code>RevenantSpawn</code> спавнит Ревенанта.
| |
| * <code>Traitor</code> - игра выдаёт случайным игрокам предателей.
| |
| * <code>VentCritters</code> - из вентиляции лезут существа, от мышей до тарантулов.
| |
| * <code>ZombieOutbreak</code> оживляет мертвых игроков в виде зомби.
| |
| * <code>MouseMigration</code> - крысиный король с его свитой.
| |
| * <code>BluespaceLockerLink</code> - блюспейс-шкаф.
| |
| * <code>SpiderSpawn</code> спавнит в рандомных местах Тарантулов.
| |
|
| |
|
| |
|
| |
|
| |
| <!-- TODO: переписать и объединить данный раздел с разделом про режимы игры, так как они неразрывно связаны! -->
| |
|
| |
| Nukeops и Pirates надо добавлять обязательно до начала раунда. Zombie и Traitor можно добавлять во время раунда, но лучше до начала. Остальные, классические ивенты, срабатывают сразу, даже в лобби.
| |
|
| |
| ==== Починка нюкера-дионы ====
| |
|
| |
| Чтобы убрать пацифизм у дионы-нюкера, нужно удалить компоненты PacifedComponent и CombatModeComponent, а затем добавить CombatModeComponent снова. Это делается через просмотр переменных (<code>vv <EntityUID></code>) во вкладке "Компоненты сервера". Если добавить CombatModeComponent, пока у моба стоит PacifedComponent, то ничего не сработает.
| |
|
| |
| ''Если вы меняете расу ядерного оперативника или респауните его, то вы во первых лишаете его тега синдиката, а во вторых ломаете систему режима из-за чего раунд может закончится, даже если этот опер жив.''
| |
|
| |
| ==== Цели антагониста ====
| |
|
| |
| С помощью команды <code>lsobjectives <ник игрока></code> можно просмотреть цели антагониста.
| |
|
| |
| Команда <code>addobjective <nickname> <objective ID></code> добавит выбранному игроку ещё одну цель антагониста. Список ID целей (см. файл [https://github.com/space-syndicate/space-station-14/blob/master/Resources/Prototypes/Objectives/traitorObjectives.yml traitorObjectives.yml]):
| |
| * <code>CaptainIDStealObjective</code>
| |
| * <code>KillRandomObjective</code>
| |
| * <code>RandomTraitorAliveObjective</code>
| |
| * <code>DieObjective</code>
| |
| * <code>CMOHyposprayStealObjective</code>
| |
| * <code>RDHardsuitStealObjective</code>
| |
| * <code>NukeDiskStealObjective</code>
| |
| * <code>IDComputerBoardStealObjective</code>
| |
| * <code>MagbootsStealObjective</code>
| |
| * <code>SupplyConsoleBoardStealObjective</code>
| |
| * <code>CorgiMeatStealObjective</code>
| |
| * <code>CaptainGunStealObjective</code>
| |
| * <code>CaptainJetpackStealObjective</code>
| |
| * <code>EscapeShuttleObjective</code>
| |
| * <code>RandomTraitorProgressObjective</code>
| |
|
| |
|
| |
| [[Файл:Демонстрация_команды_addobjective.png]]
| |
|
| |
| == Баны ==
| |
|
| |
| === Баны роли ===
| |
|
| |
| <code>rolebanlist ...</code> позволяет просмотреть список банов ролей игрока.
| |
|
| |
| <pre>roleban <логин> <ID профессии> "<причина>" <время в минутах или 0 для пермы></pre> банит данную профессию для данного игрока.
| |
|
| |
| Узнать ID работы можно, найдя соответствующий файл этой роли на [https://github.com/space-syndicate/space-station-14/tree/master/Resources/Prototypes/Roles/Jobs Github]:
| |
|
| |
| <pre>
| |
| # /Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml
| |
| - type: job
| |
| id: HeadOfSecurity # <--- интересующий нас ID
| |
| name: job-name-hos
| |
| playTimeTracker: JobHeadOfSecurity
| |
| ...
| |
| </pre>
| |
|
| |
| Пример команды: <code>roleban Morty Assistant "Очень плох" 60</code>
| |
|
| |
| <code>departmentban <nickname> <ID отдела> <причина> <время в минутах или 0 для пермы></code> банит игроку весь отдел. ID отделов:
| |
| * Cargo
| |
| * Civilian
| |
| * Command
| |
| * Engineering
| |
| * Medical
| |
| * Science
| |
| * Security
| |
|
| |
| <code>roleunban <ID бана></code> отменяет бан роли.
| |
|
| |
| === Общие баны ===
| |
|
| |
| <code>banlist ...</code> позволяет просмотреть список банов игрока.
| |
|
| |
| <code>ban <login> <причина> [время бана в минутах или 0 для перма]</code> просто банит игрока с сервера.
| |
|
| |
| <code>pardon <ID бана></code> разбанивает простой бан игрока.
| |
|
| |
| == Логи ==
| |
|
| |
| Просмотр логов доступен по команде <code>adminlogs</code> в консоли.
| |
|
| |
| == Сетки и карты ==
| |
|
| |
| Основные понятия:
| |
| * Карта (map) - БСС-пространство, содержащее сетки (grids).
| |
| * Сетка (grid) - совокупность соединённых тайлов и игровых сущностях, находящихся на них. Собственно, станция - большая единая сетка. Например, если отделить от неё кусочек или поставить прутья на космос, то получится новая сетка, отдельная от станции.
| |
|
| |
| === Карта (map) ===
| |
|
| |
| Карта - БСС-пространство и содержащиеся в нём сетки (grids). Имеет два состояния <code>init: True</code> и <code>init: False</code> - пауза и не пауза. С помощью команды <code>lsmap</code> можно вывести список всех существующих в текущий момент карт, их ID и их состояние (пауза или нет). Основные команды:
| |
|
| |
| * <code>mapping [MapID] [путь до мира или сетки]</code> создаёт новую карту на свободном ID или с данным ID, который не должен быть занят существующими картами, и телепортирует вас на неё. Если дан путь до мира или сетки, то загружает этот файл в новосозданный мир. По умолчанию карта поставлена на паузы.
| |
| * <code>mapinit <MapID></code> снимает с паузы или размораживает карту. Не сработает с эвакуационным шаттлом и картой ЦК.
| |
| * <code>addmap <MapID></code> создаёт размороженный мир с данным ID, к которому телепортироваться нужно вручную.
| |
| * <code>rmmap <MapID></code> удаляет мир с данным ID. ОЧЕНЬ рекомендуется дюжину раз проверять ID прежде, чем нажимать Enter, иначе ненароком можно удалить мир со станцией вместе с игроками.
| |
|
| |
| === Сетка (grid) ===
| |
|
| |
| Сетка - совокупность соединённых вместе тайлов (пол) и лежащих на них предметов. Например, станция - отдельная сетка, шаттл карго - тоже отдельная сетка.
| |
|
| |
| '''Спавн сетки:'''
| |
| # Получить ID текущей карты. Для этого используйте команду <code>loc</code>:<br>[[Файл:Демонстрация использования команды loc.png]]
| |
| # Определитесь с шаблоном который хотите загрузить на карту. <!-- TODO: указать, как можно узнать список доступных шаблонов -->
| |
| # Используйте команду <code>loadgrid <ID карты> <загружаемый шаблон></code>. По умолчанию объект появится на нулевых координатах (x: 0, y: 0). Вы можете телепортировать себя туда, используя команду: <code>tp <x> <y></code>.
| |
| # Если вы хотите переместить его на другие координаты, то см. [[#Перемещение сеток]].
| |
| # Profit!
| |
|
| |
| '''Перемещение сеток:'''
| |
| * <code>tpgrid <id сетки> <x> <y></code> - сама команда для телепорта;
| |
| * <code>lsgrid</code> выдаёт список всех существующих сеток;
| |
| * <code>loc</code> даёт ваши текущие координаты, там же указывается ID сетки на которой вы стоите (GridID).
| |
|
| |
| '''Сохранение сеток:'''
| |
|
| |
| Функция позволяет сохранить сетку как файл с картой на сервере и загружать ее в будущих раундах.
| |
|
| |
| ❗Не злоупотребляйте этой функцией и сохраняйте только действительно необходимые вам вещи.
| |
|
| |
| <ol>
| |
| <li>Узнайте ID сетки на которой находится ваш персонаж/призрак с помощью команды <code>loc</code>. Нужное вами число это GridID.</li>
| |
| <li>Далее сама команда для сохранения сетки как карты: <code>savebp <gridUid> <path></code>, где <code><gridId></code> это ранее полученное число, а <code><path></code> - путь, по которому ''сетка'' будет сохранена в папке сервера. Достаточно просто указать название файла. Обязательно укажите расширение <code>.yml</code> для файла.<br>
| |
| Пример: <code>savebp 12 myShuttle.yml</code>.</li>
| |
| <li>Profit!</li>
| |
| </ol>
| |
|
| |
| '''БСС (FTL)''':
| |
|
| |
| Чтобы сделать сетку доступной для прыжка к ней через БСС, нужно открыть окно просмотра переменных этой сетки. Для этого прописывается <code>vv <gridUID></code>. Во вкладке "Компоненты сервера" нужно добавить компонент "FTLDestination" через кнопку "Добавить компонент". Готово! Сетка, а вместе с ней и карта, на которой она расположена, доступны для прыжка, например, карго-шаттла.
| |
|
| |
| Опционально можно переименовать сетку опять в просмотре переменных <code>vv</code> - во вкладке "Переменные сервера" в поле Name прописывается новое имя и обязательно нажимается Enter по завершению ввода.
| |
|
| |
| ''Примечание: чтобы новое БСС-пространство появилось в консолях управления шаттлами, нужно их обновить путём выкручивания и вкручивания обратно гаечным ключом.''
| |
|
| |
| === Непосредственно маппинг ===
| |
|
| |
| <code>fixgridatmos</code> мгновенно заполняет все тайлы грида дыхательной смесью.
| |
|
| |
| <code>colornetwork <UID> Pipe <HEX-color></code> добавляет выбранный цвет на трубу.
| |
| * #FF9900 - Сигнальный
| |
| * #FF0000FF - Скруббер
| |
| * #0000FFFF - Вентиляция
| |
| * #17E8E2FF - Воздух
| |
| * #D3FC03FF - Вирусология
| |
| * #FEF101FF - Жёлтый
| |
| * #A505FAFF - Фиолетовый
| |
| * #947507FF - Грязный
| |
| * #FFD800FF - Автобус
| |
|
| |
| <code>loadmappacts</code> - подгружает некоторые инструменты для более удобного маппинга (ставит в меню действий некоторые тайлы и стены).
| |
|
| |
| <code>dock <ID1> <ID2></code> стыкует два стыковочных портах с ID1 и с ID2, находящихся на разных сетках. Полезно, когда нужна стыковка на карте, находящейся в паузе.
| |
|
| |
| == Прототипы ==
| |
|
| |
| В панели администратора есть возможность загрузить в игру свой прототип. Например, нужен спавнер случайного гуманоида для проведения какого-нибудь мероприятия:
| |
|
| |
| <pre>
| |
| - type: entity
| |
| parent: ClothingHeadsetAlt
| |
| id: ClothingHeadsetCentComCCAlt
| |
| suffix: CentCom
| |
| name: Гарнитура офицера ЦК
| |
| description: Стандартная гарнитура ЦК.
| |
| components:
| |
| - type: Headset
| |
| channels:
| |
| - CentCom
| |
| - type: Sprite
| |
| sprite: Clothing/Ears/Headsets/centcom.rsi
| |
| - type: Clothing
| |
| sprite: Clothing/Ears/Headsets/centcom.rsi
| |
| </pre>
| |
|
| |
| В админ-панели (по клавише F7) во вкладке "Админ-абуз" есть кнопка "Загрузить прототип", кликнув на неё выберите файл прототипа, который нужно загрузить.
| |
|
| |
| Загруженные прототипы будут доступен до перезапуска сервера.
| |
|
| |
| === Загрузка RSI ===
| |
|
| |
| [https://docs.spacestation14.io/en/engine/rsi RSI] - формат группы изображений, изобретённый создателями SS14. Используется для спрайтов. У администраторов существует возможность загрузить свои RSI для использования их в прототипах без необходимости перезапуска сервера или перекомпиляции сборки.
| |
|
| |
| Например, нужно загрузить следующий RSI:
| |
| <pre>
| |
| delorian.rsi/
| |
| ├── auto.png
| |
| └── meta.json
| |
| </pre>
| |
|
| |
| Для этого нужно использовать команду <code>uploadfile</code> с прописанной директорией:
| |
| <pre>
| |
| > uploadfile delorian.rsi/auto.png
| |
| > uploadfile delorian.rsi/meta.json
| |
| </pre>
| |
|
| |
| Для использования загруженных спрайтов в прототипах нужно прописывать такой путь:
| |
| <pre>
| |
| - type: Sprite
| |
| sprite: /Uploaded/delorian.rsi # <------
| |
| layers:
| |
| - state: auto
| |
| map: ["enum.VehicleVisualLayers.AutoAnimate"]
| |
| </pre>
| |
|
| |
| Загруженные файлы удаляются при перезапуске сервера.
| |
|
| |
| В недавнем обновлении появился более лёгкий способ загрузки папок - команда <code>uploadfolder</code>.
| |
|
| |
| == BQL ==
| |
|
| |
| ''Основная статья: [[BQL]]''
| |
|
| |
| BQL - язык запросов движка SS14, который позволяет проводить массовые манипуляции с игровыми сущностями. Примеры:
| |
| * <code>forall with FaxMachine do echo $ID</code> найдёт абсолютно все факсы и выведет их UID.
| |
| * ...
| |