Какой фреймворк выбрать?
Чтобы устанавливать на сервер RUST плагины, нужен фреймворк - модификация, которая загружает плагины и даёт им доступ к игре. В этой базе знаний разобраны два фреймворка: Oxide и Carbon. Оба бесплатные, у обоих открытый исходный код, и оба запускают плагины на языке C#.
Только один фреймворк
Oxide и Carbon нельзя установить на один сервер одновременно: они решают одну задачу разными способами и ломают друг друга.
Oxide
Oxide, который также называют uMod, - давний фреймворк для серверов Rust. Официальный сайт - umod.org, там же каталог бесплатных плагинов.
- Как устроен. Oxide поставляется вместе с изменёнными файлами игры: вызовы хуков встроены прямо в код сервера, их там сотни. При установке вы копируете эти файлы в папку
RustDedicated_Dataс заменой. - Обновления. После обновления Rust нужно скачать свежую сборку Oxide и установить её заново. На хостингах это может делать панель управления.
- Папки и команды. Плагины лежат в
oxide/plugins, их настройки - вoxide/config. Команды начинаются сoxide.илиo., напримерo.reload. - Лицензия. MIT, исходный код на GitHub.
Carbon
Carbon - более молодой фреймворк, появился в 2022 году. Разработчики делают его заменой Oxide. Официальный сайт - carbonmod.gg.
- Как устроен. Carbon не заменяет файлы игры. Он подключается при запуске сервера и добавляет хуки на лету, только когда они нужны загруженным плагинам.
- Совместимость. Большинство плагинов для Oxide работают в Carbon без изменений.
- Обновления. Carbon сам обновляется при запуске сервера под текущую версию Rust.
- Встроенные возможности. Панель администратора в игре (
/cpanel), модули вроде менеджера стаков, рейтов добычи и белого списка, хранение прав в SQLite и профайлер. - Папки и команды. Плагины лежат в
carbon/plugins, их настройки - вcarbon/configs. Команды начинаются сc., напримерc.reload. - Лицензия. GPL-3.0, исходный код на GitHub.
Сравнение
| Oxide | Carbon | |
|---|---|---|
| Установка | копирование файлов в RustDedicated_Data с заменой | распаковка архива с папкой carbon в корень сервера |
| Обновление | вручную после обновления Rust или через панель хостинга | автоматически при запуске сервера |
| Плагины, написанные под Oxide | работают | большинство работают |
| Плагины только для Carbon | не запускаются | работают |
| Хуки | встроены в код сервера | подключаются, когда нужны плагинам |
| Панель администратора в игре | нет, ставится отдельным плагином | встроена, команда /cpanel |
| Встроенные модули | нет | стаки, рейты добычи, белый список и другие |
| Хранение прав | файлы oxide.users.data и oxide.groups.data | те же файлы или база SQLite |
| Команды | oxide.* и o.* | c.* |
| Папка настроек плагинов | oxide/config | carbon/configs |
| Лицензия | MIT | GPL-3.0 |
Что выбрать
Oxide подойдёт, если
- хостинг сам ставит и обновляет Oxide, и вы не хотите в это вмешиваться;
- на сервере будут плагины, которые их авторы проверяли только на Oxide.
Carbon подойдёт, если
- вы не хотите обновлять фреймворк вручную после каждого обновления Rust;
- нужна встроенная панель администратора и модули без отдельных плагинов;
- важна нагрузка на сервер: по данным разработчиков Carbon, хуки срабатывают только тогда, когда они нужны плагинам.
Совместимость плагинов
Плагин, написанный под Oxide, работает на обоих фреймворках. Плагин, написанный только под Carbon, на Oxide не запустится. Перед покупкой плагина проверьте на его странице, какие фреймворки он поддерживает.
С чего начать
Оба курса устроены одинаково: создание и настройка сервера, установка фреймворка, плагины, права, обновление и перенос на хостинг. В курсе по Carbon есть ещё статьи о встроенных модулях и о переходе с Oxide.
Если у вас уже есть сервер на Oxide и вы хотите перейти на Carbon, прочитайте статью переход с Oxide.