Resources
Логика Varion-сервера организована в ресурсы. Ресурс может содержать серверный код, клиентские скрипты, ассеты, стримингуемые файлы или интеграцию с нативным модулем.
Полный справочник по полям — на отдельных страницах:
- resource.toml — все поля дескриптора ресурса и
stream.toml(канонический источник). - server.toml — все ключи конфигурации сервера.
Ниже — только структура и понятия.
Раскладка server-data
text
server.toml
resources/
mymode/
resource.toml
server/
client/
cache/
data/
modules/
sdk/
include/Что внутри ресурса
resource.toml— дескриптор (см. resource.toml).- Серверный вход (
main) — исполняется только дляtype = "js". - Клиентский вход (
client-main) иclient-files— уходят клиенту через манифест. stream.toml— стримингуемые игровые файлы (см. канонический справочник).
Типы ресурсов
| Type | Назначение | Docs |
|---|---|---|
js | Серверный и/или клиентский JavaScript | JavaScript |
csharp | Серверный C# (preview, текущим сервером не исполняется) | C# |
go | Серверный Go (preview) | Go |
asset-pack | Статические файлы по HTTP | resource.toml |
dlc / rpf | Стримингуемые игровые файлы | resource.toml |
Серверный host запускает только js (с непустым main), и JS-host стартует автоматически для таких ресурсов. Записывать их в server.toml → modules не нужно — ключ modules/loadModules к запуску JavaScript отношения не имеет.
Выбор и зависимости
server.toml→resources: пустой список = загрузить ВСЕ подпапкиresourcesDirсresource.toml(ресурсы сenabled = falseпропускаются). Непустой список = загрузить именно эти папки по точным именам, в указанном порядке. Wildcard-ы (*,dir/*) в этом списке не раскрываются.- Зависимости объявляются в
deps(алиасdependencies) и публикуются в манифесте, но текущий загрузчик не переупорядочивает ресурсы по ним — порядок задаётся спискомresources. - Клиентские права
required-permissions/optional-permissionsмогут присутствовать в дескрипторах, но текущим сервером не парсятся (зарезервировано).
Config ресурса
js
// сервер
const cfg = varion.getResourceConfig();
// клиент
const cfg = varion.getResourceConfig('mymode');