- 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
Windows и winget
Застряли?
Застряли? Не понимаете, как выполнить определённую часть? Это видео должно помочь. Это видео предназначено для просмотра вместе с руководством и может устареть.
Вы также всегда можете попросить помощи в официальном 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
- Загрузите Visual Studio Community (если у вас нет платной версии) отсюда
- Запустите установщик и выберите .net desktop development, затем установите
- Если установщик попросит вас выбрать среду разработки, выберите Visual C#.
- Откройте Visual Studio
- Выберите Open a project or solution, затем перейдите к вашему клонированному репозиторию и откройте SpaceStation14.slnx
JetBrains Rider
- Установите Rider — мы рекомендуем использовать Jetbrains Toolbox, чтобы он мог автоматически обновляться в будущем.
- Пройдите установку.
- Нажмите «Open» и выберите SpaceStation14.slnx
- Если вы планируете заниматься разработкой движка, вы должны добавить Robust Toolbox в Directory Mappings, чтобы VCS Rider мог обнаруживать изменения в Robust. Откройте настройки Rider и перейдите в раздел Version Control > Directory Mappings и нажмите кнопку плюс (+). Для Directory укажите папку RobustToolbox в проекте, а VCS — Git
- Выберите ветку, которую хотите использовать, в верхнем левом углу.
- Выберите, что вы хотите запустить, из выпадающего меню рядом с зелёной кнопкой воспроизведения в верхней части окна. Настройка завершена. Теперь вы можете нажать кнопку воспроизведения для компиляции и запуска.
Visual Studio Code
- Установите VS Code с официального сайта.
-
Откройте раздел 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. -
Откройте папку репозитория через
File > Open Folder. VS Code сам предложит выбрать.slnx— соглашайтесь.
VSCodium
- Загрузите VSCodium Here или более напрямую на Github (В последнем релизе нажмите выпадающий список assets, затем прокрутите до ZIP или .exe для вашей ОС).
- Запустите установщик или извлеките zip-файл в место по вашему выбору и запустите .exe после извлечения.
- После установки перейдите на вкладку Extensions (часть пути в левом верхнем углу, выглядит как 4 плитки) и найдите «C#». Расширение от «Muhammad-Sammy» с более чем 70K загрузок и зелёным/белым логотипом — то, что нужно; установите его. ID расширения muhammad-sammy.csharp.
- Выберите File > Open Folder, затем перейдите к вашему клонированному репозиторию и откройте эту полную папку.
- Когда будет предложено открыть solution, выберите SpaceStation14.slnx. Или установите настройку dotnet.defaultSolution на SpaceStation14.slnx в настройках рабочей области.
- Теперь вы можете запускать и отлаживать вашу игру. Выберите иконку над «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
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» (показывающее все файлы в проекте). Нажмите кнопку для переключения видов, как показано ниже, затем выберите представление папки:


JetBrains Rider
В Rider вы можете «прикрепить» директорию ресурсов к solution. Щёлкните правой кнопкой мыши по solution в обозревателе, затем «Add» -> «Existing Folder…». Выберите директорию «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
Использование Nix flakes для надёжной среды разработки
NB технически требуется, чтобы Git уже был установлен, но в случае с большинством дистрибутивов Linux он предустановлен. В маловероятном случае, если его нет:- Используйте пакетный менеджер вашего дистрибутива
- Объявите его в вашем файле configuration.nix, если вы используете NixOS. Рекомендуется проверить соответствующий раздел в руководстве NixOS, но вкратце, вы должны добавить pkgs.git в атрибут environment.systemPackages.
(Опционально) Запуск JetBrains Rider через Nix
Затем вы можете использовать редактор или IDE по вашему выбору. Однако внутри оболочки, которую вы уже создали, вы можете указать, что вам нужен JetBrains Rider. Запустите эту команду в вашей devShell.- NIXPKGS_ALLOW_UNFREE=1 nix shell nixpkgs#jetbrains.rider —impure
Устранение неполадок
Убедитесь, что первые три пункта сверху загружены.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 со скомпилированными сборками