Skip to content

API reference / @jsprismarine/protocol / t

t ​

Interfaces ​

Vec3Like ​

Defined in: protocol/src/wire/fieldTypes.ts:176

A plain coordinate triple, for the positions the wire carries.

Properties ​

x ​

x: number

Defined in: protocol/src/wire/fieldTypes.ts:177

y ​

y: number

Defined in: protocol/src/wire/fieldTypes.ts:178

z ​

z: number

Defined in: protocol/src/wire/fieldTypes.ts:179


WireType ​

Defined in: protocol/src/wire/fieldTypes.ts:22

One value's wire representation: both directions as one frozen pair.

Type Parameters ​

T ​

T

Properties ​

wire ​

readonly wire: string

Defined in: protocol/src/wire/fieldTypes.ts:24

The docs' name for the representation, for provenance and layout dumps.

Methods ​

read() ​

read(stream): T

Defined in: protocol/src/wire/fieldTypes.ts:28

Reads one value off the stream.

Parameters ​
stream ​

BinaryStream

Returns ​

T

write() ​

write(stream, value): void

Defined in: protocol/src/wire/fieldTypes.ts:26

Writes value to the stream.

Parameters ​
stream ​

BinaryStream

value ​

T

Returns ​

void

Variables ​

blockPos ​

const blockPos: WireType<Vec3Like>

Defined in: protocol/src/wire/fieldTypes.ts:194

BlockPos as the signed triple: three ZigZag varints, x then y then z.


bool ​

const bool: WireType<boolean>

Defined in: protocol/src/wire/fieldTypes.ts:42

bool: one byte, 0 or 1.


byteArray ​

const byteArray: WireType<Buffer<ArrayBufferLike>>

Defined in: protocol/src/wire/fieldTypes.ts:166

ByteArray: a varint byte length, then the raw bytes.


i32 ​

const i32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:205

i32 (big-endian): a signed 32-bit integer, as PlayStatus carries its status.


int8 ​

const int8: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:98

i8: one signed byte.


lf32 ​

const lf32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:77

lf32: a little-endian 32-bit float.


li16 ​

const li16: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:84

li16: a little-endian signed 16-bit integer.


li32 ​

const li32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:91

li32: a little-endian signed 32-bit integer.


li64 ​

const li64: WireType<bigint>

Defined in: protocol/src/wire/fieldTypes.ts:159

li64: a little-endian signed 64-bit integer.


lu16 ​

const lu16: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:212

lu16: a little-endian unsigned 16-bit integer.


lu32 ​

const lu32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:235

lu32: a little-endian unsigned 32-bit integer.


lu64 ​

const lu64: WireType<bigint>

Defined in: protocol/src/wire/fieldTypes.ts:152

lu64: a little-endian unsigned 64-bit integer.


string ​

const string: WireType<string>

Defined in: protocol/src/wire/fieldTypes.ts:105

string: a varint byte length, then UTF-8 bytes.


uint8 ​

const uint8: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:35

byte: one unsigned byte.


varint32 ​

const varint32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:49

zigzag32: a signed 32-bit varint.


varint64 ​

const varint64: WireType<bigint>

Defined in: protocol/src/wire/fieldTypes.ts:63

zigzag64: a signed 64-bit varint.


varuint32 ​

const varuint32: WireType<number>

Defined in: protocol/src/wire/fieldTypes.ts:56

varint: an unsigned 32-bit varint.


varuint64 ​

const varuint64: WireType<bigint>

Defined in: protocol/src/wire/fieldTypes.ts:70

varint64: an unsigned 64-bit varint.


vec3 ​

const vec3: WireType<Vec3Like>

Defined in: protocol/src/wire/fieldTypes.ts:183

Vec3: three little-endian floats, x then y then z.

Functions ​

custom() ​

custom<T>(wire, write, read): WireType<T>

Defined in: protocol/src/wire/fieldTypes.ts:148

A hand-written representation, named so layout dumps and the tracker can account for it.

This is where ItemStackRequest-grade bodies live: one reader and writer pair per structure, referenced from however many field lists carry it.

Type Parameters ​

T ​

T

Parameters ​

wire ​

string

write ​

(stream, value) => void

read ​

(stream) => T

Returns ​

WireType<T>


list() ​

list<T>(of): WireType<T[]>

Defined in: protocol/src/wire/fieldTypes.ts:127

A list: a varint count, then that many values.

Type Parameters ​

T ​

T

Parameters ​

of ​

WireType<T>

Returns ​

WireType<T[]>


listWith() ​

listWith<T>(count, of): WireType<T[]>

Defined in: protocol/src/wire/fieldTypes.ts:219

A list whose count travels as count rather than the default varint.

Type Parameters ​

T ​

T

Parameters ​

count ​

WireType<number>

of ​

WireType<T>

Returns ​

WireType<T[]>


optional() ​

optional<T>(of): WireType<T | null>

Defined in: protocol/src/wire/fieldTypes.ts:116

An optional value: a presence bool, then the value when present. Absent is null.

Type Parameters ​

T ​

T

Parameters ​

of ​

WireType<T>

Returns ​

WireType<T | null>


pair() ​

pair<A, B>(firstKey, first, secondKey, second): WireType<Record<string, A | B>>

Defined in: protocol/src/wire/fieldTypes.ts:242

Two named fields as one unit, for list items like a chunk coordinate pair.

Type Parameters ​

A ​

A

B ​

B

Parameters ​

firstKey ​

string

first ​

WireType<A>

secondKey ​

string

second ​

WireType<B>

Returns ​

WireType<Record<string, A | B>>