setonix_server library

Official setonix server library

Classes

AdvancedNetworkerPipeTransformer<I, O>
AssetManager
AuthenticatedRequested
AuthenticateRequest
BackgroundChanged
BackgroundDefinition
BackgroundTranslation
Base64IdMapHook
Base64Uint8ListHook
BoardDeckDefinition
BoardDefinition
BoardMoveRequest
BoardRemoveRequest
BoardsSpawnRequest
BoardTile
BoardTilesChanged
BoardTilesSpawned
BoardTranslation
BrowsedGameServer
CellHideChanged
CellMergeStrategy
CellMergeStrategyChanged
CellRollRequest
CellShuffled
CellSwitched
ChallengeManager
ChannelFilterPipe<T>
ChatMessage
ClientWorldEvent
Events that will be send by the client Naming convention: present tense + Request
ConnectionInfo
ConnectionInfoMapper
DataMetadata
DeckDefinition
DeckTranslation
DescriptiveTranslation
DialogCloseRequest
DialogOpened
DialogsClosed
DistributeCellMergeStrategy
EchoPipe<T>
Event<T extends WorldEvent>
EventBus<T extends WorldEvent>
EventResult
EventSubscription<T extends WorldEvent>
EventSystem
FatalServerEventError
FigureBackDefinition
FigureDeckDefinition
FigureDefinition
FigureTranslation
FigureVariationTranslation
FileMetadata
FilteredNetworkerPipe<T>
GameDialog
GameDialogButton
GameDialogCheckboxComponent
GameDialogCheckboxValue
GameDialogComponent
GameDialogComponentValue
GameDialogDropdownComponent
GameDialogDropdownOption
GameDialogDropdownValue
GameDialogMarkdownComponent
GameDialogTextFieldComponent
GameDialogTextFieldValue
GameDialogValue
GameInfo
GameMode
GameObject
GameObjectDefinition
GameProperty
GameServer
GameTable
GameTeam
GameToolbar
GlobalVectorDefinition
HybridWorldEvent
IgnoreEqualityBox<T>
IgnoreForEquality
ImagesRequest
ImagesUpdated
InternalChannelPipe
InvalidPacksError
ItemLocation
ItemLocationHook
JsonNetworkerPlugin
KickMessage
KickMessageHook
KickProgram
KickServerResponse
LanGameServer
LanProperty
LayoutCellMergeStrategy
LinkedEventBus<T extends WorldEvent>
ListGameServer
ListProperty
LocalWorldEvent
LuauPlugin
MergedCellStrategy
MessageRequest
MessageSent
MetadataChanged
ModeChangeRequest
NamedRpcClientNetworkerPipe<I extends RpcFunctionName, O extends RpcFunctionName>
NamedRpcServerNetworkerPipe<I extends RpcFunctionName, O extends RpcFunctionName>
NetworkerClient
NetworkerPacket<T>
NetworkerPipe<I, O>
NetworkerPipeTransformer<I, O>
NetworkerServer<T extends ConnectionInfo>
NoteChanged
NoteRemoved
ObjectIndexChanged
ObjectsChanged
ObjectsMoved
ObjectsRemoved
ObjectsSpawned
PackItem<T>
PacksChangeRequest
PacksProgram
PackTranslation
PlayableWorldEvent
Events that can be processed by the event management system This can be a ServerWorldEvent or a LocalWorldEvent
PlayerInfo
PlayersProgram
PluginCallback
PluginServerInterface
PluginSystem
ProcessMessage
RawJsonNetworkerPlugin
ResetProgram
ReversedNetworkerPipe<I, O>
RoomMessage<T>
RoomNetworkerPlugin<T>
RpcClientNetworkerPipe
RpcConfig
RpcFunction
RpcNetworkerPacket
RpcNetworkerPipe
RpcServerNetworkerPipe
RustPlugin
RustSetonixPlugin
SaveProgram
SayProgram
ServerAssetManager
ServerDataMetadata
ServerList
ServerPing
ServerProcessed
ServerResponse
ServerState
ServerStateUpdated
ServerWorldEvent
Events that will be send by the client Naming convention: present tense + Event
SetonixAccount
SetonixConfig
SetonixData
SetonixFile
SetonixPlugin
SetonixServer
SetonixUser
ShuffleCellRequest
SignatureMetadata
SimpleNetworkerPipe<T>
StackedCellMergeStrategy
StopProgram
StringNetworkerPlugin
TableCell
TableRemoved
TableRenamed
TeamChanged
TeamJoined
TeamJoinRequest
TeamLeaveRequest
TeamLeft
TeamRemoved
ToolbarAction
ToolbarActionRequest
ToolbarUpdated
TranslationsStore
UpdateServerResponse
UserJoined
UserLeaveCallback
UserManager
UserService
VariationDefinition
VectorDefinition
VectorDefinitionHook
VisualDefinition
Waypoint
WaypointChanged
WaypointRemoved
WhitelistProgram
WorldBloc
WorldEvent
WorldInitialized
WorldState

Enums

CellMergeDirection
FileType
GameState
KickReason
RpcNetworkerMode
StateFieldAccess
TeamColor
WorldOperationMode

Mixins

NamedRpcNetworkerPipe<I extends RpcFunctionName, O extends RpcFunctionName>
NetworkerBase<O>
NetworkerClientMixin<O>
NetworkerServerMixin<T extends ConnectionInfo, O>
The server abstraction of the networker library Please note that connection ids can only be between 2 and 2^16
RpcFunctionName
RpcNetworkerPipeMixin
ServerInterface
SimpleNetworkerPipeMixin<T>

Constants

defaultWorldName → const String
kAnyChannel → const int
kAuthorityChannel → const int
kBroadcastPort → const int
kCorePackId → const String
kDefaultPort → const int
kFallbackLocale → const String
kFileVersion → const int
kGameNotesPath → const String
kGameTablePath → const String
kGameTeamPath → const String
kPackAccountsPath → const String
kPackBackgroundsPath → const String
kPackBoardsPath → const String
kPackDecksPath → const String
kPackFiguresPath → const String
kPackInfoPath → const String
kPackMetadataPath → const String
kPackModesPath → const String
kPackScriptsPath → const String
kPackTexturesPath → const String
kPackTranslationsPath → const String
kUserReferenceFingerprint → const String
kUserReferenceID → const String
kUserReferenceName → const String
scriptSuffix → const String
version → const String
welcomeText → const String

Properties

isPluginSystemInitialized bool
no setter

Functions

buildFilterConnections({FutureOr<GameProperty> loadProperty(HttpRequest request)?}) Future<bool> Function(HttpRequest request)
buildParser() ArgParser
buildServerAddress(Uri uri, bool secure, {bool webSockets = true}) Uri
createPackIdentifier(List<int> data) String
disposePluginSystem() → void
generateChallenge() Uint8List
generateFingerprint(Uint8List publicKeyBytes, {bool short = false, bool pretty = false}) String
getDefaultLocale() String?
initPluginSystem({ExternalLibrary? externalLibrary}) Future<void>
isServerSupported(List<SignatureMetadata> mySignature, List<SignatureMetadata> serverSignature) bool
isValidClientEvent(WorldEvent event, Channel channel, WorldState state, {required AssetManager assetManager, ChallengeManager? challengeManager}) bool
isValidServerEvent(ServerWorldEvent event, WorldState state) bool
limitOutput(Object? value, [int limit = 500]) String
printUsage(ArgParser argParser) → void
processClientEvent(WorldEvent? event, Channel channel, WorldState state, {required AssetManager assetManager, bool allowServerEvents = false, ChallengeManager? challengeManager, UserManager? userManager}) Future<ServerResponse?>
processServerEvent(ServerWorldEvent event, WorldState state, {required List<SignatureMetadata> signature}) ServerProcessed
runServer(List<String> arguments, [ServerLoader? onLoad]) Future<void>
simpleAdderTwinNormal({required int a, required int b}) Future<int>

Typedefs

Channel = int
EventHandler<T extends WorldEvent> = Future<void> Function(Event<T> event)
PluginProcessCallback = void Function(String, WorldEvent, [bool force])
PluginSendEventCallback = void Function(NetworkerPacket<PlayableWorldEvent> packet, String? worldName)
RawNetworkerPipe = SimpleNetworkerPipe<Uint8List>
ServerLoader = FutureOr<void> Function(SetonixServer server)