Перейти к основному содержанию
Используйте сборку Tools игры. Если что-то пойдёт не так, сборка Tools или Release с меньшей вероятностью упадёт и потеряет работу до последнего автосохранения.
Пожалуйста, обратитесь к меню содержимого страницы справа, чтобы перейти к разделу, который лучше всего подходит для ваших нужд. Это руководство разделено на рабочий процесс (настройка, создание карты, сохранение, полезные инструменты/команды и публикация) и контент со всем остальным, включая глоссарий внизу.

Краткое повторение

Если вы уже читали «Рабочий процесс» и ищете краткое повторение:
  1. Чтобы создать новую карту: mapping ID, или Чтобы редактировать существующую карту: mapping ID PATH (например, mapping 1000 Maps/saltern.yml) Обратите внимание, что ID должен быть номером карты, которой ещё не существует. Используйте lsmaps для просмотра списка карт, используемых в данный момент. Более высокий ID рекомендуется во избежание конфликтов с существующими.
  2. При желании mappingclientsidesetup для использования стандартной настройки картографии.
  3. Внесите все изменения на карту.
  4. Если были созданы новые комнаты, выполните fixgridatmos GID.
  5. Сохраните карту с тем же ID, который вы использовали ранее: savemap ID PATH. Важно: Если вы работаете с утилизационным шаттлом, шаттлом или Центральным Командованием, вам нужно savegrid GRID_ID PATH вместо этого.
Чтобы протестировать карту:
  1. Создайте прототип карты, если вы создаёте новую карту и её ещё не существует.
  2. forcemap ИМЯ-КАРТЫ заставит сервер загрузить вашу карту. В сборке Release вы можете нажать F7 в лобби, чтобы открыть админ-меню, и использовать Round > Start Round, чтобы пропустить ожидание. В Tools вам нужно будет использовать restartroundnow или F7 Админ-меню, затем Round > Restart NOW, чтобы переключиться на вашу карту.
  3. Если вы не тестируете энергосеть, entities with Battery do "setbatterypercent $ID 100" заставит все APC быть полностью заряженными без настройки двигателя.
  4. Чтобы вернуться к картографии, вернитесь к шагу 1. Не сохраняйте карту во время тестирования.

Настройка

С окружением разработки

Настоятельно рекомендуются окружение разработки и установка Git, чтобы вы могли поддерживать свой локальный картографический сервер в актуальном состоянии и отправлять pull request.

Сборка Tools

Если вы используете окружение разработки вместо простого хостинга локального сервера, убедитесь, что используете Tools вместо Debug/DebugOpt. Это связано с тем, что Debug добавляет искусственную задержку (делая картографирование неприятным) и чаще падает (из-за большего количества включённых assertions). Кроме того, будьте осторожны и не используйте Release, который отключает инструменты и конфигурацию среды разработки и заставляет игру вести себя как стандартный сервер вместо среды разработки. Если у вас есть runclient-Tools.bat и runserver-Tools.bat, вы можете запустить их. Если у вас нет вышеуказанных файлов или вы хотите запустить через консоль самостоятельно, просто используйте:
dotnet run --project Content.Server --configuration Tools
dotnet run --project Content.Client --configuration Tools
Если вы используете IDE, будет другой способ установки конфигурации. Например, в VS есть просто выпадающее меню: mapping-release-dropdown.png

Без окружения разработки

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

Рабочий процесс

Начало картографии

Теперь, чтобы начать создавать карты, выполните следующие шаги:
  1. Запустите как клиент, так и сервер. В Windows это можно сделать, запустив файлы “runclient.bat” и “runserver.bat” в каталоге вашего клонированного репозитория после сборки проекта/решения хотя бы один раз.
  2. Когда игровой клиент загрузится, подключитесь к серверу.
  3. Нажмите клавишу обратной кавычки/тильды `, чтобы открыть отладочную консоль, которая позволяет выполнять консольные команды.
  4. Выполните команду mapping [MapID] [MapFile], чтобы создать новую карту или отредактировать существующую.
    • Чтобы создать новую карту, укажите только ID карты. ID должен быть свободным, т. е. сервер в данный момент не может иметь другую карту с таким же ID, поэтому используйте достаточно высокий ID, чтобы избежать конфликта.
    • Чтобы отредактировать существующую карту в папке Maps/, укажите имя файла карты и свободный ID. Например, для редактирования карты Saltern используйте mapping 1000 Maps/saltern.yml
    • Чтобы отредактировать карту, которую вы ранее сохранили, выполните команду mapping 1000 [filename.yml]. Ваши сохранённые карты находятся в папке bin/Content.Server/data, отдельно от карт, используемых репозиторием в папке Resources/Maps.
  5. Внесите все желаемые изменения, используя режим песочницы и инструменты администратора. Нажмите F5 для переключения спавнера сущностей и F6 для переключения спавнера тайлов. Стены являются сущностями, поэтому вы найдёте их в спавнере сущностей.
  6. Чтобы сохранить изменения, используйте команду savemap [MapID] [MapFile]. Например, savemap 1000 name.yml сохраняет локальную копию изменённой карты в space-station-14/bin/Content.Server/data/name.yml

Распространённые инструменты и команды

  • SHIFT-Клик: размещает линию тайлов/предметов/всего с сеткой привязки
  • CTRL-Клик: размещает квадрат тайлов/предметов/всего с сеткой привязки
  • По умолчанию клавиша P (“Pick”) выбирает сущность или тайл, находящийся под курсором, для размещения.
    • Обратите внимание, что это размещает сущности того же прототипа, а не копирует исходную сущность.
  • Чтобы раскрасить все трубы в трубной сети, используйте colornetwork [entity id] Pipe [color], где entity id — это uid любой трубы в подключённой сети труб (используйте View Variable на трубе, чтобы найти его, если он не отображается в меню правого клика), а color — это hex-код цвета, начинающийся с #. См. стандартные цвета труб в разделе “Стандартные цвета труб”.
  • zoom N для отдаления во время картографии. zoom 3 отдаляет в 3 раза. Используйте zoom 1 для восстановления обычного масштаба.
  • Вы можете использовать команду physics shapes в отладочной консоли для визуализации сеток.
  • Чтобы исправить ошибочно повёрнутые стены, выполните fixrotations [GridID]
  • Чтобы найти ID сетки вашей сущности, нажмите F3 и наведитесь на сетку призраком. ID будет показан в верхнем левом углу.
  • Находясь в режиме картографии, вам не нужен свет. Если по какой-то причине всё темно, выполните в консоли команду togglelight.
  • Используйте админ-меню (F8) для переключения других вещей, таких как отображение точек появления и подпола. Это может облегчить видимость того, что вы делаете.
  • Если вы хотите протестировать освещение на вашей карте, не выходя из редактора, используйте команду “mapinit”. Сохранитесь перед этим, так как это испортит вашу карту, если вы сохранитесь после выполнения этой команды.
  • Используйте https://affectedarc07.github.io/SS13WebMap/ для просмотра большинства карт SS13 онлайн
  • При тестировании карты вы, возможно, не захотите каждый раз настраивать питание. В этом случае используйте: > entities with Battery do "setbatterypercent $ID 100"
  • Автосохранение карты включено по умолчанию и происходит в каталог данных сервера каждые 10 минут (cvar mapping.autosave_interval). Вы можете отключить его с помощью toggleautosave [map id] или изменить cvar mapping.autosave.

Действия картографии

Панель действий позволяет назначать действия по размещению сущностей, тайлов и декалей. Эти действия служат ярлыками, позволяющими быстро переключаться на размещение распространённых сущностей/тайлов/декалей. Эти действия можно выбрать, щёлкнув левой кнопкой мыши по заполненному слоту или используя соответствующую привязку клавиш (по умолчанию это цифровые клавиши 0-9). Вы также можете переключаться между 10 панелями, используя стрелки на панели или shift + <0-9>. Чтобы назначить сущность в слот, просто откройте окно размещения сущностей и щёлкните по сущности, чтобы начать её размещение. Щелчок по пустому слоту панели вместо места в игровом мире сохранит эту сущность в этот слот. Если вы находитесь в режиме ластика сущностей, щелчок по пустому слоту создаст ярлык для режима ластика. Вы можете аналогичным образом назначить действия по размещению тайлов. Обратите внимание, что удаление тайлов — это то же самое, что размещение космических тайлов. Наконец, чтобы назначить действия с декалями, откройте меню декалей и настройте выбор декалей. Опять же, щелчок по пустому слоту добавит этот декаль на панель. Вы не можете сохранить ярлык для удаления декалей на панель, так как для этого требуется открытое окно размещения декалей. Чтобы удалить действие из слота, просто щёлкните правой кнопкой мыши по этому слоту (при условии, что панель действий не заблокирована/заморожена). Набор предустановленных действий картографии можно загрузить на панель с помощью команды mappingclientsidesetup. Обратите внимание, что поскольку действия уникальны для текущей управляемой сущности, если вы используете команды призрака или захвата, вы потеряете эти действия и вам придётся повторно выполнить команду.

Мульти-сеточные и мульти-станционные карты

Станция и сетка — это не одно и то же. Например, каждый астероид — это не отдельная станция, в то время как станция может состоять из нескольких сеток (например, спасательные шаттлы). Большинство карт имеют только одну сетку, хотя в любом случае необходимо настраивать станции. Однако, поскольку вы можете использовать savemap и loadmap для сохранения/загрузки карт с несколькими сетками, существует поддержка переопределения этого поведения. Чтобы сделать сетку частью станции, дайте ей BecomesStationComponent с уникальным ID (используется только для целей картографии). Например, сетки Saltern имеют этот компонент с ID “Saltern”. Вы можете редактировать их в VV или непосредственно в файле карты. Чтобы сделать это в игре, найдите ID сетки вашей станции, используя F3 и наведя на голый тайл на станции. Затем в консоли введите vv [euID сетки] с euID из экрана F3. Перейдите к серверным компонентам и добавьте или найдите BecomeStationComponent. Затем добавьте ID в соответствующее поле. Этот ID должен соответствовать ID, указанному в вашем файле прототипа карты. Это ID, указанный перед вашим списком ролей. Это означает, что вы можете иметь несколько станций, загруженных на одной карте, так что делайте с этим что хотите.

Создание скриншота станции

Чтобы сделать скриншот станции, вам понадобится как прототип карты, хранящийся в Resources/Maps, который команда savemap 1000 name.yml должна сгенерировать на предыдущих шагах, так и прототип игровой карты, хранящийся в Resources/Prototypes/Maps, который содержит ID, путь и другую информацию — обратитесь к другим прототипам там как к примерам при создании своего. После этого выполните команду dotnet run --project Content.MapRenderer {your_map_id_here} в IDE или Git CLI с ID прототипа игровой карты (с учётом регистра). Вы также можете установить аргументы командной строки через вашу IDE и запустить таким образом. Изображение должно появиться в Resources/MapImages после завершения.

Первый запуск карты

Теперь, когда ваша карта завершена, вы захотите протестировать её в игре, чтобы убедиться, что вы можете правильно появиться и нет проблем с дверями, доступом, атмосферой, питанием и т. д. Для этого:
  1. Скопируйте ваш недавно сохранённый файл карты из “space-station-14/bin/Content.Server/data/” в “space-station-14/Resources/Maps/”. Это также необходимо будет сделать для отправки ваших изменений позже.
  2. Если это совершенно новая карта, перейдите в “space-station-14/Resources/Prototypes/Maps” и создайте .yml файл для вашей карты (известный как прототип карты). В качестве руководства скопируйте существующий и измените имя, чтобы оно соответствовало вашей новой карте, и отредактируйте содержимое в текстовом редакторе, таком как Notepad++, чтобы ваша новая карта имела уникальный ID и имя. Смотрите раздел о мульти-сеточных и мульти-станционных картах для ID станций (это не то же самое, что ID вашей карты).
  3. Теперь вы можете перезапустить клиент и сервер. После подключения выполните команду forcemap [ID], где ID — это ID, указанный в .yml файле, о котором мы говорили ранее. В Release просто нажмите F7 в лобби, чтобы открыть админ-меню, и используйте Round > Start Round, чтобы пропустить ожидание. Если вы используете Tools, выполните команду restartnow или F7 Админ-меню, затем Round > Restart NOW, чтобы перезапустить сервер на вашей карте.
  4. Подключитесь к игре, и вы должны оказаться на своей новой карте. Обратитесь к разделу устранения неполадок, если у вас возникли проблемы.

Открытие PR и добавление в игру

После того как вы протестировали свою карту, запустив её в игре, как показано ранее, и прошли контрольный список контроля качества, как показано здесь, вы готовы сделать pull request для добавления вашей карты в игру.

Важно

При отправке PR связанная ветка будет протестирована с помощью ‘checks’, чтобы убедиться в отсутствии ошибок или конфликтов. PR, содержащий новую карту, будет отмечен задачей AllMapsTested в PostMapInitTest.cs, если она не будет добавлена в список тестовых случаев внутри файла. Чтобы предотвратить это, просто откройте файл PostMapInitTest.cs и добавьте ID любых новых карт в список с именем GameMaps. Чтобы сделать pull request:
  1. Создайте ветку в вашем клонированном репозитории через ваш Github-клиент.
  2. Добавьте файлы вашей карты и прототипа карты в ваш commit и обновите PostMapInitTest.cs, где это применимо. (Проиндексируйте их)
  3. Зафиксируйте эти изменения локально и отправьте их в origin.
  4. Перейдите в вышестоящий репозиторий SS14 и перейдите на вкладку pull requests. Там должен быть баннер с надписью «recent changes on your branch, pull request?». Сделайте это, чтобы открыть pull request для вашей карты. Альтернативно вы можете открыть pull request из вашего репозитория.
  5. Заполните страницу pull request деталями, такими как скриншоты/рендеры карты, укажите, что вы следовали контрольному списку контроля качества, максимальное/минимальное количество игроков и любые другие детали, а также добавьте запись в changelog.
Не забудьте удалить сохранённую карту в space-station-14/bin/Content.Server/data, когда полностью закончите, так как она останется, даже когда ваши изменения будут зафиксированы.

Устранение неполадок и ЧаВО

Загрузка карты

Я получаю ошибку о пропущенных прототипах

Если вы недавно обновили свою локальную копию, ID сущности, которую вы используете на карте, изменился. Проверьте логи клиента и сервера на отсутствующий ID прототипа. Затем откройте файл вашей карты в текстовом редакторе, таком как Notepad++, и выполните CTRL-F, найдите и замените — найдите отсутствующий ID прототипа и замените его на новый ID прототипа. Новый ID можно найти, проверив недавние PR на GitHub, спросив на Discord или проверив соответствующую папку сущностей на GitHub.

Я недавно обновился и получаю фатальную ошибку / не могу загрузиться

Если вы стянули последний master из upstream и пытаетесь запустить клиент и сервер, но он падает / получает фатальную ошибку — это, скорее всего, означает, что вам нужно пересобрать проект в вашей IDE. Откройте проект в Visual Studio Community или вашей предпочтительной IDE и соберите проект заново. Если проблемы всё ещё возникают, убедитесь, что вы на последнем upstream, при необходимости снова стяните upstream, запустите скрипт “Run_this.py” для обновления подмодулей, и если это всё ещё не работает, проверьте Discord для получения последней информации.

Контент

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

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

Спавнер тайлов

  • При размещении тайлов, как упоминалось, вы можете удерживать ctrl и щёлкнуть, чтобы разместить прямоугольник тайлов, или shift и щёлкнуть для линии.
  • Для удаления тайлов используйте тайл “Space”.
  • Вам не нужно сначала размещать обшивку, а затем тайлы, вы можете просто разместить любой тайл, и он будет отодран, чтобы показать нижележащий тайл в игре (обычно обшивка).
  • Аналогично, вы можете перезаписывать тайлы, размещая новый на его месте — не нужно сначала удалять их.
  • Будьте осторожны при размещении новых тайлов, чтобы они были частью правильной сетки — размещайте их поверх существующего тайла при массовом размещении или убедитесь, что они привязываются к существующему тайлу. Периодически выполняйте lsgrid в консоли, чтобы проверить, что вы не создали больше сеток.

Спавнер сущностей и размещение

  • Ищите сущности по их ID в строке поиска, затем вы можете добавить её на панель действий слева для последующего использования, щёлкнув по ней и выбрав слот.
  • Используйте выпадающее меню Snap для изменения режима размещения. Для большинства вещей вам подойдёт значение по умолчанию или snap to centre. Иногда требуется свободное размещение для индивидуального подхода.
  • Не забывайте поворачивать определённые сущности. Некоторые, как APC и кнопки, доступны только с одного направления.

Атмосферика

Если вы добавили новые комнаты или изменили планировку, вам нужно исправить атмосферу на старте раунда после внесения этих изменений. Используйте команду fixgridatmos [Grid euID] для этого. (Нажмите F3 или выполните lsgrid, чтобы найти euID вашей сетки) Если вы создаёте новую карту с нуля вместо редактирования существующей, вы, возможно, захотите добавить на неё атмосферу. Есть две команды для этого, в зависимости от ваших потребностей.
  • Если вы хотите, чтобы на вашей карте была работающая симуляция атмосферы (газы распространяются и т. д.), используйте addatmos 2, где “2” — это ID сетки.
  • Если вы хотите, чтобы на вашей карте была статическая атмосфера (газы не распространяются независимо от обстоятельств), используйте addunsimulatedatmos 2, где “2” — это ID сетки.

Размещение атмосферных компонентов

Чтобы создать систему жизнеобеспечения на вашей карте, вам нужно создать одну или две сети труб — одну для распределения воздуха и одну для отвода отработанных газов. Используйте следующие устройства в ваших трубных сетях:
  • Vents — используйте их по станции для распределения свежего воздуха.
  • Scrubbers — подключайте их к сети труб отходов по станции для очистки воздуха от вредных газов.
  • Passive Vents — используйте их в ваших распределительных резервуарах, например, в баке воздушной смеси, для подключения к вашей распределительной сети. Также используются для стравливания в космос при размещении за насосом и клапаном.
  • Mixers — используйте их для смешивания газов в распределительную смесь. Убедитесь, что подключили первичную сторону (боковой порт) и вторичную сторону (нижний порт), как вам нужно для вашей смеси в пропорции к UI. Для воздушной смеси нужно примерно 78% азота и 22% кислорода. Выход затем может идти в бак воздушной смеси / хранения или напрямую в распределение.
  • Filters — используются для отделения газа от первичного входа через вторичный (нижний) выход и пропускания всех остальных газов через другую сторону. Настройте их для переработки газов из вашей сети отходов обратно в ваши газовые баки.
  • Valves — используются для ручного перекрытия участков вашей трубной сети. Полезно размещать перед пассивным вентилем для стравливания в космос.
  • Pumps — используются после пассивного вентиля для контроля количества газа, нагнетаемого в сеть. Используйте их после баков хранения газа.
  • Atmos Markers — если вы размещаете баки хранения газа, обязательно используйте “Atmos Fix (gas) Marker” в спавнере сущностей, чтобы установить правильный газ в баках. Это гарантирует, что при выполнении команды fixgridatmos в баки будет помещён правильный газ.
  • Air Sensor — используется для подключения логики и датчиков к другим устройствам для их активации. Используется специально для аварийных сигнализаций воздуха и пожара.
  • Air Alarm — используется с датчиками воздуха для обнаружения опасных атмосферных условий в зонах и отправки предупреждений в Инженерию / Атмосферику. Используйте связь машин для подключения датчиков воздуха в соседних комнатах к сигнализации, а также вентилей и скрубберов в текущей комнате к сигнализации. Также подключите противопожарные двери между комнатами к сигнализации, чтобы она могла активировать их для блокировки участков.
  • Fire Alarm — используется для активации противопожарных дверей в текущей зоне. Используйте связь машин для подключения непосредственно к противопожарным дверям в её комнате или секции.
  • Gas Recycler — преобразует углекислый газ в кислород, а закись азота в азот, когда входной газ сжат до 3 МПа и нагрет до не менее 300°C.
  • Gas Condenser — преобразует газы в реагенты. Вероятно, более важен для химии или науки, чем для атмосферики.

Стандартные цвета труб

Предпочтительно использовать стандартные цвета труб для вашей атмосферной планировки, чтобы игроки и другие мапперы могли сразу их распознать.
  • Контур отходов: #990000FF (тускло-красный)
  • Контур распределения: #0055CCFF (приглушённый синий)
  • Воздух: #03FCD3FF (голубой)
  • Смесь: #947507FF (коричневатый)

Питание

Ваша энергосеть состоит из проводов HV, MV и LV. Во всех случаях провод должен быть размещён ПОД соответствующим устройством для подключения, за исключением потребителей LV, как указано ниже:
  • HV провода — это ваши линии передачи между генераторами, накопителями энергии (SMES) и подстанциями.
  • MV провода — соединяют ваши подстанции и APC. Убедитесь, что разместили их под обоими устройствами.
  • LV провода или провода APC — подключаются от APC ко всем потребителям в радиусе 3 тайлов (поэтому не размещайте их под вещами, это не нужно).
Ваши основные устройства в энергосети следующие:
  • Substation — хранит небольшое количество энергии. Подключается к основной сети через HV кабели, принимая энергию, и распределяет её через MV кабели ко многим APC.
  • APC — контроллеры питания зоны. Хранят небольшое количество энергии в зависимости от установленной батареи. Подключаются к подстанции через MV кабель. LV кабель под ними используется для подачи питания потребителям. Убедитесь, что они направлены в сторону использования.
  • SMES — используются для хранения огромного количества энергии в HV сети. Нельзя соединять кабелями между SMES, поэтому нужно вывести провод наружу и затем обратно.
  • Cable Terminal — используются для разделения цепей в вашей HV сети. Ваша первичная цепь находится на стороне с коробкой, а вторичная сторона (выход) — там, куда указывают кабели. Размещайте их, направленными в группу SMES, чтобы ваша генерация была на первичной стороне, а ваша основная сеть выходила из SMES через кабельную сторону клеммной колодки (см. рисунок ниже для визуальной помощи). Вторичная сторона будет отбирать энергию от первичной, поэтому используйте их экономно на вторичной цепи.
  • Generators — это могут быть портативные генераторы, коллекторы плазмы, солнечные панели и многое другое. Подсоедините HV кабель под ними для использования генерируемой энергии. Это включает контроллер AME.
  • PA Power Box — особое упоминание: для питания ускорителя частиц необходим HV кабель под PA кабелем / блоком питания.
По всем остальным вопросам, касающимся питания, таким как настройка двигателей, обратитесь к игровой вики здесь.

Декали

Декали позволяют мапперам добавлять малозатратные эффекты, такие как предупреждающие линии, грязь/ржавчину или наложения на тайлы. Инструмент размещения декалей доступен в админском меню, в меню песочницы или по нажатию F8. Управление следующее:
  • Левый клик для размещения декаля
  • Правый клик для удаления декалей в радиусе
Декали могут быть окрашены в произвольные цвета с RGBA, могут быть очищаемыми, могут быть упорядочены по глубине отрисовки и могут быть повёрнуты на любой угол, хотя spinbox по умолчанию использует шаги в 90 градусов. Если вы не можете разместить декали, закройте и снова откройте меню. Тайлы и сущности не могут быть размещены, пока открыт инструмент размещения декалей, и вы также не можете выполнять взаимодействия, так как он их переопределяет.

Палитры

Палитры можно выбрать в меню декалей. Это часто используемые цвета, такие как цвета отделов (охрана, командование, сервис и т. д.), которые можно выбрать. Вы можете очень легко добавить свои собственные палитры. Просто перейдите в Resources/Prototypes/Palettes, скопируйте один из шаблонов в новый файл и измените ID/имя, а также цвета, которые вы хотите использовать. Цвета в формате hex RRGGBBAA.

Точки варпа, станционные маяки и карты станции

Все карты нуждаются в точках варпа, чтобы наблюдатели могли быстрее передвигаться. Большинство карт теперь будут использовать станционные маяки вместо точек варпа, так как они уже включают именованный компонент точки варпа. Размещайте их в соответствующих комнатах вашей станции вместо точек варпа. Это позволит им правильно отображаться на картах станции. Если вы хотите разрешить людям варпаться призраком в определённое место, но не хотите, чтобы оно отображалось на карте станции, или оно не подходит для станционного маяка (планеты, игроки, которые могут передвинуть точку варпа, другие причины), используйте классический фиолетовый маркер точки варпа. Разместите его, затем щёлкните правой кнопкой мыши, view variable, перейдите к серверным компонентам, найдите warp component, затем измените имя в этом компоненте, чтобы оно отражало то, что вы хотите видеть в меню варпа.

Именование дверей и редактирование табличек

View variable (VV) — ваш друг. Щёлкните правой кнопкой мыши по объекту, такому как дверь или табличка, и перейдите на вкладку серверных переменных. Здесь вы можете редактировать имя и описание любой сущности на вашей карте. Используйте это для именования конкретных дверей на вашей карте или придания смысла предупреждающим знакам и кнопкам, чтобы их назначение было более очевидным для игроков.

Спавнеры транспортных средств

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

Камеры

  • Разместите “Camera Router” для вашего конкретного отдела в защищённой зоне, например, в шкафу с доступом начальника отдела / серверной в отделе, или в серверной/роутерной.
  • Разместите камеры наблюдения (вставьте отдел) по станции. При их размещении, чтобы исправить имя, отображаемое на мониторе камер, нужно: Правый клик > Debug > View Variable > Server Components > SurveillanceCameraComponent > отредактируйте CameraID и нажмите Enter.
  • Разместите монитор камер, желательно в более защищённом месте, чтобы не каждый мог на него смотреть.
  • Если вы хотите протестировать обзор камеры, сохраните карту, затем выполните mapinit. Затем вы можете просматривать монитор камер и проверять их обзор, не забудьте выполнить togglelight в консоли для получения реального обзора.
  • Для развлекательных камер следуйте тому же процессу, что и выше, но с камерами, отмеченными (entertainment).

Связь

Станциям требуется телекоммуникационный сервер для правильной работы гарнитур и радиостанций. Убедитесь, что разместили TelecomServerFilled где-нибудь на вашей карте, установите указатель и поместите туда станционный маяк.

Связь машин (мультитул, гермодвери, конвейеры и т. д.)

Связь машин работает точно так же, как в игре. Заспавньте себе мультитул из спавнера сущностей и, держа его в руках, щёлкните по сущности, которую хотите связать (конвейеры, гермодвери, ставни и т. д.), затем щёлкните по подходящему вводу, такому как кнопка, переключатель или рычаг. Затем выберите способ связи; в большинстве случаев подходит стандартная связь. Стандартный радиус действия таких вводов, как кнопки, составляет 30 тайлов. Если ваша кнопка находится дальше, вы можете отредактировать радиус с помощью view variable. Правый клик > debug > view variable > server components > transmission component. Отредактируйте радиус в соответствии с вашими потребностями. Старайтесь держать его достаточно близко к вашей цели, иначе в игре это можно будет использовать не по назначению.

Грузовой шаттл

Чтобы включить грузовой шаттл для тестирования на локальном сервере, выполните следующее в серверной консоли: sudo cvar shuttle.cargo true

Спасательные капсулы

Чтобы разместить спасательные капсулы, просто разместите стыковочный шлюз с суффиксом escape 3x4. Убедитесь, что оставили зазор 3x4 из космоса снаружи стыковочного узла для его появления при инициализации карты, а также хотя бы один тайл пространства вокруг этого зазора по логическим причинам.

Планеты

В конце концов, это симулятор космической станции, но если по какой-то причине вам нужны карты, которые функционируют как планеты с пригодной для дыхания атмосферой и гравитацией, которую нельзя отключить (см. Планета Нюки):
Существует вспомогательная команда planet, которая применит разумные значения по умолчанию для большинства нижеперечисленного к существующей карте.
  1. Создайте новую карту обычным способом с помощью mapping. Нет необходимости добавлять генератор гравитации или fixgridatmos (пока) из-за следующих шагов.
  2. Откройте админское меню (F7) → Objects → Maps, найдите новую карту, которую вы только что создали, щёлкните по ней, чтобы открыть View Variables. В разделе Server Components → Add Component:
    • Добавьте Gravity.
    • Добавьте FootstepModifier и установите звук через VV.
    • Добавьте Parallax и установите прототип параллакса. Если вы хотите, чтобы это выглядело как земля, вам нужно будет создать новый.
    • Добавьте MapGrid на карту.
    • Добавьте MapAtmosphere
      • Установите Space в False
      • Установите Mixture в соответствии с атмосферой вашей планеты. Поля, на которые стоит обратить внимание: температура (290K — хороший выбор) и начальное количество молей (22 моль O2, 82 моль N2) — хороший выбор.
      • Дополнительное веселье: поле Mixture не редактируется в vv, поэтому вам придётся сохранить карту, открыть текстовый редактор, найти компонент MapAtmosphere и вручную прописать его.
        - space: False
          mixture:
            volume: 2500
            temperature: 290
            moles:
            - 21.824879
            - 82.10312
          type: MapAtmosphere
      
      • После повторной загрузки выполните fixgridatmos
  3. Откройте админское меню (F7) → Objects → Grids (не Maps!), найдите новую сетку для карты, которую вы только что создали, щёлкните по ней, чтобы открыть View Variables. В разделе Server Components:
    • Поскольку вы добавили Gravity на карту, эта сетка теперь имеет Gravity. Откройте её:
      • Установите EnableVV в True
  4. Сохраните и протестируйте.

Стандарты картографии

Стыковочные порты / Эвакуация / Спасение

Для спасательных / эвакуационных стыковок мы используем макет 5-3-5: 5 тайлов, 3 тайла зазора и 5 тайлов. Часть из 5 тайлов должна быть стекло-стыковка-стекло / -стыковка-стекло, где стекло — это армированное стекло или армированная стена. Мы рекомендуем оставлять зазор не менее 5 тайлов с каждой стороны зоны стыковки тоже, больше, если можете себе позволить, чтобы корабли могли легче стыковаться. Мы настоятельно рекомендуем использовать стеклянный вариант стыковочных шлюзов, чтобы люди могли видеть сквозь них и случайно не разгерметизировать станцию. Стыковка может быть на любом расстоянии от станции, с достаточным количеством шлюзов между станцией и последним шлюзом, выходящим в космос. Эта зона должна быть хорошо освещена с аварийным освещением поблизости, чтобы стыкующиеся шаттлы могли видеть ситуацию внутри.

Стыковка прибытия

Стыковка прибытия может быть в формате ангара или плоской стыковки, как показано на примере спасательной стыковки выше.
  • Ангарный тип, как следует из названия, представляет собой стыковку, которая оборачивается вокруг стыкующегося шаттла в форме буквы U. Она должна стараться придерживаться того же расстояния, что и плоская стыковка, поэтому должен быть буфер в 5 тайлов от станции для стоянки корабля, затем начинаются первые 5 тайлов из 5-3-5. Для прибытия нужен только один набор шлюзов, так что это скорее дизайн из 5 тайлов, 5-ти тайлов.
  • Плоский тип должен следовать тому же формату, что и спасательная стыковка: 5-3-5 с зазором в 5 тайлов с каждой стороны.

Стыковочная штанга

Все карты также должны иметь стыковочную штангу в дополнение к стыковкам прибытия и спасения. Стыковочная штанга должна иметь следующие характеристики:
  • Выступать от станции без непосредственных препятствий с каждой стороны как минимум на 20 тайлов с каждой стороны.
  • Это необходимо для того, чтобы большие корабли для ивентов могли легко стыковаться.
  • Стыковочная штанга должна иметь как минимум 2-та йла ширины стыковочного шлюза, чтобы через него можно было легко протаскивать конструкции.
Последнее изменение 21 июня 2026 г.