Skip to main content
Lampac NextGen позволяет расширять функциональность через пользовательские модули. Достаточно создать каталог в mods/, добавить manifest.json и файлы .cs — Roslyn скомпилирует код при запуске сервера. С включённым флагом dynamic: true пересборка происходит автоматически при изменении исходников, без перезапуска.
1

Создайте каталог модуля

Создайте папку внутри mods/ с произвольным именем, например mods/MyModule/.
2

Напишите manifest.json

Манифест описывает метаданные модуля и управляет его загрузкой.
3

Напишите .cs-файлы

Добавьте в mods/MyModule/ один или несколько .cs-файлов с логикой модуля. Используйте интерфейсы IModuleLoaded и IModuleConfigure для интеграции с жизненным циклом приложения.
4

Перезапустите сервер

При первой загрузке Roslyn скомпилирует ваш модуль. Если dynamic включён, последующие изменения .cs-файлов будут пересобираться автоматически.

Фильтрация модулей через LoadModules

Состав загружаемых модулей можно ограничить с помощью BaseModule.LoadModules в init.conf. Поддерживаются имя модуля, группа (например, OnlineUKR) или маска по регулярному выражению.

Монтирование в Docker

При запуске в Docker примонтируйте каталог с пользовательским модулем как том:
Установите "dynamic": true в manifest.json. Roslyn отслеживает изменения .cs-файлов в каталоге модуля и пересобирает сборку на лету. Это удобно для разработки и отладки.
Last modified on September 2, 2026