Skip to content

Masterlist

Masterlist позволяет игрокам находить публичные Varion servers. Publishing настраивается в server.toml. Пустой masterListUrl отключает publishing; announce = false запрещает publish даже при заданном URL. Production trust verify-ится backend-ом, а не gamemode resource.

Config

Native server config loader (server/src/CServerConfig.cpp) читает из server.toml два masterlist-ключа — announce и masterListUrl. Значения по умолчанию (из server.example.toml):

toml
announce = false          # false = никогда не публиковать, даже с masterListUrl
masterListUrl = ""        # пусто = не анонсировать

Production-профиль включает publishing и указывает backend URL:

toml
announce = true
masterListUrl = "https://master.example/api"

Identity fields

Identity и license model определена в engine config struct (include/varion.h) с указанными defaults. Она описывает backend trust/licensing contract:

KeyDefaultPurpose
masterListUrl""Backend URL for publishing (empty = don't announce)
masterListToken""Optional owned-server token
masterListTokenFiledata/masterlist-token.txtToken file/cache path
publicHost""Public host sent to backend (empty = backend uses request IP)
serverId""Official server identity
serverLicenseToken""Opaque production proof issued by the Varion backend
serverLicenseTokenFiledata/server-license.txtProduction proof file
requireServerLicensefalseFail startup without official identity/proof
allowLocalUnlicensedtrueAllow local/dev identity without a license

Полей identityMode или licenseProof в engine нет — это не config keys.

Trust model

Production trust state должен verify-иться backend-ом. Client и local files не являются authority для trusted listing state. Server передает подключающимся клиентам свой serverLicenseToken в HandshakeAck (может быть пустым для unlicensed/dev), но именно backend решает trusted/listed status.

Server info

/server-info.json отдает: name, player counts (players, maxPlayers), gamemode, protocol, build, gtaBuild, channel, minClientBuild и early/cloud auth flags (useEarlyAuth, earlyAuthUrl, useCloudAuth). Он НЕ отдает serverId или identityMode — эти значения не входят в server-info JSON.

Source backing

Страница основана на include/varion.h, server/src/CServerConfig.cpp и src/network/CNetworkManager.cpp (server-info JSON и HandshakeAck license token).

Varion Multiplayer Platform