Versions in this module Expand all Collapse all v0 v0.2.2 Mar 13, 2026 Changes in this version type ServerInterface + SendPlayerHP func(playerID uint8, hp uint8) v0.2.1 Mar 13, 2026 v0.2.0 Mar 1, 2026 Changes in this version type ServerInterface + BroadcastCreatePlayer func(p *player.Player) + SendIntelPositionPacketOnly func(objectID uint8, team uint8, position protocol.Vector3f) + SendPlayerPositionPacketTo func(playerID uint8, pos, ori protocol.Vector3f, toPlayerID uint8) v0.1.0 Nov 14, 2025 Changes in this version + func CheckPlayer(state *lua.State, idx int, gs *gamestate.GameState) (*player.Player, error) + func FileExists(path string) bool + func PushPlayer(state *lua.State, p *player.Player) + type CommandManager struct + func NewCommandManager(logger *slog.Logger) *CommandManager + func (cm *CommandManager) Execute(p *player.Player, cmdName string, args []string) (string, error) + func (cm *CommandManager) Get(name string) *LuaCommand + func (cm *CommandManager) List(p *player.Player) []*LuaCommand + func (cm *CommandManager) LoadCommandFile(path string, api *GameAPI) error + func (cm *CommandManager) LoadCommands(commandsDir string, api *GameAPI) error + func (cm *CommandManager) Register(cmd *LuaCommand) + func (cm *CommandManager) Reload(commandsDir string, api *GameAPI) error + type CommandPermission int + const PermissionAdmin + const PermissionGuard + const PermissionManager + const PermissionModerator + const PermissionNone + const PermissionTrusted + type GameAPI struct + func NewGameAPI(gs *gamestate.GameState) *GameAPI + func (api *GameAPI) RegisterFunctions(vm *VM) + func (api *GameAPI) SetBanManager(bm *bans.Manager) + func (api *GameAPI) SetCommandManager(cm *CommandManager) + func (api *GameAPI) SetGamemodeVM(vm *VM) + func (api *GameAPI) SetServer(srv ServerInterface) + type LuaCommand struct + Aliases []string + Description string + Handler string + Name string + Permission CommandPermission + Usage string + VM *VM + type ServerInterface interface + BroadcastProgressBar func(entityID, capturingTeam uint8, rate int8, progress float32) + BroadcastShortPlayerData func(p *player.Player) + BroadcastTerritoryCapture func(playerID, entityID, winning, state uint8) + CancelVote func(p *player.Player) error + CastVote func(p *player.Player, choice interface{}) error + DisconnectPlayerWithReason func(p *player.Player, reason uint32) + GetActiveVote func() vote.Vote + GetConfigPassword func(role string) string + GetCurrentMapName func() string + GetServerName func() string + GetUptime func() time.Duration + HasActiveVote func() bool + KickPlayer func(playerID uint8, reason string) + KillPlayer func(victimID uint8, killerID uint8, killType protocol.KillType) + ReloadCommands func() error + ReloadGamemode func() error + RespawnPlayer func(playerID uint8) + RestockPlayer func(playerID uint8) + SaveMap func(filename string) (string, error) + SendChatToAll func(message string) + SendChatToPlayer func(p *player.Player, message string) + SendChatWithType func(message string, chatType protocol.ChatType) + SendPlayerLeftPacket func(playerID uint8) + SetPlayerTeam func(playerID uint8, team uint8) + StartVotekick func(instigator *player.Player, victimID uint8, reason string) error + StartVotemap func(instigator *player.Player) error + type Timer struct + Args []interface{} + Callback string + ID int + Interval time.Duration + NextRun time.Time + Repeat bool + type VM struct + func NewVM() *VM + func (vm *VM) CallFunction(name string, args ...interface{}) error + func (vm *VM) CallFunctionWithReturn(name string, numReturns int, args ...interface{}) ([]interface{}, error) + func (vm *VM) CancelTimer(id int) + func (vm *VM) Close() + func (vm *VM) GetGlobalBool(name string) (bool, error) + func (vm *VM) GetGlobalNumber(name string) (float64, error) + func (vm *VM) GetGlobalString(name string) (string, error) + func (vm *VM) GetGlobalTable(name string) error + func (vm *VM) GetTableBool(key string) (bool, error) + func (vm *VM) GetTableIntArray(key string) ([]int, error) + func (vm *VM) GetTableNumber(key string) (float64, error) + func (vm *VM) GetTableString(key string) (string, error) + func (vm *VM) HasFunction(name string) bool + func (vm *VM) LoadFile(path string) error + func (vm *VM) LoadString(code string) error + func (vm *VM) PopTable() + func (vm *VM) RegisterFunction(name string, fn lua.Function) + func (vm *VM) RegisterTimer(callback string, interval time.Duration, repeat bool, args ...interface{}) int + func (vm *VM) State() *lua.State + func (vm *VM) UpdateTimers() error