Поваренная книга админа: различия между версиями
Kevicky9 (обсуждение | вклад) добавлен раздел про прототипы |
Kevicky9 (обсуждение | вклад) м →Прототипы: изменён прототип примера |
||
| Строка 120: | Строка 120: | ||
<pre> | <pre> | ||
- type: entity | - type: entity | ||
id: | parent: ClothingHeadsetAlt | ||
name: | id: ClothingHeadsetCentComCCAlt | ||
suffix: CentCom | |||
name: Гарнитура офицера ЦК | |||
description: Стандартная гарнитура ЦК. | |||
components: | components: | ||
- type: Headset | |||
channels: | |||
- CentCom | |||
- | - type: Sprite | ||
sprite: Clothing/Ears/Headsets/centcom.rsi | |||
- type: Clothing | |||
- type: | sprite: Clothing/Ears/Headsets/centcom.rsi | ||
</pre> | </pre> | ||
Версия от 08:53, 23 декабря 2022
Данная статья посвящена всяким полезностям для админов.
Консоль открывается по клавише ` (ё).
Переход между состояниями админа и простого игрока с помощью команд:
deadminубирает с вас права и делает обычным игроком;readminвозвращает вам права администратора.
Отыгрыш ЦК
Установка кодов угроз
Позволяет менять код на станции и блокировать его смену персоналом с консоли связи:
setalertlevel <ID кода> [заблокирована ли возможность сменить ("true" или "false")]
ID кодов:
green- зелёный;blue- синий;yellow- жёлтый;violet- фиолетовый;red- красный;gamma- гамма;delta- дельта;epsilon- эпсилон.
Значения кодов см. Стандартные_Рабочие_Процедуры#Уровни_угрозы.
Эвакуационный шаттл
callshuttle #, где#- кол-во минут до шаттла, вызывает эвакуационный шаттл.dockemergencyshuttleмгновенно стыкует эвакуационный шаттл к станции.
Раунд
addgamerule <rules> добавляет режим или ивент к следующему или идущему раунду.
Nukeops и Pirates надо добавлять обязательно до начала раунда. Zombie и Traitor можно добавлять во время раунда, но лучше до начала. Остальные - классические ивенты - срабатывают сразу, даже в лобби.
customvote <вопрос> <ответ1> <ответ2> ... <ответN> - создаёт голосование с заданными параметрами, которое видно и в раунде, и в лобби.
Баны
Бан роли игроку
roleban <логин> <ID профессии> "<причина>" <время в минутах или 0 для пермы>
Узнать ID работы можно, найдя соответствующий файл этой роли на Github:
# /Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml - type: job id: HeadOfSecurity # <--- интересующий нас ID name: job-name-hos playTimeTracker: JobHeadOfSecurity ...
Пример команды: roleban Morty Assistant "Очень плох" 60
Отмена бана роли
roleunban <ID бана>
Просто бан
ban <login> <причина> [время бана в минутах или 0 для перма]
Логи
Просмотр логов доступен по команде adminlogs в консоли.
Сетки и карты
Основные понятия:
- Карта (map) - БСС-пространство, содержащее сетки (grids).
- Сетка (grid) - совокупность соединённых тайлов и игровых сущностях, находящихся на них. Собственно, станция - большая единая сетка. Например, если отделить от неё кусочек или поставить прутья на космос, то получится новая сетка, отдельная от станции.
Карта (map)
Карта - БСС-пространство и содержащиеся в нём сетки (grids). Имеет два состояния init: True и init: False - пауза и не пауза. С помощью команды lsmap можно вывести список всех существующих в текущий момент карт, их ID и их состояние (пауза или нет). Основные команды:
mapping [MapID] [путь до мира или сетки]создаёт новую карту на свободном ID или с данным ID, который не должен быть занят существующими картами, и телепортирует вас на неё. Если дан путь до мира или сетки, то загружает этот файл в новосозданный мир. По умолчанию карта поставлена на паузы.mapinit <MapID>снимает с паузы или размораживает карту. Не сработает с эвакуационным шаттлом и картой ЦК.addmap <MapID>создаёт размороженный мир с данным ID, к которому телепортироваться нужно вручную.rmmap <MapID>удаляет мир с данным ID. ОЧЕНЬ рекомендуется дюжину раз проверять ID прежде, чем нажимать Enter, иначе ненароком можно удалить мир со станцией вместе с игроками.
Сетка (grid)
Сетка - совокупность соединённых вместе тайлов (пол) и лежащих на них предметов. Например, станция - отдельная сетка, шаттл карго - тоже отдельная сетка.
Спавн сетки:
- Получить ID текущей карты. Для этого используйте команду
loc:
- Определитесь с шаблоном который хотите загрузить на карту.
- Используйте команду
loadgrid <ID карты> <загружаемый шаблон>. По умолчанию объект появится на нулевых координатах (x: 0, y: 0). Вы можете телепортировать себя туда, используя команду:tp <x> <y>. - Если вы хотите переместить его на другие координаты, то см. #Перемещение сеток.
- Profit!
Перемещение сеток:
tpgrid <id сетки> <x> <y>- сама команда для телепорта;lsgridвыдаёт список всех существующих сеток;locдаёт ваши текущие координаты, там же указывается ID сетки на которой вы стоите (GridID).
Сохранение сеток:
Функция позволяет сохранить сетку как файл с картой на сервере и загружать ее в будущих раундах.
❗Не злоупотребляйте этой функцией и сохраняйте только действительно необходимые вам вещи.
- Узнайте ID сетки на которой находится ваш персонаж/призрак с помощью команды
loc. Нужное вами число это GridID. - Далее сама команда для сохранения сетки как карты:
savebp <gridUid> <path>, где<gridId>это ранее полученное число, а<path>- путь, по которому сетка будет сохранена в папке сервера. Достаточно просто указать название файла. Обязательно укажите расширение.ymlдля файла.
Пример:savebp 12 myShuttle.yml. - Profit!
Прототипы
В панели администратора есть возможность загрузить в игру свой прототип. Например, нужен спавнер случайного гуманоида для проведения какого-нибудь мероприятия:
- 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
В админ-панели (по клавише F7) во вкладке "Админ-абуз" есть кнопка "Загрузить прототип", кликнув на неё выберите файл прототипа, который нужно загрузить.
Загруженные прототипы будут доступен до перезапуска сервера.
Загрузка RSI
RSI - формат группы изображений, изобретённый создателями SS14. Используется для спрайтов. У администраторов существует возможность загрузить свои RSI для использования их в прототипах без необходимости перезапуска сервера или перекомпиляции сборки.
Например, нужно загрузить следующий RSI:
delorian.rsi/ ├── auto.png └── meta.json
Для этого нужно использовать команду uploadfile с прописанной директорией:
> uploadfile delorian.rsi/auto.png > uploadfile delorian.rsi/meta.json
Для использования загруженных спрайтов в прототипах нужно прописывать такой путь:
- type: Sprite
sprite: /Uploaded/delorian.rsi # <------
layers:
- state: auto
map: ["enum.VehicleVisualLayers.AutoAnimate"]
Загруженные файлы удаляются при перезапуске сервера.