← К списку

Rust-плагины на uMod (C#): хуки, данные и производительность

Rust-плагины на uMod (C#): хуки, данные и производительность

Плагин как набор реакций на события

В uMod (Oxide) плагин для Rust - это класс на C#, который подписывается на хуки сервера: игрок зашёл, выстрелил, открыл ящик. Сервер сам вызывает ваши методы.

[Info("Greeter", "VladOfSky", "1.0.0")]
class Greeter : RustPlugin
{
    void OnPlayerConnected(BasePlayer player)
    {
        PrintToChat(player, "Добро пожаловать!");
    }
}

Где теряется производительность

  • Тяжёлая логика в частых хуках (OnEntityTakeDamage зовётся очень часто) - держите её лёгкой.
  • Запись данных каждый тик - копите изменения и сохраняйте по таймеру.
  • Поиск сущностей в радиусе в цикле - кэшируйте результаты.

Данные храните через Interface.Oxide.DataFileSystem (JSON), а конфиг - отдельно. Сервер на 200+ игроков прощает многое, но не лишнюю работу в горячих хуках.

// обсуждение

Комментарии (0)

Будьте первым, кто оставит комментарий.

Чтобы оставить комментарий, войдите через Discord.

Войти через Discord