Перейти к основному содержанию
Сначала вам понадобится некоторое ПО:
  • Git или один из многих сторонних интерфейсов, которые упрощают его использование. Убедитесь, что он установлен в ваш PATH, как здесь.
  • Python 3.7 или выше. Убедитесь, что он установлен в ваш PATH на Windows. Также убедитесь, что опция ‘py launcher’ включена при установке на Windows. Загружайте Python с python.org. Версии, установленные из магазина Windows, иногда вызывают проблемы со сборкой.
  • .NET 10.0 SDK. Visual Studio также устанавливает это, если вы на Windows.
    • Пользователи Apple Silicon (ARM64) Mac: Некоторые старые кодовые базы будут работать только с x64 .NET, а не с ARM64. Вы можете либо загрузить x64 dotnet, либо предложить вашей кодовой базе обновить их Robust Toolbox до версии не ниже 267.0.0 для добавления поддержки (или обновить его самостоятельно).
  • Желательно IDE, чтобы сделать разработку не болезненной (все бесплатные варианты, если не указано иное):
    • Для всех платформ, Rider — одна из лучших доступных IDE, и многие maintainers и контрибьюторы SS14 предпочитают его Visual Studio. Раньше он был платным, но теперь бесплатен для некоммерческого использования.
    • Для Windows, Visual Studio 2026 Community. Для минимальной установки (боже, она большая) вам понадобится рабочая нагрузка .NET desktop development, компилятор C#, поддержка C#, NuGet package manager, MSBuild и .NET 10 SDK.
    • Для всех платформ, Visual Studio Code с расширением C#. Обычно это уступает полноценным IDE, таким как обычная Visual Studio, но некоторые опытные программисты наслаждаются минимализмом.
      • Эксклюзивно для VSCode/VSCodium: вы можете установить наше созданное сообществом расширение Robust YAML для лучшего опыта работы с YAML Robust Toolbox поверх расширения YAML Language Support.
    • Для всех платформ, VSCodium с расширением C#. Открытый исходный код и без раздувания и телеметрии VSCode.
VScode/VsCodium и SLNX
В настоящее время расширение C# Dev tools, похоже, не полностью поддерживает SLNX.

Вы можете следовать этому шагу от [Microsoft](https://devblogs.microsoft.com/dotnet/introducing-slnx-support-dotnet-cli/#c#-dev-kit), чтобы иметь возможность открыть SLNX dotnet проект.

VSCodium, похоже, вообще не имеет такой возможности. (https://github.com/muhammadsammy/free-vscode-csharp/issues/95) (Хотя вышеуказанное может работать и в VSCodium.)
Windows и winget
Пользователям Windows рекомендуется использовать winget для более лёгкой установки — просто откройте командную строку/powershell и введите следующее:

Необходимое:
`
winget install Git.Git
winget install Python.Python.3.13
winget install Microsoft.DotNet.SDK.10
`

И одну из следующих IDE:

`winget install JetBrains.Toolbox` (замените на `JetBrains.Rider`, если не хотите целое приложение Toolbox)

`winget install Microsoft.VisualStudio.Community` (Visual Studio 2026)

`winget install Microsoft.VisualStudioCode` (Visual Studio Code)

`winget install VSCodium.VSCodium` (VSCodium)

Застряли?

Застряли? Не понимаете, как выполнить определённую часть? Это видео должно помочь. Это видео предназначено для просмотра вместе с руководством и может устареть.
Вы также всегда можете попросить помощи в официальном Wizard’s Den discord или в fork agnostic developer bus discord

1. Клонирование

dmonish danger title=\"Не загружайте как zip с GitHub\" Вам нужно использовать git в той или иной форме (командная строка или графический интерфейс) для загрузки/клонирования кода. Опция «Download zip» на GitHub НЕ сработает, так как она не содержит необходимых субмодулей (игровой движок, Robust Toolbox), а также предыдущей истории. Это означает, что будет невозможно сделать коммит без неё. Даже если вы уже знаете Git, прокрутите вниз и прочитайте раздел о настройке субмодулей. Серьёзно. Если вы знакомы с Git, просто форкните и клонируйте репозиторий, настройте remotes, а затем следуйте руководству по субмодулям ниже. Если вы не знакомы с Git или просто не знаете, как продолжить, следуйте руководству Git for the SS14 Developer, которое подробно рассказывает, как вносить вклад в игру и как настроить ваш первоначальный репозиторий. Оно также касается настройки субмодулей, но это включено и сюда из-за его важности.

2. Настройка субмодулей

У нас есть автоматический обновлятор субмодулей, чтобы вам не приходилось беспокоиться о запуске git submodule update —init —recursive всё время. Запустите RUN_THIS.py внутри скачанного репозитория с помощью Python. Желательно из терминала. Это должно занять несколько секунд; если он мгновенно останавливается, проверьте, используете ли вы Python 3.7+, иначе читайте дальше. Если при запуске RUN_THIS.py окно сразу открывается и закрывается: не волнуйтесь. Это не означает, что он не сработал. Скрипт закрывается автоматически после завершения; если вы хотите проверить, что он сработал правильно, проверьте субмодуль /RobustToolbox/ и убедитесь, что все файлы на месте. Если нет, попробуйте обратиться к устранению неполадок в нижней части этой страницы. Примечание: если у вас возникли проблемы с отсутствующими файлами, рекомендуется вручную выполнить git submodule update —init —recursive один раз на случай, если что-то пошло не так с Python. Если вы хотите напрямую изменять движок или обновлять субмодуль вручную (автообновление может быть проблемой), создайте файл с именем DISABLE_SUBMODULE_AUTOUPDATE внутри директории BuildChecker/. И на этом ваш репозиторий правильно настроен!

3. Настройка IDE

Visual Studio

  1. Загрузите Visual Studio Community (если у вас нет платной версии) отсюда
  2. Запустите установщик и выберите .net desktop development, затем установите
  3. Если установщик попросит вас выбрать среду разработки, выберите Visual C#.
  4. Откройте Visual Studio
  5. Выберите Open a project or solution, затем перейдите к вашему клонированному репозиторию и откройте SpaceStation14.slnx

JetBrains Rider

  1. Установите Rider — мы рекомендуем использовать Jetbrains Toolbox, чтобы он мог автоматически обновляться в будущем.
  2. Пройдите установку.
  3. Нажмите «Open» и выберите SpaceStation14.slnx
  4. Если вы планируете заниматься разработкой движка, вы должны добавить Robust Toolbox в Directory Mappings, чтобы VCS Rider мог обнаруживать изменения в Robust. Откройте настройки Rider и перейдите в раздел Version Control > Directory Mappings и нажмите кнопку плюс (+). Для Directory укажите папку RobustToolbox в проекте, а VCS — Git
  5. Выберите ветку, которую хотите использовать, в верхнем левом углу.
  6. Выберите, что вы хотите запустить, из выпадающего меню рядом с зелёной кнопкой воспроизведения в верхней части окна. Настройка завершена. Теперь вы можете нажать кнопку воспроизведения для компиляции и запуска.

Visual Studio Code

  1. Установите VS Code с официального сайта.
  2. Откройте раздел Extensions и установите следующие расширения:
    РасширениеДля чего
    C# Dev KitОсновной набор для C#: автодополнение, навигация, отладка, управление проектами. Включает C# и .NET Install Tool.
    EditorConfigЕдиный стиль форматирования кода во всём проекте.
    GitLensПросмотр истории, авторов строк, сравнение версий прямо в редакторе.
    GitHub Pull RequestsСоздание и ревью PR не выходя из VS Code.
    Python и Python DebuggerПодсветка, автодополнение и отладка Python-скриптов (нужны для вспомогательных инструментов).
    Robust YAMLПодсветка и автодополнение для YAML-прототипов Robust Toolbox. Требует YAML Language Support.
  3. Откройте папку репозитория через File > Open Folder. VS Code сам предложит выбрать .slnx — соглашайтесь.

VSCodium

  1. Загрузите VSCodium Here или более напрямую на Github (В последнем релизе нажмите выпадающий список assets, затем прокрутите до ZIP или .exe для вашей ОС).
  2. Запустите установщик или извлеките zip-файл в место по вашему выбору и запустите .exe после извлечения.
  3. После установки перейдите на вкладку Extensions (часть пути в левом верхнем углу, выглядит как 4 плитки) и найдите «C#». Расширение от «Muhammad-Sammy» с более чем 70K загрузок и зелёным/белым логотипом — то, что нужно; установите его. ID расширения muhammad-sammy.csharp.
  4. Выберите File > Open Folder, затем перейдите к вашему клонированному репозиторию и откройте эту полную папку.
  5. Когда будет предложено открыть solution, выберите SpaceStation14.slnx. Или установите настройку dotnet.defaultSolution на SpaceStation14.slnx в настройках рабочей области.
  6. Теперь вы можете запускать и отлаживать вашу игру. Выберите иконку над «Extensions» для «Run and Debug» и из выпадающего списка рядом с зелёной кнопкой воспроизведения вы можете выбрать «Server/Client». Это запустит и клиент, и сервер, открыв игру для отладки. Соответствующая информация появится в отладчике внизу. Выберите процессы в стеке вызовов слева, чтобы изменить то, что вы отлаживаете.

4. Запуск SS14

Теперь вы можете приступить к компиляции! Используйте вашу IDE для открытия файла solution SpaceStation14.slnx, соберите и запустите необходимые сборки (Content.Server и Content.Client). Нажмите Direct Connect в окне клиента, чтобы начать тестирование. Для компиляции без IDE запустите dotnet build в директории репозитория Space Station 14. Затем выполните следующие команды для запуска клиента и сервера.
  • dotnet run —project Content.Server
  • dotnet run —project Content.Client
Обе команды по умолчанию используют конфигурацию debug. Для включения оптимизаций релиза добавьте —configuration Release к вызову dotnet. Примечание: Если у вас возникли проблемы с dotnet, не находящим libssl (например, при использовании libressl), попробуйте установить переменную окружения CLR_OPENSSL_VERSION_OVERRIDE на соответствующую версию. Например, установите её на 48, если ваш /usr/lib содержит libssl.so.48. Если это не сработает, вы также можете попробовать выполнить ln -s /usr/lib/libssl.so /usr/local/lib/libssl.so.1.0.0.

5. Настройка параметров сборки

Клиент и сервер SS14 являются независимыми проектами, но оба могут быть запущены одной кнопкой где-то в вашей IDE. Однако это нужно настроить. Примечание: Рекомендуется запускать Content.Client и Content.Server при разработке из вашей IDE. Не Robust.Client или Robust.Server. Причина в том, что запуск Content.* заставит вашу IDE правильно распознавать зависимости и гарантировать, что всё будет пересобрано корректно. Если вы запускаете Robust.Client напрямую, вам нужно каждый раз убеждаться, что решение полностью собрано, что раздражает и легко забыть. Если вы не уверены, что такое Robust или Content, ознакомьтесь с этой страницей о том, как организован проект.

Visual Studio 2022

В Visual Studio 2022 вы можете настроить кнопку сборки для запуска и сервера, и клиента, щёлкнув правой кнопкой мыши по solution, затем выбрав Configure StartUp Projects… Когда появится меню, выберите Multiple startup projects: и установите действие для Content.Client и Content.Server в Start. После применения изменений нажатие большой кнопки Start с зелёной стрелкой рядом с ней должно запустить и клиент, и сервер одновременно. Примечание: Если у вас возникли проблемы с неправильной сборкой программы, возможно, вам нужно установить «всегда собирать перед запуском». Перейдите в Options Projects and Solutions/Build and Run и измените On Run, when projects are out of date на Always build. В VS вы также можете использовать клавиши F7 для сборки проекта и F5 для его запуска.

Visual Studio Code

Расширение C# предоставляет тип запуска “coreclr”, который можно использовать для запуска исполняемых файлов Content.Server и Content.Client в их соответствующих директориях in/. Составная конфигурация запуска может быть использована для одновременного запуска сервера и клиента.

Командная строка

Соберите с помощью dotnet build и запустите клиент и сервер в разных командных строках:
  • dotnet run —project Content.Server
  • dotnet run —project Content.Client
Также есть способ запустить две команды одновременно, но вам, вероятно, стоит погуглить это.

JetBrains Rider

Чтобы упростить запуск или отладку тестовых сборок в Rider, вы можете создать составную конфигурацию, которая запускает клиент и сервер одновременно. Весьма удобно! Проект может уже включать конфигурацию, которую вы можете выбрать из выпадающего списка вверху, но если у неё красный символ, она не настроена должным образом, и вам нужно создать её вручную, или она ещё не загрузилась. После этого нажмите Shift+F10 или кнопку воспроизведения, чтобы запустить. Вот и всё!

6. Настройка директорий IDE

C# IDE, такие как Visual Studio и Rider, не показывают папку Resources в проекте автоматически. Эта папка содержит все файлы, не являющиеся C#, такие как спрайты, аудио и, что наиболее важно, YAML prototypes. Эти инструкции объяснят, как заставить эту папку отображаться в вашей IDE, чтобы вы могли легко с ней работать.

Visual Studio 2022

В Visual Studio вы можете переключить Solution Explorer из представления «solution» (показывающего только C# проекты) в представление «folder» (показывающее все файлы в проекте). Нажмите кнопку для переключения видов, как показано ниже, затем выберите представление папки: После этого Solution Explorer должен выглядеть примерно так, и вы сможете легко получить доступ к папке Resources:

JetBrains Rider

В Rider вы можете «прикрепить» директорию ресурсов к solution. Щёлкните правой кнопкой мыши по solution в обозревателе, затем «Add» -> «Existing Folder…». Выберите директорию «Resources» в диалоге выбора файла. asdfs После этого ваше представление solution должно выглядеть примерно так, и вы сможете легко получить доступ к папке Resources:

Visual Studio Code

Visual Studio Code показывает все файлы по умолчанию, поэтому дополнительная настройка здесь не требуется.

Воспроизводимая среда разработки с Nix/NixOS

Более простой способ настройки среды разработки для пользователей Linux — использовать Nix. Nix — это пакетный менеджер и функциональный предметно-ориентированный язык, позволяющий объявить что угодно, от сред разработки до целых систем. Чтобы предотвратить проблему «на моей машине работает», мы можем объявить среду разработки в Nix, которая создаёт изолированную воспроизводимую оболочку.

Настройка Nix/NixOS с flakes

Вы можете установить Nix либо установив дистрибутив NixOS, либо используя скрипт, совместимый со всеми дистрибутивами Linux, использующими systemd (Ubuntu, Fedora, Mint и т.д.). Для простоты и удобства рекомендуется установить Nix на дистрибутив, с которым вы уже знакомы, вместо перехода на другую операционную систему. Также возможно использовать Nix с MacOS через ix-darwin, хотя это ещё не тестировалось и не описывается в этой статье. После установки Nix включите экспериментальные функции, такие как flakes. Если вы не на NixOS, просто добавьте следующее в ваш ~/.config/nix/nix.conf.
  • experimental-features = nix-command flakes
Если вы используете NixOS, вам нужно добавить эти параметры в ваш файл configuration.nix.
ix.settings.experimental-features = [ “nix-command” “flakes” ]; Для получения дополнительной информации о включении Nix flakes см. здесь.

Использование Nix flakes для надёжной среды разработки

NB технически требуется, чтобы Git уже был установлен, но в случае с большинством дистрибутивов Linux он предустановлен. В маловероятном случае, если его нет:
  • Используйте пакетный менеджер вашего дистрибутива
  • Объявите его в вашем файле configuration.nix, если вы используете NixOS. Рекомендуется проверить соответствующий раздел в руководстве NixOS, но вкратце, вы должны добавить pkgs.git в атрибут environment.systemPackages.
Используя ваш терминал, вы можете просто перейти в корневую директорию вашего SS14 репозитория и запустить:
ix develop Nix автоматически обработает все зависимости, объявленные в shell.nix и вызываемые файлом lake.nix. У вас будет новая эфемерная оболочка (известная как devShell), в которой есть всё необходимое для сборки SS14 из исходников. Это остаётся причиной, по которой flakes настоятельно рекомендуются, несмотря на то, что считаются экспериментальной функцией. Мы можем убедиться, что у всех одинаковые версии зависимостей, указав версию коллекции nixpkgs в атрибуте input flake и зафиксировав версии в файле lake.lock. Таким образом, все контрибьюторы, использующие Nix/NixOS, получают абсолютно одинаковую среду разработки. Это довольно надёжно!

(Опционально) Запуск JetBrains Rider через Nix

Затем вы можете использовать редактор или IDE по вашему выбору. Однако внутри оболочки, которую вы уже создали, вы можете указать, что вам нужен JetBrains Rider. Запустите эту команду в вашей devShell.
  • NIXPKGS_ALLOW_UNFREE=1 nix shell nixpkgs#jetbrains.rider —impure
Из вашей новой оболочки вы можете запустить «откреплённый» процесс JetBrains Rider, выполнив что-то вроде:
ohup rider >/dev/null 2>&1 & И вуаля! Вы надёжно настроили среду разработки без накопления нежелательного «состояния». Вы можете работать над SS14 практически с любого дистрибутива Linux (при условии, что они используют systemd) без необратимого изменения вашей системы.

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

Убедитесь, что первые три пункта сверху загружены.

RUN_THIS.py не запускается

Проверьте, что Python установлен с сайта, а не из Microsoft Store. Если он установлен из Microsoft Store, удалите его, затем загрузите и установите с сайта python.org. Если вы на Windows и вас перенаправляет в Microsoft Store или появляется сообщение, что Python не установлен. Эта проблема может быть вызвана глупым ярлыком Microsoft. Его можно отключить, найдя Manage App Execution Aliases в поиске Windows и отключив два упоминания Python.

py не найден

Если Python был установлен с сайта и команда python работает, но вы всё ещё получаете ошибку «py is not installed», проверьте, работает ли C:\WINDOWS\py.exe. Если да, добавьте C:\WINDOWS в ваш path.

System.DllNotFoundException: Unable to load DLL ‘freetype6’ or one of its dependencies: The specified module could not be found.

PS C:\Users\Larme\Downloads\space-station-14> dotnet run --project Content.Client Unhandled exception. Robust.Shared.IoC.Exceptions.ImplementationConstructorException: Robust.Client.Graphics.FontManager threw an exception inside its constructor. ---> System.DllNotFoundException: Unable to load DLL 'freetype6' or one of its dependencies: The specified module could not be found. (0x8007007E) at SharpFont.FT.FT_Init_FreeType(IntPtr& alibrary) at SharpFont.Library..ctor() at Robust.Client.Graphics.FontManager..ctor(IClyde clyde) in C:\Users\Larme\Downloads\space-station-14\RobustToolbox\Robust.Client\Graphics\FontManager.cs:line 33 --- End of inner exception stack trace --- at Robust.Shared.IoC.DependencyCollection.BuildGraph() in C:\Users\Larme\Downloads\space-station-14\RobustToolbox\Robust.Shared\IoC\DependencyCollection.cs:line 348 at Robust.Shared.IoC.IoCManager.BuildGraph() in C:\Users\Larme\Downloads\space-station-14\RobustToolbox\Robust.Shared\IoC\IoCManager.cs:line 271 at Robust.Client.GameController.InitIoC(DisplayMode mode) in C:\Users\Larme\Downloads\space-station-14\RobustToolbox\Robust.Client\GameController\GameController.IoC.cs:line 16 at Robust.Client.GameController.ParsedMain(CommandLineArgs args, Boolean contentStart, IMainArgs loaderArgs, GameControllerOptions options) in C:\Users\Larme\Downloads\space-station-14\RobustToolbox\Robust.Client\GameController\GameController.Standalone.cs:line 49 Либо:
  • Кодовая база, которую вы запускаете, не поддерживает процессоры arm64 (Apple Silicon, Snapdragon). Вам нужно попросить вашу кодовую базу обновить Robust Toolbox или сделать это самостоятельно.
  • Вы случайно установили x86 версию dotnet; в этом случае удалите .NET Core SDK x86. Установите .NET Core SDK x64.

Клиент и сервер недоступны в Visual Studio для настройки в Multiple startup projects

Это может быть связано с тем, что вы открыли проект как папку, а не как solution. Убедитесь, что вы открываете его как solution и нажимаете на файл .slnx Space Station 14.

Система не может найти указанный файл RUN_THIS.py

The system cannot find the specified file обычно означает, что OneDrive конфликтует с git репозиторием. Клонируйте git репозиторий за пределами OneDrive или отключите синхронизацию для клонированной папки.

SS14 Editor

SS14 Editor от TheShuEd — визуальный редактор YAML-прототипов для любых форков SS14. Укажите путь к проекту — редактор прочитает собранные сборки игры и предоставит:
  • Автокомплит для ID сущностей, названий компонентов и !type полиморфных типов
  • Отображение всех полей прототипов и компонентов, включая XML-doc summary из исходного кода
  • Учёт наследования — видны компоненты, унаследованные от родительских прототипов
  • Поддержка сложных прототипов: EntityTable, ConstructionGraph, HTN
Сборки игры читаются через System.Reflection.MetadataLoadContext — игровой код не выполняется.

Скачать

  • Desktop-приложение (рекомендуется): готовые сборки Electron для Windows (NSIS-установщик / portable), Linux (AppImage), macOS (Apple Silicon DMG) на странице релизов.
  • CLI / браузер: самодостаточный бинарник, запускает HTTP-сервер на http://localhost:2701. Открывается в любом браузере.

Требования

  • .NET 10 SDK (при сборке из исходников)
  • Любой форк SS14 со скомпилированными сборками
Последнее изменение 21 июня 2026 г.