NetUtils

class NetUtils.ClientStatus(*values)

Bases: ByValue, IntEnum

CLIENT_CONNECTED = 5
CLIENT_GOAL = 30
CLIENT_PLAYING = 20
CLIENT_READY = 10
CLIENT_UNKNOWN = 0
class NetUtils.Endpoint(socket)

Bases: object

socket: ServerConnection
class NetUtils.HandlerMeta(name, bases, attrs)

Bases: type

class NetUtils.Hint(receiving_player, finding_player, location, item, found, entrance, item_flags, status)

Bases: NamedTuple

as_network_message() dict
entrance: str

Alias for field number 5

finding_player: int

Alias for field number 1

found: bool

Alias for field number 4

item: int

Alias for field number 3

item_flags: int

Alias for field number 6

property local
location: int

Alias for field number 2

re_check(ctx, team) Hint
re_prioritize(ctx, status: HintStatus) Hint
receiving_player: int

Alias for field number 0

status: HintStatus

Alias for field number 7

class NetUtils.HintStatus(*values)

Bases: ByValue, IntEnum

HINT_AVOID = 20
HINT_FOUND = 40
HINT_NO_PRIORITY = 10
HINT_PRIORITY = 30
HINT_UNSPECIFIED = 0
class NetUtils.JSONMessagePart

Bases: TypedDict

color: str
flags: int
hint_status: HintStatus
player: int
text: str
type: str
class NetUtils.JSONTypes(*values)

Bases: str, Enum

color = 'color'
entrance_name = 'entrance_name'
hint_status = 'hint_status'
item_id = 'item_id'
item_name = 'item_name'
location_id = 'location_id'
location_name = 'location_name'
player_id = 'player_id'
player_name = 'player_name'
text = 'text'
class NetUtils.JSONtoTextParser(*args, **kwargs)

Bases: object

color_codes = {'black': '000000', 'blue': '6495ED', 'cyan': '00EEEE', 'green': '00FF7F', 'magenta': 'EE00EE', 'orange': 'FF7700', 'plum': 'AF99EF', 'red': 'EE0000', 'salmon': 'FA8072', 'slateblue': '6D8BE8', 'white': 'FFFFFF', 'yellow': 'FAFAD2'}
handle_node(node: JSONMessagePart)
handlers = {'color': <function JSONtoTextParser._handle_color>, 'entrance_name': <function JSONtoTextParser._handle_entrance_name>, 'hint_status': <function JSONtoTextParser._handle_hint_status>, 'item_id': <function JSONtoTextParser._handle_item_id>, 'item_name': <function JSONtoTextParser._handle_item_name>, 'location_id': <function JSONtoTextParser._handle_location_id>, 'location_name': <function JSONtoTextParser._handle_location_name>, 'player_id': <function JSONtoTextParser._handle_player_id>, 'player_name': <function JSONtoTextParser._handle_player_name>, 'text': <function JSONtoTextParser._handle_text>}
class NetUtils.NetworkItem(item, location, player, flags)

Bases: NamedTuple

flags: int

Alias for field number 3

item: int

Alias for field number 0

location: int

Alias for field number 1

player: int

Sending player, except in LocationInfo (from LocationScouts), where it is the receiving player.

class NetUtils.NetworkPlayer(team: int, slot: int, alias: str, name: str)

Bases: NamedTuple

Represents a particular player on a particular team.

alias: str

Alias for field number 2

name: str

Alias for field number 3

slot: int

Alias for field number 1

team: int

Alias for field number 0

class NetUtils.NetworkSlot(name: str, game: str, type: SlotType, group_members: Union[List[int], Tuple] = ())

Bases: NamedTuple

Represents a particular slot across teams.

game: str

Alias for field number 1

group_members: List[int] | Tuple

Alias for field number 3

name: str

Alias for field number 0

type: SlotType

Alias for field number 2

class NetUtils.Permission(*values)

Bases: ByValue, IntFlag

auto = 6
auto_enabled = 7
disabled = 0
enabled = 1
static from_text(text: str)
goal = 2
class NetUtils.RawJSONtoTextParser(*args, **kwargs)

Bases: JSONtoTextParser

handlers = {'color': <function RawJSONtoTextParser._handle_color>, 'entrance_name': <function JSONtoTextParser._handle_entrance_name>, 'hint_status': <function JSONtoTextParser._handle_hint_status>, 'item_id': <function JSONtoTextParser._handle_item_id>, 'item_name': <function JSONtoTextParser._handle_item_name>, 'location_id': <function JSONtoTextParser._handle_location_id>, 'location_name': <function JSONtoTextParser._handle_location_name>, 'player_id': <function JSONtoTextParser._handle_player_id>, 'player_name': <function JSONtoTextParser._handle_player_name>, 'text': <function JSONtoTextParser._handle_text>}
class NetUtils.SlotType(*values)

Bases: ByValue, IntFlag

property always_goal: bool

Mark this slot as having reached its goal instantly.

group = 2
player = 1
spectator = 0
NetUtils.add_json_hint_status(parts: list, hint_status: HintStatus, text: str | None = None, **kwargs)
NetUtils.add_json_item(parts: list, item_id: int, player: int = 0, item_flags: int = 0, **kwargs) None
NetUtils.add_json_location(parts: list, location_id: int, player: int = 0, **kwargs) None
NetUtils.add_json_text(parts: list, text: Any, **kwargs) None
NetUtils.color(text, *args)
NetUtils.color_code(*args)
NetUtils.encode(obj: Any) str
NetUtils.get_any_version(data: dict) Version