Versions in this module Expand all Collapse all v0 v0.2.5 Nov 7, 2024 v0.2.4 Nov 3, 2024 v0.2.3 Nov 3, 2024 v0.2.2 Nov 3, 2024 v0.2.1 Nov 3, 2024 v0.2.0 Nov 3, 2024 Changes in this version + const EXT_ACK + const EXT_ERROR + const EXT_NO_ERROR + const EXT_PLAYERSTATS + const EXT_PLAYERSTATS_RESP_IDS + const EXT_PLAYERSTATS_RESP_STATS + const EXT_TEAMSCORE + const EXT_UPTIME + const EXT_VERSION + const SERVER_MAX_IDLE_TIME + func FindIdentity() string + type ClientExtInfo struct + Armour int32 + Client int + Damage int32 + Deaths int32 + Flags int32 + Frags int32 + GunSelect int32 + Health int32 + Ip0 byte + Ip1 byte + Ip2 byte + Name string + Ping int + Privilege int32 + State int32 + Team string + TeamKills int32 + func DecodeClientInfo(p io.Packet) (*ClientExtInfo, error) + type ClientKick struct + Client ingress.ClientID + Reason int32 + Text string + type ClientLeave struct + Client ingress.ClientID + Num ClientNum + type ClientName struct + Client ingress.ClientID + Name string + type ClientNum int32 + type ClientPacket struct + Channel uint8 + Client ingress.ClientID + Messages []P.Message + Server *GameServer + type ENetDatagram struct + func NewENetDatagram() *ENetDatagram + func (i *ENetDatagram) Poll(ctx context.Context) <-chan PingEvent + func (i *ENetDatagram) Serve(port int) error + func (i *ENetDatagram) Shutdown() + type GameServer struct + Alias string + Entities []maps.Entity + From *P.MessageProxy + Hidden bool + Id string + IsBuiltMap bool + LastEvent time.Time + Mutex deadlock.RWMutex + Started time.Time + To *P.MessageProxy + func (s *GameServer) GetClientInfo() []*ClientExtInfo + func (s *GameServer) GetServerInfo() *ServerInfo + func (s *GameServer) GetTeamInfo() *TeamInfo + func (s *GameServer) GetUptime() int + func (server *GameServer) GetEntities() []maps.Entity + func (server *GameServer) GetFormattedReference() string + func (server *GameServer) IsReference(reference string) bool + func (server *GameServer) Logger() zerolog.Logger + func (server *GameServer) Reference() string + func (server *GameServer) Shutdown() + type InfoProvider interface + GetClientInfo func() []*ClientExtInfo + GetServerInfo func() *ServerInfo + GetTeamInfo func() *TeamInfo + GetUptime func() int + type MapRequest struct + Map string + Mode int32 + type PingEvent struct + Request []byte + Response chan []byte + type ServerInfo struct + Description string + GameMode int32 + GamePaused bool + GameSpeed int32 + Map string + MaxClients int32 + NumClients int32 + PasswordMode int32 + TimeLeft int32 + func DecodeServerInfo(p io.Packet) (*ServerInfo, error) + type ServerInfoService struct + func NewServerInfoService(provider InfoProvider) *ServerInfoService + func (s *ServerInfoService) Handle(request *io.Packet, out chan []byte) error + func (s *ServerInfoService) PollMaster(ctx context.Context, port int) + func (s *ServerInfoService) Serve(ctx context.Context, port int, registerMaster bool) error + func (s *ServerInfoService) Shutdown() + func (s *ServerInfoService) UpdateMaster(port int) error + type ServerManager struct + Maps *assets.AssetFetcher + Mutex sync.Mutex + Receive chan []byte + Servers []*GameServer + func NewServerManager(maps *assets.AssetFetcher, serverDescription string, presets []config.Preset) *ServerManager + func (manager *ServerManager) FindPreset(presetName string, isVirtualOk bool) opt.Option[config.Preset] + func (manager *ServerManager) GetServerInfo() *ServerInfo + func (manager *ServerManager) NewServer(ctx context.Context, presetName string, isVirtualOk bool) (*GameServer, error) + func (manager *ServerManager) PollMapRequests(ctx context.Context, server *GameServer) + func (manager *ServerManager) PruneServers(ctx context.Context) + func (manager *ServerManager) ReadEntities(ctx context.Context, server *GameServer, data []byte) error + func (manager *ServerManager) ReceiveKicks() <-chan ClientKick + func (manager *ServerManager) ReceivePackets() <-chan ClientPacket + func (manager *ServerManager) RemoveServer(server *GameServer) + func (manager *ServerManager) Shutdown() + func (manager *ServerManager) Start() error + type ServerUptime struct + TimeUp int + func DecodeServerUptime(p io.Packet) (*ServerUptime, error) + type TeamInfo struct + GameMode int + IsDeathmatch bool + Scores []TeamScore + TimeLeft int + func DecodeTeamInfo(p io.Packet) (*TeamInfo, error) + type TeamScore struct + Bases []int + Score int + Team string