Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rider отлично подходит для разработки плагинов для Oxide/uMod. Настроим его так, чтобы плагин автоматически обновлялся в Rust при компиляции.


1. Настройка проекта в Rider

  1. Создай новый проект C# (.NET Core Class Library):

    • FileNew Solution
    • Выбери Class Library
    • Назови, например, RustPlugins
    • Путь к проекту лучше разместить рядом с сервером, например:
      E:\Rust_Server\RustPlugins\
      
  2. Добавь ссылку на API Oxide:

    • Скачай Oxide.Rust.dll (он находится в папке RustDedicated_Data/Managed/ на сервере).
    • В Rider добавь его в зависимости:
      File → Settings → Project → Dependencies → Add Reference
      
    • Выбери Oxide.Rust.dll.

2. Упрощение тестирования: автоматическое копирование плагинов

Чтобы код сразу загружался в Rust, нужно копировать скомпилированные .cs файлы в папку oxide/plugins/.

Вариант 1: Post-Build Event в Rider

  1. Добавь в csproj файл проекта Post-Build Event:
     <Target Name="PostBuild" AfterTargets="Build">
         <ItemGroup>
             <PluginFiles Include="$(ProjectDir)*.cs" />
         </ItemGroup>
         <Copy SourceFiles="@(PluginFiles)" DestinationFolder="E:\Rust_Server\rustds\oxide\plugins\" OverwriteReadOnlyFiles="true" />
     </Target>
    Здесь E:\Rust_Server\rustds\oxide\plugins\ — путь к плагинам Rust.

Вариант 2: Символическая ссылка (лучше)

Можно настроить символическую ссылку (mklink), чтобы плагины из Rider автоматически появлялись в папке сервера.

  1. Открой командную строку (cmd) от имени администратора.
  2. Создай симлинк на папку плагинов:
    mklink /D "E:\Rust_Server\rustds\oxide\plugins\RiderPlugins" "C:\Users\Run\RiderProjects\Rust.Oxide.Plugin\"
  3. Теперь просто сохраняй файлы в RustPlugins/, и сервер Rust сразу их увидит.

3. Быстрая перезагрузка плагинов в Rust

Чтобы не перезапускать сервер Rust, можно ввести в консоли:

oxide.reload MyPlugin

4. Автоматическая сборка и перезагрузка (PowerShell)

Если хочешь автоматически перезагружать плагин после компиляции, создай .ps1-скрипт:

# Компиляция проекта
dotnet build --configuration Release

# Копирование в папку плагинов
Copy-Item -Path "C:\Users\Run\RiderProjects\Rust.Oxide.Plugin\Rust.Oxide.Plugin\TestPlugin.cs" -Destination "E:\Rust_Server\rustds\oxide\plugins\" -Force

# Перезагрузка в Rust
$rustConsole = "E:\Rust_Server\rustds\rust_console.bat"
Start-Process -NoNewWindow -FilePath $rustConsole -ArgumentList "oxide.reload MyPlugin"

Теперь достаточно запускать этот скрипт после сборки.


5. Дополнительно

  • Добавь автозапуск сервера Rust в Rider (Run → Edit ConfigurationsNew Shell Script).
  • Проверяй логи (oxide/logs/).
  • Используй Puts() для отладки (Puts("Тестовое сообщение");).

About

Oxide plugin template for the RUST game

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages