diff --git a/cmd/strom/main.go b/cmd/strom/main.go index 1858ebc..173ef88 100644 --- a/cmd/strom/main.go +++ b/cmd/strom/main.go @@ -19,7 +19,8 @@ import ( "github.com/admin-else/strom/cmd/strom/packet_inspector" "github.com/admin-else/strom/cmd/strom/print_nbt" "github.com/admin-else/strom/cmd/strom/print_replay" - "github.com/admin-else/strom/cmd/strom/raw_capture" + // "github.com/admin-else/strom/cmd/strom/raw_capture" // removed: use tcpflow instead for raw TCP capture + "github.com/admin-else/strom/cmd/strom/raw_to_tmcpr" "github.com/admin-else/strom/cmd/strom/registry_data_hunter" "github.com/admin-else/strom/cmd/strom/serve_tmcpr" "github.com/admin-else/strom/cmd/strom/serve_world" @@ -61,7 +62,8 @@ var subcommands = map[string]func(args []string) error{ "extract-mca": extract_mca.Run, "data": data.Run, "print-replay": print_replay.Run, - "raw-capture": raw_capture.Run, + // "raw-capture": raw_capture.Run, // removed: use tcpflow instead for raw TCP capture, then raw-to-tmcpr + "raw-to-tmcpr": raw_to_tmcpr.Run, "registry-data-hunter": registry_data_hunter.Run, "serve-world": serve_world.Run, "mca-to-tmcpr": mca_to_tmcpr.Run, diff --git a/cmd/strom/print_replay/main.go b/cmd/strom/print_replay/main.go index 74b7585..36b85c4 100644 --- a/cmd/strom/print_replay/main.go +++ b/cmd/strom/print_replay/main.go @@ -25,7 +25,7 @@ var ( FileFlag = cmd.String("file", "", "The tmcpr file to print") ProtocolVersion = cmd.Int("protocol", -1, "The protocol version") CreateTestsPath = cmd.String("create-tests", "", "") - StateFlag = cmd.String("state", "login", "Initial state: login, config, play") + StateFlag = cmd.String("state", "login", "Initial state: handshake, login, config, status, play") DirectionFlag = cmd.String("direction", "clientbound", "Packet direction: clientbound (ToClient) or serverbound (ToServer)") ) @@ -106,22 +106,6 @@ func UnpackPacket(r io.Reader) (packet proto_base.EncodeDecodeAble, i proto_base packet = &proto.UnCodablePacket{Err: proto.BadPacketIdErr, Data: packetData, Info: i} return } - switch direction { - case proto_base.ToClient: - switch i.Name { - case "success": - state = proto_base.Configuration - case "finish_configuration": - state = proto_base.Play - } - case proto_base.ToServer: - switch i.Name { - case "login_acknowledged": - state = proto_base.Configuration - case "finish_configuration": - state = proto_base.Play - } - } packet = reflect.New(reflect.TypeOf(i.Type).Elem()).Interface().(proto_base.EncodeDecodeAble) err = packet.Decode(b) if err != nil { @@ -132,9 +116,40 @@ func UnpackPacket(r io.Reader) (packet proto_base.EncodeDecodeAble, i proto_base packet = &proto.UnCodablePacket{Err: proto.PacketNotFullyDecodedErr, Data: packetData[indexafterid:], Info: i} return } + trackState(packet, i) return } +func trackState(packet proto_base.EncodeDecodeAble, i proto_base.PacketInfo) { + switch i.Name { + case "set_protocol": + v := reflect.ValueOf(packet).Elem() + nsField := v.FieldByName("NextState") + if nsField.IsValid() && nsField.Kind() == reflect.Int32 { + switch nsField.Int() { + case 1: + state = proto_base.Status + case 2: + state = proto_base.Login + } + } + case "login_start": + if int32(*ProtocolVersion) <= 47 { + state = proto_base.Play + } + case "success": + if int32(*ProtocolVersion) >= 764 { + state = proto_base.Configuration + } else { + state = proto_base.Play + } + case "finish_configuration": + state = proto_base.Play + case "login_acknowledged": + state = proto_base.Configuration + } +} + func Run(args []string) (err error) { err = cmd.Parse(args) if err != nil { @@ -147,12 +162,16 @@ func Run(args []string) (err error) { return fmt.Errorf("no file specified") } switch *StateFlag { + case "handshake": + state = proto_base.Handshaking case "login": state = proto_base.Login case "config": state = proto_base.Configuration case "play": state = proto_base.Play + case "status": + state = proto_base.Status default: return fmt.Errorf("unknown state: %s", *StateFlag) } diff --git a/cmd/strom/raw_capture/main.go b/cmd/strom/raw_capture/main.go index cf66252..0ca32b7 100644 --- a/cmd/strom/raw_capture/main.go +++ b/cmd/strom/raw_capture/main.go @@ -3,162 +3,29 @@ package raw_capture import ( "flag" "fmt" - "log/slog" + "io" + "net" "os" - "time" - "github.com/admin-else/strom/mc/api" "github.com/admin-else/strom/mc/client" - "github.com/admin-else/strom/mc/data" - "github.com/admin-else/strom/mc/event" - "github.com/admin-else/strom/mc/proto" - "github.com/admin-else/strom/mc/proto/replay" - "github.com/admin-else/strom/mc/proto_base" - "github.com/admin-else/strom/mc/proto_generated/v1_21_11" - "github.com/admin-else/strom/mc/server" - "github.com/admin-else/strom/mc/text" ) var Cmd = flag.NewFlagSet("raw-capture", flag.ContinueOnError) -var OfflineNameFlag = Cmd.String("name", "raw_capture", "offline player name") -var Token = Cmd.String("token", "", "token to use") - var TargetAddr = Cmd.String("addr", "127.0.0.1:25565", "address to connect to") var ListenAddr = Cmd.String("listen", "127.0.0.1:25566", "address to listen on") var ClientboundFile = Cmd.String("clientbound-file", "clientbound.tmcpr", "file to write clientbound packets to") var ServerboundFile = Cmd.String("serverbound-file", "serverbound.tmcpr", "file to write serverbound packets to") -var Version = Cmd.String("version", "", "client protocol version (e.g. 26.1); if empty, detect from server status") -var StatusResponse = server.StatusResponse{ - Version: server.StatusResponseVersion{ - Name: text.Pretty("STROM raw-capture"), - Protocol: 0, - }, - Players: server.StatusResponsePlayers{}, - Description: text.Pretty("STROM raw-capture proxy"), - Favicon: "", - EnforcesSecureChat: false, -} - -type Proxy struct { - Client, Servee *proto.Conn - - clientboundFile *os.File - serverboundFile *os.File - - clientboundWriter *replay.Writer - serverboundWriter *replay.Writer - - startTime time.Time -} - -func (p *Proxy) Start() (err error) { - p.startTime = time.Now() - - p.Client.RegisterCritical(p.OnAnything) - p.Servee.RegisterCritical(p.OnAnything) - - p.Client.RegisterCriticalUntilLatest(p.OnCompress) - p.Servee.RegisterCriticalUntilLatest(p.OnHandshake) - p.Servee.RegisterCriticalUntilLatest(p.OnLoginAcknowledged) - p.Servee.RegisterCriticalUntilLatest(p.OnFinishConfiguration) - - errChan := make(chan error) - go func() { - errChan <- p.Client.StartConn() - }() - go func() { - errChan <- p.Servee.StartConn() - }() - err = <-errChan - return -} - -func (p *Proxy) timestamp() uint32 { - return uint32(time.Since(p.startTime).Milliseconds()) -} - -func (p *Proxy) OnAnything(e event.Anything) (err error) { - packet, ok := e.Val.(proto_base.EncodeDecodeAble) - if !ok { - return - } - - packetInfo, ok := proto.LookupPacketInfoByType(packet) - if !ok { - return - } - - if packetInfo.Name == "encryption_begin" { - return fmt.Errorf("encryption requested by remote server; raw capture cannot continue") - } - - switch packetInfo.Direction { - case proto_base.ToServer: - err = p.serverboundWriter.WritePacket(packet, p.timestamp()) - if err != nil { - return - } - err = p.Client.Send(packet) - case proto_base.ToClient: - err = p.clientboundWriter.WritePacket(packet, p.timestamp()) - if err != nil { - return - } - err = p.Servee.Send(packet) - } - return -} - -func (p *Proxy) OnCompress(packet *v1_21_11.LoginToClientPacketCompress) (err error) { - err = p.clientboundWriter.WritePacket(packet, p.timestamp()) +func Handle(c net.Conn, addr string) { + sockPuppet, err := net.Dial("tcp", addr) if err != nil { return } - err = p.Servee.Send(packet) - if err != nil { - return - } - p.Servee.SetCompressionThreshold(packet.Threshold) - p.Client.SetCompressionThreshold(packet.Threshold) - return event.DontForwardErr + io.MultiWriter() + go io.Copy(c, sockPuppet) + io.Copy(sockPuppet, c) } - -func (p *Proxy) OnHandshake(packet *v1_21_11.HandshakingToServerPacketSetProtocol) (err error) { - state := proto_base.State(packet.NextState) - p.Servee.SetState(state) - return event.DontForwardErr -} - -func (p *Proxy) OnLoginAcknowledged(packet *v1_21_11.LoginToServerPacketLoginAcknowledged) (err error) { - err = p.serverboundWriter.WritePacket(packet, p.timestamp()) - if err != nil { - return - } - err = p.Client.Send(packet) - if err != nil { - return - } - p.Servee.SetState(proto_base.Configuration) - p.Client.SetState(proto_base.Configuration) - return event.DontForwardErr -} - -func (p *Proxy) OnFinishConfiguration(packet *v1_21_11.ConfigurationToServerPacketFinishConfiguration) (err error) { - err = p.serverboundWriter.WritePacket(packet, p.timestamp()) - if err != nil { - return - } - err = p.Client.Send(packet) - if err != nil { - return - } - p.Servee.SetState(proto_base.Play) - p.Client.SetState(proto_base.Play) - return event.DontForwardErr -} - func Run(args []string) (err error) { err = Cmd.Parse(args) if err != nil { @@ -181,73 +48,15 @@ func Run(args []string) (err error) { if err != nil { return } - - var targetVersion string - var targetProtocol int32 - if *Version == "" { - status, err := client.Status(nil, resolvedAddr) - if err != nil { - return fmt.Errorf("failed to detect server version: %w", err) - } - targetProtocol = status.Version.Protocol - versionInfo, err := data.LookUpVersionByProtocolVersion(targetProtocol) - if err != nil { - return fmt.Errorf("unknown protocol version %d: %w", targetProtocol, err) - } - targetVersion = versionInfo.MinecraftVersion - } else { - versionInfo, err := data.LookUpVersionByName(*Version) - if err != nil { - return fmt.Errorf("unknown version %s: %w", *Version, err) - } - targetVersion = versionInfo.MinecraftVersion - targetProtocol = versionInfo.Version + l, err := net.Listen("tcp", *ListenAddr) + if err != nil { + return } - - StatusResponse.Version.Name = text.Pretty("STROM raw-capture " + targetVersion) - StatusResponse.Version.Protocol = targetProtocol - StatusResponse.Description = text.Pretty(fmt.Sprintf("Raw capture proxy forwards to %s (%s)", resolvedAddr, targetVersion)) - - slog.Info("Starting raw capture", "listen", *ListenAddr, "target", resolvedAddr, "version", targetVersion, "protocol", targetProtocol, "clientbound", *ClientboundFile, "serverbound", *ServerboundFile) - - err = server.StartServerWithOnConn(*ListenAddr, func(serveeConn *proto.Conn) (err error) { - proxy := &Proxy{ - Servee: serveeConn, - clientboundFile: clientboundFile, - serverboundFile: serverboundFile, - clientboundWriter: replay.NewWriter(clientboundFile), - serverboundWriter: replay.NewWriter(serverboundFile), - } - - acc := api.NewOfflineAccount(*OfflineNameFlag) - if *Token != "" { - acc, err = api.NewAccountFromYGG(*Token) - if err != nil { - return - } - } - - _, err = server.ServeLogin(serveeConn, server.WithOtherAccount(acc), server.WithStatus(StatusResponse), server.WithoutOnlineMode(), server.WithoutEncryption()) + for { + c, err := l.Accept() if err != nil { - return + continue } - - c, err := client.Connect(nil, resolvedAddr, targetVersion) - if err != nil { - return - } - defer c.Close() - - err = client.LoginRaw(c, acc) - if err != nil { - return - } - - proxy.Client = c - proxy.Client.AlwaysDecode = true - proxy.Servee.AlwaysDecode = true - - return proxy.Start() - }) - return + go Handle(c, resolvedAddr) + } } diff --git a/cmd/strom/raw_to_tmcpr/main.go b/cmd/strom/raw_to_tmcpr/main.go new file mode 100644 index 0000000..bf0aaa9 --- /dev/null +++ b/cmd/strom/raw_to_tmcpr/main.go @@ -0,0 +1,243 @@ +package raw_to_tmcpr + +import ( + "bytes" + "compress/zlib" + "errors" + "flag" + "fmt" + "io" + "os" + "time" + + "github.com/admin-else/strom/mc/proto/replay" + "github.com/admin-else/strom/mc/proto_base" +) + +var Cmd = flag.NewFlagSet("raw-to-tmcpr", flag.ContinueOnError) + +var ClientboundIn = Cmd.String("clientbound", "", "raw tcpflow file for clientbound (server->client) direction") +var ServerboundIn = Cmd.String("serverbound", "", "raw tcpflow file for serverbound (client->server) direction") +var ClientboundOut = Cmd.String("clientbound-out", "clientbound.tmcpr", "output TMCPR file for clientbound") +var ServerboundOut = Cmd.String("serverbound-out", "serverbound.tmcpr", "output TMCPR file for serverbound") +var ClientboundState = Cmd.String("clientbound-state", "login", "initial state for clientbound: handshake, login, status, play") +var ServerboundState = Cmd.String("serverbound-state", "handshake", "initial state for serverbound: handshake, login, status, play") + +type captureReader struct { + r io.Reader + out *replay.Writer + state proto_base.State + threshold int32 + startTime time.Time + haveStartTime bool + direction proto_base.Direction + pendingThreshold int32 +} + +func (cr *captureReader) setStartTime() { + if !cr.haveStartTime { + cr.startTime = time.Now() + cr.haveStartTime = true + } +} + +func (cr *captureReader) timestamp() uint32 { + return uint32(time.Since(cr.startTime).Milliseconds()) +} + +func readPacketBytes(r io.Reader, threshold int32) ([]byte, error) { + packetLen, err := proto_base.DecodeVarInt(r) + if err != nil { + return nil, fmt.Errorf("read packet length: %w", err) + } + + rawBytes := make([]byte, packetLen) + _, err = io.ReadFull(r, rawBytes) + if err != nil { + return nil, fmt.Errorf("read packet data: %w", err) + } + + if threshold >= 0 { + buf := bytes.NewReader(rawBytes) + uncompressedLen, err := proto_base.DecodeVarInt(buf) + if err != nil { + return nil, fmt.Errorf("read uncompressed length: %w", err) + } + if uncompressedLen == 0 { + return io.ReadAll(buf) + } else { + zReader, err := zlib.NewReader(buf) + if err != nil { + return nil, fmt.Errorf("zlib reader: %w", err) + } + defer zReader.Close() + decompressed, err := io.ReadAll(zReader) + if err != nil { + return nil, fmt.Errorf("decompress: %w", err) + } + return decompressed, nil + } + } + + return rawBytes, nil +} + +func (cr *captureReader) trackState(packetBytes []byte) { + buf := bytes.NewReader(packetBytes) + packetId, err := proto_base.DecodeVarInt(buf) + if err != nil { + return + } + + switch cr.state { + case proto_base.Handshaking: + if cr.direction == proto_base.ToServer && packetId == 0 { + _, err = proto_base.DecodeVarInt(buf) // protocol version + if err != nil { + return + } + _, err = proto_base.DecodeString(buf) // server address + if err != nil { + return + } + portBytes := make([]byte, 2) + _, err = io.ReadFull(buf, portBytes) + if err != nil { + return + } + nextState, err := proto_base.DecodeVarInt(buf) + if err != nil { + return + } + if nextState == 2 { + cr.state = proto_base.Login + } else if nextState == 1 { + cr.state = proto_base.Status + } + } + case proto_base.Login: + if cr.direction == proto_base.ToClient { + if packetId == 0x03 { + threshold, err := proto_base.DecodeVarInt(buf) + if err == nil { + cr.threshold = threshold + } + } else if packetId == 0x02 { + cr.state = proto_base.Play + } + } else if cr.direction == proto_base.ToServer && packetId == 0 { + if cr.pendingThreshold >= 0 { + cr.threshold = cr.pendingThreshold + } + } + case proto_base.Status: + case proto_base.Play: + } +} + +func (cr *captureReader) process() (count int, err error) { + for { + packetBytes, err := readPacketBytes(cr.r, cr.threshold) + if err != nil { + if errors.Is(err, io.EOF) || errors.Is(err, io.ErrUnexpectedEOF) { + return count, nil + } + return count, err + } + + cr.setStartTime() + cr.trackState(packetBytes) + + err = cr.out.WriteRaw(packetBytes, cr.timestamp()) + if err != nil { + return count, fmt.Errorf("write TMCPR: %w", err) + } + count++ + } +} + +func Run(args []string) (err error) { + err = Cmd.Parse(args) + if err != nil { + return + } + + if *ClientboundIn == "" && *ServerboundIn == "" { + return fmt.Errorf("at least one of -clientbound or -serverbound must be specified") + } + + parseState := func(name string) (proto_base.State, error) { + switch name { + case "handshake": + return proto_base.Handshaking, nil + case "login": + return proto_base.Login, nil + case "play": + return proto_base.Play, nil + case "status": + return proto_base.Status, nil + default: + return 0, fmt.Errorf("unknown state: %s (valid: handshake, login, status, play)", name) + } + } + + var compressionThreshold int32 = -1 + + if *ClientboundIn != "" { + state, err := parseState(*ClientboundState) + if err != nil { + return err + } + compressionThreshold, err = processFile(*ClientboundIn, *ClientboundOut, state, proto_base.ToClient, -1) + if err != nil { + return fmt.Errorf("clientbound: %w", err) + } + } + + if *ServerboundIn != "" { + state, err := parseState(*ServerboundState) + if err != nil { + return err + } + _, err = processFile(*ServerboundIn, *ServerboundOut, state, proto_base.ToServer, compressionThreshold) + if err != nil { + return fmt.Errorf("serverbound: %w", err) + } + } + + return +} + +func processFile(inPath, outPath string, initial proto_base.State, dir proto_base.Direction, initialThreshold int32) (finalThreshold int32, err error) { + in, err := os.Open(inPath) + if err != nil { + return initialThreshold, fmt.Errorf("open input: %w", err) + } + defer in.Close() + + out, err := os.Create(outPath) + if err != nil { + return initialThreshold, fmt.Errorf("create output: %w", err) + } + defer out.Close() + + cr := &captureReader{ + r: in, + out: replay.NewWriter(out), + state: initial, + threshold: -1, + direction: dir, + pendingThreshold: initialThreshold, + } + if dir == proto_base.ToClient { + cr.threshold = initialThreshold + } + + count, err := cr.process() + if err != nil { + return cr.threshold, err + } + + fmt.Printf("%s: %d packets written to %s (threshold=%d)\n", inPath, count, outPath, cr.threshold) + return cr.threshold, nil +} diff --git a/mc/data/minecraft-data/pc/1.8/attributes.json b/mc/data/minecraft-data/pc/1.8/attributes.json new file mode 100644 index 0000000..d54476b --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/attributes.json @@ -0,0 +1,86 @@ +[ + { + "name": "maxHealth", + "resource": "generic.maxHealth", + "default": 20, + "min": 1, + "max": 1024 + }, + { + "name": "followRange", + "resource": "generic.followRange", + "default": 32, + "min": 0, + "max": 2048 + }, + { + "name": "knockbackResistance", + "resource": "generic.knockbackResistance", + "default": 0, + "min": 0, + "max": 1 + }, + { + "name": "movementSpeed", + "resource": "generic.movementSpeed", + "default": 0.7, + "min": 0, + "max": 1024 + }, + { + "name": "attackDamage", + "resource": "generic.attackDamage", + "default": 2, + "min": 0, + "max": 2048 + }, + { + "name": "horseJumpStrength", + "resource": "horse.jumpStrength", + "default": 0.7, + "min": 0, + "max": 2 + }, + { + "name": "zombieSpawnReinforcements", + "resource": "zombie.spawnReinforcements", + "default": 0, + "min": 0, + "max": 1 + }, + { + "name": "attackSpeed", + "resource": "generic.attackSpeed", + "default": 4, + "min": 0, + "max": 1024 + }, + { + "name": "flyingSpeed", + "resource": "generic.flyingSpeed", + "default": 0.4, + "min": 0, + "max": 1024 + }, + { + "name": "attackKnockback", + "resource": "generic.attackKnockback", + "default": 0, + "min": 0, + "max": 5 + }, + { + "name": "armorHealth", + "resource": "generic.armor", + "default": 0, + "min": 0, + "max": 30 + }, + { + "name": "armorToughness", + "resource": "generic.armorToughness", + "default": 0, + "min": 0, + "max": 20 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/biomes.json b/mc/data/minecraft-data/pc/1.8/biomes.json new file mode 100644 index 0000000..d5ef18d --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/biomes.json @@ -0,0 +1,817 @@ +[ + { + "id": 0, + "name": "ocean", + "name_legacy": "ocean", + "category": "ocean", + "temperature": 0.5, + "precipitation": "rain", + "depth": -1, + "dimension": "overworld", + "displayName": "Ocean", + "color": 112, + "rainfall": 0.5 + }, + { + "id": 1, + "name": "plains", + "name_legacy": "plains", + "category": "plains", + "temperature": 0.8, + "precipitation": "rain", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Plains", + "color": 9286496, + "rainfall": 0.4 + }, + { + "id": 2, + "name": "desert", + "name_legacy": "desert", + "category": "desert", + "temperature": 2, + "precipitation": "none", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Desert", + "color": 16421912, + "rainfall": 0 + }, + { + "id": 3, + "name": "mountains", + "name_legacy": "mountains", + "category": "extreme_hills", + "temperature": 0.2, + "precipitation": "rain", + "depth": 1, + "dimension": "overworld", + "displayName": "Extreme Hills", + "color": 6316128, + "rainfall": 0.3 + }, + { + "id": 4, + "name": "forest", + "name_legacy": "forest", + "category": "forest", + "temperature": 0.7, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Forest", + "color": 353825, + "rainfall": 0.8 + }, + { + "id": 5, + "name": "taiga", + "name_legacy": "taiga", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Taiga", + "color": 747097, + "rainfall": 0.8 + }, + { + "id": 6, + "name": "swamp", + "name_legacy": "swamp", + "category": "swamp", + "temperature": 0.8, + "precipitation": "rain", + "depth": -0.2, + "dimension": "overworld", + "displayName": "Swampland", + "color": 522674, + "rainfall": 0.9 + }, + { + "id": 7, + "name": "river", + "name_legacy": "river", + "category": "river", + "temperature": 0.5, + "precipitation": "rain", + "depth": -0.5, + "dimension": "overworld", + "displayName": "River", + "color": 255, + "rainfall": 0.5 + }, + { + "id": 8, + "name": "nether_wastes", + "name_legacy": "nether_wastes", + "category": "nether", + "temperature": 2, + "precipitation": "none", + "depth": 0.1, + "dimension": "nether", + "displayName": "Hell", + "color": 12532539, + "rainfall": 0, + "climates": [ + { + "temperature": 0, + "humidity": 0, + "altitude": 0, + "weirdness": 0, + "offset": 0 + } + ] + }, + { + "id": 9, + "name": "the_end", + "name_legacy": "the_end", + "category": "the_end", + "temperature": 0.5, + "precipitation": "none", + "depth": 0.1, + "dimension": "end", + "displayName": "The End", + "color": 8421631, + "rainfall": 0.5 + }, + { + "id": 10, + "name": "frozen_ocean", + "name_legacy": "frozen_ocean", + "category": "ocean", + "temperature": 0, + "precipitation": "snow", + "depth": -1, + "dimension": "overworld", + "displayName": "Frozen Ocean", + "color": 7368918, + "rainfall": 0.5 + }, + { + "id": 11, + "name": "frozen_river", + "name_legacy": "frozen_river", + "category": "river", + "temperature": 0, + "precipitation": "snow", + "depth": -0.5, + "dimension": "overworld", + "displayName": "Frozen River", + "color": 10526975, + "rainfall": 0.5 + }, + { + "id": 12, + "name": "snowy_tundra", + "name_legacy": "snowy_tundra", + "category": "icy", + "temperature": 0, + "precipitation": "snow", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Ice Plains", + "color": 16777215, + "rainfall": 0.5 + }, + { + "id": 13, + "name": "snowy_mountains", + "name_legacy": "snowy_mountains", + "category": "icy", + "temperature": 0, + "precipitation": "snow", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Ice Mountains", + "color": 10526880, + "rainfall": 0.5 + }, + { + "id": 14, + "name": "mushroom_fields", + "name_legacy": "mushroom_fields", + "category": "mushroom", + "temperature": 0.9, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Mushroom Island", + "color": 16711935, + "rainfall": 1 + }, + { + "id": 15, + "name": "mushroom_field_shore", + "name_legacy": "mushroom_field_shore", + "category": "mushroom", + "temperature": 0.9, + "precipitation": "rain", + "depth": 0, + "dimension": "overworld", + "displayName": "Mushroom Island Shore", + "color": 10486015, + "rainfall": 1 + }, + { + "id": 16, + "name": "beach", + "name_legacy": "beach", + "category": "beach", + "temperature": 0.8, + "precipitation": "rain", + "depth": 0, + "dimension": "overworld", + "displayName": "Beach", + "color": 16440917, + "rainfall": 0.4 + }, + { + "id": 17, + "name": "desert_hills", + "name_legacy": "desert_hills", + "category": "desert", + "temperature": 2, + "precipitation": "none", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Desert Hills", + "color": 13786898, + "rainfall": 0 + }, + { + "id": 18, + "name": "wooded_hills", + "name_legacy": "wooded_hills", + "category": "forest", + "temperature": 0.7, + "precipitation": "rain", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Forest Hills", + "color": 2250012, + "rainfall": 0.8 + }, + { + "id": 19, + "name": "taiga_hills", + "name_legacy": "taiga_hills", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Taiga Hills", + "color": 1456435, + "rainfall": 0.8 + }, + { + "id": 20, + "name": "mountain_edge", + "name_legacy": "mountain_edge", + "category": "extreme_hills", + "temperature": 0.2, + "precipitation": "rain", + "depth": 0.8, + "dimension": "overworld", + "displayName": "Extreme Hills Edge", + "color": 7501978, + "rainfall": 0.3 + }, + { + "id": 21, + "name": "jungle", + "name_legacy": "jungle", + "category": "jungle", + "temperature": 0.95, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Jungle", + "color": 5470985, + "rainfall": 0.9 + }, + { + "id": 22, + "name": "jungle_hills", + "name_legacy": "jungle_hills", + "category": "jungle", + "temperature": 0.95, + "precipitation": "rain", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Jungle Hills", + "color": 2900485, + "rainfall": 0.9 + }, + { + "id": 23, + "name": "jungle_edge", + "name_legacy": "jungle_edge", + "category": "jungle", + "temperature": 0.95, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Jungle Edge", + "color": 6458135, + "rainfall": 0.8 + }, + { + "id": 24, + "name": "deep_ocean", + "name_legacy": "deep_ocean", + "category": "ocean", + "temperature": 0.5, + "precipitation": "rain", + "depth": -1.8, + "dimension": "overworld", + "displayName": "Deep Ocean", + "color": 48, + "rainfall": 0.5 + }, + { + "id": 25, + "name": "stone_shore", + "name_legacy": "stone_shore", + "category": "none", + "temperature": 0.2, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Stone Beach", + "color": 10658436, + "rainfall": 0.3 + }, + { + "id": 26, + "name": "snowy_beach", + "name_legacy": "snowy_beach", + "category": "beach", + "temperature": 0.05, + "precipitation": "snow", + "depth": 0, + "dimension": "overworld", + "displayName": "Cold Beach", + "color": 16445632, + "rainfall": 0.3 + }, + { + "id": 27, + "name": "birch_forest", + "name_legacy": "birch_forest", + "category": "forest", + "temperature": 0.6, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Birch Forest", + "color": 3175492, + "rainfall": 0.6 + }, + { + "id": 28, + "name": "birch_forest_hills", + "name_legacy": "birch_forest_hills", + "category": "forest", + "temperature": 0.6, + "precipitation": "rain", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Birch Forest Hills", + "color": 2055986, + "rainfall": 0.6 + }, + { + "id": 29, + "name": "dark_forest", + "name_legacy": "dark_forest", + "category": "forest", + "temperature": 0.7, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Roofed Forest", + "color": 4215066, + "rainfall": 0.8 + }, + { + "id": 30, + "name": "snowy_taiga", + "name_legacy": "snowy_taiga", + "category": "taiga", + "temperature": -0.5, + "precipitation": "snow", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Cold Taiga", + "color": 3233098, + "rainfall": 0.4 + }, + { + "id": 31, + "name": "snowy_taiga_hills", + "name_legacy": "snowy_taiga_hills", + "category": "taiga", + "temperature": -0.5, + "precipitation": "snow", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Cold Taiga Hills", + "color": 2375478, + "rainfall": 0.4 + }, + { + "id": 32, + "name": "giant_tree_taiga", + "name_legacy": "giant_tree_taiga", + "category": "taiga", + "temperature": 0.3, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Mega Taiga", + "color": 5858897, + "rainfall": 0.8 + }, + { + "id": 33, + "name": "giant_tree_taiga_hills", + "name_legacy": "giant_tree_taiga_hills", + "category": "taiga", + "temperature": 0.3, + "precipitation": "rain", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Mega Taiga Hills", + "color": 4542270, + "rainfall": 0.8 + }, + { + "id": 34, + "name": "wooded_mountains", + "name_legacy": "wooded_mountains", + "category": "extreme_hills", + "temperature": 0.2, + "precipitation": "rain", + "depth": 1, + "dimension": "overworld", + "displayName": "Extreme Hills+", + "color": 5271632, + "rainfall": 0.3 + }, + { + "id": 35, + "name": "savanna", + "name_legacy": "savanna", + "category": "savanna", + "temperature": 1.2, + "precipitation": "none", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Savanna", + "color": 12431967, + "rainfall": 0 + }, + { + "id": 36, + "name": "savanna_plateau", + "name_legacy": "savanna_plateau", + "category": "savanna", + "temperature": 1, + "precipitation": "none", + "depth": 1.5, + "dimension": "overworld", + "displayName": "Savanna Plateau", + "color": 10984804, + "rainfall": 0 + }, + { + "id": 37, + "name": "badlands", + "name_legacy": "badlands", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Mesa", + "color": 14238997, + "rainfall": 0 + }, + { + "id": 38, + "name": "wooded_badlands_plateau", + "name_legacy": "wooded_badlands_plateau", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 1.5, + "dimension": "overworld", + "displayName": "Mesa Plateau F", + "color": 11573093, + "rainfall": 0 + }, + { + "id": 39, + "name": "badlands_plateau", + "name_legacy": "badlands_plateau", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 1.5, + "dimension": "overworld", + "displayName": "Mesa Plateau", + "color": 13274213, + "rainfall": 0 + }, + { + "id": 129, + "name": "sunflower_plains", + "name_legacy": "mutated_plains", + "category": "plains", + "temperature": 0.8, + "precipitation": "rain", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Plains M", + "color": 11918216, + "rainfall": 0.4 + }, + { + "id": 130, + "name": "desert_lakes", + "name_legacy": "mutated_desert", + "category": "desert", + "temperature": 2, + "precipitation": "none", + "depth": 0.125, + "dimension": "overworld", + "displayName": "Desert M", + "color": 16759872, + "rainfall": 0 + }, + { + "id": 131, + "name": "gravelly_mountains", + "name_legacy": "mutated_extreme_hills", + "category": "extreme_hills", + "temperature": 0.2, + "precipitation": "rain", + "depth": 1, + "dimension": "overworld", + "displayName": "Extreme Hills M", + "color": 8947848, + "rainfall": 0.3 + }, + { + "id": 132, + "name": "flower_forest", + "name_legacy": "mutated_forest", + "category": "forest", + "temperature": 0.7, + "precipitation": "rain", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Forest M", + "color": 2985545, + "rainfall": 0.8 + }, + { + "id": 133, + "name": "taiga_mountains", + "name_legacy": "mutated_taiga", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.3, + "dimension": "overworld", + "displayName": "Taiga M", + "color": 3378817, + "rainfall": 0.8 + }, + { + "id": 134, + "name": "swamp_hills", + "name_legacy": "mutated_swampland", + "category": "swamp", + "temperature": 0.8, + "precipitation": "rain", + "depth": -0.1, + "dimension": "overworld", + "displayName": "Swampland M", + "color": 3145690, + "rainfall": 0.9 + }, + { + "id": 140, + "name": "ice_spikes", + "name_legacy": "mutated_ice_flats", + "category": "icy", + "temperature": 0, + "precipitation": "snow", + "depth": 0.425, + "dimension": "overworld", + "displayName": "Ice Plains M", + "color": 11853020, + "rainfall": 0.5 + }, + { + "id": 149, + "name": "modified_jungle", + "name_legacy": "mutated_jungle", + "category": "jungle", + "temperature": 0.95, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Jungle M", + "color": 8102705, + "rainfall": 0.9 + }, + { + "id": 151, + "name": "modified_jungle_edge", + "name_legacy": "mutated_jungle_edge", + "category": "jungle", + "temperature": 0.95, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "JungleEdge M", + "color": 9089855, + "rainfall": 0.8 + }, + { + "id": 155, + "name": "tall_birch_forest", + "name_legacy": "mutated_birch_forest", + "category": "forest", + "temperature": 0.6, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Birch Forest M", + "color": 5807212, + "rainfall": 0.6 + }, + { + "id": 156, + "name": "tall_birch_hills", + "name_legacy": "mutated_birch_forest_hills", + "category": "forest", + "temperature": 0.6, + "precipitation": "rain", + "depth": 0.55, + "dimension": "overworld", + "displayName": "Birch Forest Hills M", + "color": 4687706, + "rainfall": 0.6 + }, + { + "id": 157, + "name": "dark_forest_hills", + "name_legacy": "mutated_roofed_forest", + "category": "forest", + "temperature": 0.7, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Roofed Forest M", + "color": 6846786, + "rainfall": 0.8 + }, + { + "id": 158, + "name": "snowy_taiga_mountains", + "name_legacy": "mutated_taiga_cold", + "category": "taiga", + "temperature": -0.5, + "precipitation": "snow", + "depth": 0.3, + "dimension": "overworld", + "displayName": "Cold Taiga M", + "color": 5864818, + "rainfall": 0.4 + }, + { + "id": 160, + "name": "giant_spruce_taiga", + "name_legacy": "mutated_redwood_taiga", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Mega Taiga M", + "color": 8490617, + "rainfall": 0.8 + }, + { + "id": 161, + "name": "giant_spruce_taiga_hills", + "name_legacy": "mutated_redwood_taiga_hills", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Mega Taiga Hills M", + "color": 7173990, + "rainfall": 0.8 + }, + { + "id": 161, + "name": "giant_spruce_taiga_hills", + "name_legacy": "mutated_redwood_taiga_hills", + "category": "taiga", + "temperature": 0.25, + "precipitation": "rain", + "depth": 0.2, + "dimension": "overworld", + "displayName": "Redwood Taiga Hills M", + "color": 7173990, + "rainfall": 0.8 + }, + { + "id": 162, + "name": "modified_gravelly_mountains", + "name_legacy": "mutated_extreme_hills_with_trees", + "category": "extreme_hills", + "temperature": 0.2, + "precipitation": "rain", + "depth": 1, + "dimension": "overworld", + "displayName": "Extreme Hills+ M", + "color": 7903352, + "rainfall": 0.3 + }, + { + "id": 163, + "name": "shattered_savanna", + "name_legacy": "mutated_savanna", + "category": "savanna", + "temperature": 1.1, + "precipitation": "none", + "depth": 0.3625, + "dimension": "overworld", + "displayName": "Savanna M", + "color": 15063687, + "rainfall": 0 + }, + { + "id": 164, + "name": "shattered_savanna_plateau", + "name_legacy": "mutated_savanna_rock", + "category": "savanna", + "temperature": 1, + "precipitation": "none", + "depth": 1.05, + "dimension": "overworld", + "displayName": "Savanna Plateau M", + "color": 13616524, + "rainfall": 0 + }, + { + "id": 165, + "name": "eroded_badlands", + "name_legacy": "mutated_mesa", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 0.1, + "dimension": "overworld", + "displayName": "Mesa M", + "color": 16739645, + "rainfall": 0 + }, + { + "id": 166, + "name": "modified_wooded_badlands_plateau", + "name_legacy": "mutated_mesa_rock", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Mesa Plateau F M", + "color": 14204813, + "rainfall": 0 + }, + { + "id": 167, + "name": "modified_badlands_plateau", + "name_legacy": "mutated_mesa_clear_rock", + "category": "mesa", + "temperature": 2, + "precipitation": "none", + "depth": 0.45, + "dimension": "overworld", + "displayName": "Mesa Plateau M", + "color": 15905933, + "rainfall": 0 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/blockCollisionShapes.json b/mc/data/minecraft-data/pc/1.8/blockCollisionShapes.json new file mode 100644 index 0000000..f3f3810 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/blockCollisionShapes.json @@ -0,0 +1,274 @@ +{"blocks":{"air":0, +"stone":1, +"grass":1, +"dirt":1, +"cobblestone":1, +"planks":1, +"sapling":0, +"bedrock":1, +"flowing_water":0, +"water":0, +"flowing_lava":0, +"lava":0, +"sand":1, +"gravel":1, +"gold_ore":1, +"iron_ore":1, +"coal_ore":1, +"log":1, +"leaves":1, +"sponge":1, +"glass":1, +"lapis_ore":1, +"lapis_block":1, +"dispenser":1, +"sandstone":1, +"noteblock":1, +"bed":2, +"golden_rail":0, +"detector_rail":0, +"sticky_piston":[1,1,1,1,1,1,0,0,3,4,5,6,7,8,0,0], +"web":0, +"tallgrass":0, +"deadbush":0, +"piston":[1,1,1,1,1,1,0,0,3,4,5,6,7,8,0,0], +"piston_head":[10,11,9,12,13,14,0,0,10,11,9,12,13,14,0,0], +"wool":1, +"piston_extension":0, +"yellow_flower":0, +"red_flower":0, +"brown_mushroom":0, +"red_mushroom":0, +"gold_block":1, +"iron_block":1, +"double_stone_slab":1, +"stone_slab":[15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16], +"brick_block":1, +"tnt":1, +"bookshelf":1, +"mossy_cobblestone":1, +"obsidian":1, +"torch":0, +"fire":0, +"mob_spawner":1, +"oak_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"chest":25, +"redstone_wire":0, +"diamond_ore":1, +"diamond_block":1, +"crafting_table":1, +"wheat":0, +"farmland":26, +"furnace":1, +"lit_furnace":1, +"standing_sign":0, +"wooden_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"ladder":[27,27,27,29,30,28,27,27,27,29,30,28,27,27,27,29], +"rail":0, +"stone_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"wall_sign":0, +"lever":0, +"stone_pressure_plate":0, +"iron_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"wooden_pressure_plate":0, +"redstone_ore":1, +"lit_redstone_ore":1, +"unlit_redstone_torch":0, +"redstone_torch":0, +"stone_button":0, +"snow_layer":[0,31,32,33,15,34,4,35,0,31,32,33,15,34,4,35], +"ice":1, +"snow":1, +"cactus":36, +"clay":1, +"reeds":0, +"jukebox":1, +"fence":37, +"pumpkin":1, +"netherrack":1, +"soul_sand":35, +"glowstone":1, +"portal":0, +"lit_pumpkin":1, +"cake":[38,39,40,41,42,43,44,0,0,0,0,0,0,0,0,0], +"unpowered_repeater":31, +"powered_repeater":31, +"stained_glass":1, +"trapdoor":[45,45,45,45,27,29,30,28,46,46,46,46,27,29,30,28], +"monster_egg":1, +"stonebrick":1, +"brown_mushroom_block":1, +"red_mushroom_block":1, +"iron_bars":47, +"glass_pane":47, +"melon_block":1, +"pumpkin_stem":0, +"melon_stem":0, +"vine":0, +"fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"brick_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"stone_brick_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"mycelium":1, +"waterlily":50, +"nether_brick":1, +"nether_brick_fence":37, +"nether_brick_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"nether_wart":0, +"enchanting_table":4, +"brewing_stand":51, +"cauldron":52, +"end_portal":0, +"end_portal_frame":[81,81,81,81,82,82,82,82,81,81,81,81,82,82,82,82], +"end_stone":1, +"dragon_egg":53, +"redstone_lamp":1, +"lit_redstone_lamp":1, +"double_wooden_slab":1, +"wooden_slab":[15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16], +"cocoa":[55,56,54,57,58,59,60,61,62,63,64,65,0,0,0,0], +"sandstone_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"emerald_ore":1, +"ender_chest":25, +"tripwire_hook":0, +"tripwire":0, +"emerald_block":1, +"spruce_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"birch_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"jungle_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"command_block":1, +"beacon":1, +"cobblestone_wall":66, +"flower_pot":67, +"carrots":0, +"potatoes":0, +"wooden_button":0, +"skull":[69,69,68,70,71,72,69,69,69,69,68,70,71,72,69,69], +"anvil":[73,74,73,74,73,74,73,74,73,74,73,74,0,0,0,0], +"trapped_chest":25, +"light_weighted_pressure_plate":0, +"heavy_weighted_pressure_plate":0, +"unpowered_comparator":31, +"powered_comparator":31, +"daylight_detector":33, +"redstone_block":1, +"quartz_ore":1, +"hopper":75, +"quartz_block":1, +"quartz_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"activator_rail":0, +"dropper":1, +"stained_hardened_clay":1, +"stained_glass_pane":47, +"leaves2":1,"log2":1,"acacia_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"dark_oak_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"slime":1, +"barrier":1, +"iron_trapdoor":[45,45,45,45,27,29,30,28,46,46,46,46,27,29,30,28], +"prismarine":1, +"sea_lantern":1, +"hay_block":1, +"carpet":76, +"hardened_clay":1, +"coal_block":1, +"packed_ice":1, +"double_plant":0, +"standing_banner":0, +"wall_banner":0, +"daylight_detector_inverted":33, +"red_sandstone":1, +"red_sandstone_stairs":[18,19,20,17,21,22,23,24,18,19,20,17,21,22,23,24], +"double_stone_slab2":1,"stone_slab2":[15,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16], +"spruce_fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"birch_fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"jungle_fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"dark_oak_fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"acacia_fence_gate":[48,49,48,49,0,0,0,0,48,49,48,49,0,0,0,0], +"spruce_fence":37, +"birch_fence":37, +"jungle_fence":37, +"dark_oak_fence":37, +"acacia_fence":37, +"spruce_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"birch_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"jungle_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"acacia_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28], +"dark_oak_door":[28,29,30,27,29,30,27,28,28,29,30,27,29,30,27,28]}, +"shapes":{"0":[], +"1":[[0.0,0.0,0.0,1.0,1.0,1.0]], +"2":[[0.0,0.0,0.0,1.0,0.5625,1.0]], +"3":[[0.0,0.25,0.0,1.0,1.0,1.0]], +"4":[[0.0,0.0,0.0,1.0,0.75,1.0]], +"5":[[0.0,0.0,0.25,1.0,1.0,1.0]], +"6":[[0.0,0.0,0.0,1.0,1.0,0.75]], +"7":[[0.25,0.0,0.0,1.0,1.0,1.0]], +"8":[[0.0,0.0,0.0,0.75,1.0,1.0]], +"9":[[0.0,0.0,0.0,1.0,1.0,0.25],[0.375,0.375,0.25,0.625,0.625,1.25]], +"10":[[0.0,0.0,0.0,1.0,0.25,1.0],[0.375,0.25,0.375,0.625,1.25,0.625]], +"11":[[0.0,0.75,0.0,1.0,1.0,1.0],[0.375,-0.25,0.375,0.625,0.75,0.625]], +"12":[[0.0,0.0,0.75,1.0,1.0,1.0],[0.375,0.375,-0.25,0.625,0.625,0.75]], +"13":[[0.0,0.0,0.0,0.25,1.0,1.0],[0.25,0.375,0.375,1.25,0.625,0.625]], +"14":[[0.75,0.0,0.0,1.0,1.0,1.0],[-0.25,0.375,0.375,0.75,0.625,0.625]], +"15":[[0.0,0.0,0.0,1.0,0.5,1.0]], +"16":[[0.0,0.5,0.0,1.0,1.0,1.0]], +"17":[[0.0,0.0,0.0,1.0,0.5,1.0],[0.0,0.5,0.0,1.0,1.0,0.5]], +"18":[[0.0,0.0,0.0,1.0,0.5,1.0],[0.5,0.5,0.0,1.0,1.0,1.0]], +"19":[[0.0,0.0,0.0,1.0,0.5,1.0],[0.0,0.5,0.0,0.5,1.0,1.0]], +"20":[[0.0,0.0,0.0,1.0,0.5,1.0],[0.0,0.5,0.5,1.0,1.0,1.0]], +"21":[[0.0,0.5,0.0,1.0,1.0,1.0],[0.5,0.0,0.0,1.0,0.5,1.0]], +"22":[[0.0,0.5,0.0,1.0,1.0,1.0],[0.0,0.0,0.0,0.5,0.5,1.0]], +"23":[[0.0,0.5,0.0,1.0,1.0,1.0],[0.0,0.0,0.5,1.0,0.5,1.0]], +"24":[[0.0,0.5,0.0,1.0,1.0,1.0],[0.0,0.0,0.0,1.0,0.5,0.5]], +"25":[[0.0625,0.0,0.0625,0.9375,0.875,0.9375]], +"26":[[0.0,0.0,0.0,1.0,0.9375,1.0]], +"27":[[0.0,0.0,0.8125,1.0,1.0,1.0]], +"28":[[0.0,0.0,0.0,0.1875,1.0,1.0]], +"29":[[0.0,0.0,0.0,1.0,1.0,0.1875]], +"30":[[0.8125,0.0,0.0,1.0,1.0,1.0]], +"31":[[0.0,0.0,0.0,1.0,0.125,1.0]], +"32":[[0.0,0.0,0.0,1.0,0.25,1.0]], +"33":[[0.0,0.0,0.0,1.0,0.375,1.0]], +"34":[[0.0,0.0,0.0,1.0,0.625,1.0]], +"35":[[0.0,0.0,0.0,1.0,0.875,1.0]], +"36":[[0.0625,0.0,0.0625,0.9375,0.9375,0.9375]], +"37":[[0.375,0.0,0.375,0.625,1.5,0.625]], +"38":[[0.0625,0.0,0.0625,0.9375,0.5,0.9375]], +"39":[[0.1875,0.0,0.0625,0.9375,0.5,0.9375]], +"40":[[0.3125,0.0,0.0625,0.9375,0.5,0.9375]], +"41":[[0.4375,0.0,0.0625,0.9375,0.5,0.9375]], +"42":[[0.5625,0.0,0.0625,0.9375,0.5,0.9375]], +"43":[[0.6875,0.0,0.0625,0.9375,0.5,0.9375]], +"44":[[0.8125,0.0,0.0625,0.9375,0.5,0.9375]], +"45":[[0.0,0.0,0.0,1.0,0.1875,1.0]], +"46":[[0.0,0.8125,0.0,1.0,1.0,1.0]], +"47":[[0.4375,0.0,0.4375,0.5625,1.0,0.5625]], +"48":[[0.0,0.0,0.375,1.0,1.5,0.625]], +"49":[[0.375,0.0,0.0,0.625,1.5,1.0]], +"50":[[0.0625,0.0,0.0625,0.9375,0.09375,0.9375]], +"51":[[0.4375,0.0,0.4375,0.5625,0.875,0.5625],[0.0,0.0,0.0,1.0,0.125,1.0]], +"52":[[0.0,0.0,0.0,1.0,0.3125,1.0],[0.0,0.0,0.0,0.125,1.0,1.0],[0.0,0.0,0.0,1.0,1.0,0.125],[0.875,0.0,0.0,1.0,1.0,1.0],[0.0,0.0,0.875,1.0,1.0,1.0]], +"53":[[0.0625,0.0,0.0625,0.9375,1.0,0.9375]], +"54":[[0.375,0.4375,0.0625,0.625,0.75,0.3125]], +"55":[[0.375,0.4375,0.6875,0.625,0.75,0.9375]], +"56":[[0.0625,0.4375,0.375,0.3125,0.75,0.625]], +"57":[[0.6875,0.4375,0.375,0.9375,0.75,0.625]], +"58":[[0.3125,0.3125,0.5625,0.6875,0.75,0.9375]], +"59":[[0.0625,0.3125,0.3125,0.4375,0.75,0.6875]], +"60":[[0.3125,0.3125,0.0625,0.6875,0.75,0.4375]], +"61":[[0.5625,0.3125,0.3125,0.9375,0.75,0.6875]], +"62":[[0.25,0.1875,0.4375,0.75,0.75,0.9375]], +"63":[[0.0625,0.1875,0.25,0.5625,0.75,0.75]], +"64":[[0.25,0.1875,0.0625,0.75,0.75,0.5625]], +"65":[[0.4375,0.1875,0.25,0.9375,0.75,0.75]], +"66":[[0.25,0.0,0.25,0.75,1.5,0.75]], +"67":[[0.3125,0.0,0.3125,0.6875,0.375,0.6875]], +"68":[[0.25,0.25,0.5,0.75,0.75,1.0]], +"69":[[0.25,0.0,0.25,0.75,0.5,0.75]], +"70":[[0.25,0.25,0.0,0.75,0.75,0.5]], +"71":[[0.5,0.25,0.25,1.0,0.75,0.75]], +"72":[[0.0,0.25,0.25,0.5,0.75,0.75]], +"73":[[0.125,0.0,0.0,0.875,1.0,1.0]], +"74":[[0.0,0.0,0.125,1.0,1.0,0.875]], +"75":[[0.0,0.0,0.0,1.0,0.625,1.0],[0.0,0.0,0.0,0.125,1.0,1.0],[0.875,0.0,0.0,1.0,1.0,1.0],[0.0,0.0,0.0,1.0,1.0,0.125],[0.0,0.0,0.875,1.0,1.0,1.0]], +"76":[[0.0,0.0,0.0,1.0,0.0625,1.0]], +"81":[[0.0,0.0,0.0,1.0,0.8125,1.0]], +"82":[[0.0,0.0,0.0,1.0,0.8125,1.0],[0.3125,0.8125,0.3125,0.6875,1.0,0.6875]]}} diff --git a/mc/data/minecraft-data/pc/1.8/blocks.json b/mc/data/minecraft-data/pc/1.8/blocks.json new file mode 100644 index 0000000..ae73752 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/blocks.json @@ -0,0 +1,5363 @@ +[ + { + "id": 0, + "displayName": "Air", + "name": "air", + "hardness": 0, + "stackSize": 0, + "diggable": false, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 1, + "displayName": "Stone", + "name": "stone", + "hardness": 1.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Stone" + }, + { + "metadata": 1, + "displayName": "Granite" + }, + { + "metadata": 2, + "displayName": "Polished Granite" + }, + { + "metadata": 3, + "displayName": "Diorite" + }, + { + "metadata": 4, + "displayName": "Polished Diorite" + }, + { + "metadata": 5, + "displayName": "Andesite" + }, + { + "metadata": 6, + "displayName": "Polished Andesite" + } + ], + "drops": [ + { + "drop": 4 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 2, + "displayName": "Grass Block", + "name": "grass", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": { + "id": 3, + "metadata": 0 + } + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 3, + "displayName": "Dirt", + "name": "dirt", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "variations": [ + { + "metadata": 0, + "displayName": "Dirt" + }, + { + "metadata": 1, + "displayName": "Coarse Dirt" + }, + { + "metadata": 2, + "displayName": "Podzol" + } + ], + "drops": [ + { + "drop": 3 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.5 + }, + { + "id": 4, + "displayName": "Cobblestone", + "name": "cobblestone", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 4 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 5, + "displayName": "Wood Planks", + "name": "planks", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Oak Wood Planks" + }, + { + "metadata": 1, + "displayName": "Spruce Wood Planks" + }, + { + "metadata": 2, + "displayName": "Birch Wood Planks" + }, + { + "metadata": 3, + "displayName": "Jungle Wood Planks" + }, + { + "metadata": 4, + "displayName": "Acacia Wood Planks" + }, + { + "metadata": 5, + "displayName": "Dark Oak Wood Planks" + } + ], + "drops": [ + { + "drop": 5 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 6, + "displayName": "Sapling", + "name": "sapling", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 6 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 7, + "displayName": "Bedrock", + "name": "bedrock", + "hardness": null, + "stackSize": 64, + "diggable": false, + "boundingBox": "block", + "drops": [ + { + "drop": 7 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3600000 + }, + { + "id": 8, + "displayName": "Water", + "name": "flowing_water", + "hardness": 100, + "stackSize": 64, + "diggable": false, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 2, + "resistance": 100 + }, + { + "id": 9, + "displayName": "Stationary Water", + "name": "water", + "hardness": 100, + "stackSize": 64, + "diggable": false, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 2, + "resistance": 100 + }, + { + "id": 10, + "displayName": "Lava", + "name": "flowing_lava", + "hardness": 100, + "stackSize": 64, + "diggable": false, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 100 + }, + { + "id": 11, + "displayName": "Stationary Lava", + "name": "lava", + "hardness": 100, + "stackSize": 64, + "diggable": false, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 100 + }, + { + "id": 12, + "displayName": "Sand", + "name": "sand", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "variations": [ + { + "metadata": 0, + "displayName": "Sand" + }, + { + "metadata": 1, + "displayName": "Red sand" + } + ], + "drops": [ + { + "drop": 12 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.5 + }, + { + "id": 13, + "displayName": "Gravel", + "name": "gravel", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": 13, + "minCount": 0.9 + }, + { + "drop": 318, + "minCount": 0.1 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 14, + "displayName": "Gold Ore", + "name": "gold_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 14 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 15, + "displayName": "Iron Ore", + "name": "iron_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "274": true, + "278": true + }, + "drops": [ + { + "drop": 15 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 16, + "displayName": "Coal Ore", + "name": "coal_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": { + "id": 263, + "metadata": 0 + } + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 17, + "displayName": "Wood", + "name": "log", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Oak wood facing up/down" + }, + { + "metadata": 1, + "displayName": "Spruce wood facing up/down" + }, + { + "metadata": 2, + "displayName": "Birch wood facing up/down" + }, + { + "metadata": 3, + "displayName": "Jungle wood facing up/down" + }, + { + "metadata": 4, + "displayName": "Oak wood facing East/West" + }, + { + "metadata": 5, + "displayName": "Spruce wood facing East/West" + }, + { + "metadata": 6, + "displayName": "Birch wood facing East/West" + }, + { + "metadata": 7, + "displayName": "Jungle wood facing East/West" + }, + { + "metadata": 8, + "displayName": "Oak wood facing North/South" + }, + { + "metadata": 9, + "displayName": "Spruce wood facing North/South" + }, + { + "metadata": 10, + "displayName": "Birch wood facing North/South" + }, + { + "metadata": 11, + "displayName": "Jungle wood facing North/South" + }, + { + "metadata": 12, + "displayName": "Oak wood with only bark" + }, + { + "metadata": 13, + "displayName": "Spruce wood with only bark" + }, + { + "metadata": 14, + "displayName": "Birch wood with only bark" + }, + { + "metadata": 15, + "displayName": "Jungle wood with only bark" + } + ], + "drops": [ + { + "drop": 17 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 18, + "displayName": "Leaves", + "name": "leaves", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "leaves", + "variations": [ + { + "metadata": 0, + "displayName": "Oak Leaves" + }, + { + "metadata": 1, + "displayName": "Spruce Leaves" + }, + { + "metadata": 2, + "displayName": "Birch Leaves" + }, + { + "metadata": 3, + "displayName": "Jungle Leaves" + }, + { + "metadata": 4, + "displayName": "Oak Leaves (no decay)" + }, + { + "metadata": 5, + "displayName": "Spruce Leaves (no decay)" + }, + { + "metadata": 6, + "displayName": "Birch Leaves (no decay)" + }, + { + "metadata": 7, + "displayName": "Jungle Leaves (no decay)" + }, + { + "metadata": 8, + "displayName": "Oak Leaves (check decay)" + }, + { + "metadata": 9, + "displayName": "Spruce Leaves (check decay)" + }, + { + "metadata": 10, + "displayName": "Birch Leaves (check decay)" + }, + { + "metadata": 11, + "displayName": "Jungle Leaves (check decay)" + }, + { + "metadata": 12, + "displayName": "Oak Leaves (no decay and check decay)" + }, + { + "metadata": 13, + "displayName": "Spruce Leaves (no decay and check decay)" + }, + { + "metadata": 14, + "displayName": "Birch Leaves (no decay and check decay)" + }, + { + "metadata": 15, + "displayName": "Jungle Leaves (no decay and check decay)" + } + ], + "drops": [ + { + "drop": 6, + "minCount": 0, + "maxCount": 1 + }, + { + "drop": 260, + "minCount": 0, + "maxCount": 1 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 19, + "displayName": "Sponge", + "name": "sponge", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "Sponge" + }, + { + "metadata": 1, + "displayName": "Wet Sponge" + } + ], + "drops": [ + { + "drop": 19 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 20, + "displayName": "Glass", + "name": "glass", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 21, + "displayName": "Lapis Lazuli Ore", + "name": "lapis_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "274": true, + "278": true + }, + "drops": [ + { + "drop": { + "id": 351, + "metadata": 4 + }, + "minCount": 4, + "maxCount": 8 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 22, + "displayName": "Lapis Lazuli Block", + "name": "lapis_block", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "274": true, + "278": true + }, + "drops": [ + { + "drop": 22 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 23, + "displayName": "Dispenser", + "name": "dispenser", + "hardness": 3.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 23 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3.5 + }, + { + "id": 24, + "displayName": "Sandstone", + "name": "sandstone", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Sandstone" + }, + { + "metadata": 1, + "displayName": "Chiseled sandstone" + }, + { + "metadata": 2, + "displayName": "Smooth sandstone" + } + ], + "drops": [ + { + "drop": 24 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 25, + "displayName": "Note Block", + "name": "noteblock", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 25 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 26, + "displayName": "Bed", + "name": "bed", + "hardness": 0.2, + "stackSize": 1, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 26 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.2 + }, + { + "id": 27, + "displayName": "Powered Rail", + "name": "golden_rail", + "hardness": 0.7, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "drops": [ + { + "drop": 27 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.7 + }, + { + "id": 28, + "displayName": "Detector Rail", + "name": "detector_rail", + "hardness": 0.7, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "drops": [ + { + "drop": 28 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.7 + }, + { + "id": 29, + "displayName": "Sticky Piston", + "name": "sticky_piston", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 29 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 30, + "displayName": "Cobweb", + "name": "web", + "hardness": 4, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "web", + "harvestTools": { + "267": true, + "268": true, + "272": true, + "276": true, + "283": true, + "359": true + }, + "drops": [ + { + "drop": 287 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 4 + }, + { + "id": 31, + "displayName": "Grass", + "name": "tallgrass", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "dirt", + "variations": [ + { + "metadata": 0, + "displayName": "Shrub" + }, + { + "metadata": 1, + "displayName": "Tall Grass" + }, + { + "metadata": 2, + "displayName": "Fern" + } + ], + "drops": [ + { + "drop": 295, + "minCount": 0, + "maxCount": 1 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 32, + "displayName": "Dead Bush", + "name": "deadbush", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 32 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 33, + "displayName": "Piston", + "name": "piston", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 33 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 34, + "displayName": "Piston Head", + "name": "piston_head", + "hardness": 0.5, + "stackSize": 0, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 34 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 35, + "displayName": "Wool", + "name": "wool", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wool", + "variations": [ + { + "metadata": 0, + "displayName": "White Wool" + }, + { + "metadata": 1, + "displayName": "Orange Wool" + }, + { + "metadata": 2, + "displayName": "Magenta Wool" + }, + { + "metadata": 3, + "displayName": "Light blue Wool" + }, + { + "metadata": 4, + "displayName": "Yellow Wool" + }, + { + "metadata": 5, + "displayName": "Lime Wool" + }, + { + "metadata": 6, + "displayName": "Pink Wool" + }, + { + "metadata": 7, + "displayName": "Gray Wool" + }, + { + "metadata": 8, + "displayName": "Light gray Wool" + }, + { + "metadata": 9, + "displayName": "Cyan Wool" + }, + { + "metadata": 10, + "displayName": "Purple Wool" + }, + { + "metadata": 11, + "displayName": "Blue Wool" + }, + { + "metadata": 12, + "displayName": "Brown Wool" + }, + { + "metadata": 13, + "displayName": "Green Wool" + }, + { + "metadata": 14, + "displayName": "Red Wool" + }, + { + "metadata": 15, + "displayName": "Black Wool" + } + ], + "drops": [ + { + "drop": 35 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 36, + "displayName": "Block moved by Piston", + "name": "piston_extension", + "hardness": null, + "stackSize": 0, + "diggable": false, + "boundingBox": "empty", + "drops": [ + { + "drop": 36 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 37, + "displayName": "Dandelion", + "name": "yellow_flower", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 37 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 38, + "displayName": "Poppy", + "name": "red_flower", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "variations": [ + { + "metadata": 0, + "displayName": "Poppy" + }, + { + "metadata": 1, + "displayName": "Blue Orchid" + }, + { + "metadata": 2, + "displayName": "Allium" + }, + { + "metadata": 3, + "displayName": "Azure Bluet" + }, + { + "metadata": 4, + "displayName": "Red Tulip" + }, + { + "metadata": 5, + "displayName": "Orange Tulip" + }, + { + "metadata": 6, + "displayName": "White Tulip" + }, + { + "metadata": 7, + "displayName": "Pink Tulip" + }, + { + "metadata": 8, + "displayName": "Oxeye Daisy" + } + ], + "drops": [ + { + "drop": 38 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 39, + "displayName": "Brown Mushroom", + "name": "brown_mushroom", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 39 + } + ], + "transparent": false, + "emitLight": 1, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 40, + "displayName": "Red Mushroom", + "name": "red_mushroom", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 40 + } + ], + "transparent": false, + "emitLight": 1, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 41, + "displayName": "Block of Gold", + "name": "gold_block", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 41 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 42, + "displayName": "Block of Iron", + "name": "iron_block", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "274": true, + "278": true + }, + "drops": [ + { + "drop": 42 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 43, + "displayName": "Double Stone Slab", + "name": "double_stone_slab", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Double Stone Slab" + }, + { + "metadata": 1, + "displayName": "Double Sandstone Slab" + }, + { + "metadata": 2, + "displayName": "Double (Stone) Wooden Slab" + }, + { + "metadata": 3, + "displayName": "Double Cobblestone Slab" + }, + { + "metadata": 4, + "displayName": "Double Bricks Slab" + }, + { + "metadata": 5, + "displayName": "Double Stone Brick Slab" + }, + { + "metadata": 6, + "displayName": "Double Nether Brick Slab" + }, + { + "metadata": 7, + "displayName": "Double Quartz Slab" + }, + { + "metadata": 8, + "displayName": "Smooth Double Stone Slab" + }, + { + "metadata": 9, + "displayName": "Smooth Double Sandstone Slab" + }, + { + "metadata": 15, + "displayName": "Tile Double Quartz Slab (note the underside)" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 44, + "displayName": "Stone Slab", + "name": "stone_slab", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Stone Slab" + }, + { + "metadata": 1, + "displayName": "Sandstone Slab" + }, + { + "metadata": 2, + "displayName": "(Stone) Wooden Slab" + }, + { + "metadata": 3, + "displayName": "Cobblestone Slab" + }, + { + "metadata": 4, + "displayName": "Bricks Slab" + }, + { + "metadata": 5, + "displayName": "Stone Brick Slab" + }, + { + "metadata": 6, + "displayName": "Nether Brick Slab" + }, + { + "metadata": 7, + "displayName": "Quartz Slab" + }, + { + "metadata": 8, + "displayName": "Upper Stone Slab" + }, + { + "metadata": 9, + "displayName": "Upper Sandstone Slab" + }, + { + "metadata": 10, + "displayName": "Upper (Stone) Wooden Slab" + }, + { + "metadata": 11, + "displayName": "Upper Cobblestone Slab" + }, + { + "metadata": 12, + "displayName": "Upper Bricks Slab" + }, + { + "metadata": 13, + "displayName": "Upper Stone Brick Slab" + }, + { + "metadata": 14, + "displayName": "Upper Nether Brick Slab" + }, + { + "metadata": 15, + "displayName": "Upper Quartz Slab" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 45, + "displayName": "Bricks", + "name": "brick_block", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 45 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 46, + "displayName": "TNT", + "name": "tnt", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "Drops a TNT item when broken" + }, + { + "metadata": 1, + "displayName": "Activates when broken" + } + ], + "drops": [ + { + "drop": 46 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 47, + "displayName": "Bookshelf", + "name": "bookshelf", + "hardness": 1.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 340, + "minCount": 3 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 1.5 + }, + { + "id": 48, + "displayName": "Moss Stone", + "name": "mossy_cobblestone", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 48 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 49, + "displayName": "Obsidian", + "name": "obsidian", + "hardness": 50, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "278": true + }, + "drops": [ + { + "drop": 49 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 1200 + }, + { + "id": 50, + "displayName": "Torch", + "name": "torch", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "variations": [ + { + "metadata": 0, + "displayName": "Torch facing east (attached to a block to its west)" + }, + { + "metadata": 1, + "displayName": "Torch facing west (attached to a block to its east)" + }, + { + "metadata": 2, + "displayName": "Torch facing south (attached to a block to its north)" + }, + { + "metadata": 3, + "displayName": "Torch facing north (attached to a block to its south)" + }, + { + "metadata": 4, + "displayName": "Torch facing up (attached to a block beneath it)" + } + ], + "drops": [ + { + "drop": 50 + } + ], + "transparent": true, + "emitLight": 14, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 51, + "displayName": "Fire", + "name": "fire", + "hardness": 0, + "stackSize": 0, + "diggable": true, + "boundingBox": "empty", + "drops": [], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 52, + "displayName": "Monster Spawner", + "name": "mob_spawner", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 52 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 5 + }, + { + "id": 53, + "displayName": "Oak Wood Stairs", + "name": "oak_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 53 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 54, + "displayName": "Chest", + "name": "chest", + "hardness": 2.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 54 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 2.5 + }, + { + "id": 55, + "displayName": "Redstone Wire", + "name": "redstone_wire", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 55 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 56, + "displayName": "Diamond Ore", + "name": "diamond_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 264 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 57, + "displayName": "Block of Diamond", + "name": "diamond_block", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 57 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 58, + "displayName": "Crafting Table", + "name": "crafting_table", + "hardness": 2.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 58 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 2.5 + }, + { + "id": 59, + "displayName": "Wheat", + "name": "wheat", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 296 + }, + { + "drop": 295, + "minCount": 0, + "maxCount": 3 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 60, + "displayName": "Farmland", + "name": "farmland", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": { + "id": 3, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 61, + "displayName": "Furnace", + "name": "furnace", + "hardness": 3.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 61 + } + ], + "transparent": true, + "emitLight": 13, + "filterLight": 0, + "resistance": 3.5 + }, + { + "id": 62, + "displayName": "Burning Furnace", + "name": "lit_furnace", + "hardness": 3.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 62 + } + ], + "transparent": true, + "emitLight": 13, + "filterLight": 0, + "resistance": 3.5 + }, + { + "id": 63, + "displayName": "Standing Sign", + "name": "standing_sign", + "hardness": 1, + "stackSize": 16, + "diggable": true, + "boundingBox": "empty", + "material": "wood", + "drops": [ + { + "drop": 63 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1 + }, + { + "id": 64, + "displayName": "Oak Door", + "name": "wooden_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 64 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 65, + "displayName": "Ladder", + "name": "ladder", + "hardness": 0.4, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 65 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.4 + }, + { + "id": 66, + "displayName": "Rail", + "name": "rail", + "hardness": 0.7, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "drops": [ + { + "drop": 66 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.7 + }, + { + "id": 67, + "displayName": "Cobblestone Stairs", + "name": "stone_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 67 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 68, + "displayName": "Wall Sign", + "name": "wall_sign", + "hardness": 1, + "stackSize": 16, + "diggable": true, + "boundingBox": "empty", + "material": "wood", + "drops": [ + { + "drop": 68 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1 + }, + { + "id": 69, + "displayName": "Lever", + "name": "lever", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 69 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 70, + "displayName": "Stone Pressure Plate", + "name": "stone_pressure_plate", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 70 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 71, + "displayName": "Iron Door", + "name": "iron_door", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 71 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 5 + }, + { + "id": 72, + "displayName": "Wooden Pressure Plate", + "name": "wooden_pressure_plate", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "wood", + "drops": [ + { + "drop": 72 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 73, + "displayName": "Redstone Ore", + "name": "redstone_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 331, + "minCount": 4, + "maxCount": 5 + } + ], + "transparent": true, + "emitLight": 9, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 74, + "displayName": "Glowing Redstone Ore", + "name": "lit_redstone_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 331, + "minCount": 4, + "maxCount": 5 + } + ], + "transparent": true, + "emitLight": 9, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 75, + "displayName": "Redstone Torch (inactive)", + "name": "unlit_redstone_torch", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "variations": [ + { + "metadata": 0, + "displayName": "Redstone Torch (inactive) facing east (attached to a block to its west)" + }, + { + "metadata": 1, + "displayName": "Redstone Torch (inactive) facing west (attached to a block to its east)" + }, + { + "metadata": 2, + "displayName": "Redstone Torch (inactive) facing south (attached to a block to its north)" + }, + { + "metadata": 3, + "displayName": "Redstone Torch (inactive) facing north (attached to a block to its south)" + }, + { + "metadata": 4, + "displayName": "Redstone Torch (inactive) facing up (attached to a block beneath it)" + } + ], + "drops": [ + { + "drop": 75 + } + ], + "transparent": true, + "emitLight": 7, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 76, + "displayName": "Redstone Torch (active)", + "name": "redstone_torch", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "variations": [ + { + "metadata": 0, + "displayName": "Redstone Torch (active) facing east (attached to a block to its west)" + }, + { + "metadata": 1, + "displayName": "Redstone Torch (active) facing west (attached to a block to its east)" + }, + { + "metadata": 2, + "displayName": "Redstone Torch (active) facing south (attached to a block to its north)" + }, + { + "metadata": 3, + "displayName": "Redstone Torch (active) facing north (attached to a block to its south)" + }, + { + "metadata": 4, + "displayName": "Redstone Torch (active) facing up (attached to a block beneath it)" + } + ], + "drops": [ + { + "drop": 76 + } + ], + "transparent": true, + "emitLight": 7, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 77, + "displayName": "Stone Button", + "name": "stone_button", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 77 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 78, + "displayName": "Snow (layer)", + "name": "snow_layer", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "harvestTools": { + "256": true, + "269": true, + "273": true, + "277": true, + "284": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "One layer, 2 pixels thick" + }, + { + "metadata": 1, + "displayName": "Two layers, 4 pixels thick" + }, + { + "metadata": 2, + "displayName": "Three layers, 6 pixels thick" + }, + { + "metadata": 3, + "displayName": "Four layers, 8 pixels thick" + }, + { + "metadata": 4, + "displayName": "Five layers, 10 pixels thick" + }, + { + "metadata": 5, + "displayName": "Six layers, 12 pixels thick" + }, + { + "metadata": 6, + "displayName": "Seven layers, 14 pixels thick" + }, + { + "metadata": 7, + "displayName": "Eight layers, 16 pixels thick" + } + ], + "drops": [ + { + "drop": 332, + "minCount": 2, + "maxCount": 9 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.1 + }, + { + "id": 79, + "displayName": "Ice", + "name": "ice", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 2, + "resistance": 0.5 + }, + { + "id": 80, + "displayName": "Snow", + "name": "snow", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "harvestTools": { + "256": true, + "269": true, + "273": true, + "277": true, + "284": true + }, + "drops": [ + { + "drop": 332, + "minCount": 4 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.2 + }, + { + "id": 81, + "displayName": "Cactus", + "name": "cactus", + "hardness": 0.4, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": 81 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.4 + }, + { + "id": 82, + "displayName": "Clay", + "name": "clay", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": 337, + "minCount": 4 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 83, + "displayName": "Sugar Cane", + "name": "reeds", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 83 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 84, + "displayName": "Jukebox", + "name": "jukebox", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "No disc inserted" + }, + { + "metadata": 1, + "displayName": "Contains a disc" + } + ], + "drops": [ + { + "drop": 84 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 85, + "displayName": "Fence", + "name": "fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 85 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 86, + "displayName": "Pumpkin", + "name": "pumpkin", + "hardness": 1, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": 86 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 1 + }, + { + "id": 87, + "displayName": "Netherrack", + "name": "netherrack", + "hardness": 0.4, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 87 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.4 + }, + { + "id": 88, + "displayName": "Soul Sand", + "name": "soul_sand", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": 88 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.5 + }, + { + "id": 89, + "displayName": "Glowstone", + "name": "glowstone", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 348, + "minCount": 2, + "maxCount": 4 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 90, + "displayName": "Nether Portal", + "name": "portal", + "hardness": null, + "stackSize": 0, + "diggable": false, + "boundingBox": "empty", + "drops": [ + { + "drop": 90 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": -1 + }, + { + "id": 91, + "displayName": "Jack o'Lantern", + "name": "lit_pumpkin", + "hardness": 1, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": 91 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 15, + "resistance": 1 + }, + { + "id": 92, + "displayName": "Cake", + "name": "cake", + "hardness": 0.5, + "stackSize": 1, + "diggable": true, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 93, + "displayName": "Redstone Repeater (inactive)", + "name": "unpowered_repeater", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 93 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 94, + "displayName": "Redstone Repeater (active)", + "name": "powered_repeater", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 94 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 95, + "displayName": "Stained Glass", + "name": "stained_glass", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 96, + "displayName": "Trapdoor", + "name": "trapdoor", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 96 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 97, + "displayName": "Monster Egg", + "name": "monster_egg", + "hardness": 0.75, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "Stone Monster Egg" + }, + { + "metadata": 1, + "displayName": "Cobblestone Monster Egg" + }, + { + "metadata": 2, + "displayName": "Stone Brick Monster Egg" + }, + { + "metadata": 3, + "displayName": "Mossy Stone Brick Monster Egg" + }, + { + "metadata": 4, + "displayName": "Cracked Stone Brick Monster Egg" + }, + { + "metadata": 5, + "displayName": "Chiseled Stone Brick Monster Egg" + } + ], + "drops": [], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.75 + }, + { + "id": 98, + "displayName": "Stone Bricks", + "name": "stonebrick", + "hardness": 1.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Stone brick" + }, + { + "metadata": 1, + "displayName": "Mossy stone brick" + }, + { + "metadata": 2, + "displayName": "Cracked stone brick" + }, + { + "metadata": 3, + "displayName": "Chiseled stone brick" + } + ], + "drops": [ + { + "drop": 98 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 99, + "displayName": "Brown Mushroom (block)", + "name": "brown_mushroom_block", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Pores on all sides" + }, + { + "metadata": 1, + "displayName": "Cap texture on top, west and north" + }, + { + "metadata": 2, + "displayName": "Cap texture on top and north" + }, + { + "metadata": 3, + "displayName": "Cap texture on top, north and east" + }, + { + "metadata": 4, + "displayName": "Cap texture on top and west" + }, + { + "metadata": 5, + "displayName": "Cap texture on top" + }, + { + "metadata": 6, + "displayName": "Cap texture on top and east" + }, + { + "metadata": 7, + "displayName": "Cap texture on top, south and west" + }, + { + "metadata": 8, + "displayName": "Cap texture on top and south" + }, + { + "metadata": 9, + "displayName": "Cap texture on top, east and south" + }, + { + "metadata": 10, + "displayName": "Stem texture on all four sides, pores on top and bottom" + }, + { + "metadata": 14, + "displayName": "Cap texture on all six sides" + }, + { + "metadata": 15, + "displayName": "Stem texture on all six sides" + } + ], + "drops": [ + { + "drop": 40, + "minCount": 0, + "maxCount": 2 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.2 + }, + { + "id": 100, + "displayName": "Red Mushroom (block)", + "name": "red_mushroom_block", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Pores on all sides" + }, + { + "metadata": 1, + "displayName": "Cap texture on top, west and north" + }, + { + "metadata": 2, + "displayName": "Cap texture on top and north" + }, + { + "metadata": 3, + "displayName": "Cap texture on top, north and east" + }, + { + "metadata": 4, + "displayName": "Cap texture on top and west" + }, + { + "metadata": 5, + "displayName": "Cap texture on top" + }, + { + "metadata": 6, + "displayName": "Cap texture on top and east" + }, + { + "metadata": 7, + "displayName": "Cap texture on top, south and west" + }, + { + "metadata": 8, + "displayName": "Cap texture on top and south" + }, + { + "metadata": 9, + "displayName": "Cap texture on top, east and south" + }, + { + "metadata": 10, + "displayName": "Stem texture on all four sides, pores on top and bottom" + }, + { + "metadata": 14, + "displayName": "Cap texture on all six sides" + }, + { + "metadata": 15, + "displayName": "Stem texture on all six sides" + } + ], + "drops": [ + { + "drop": 40, + "minCount": 0, + "maxCount": 2 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.2 + }, + { + "id": 101, + "displayName": "Iron Bars", + "name": "iron_bars", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 101 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 102, + "displayName": "Glass Pane", + "name": "glass_pane", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 103, + "displayName": "Melon", + "name": "melon_block", + "hardness": 1, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": 360, + "minCount": 3, + "maxCount": 7 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 1 + }, + { + "id": 104, + "displayName": "Pumpkin Stem", + "name": "pumpkin_stem", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 104 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 105, + "displayName": "Melon Stem", + "name": "melon_stem", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 105 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 106, + "displayName": "Vines", + "name": "vine", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 106 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.2 + }, + { + "id": 107, + "displayName": "Fence Gate", + "name": "fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 107 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 108, + "displayName": "Brick Stairs", + "name": "brick_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 108 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 109, + "displayName": "Stone Brick Stairs", + "name": "stone_brick_stairs", + "hardness": 1.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 109 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 110, + "displayName": "Mycelium", + "name": "mycelium", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "dirt", + "drops": [ + { + "drop": { + "id": 3, + "metadata": 0 + } + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.6 + }, + { + "id": 111, + "displayName": "Lily Pad", + "name": "waterlily", + "hardness": 0.6, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": 111 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 112, + "displayName": "Nether Brick", + "name": "nether_brick", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 112 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 113, + "displayName": "Nether Brick Fence", + "name": "nether_brick_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 113 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 114, + "displayName": "Nether Brick Stairs", + "name": "nether_brick_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 114 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 115, + "displayName": "Nether Wart", + "name": "nether_wart", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 372 + }, + { + "drop": 372, + "minCount": 2, + "maxCount": 4 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 116, + "displayName": "Enchantment Table", + "name": "enchanting_table", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 116 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1200 + }, + { + "id": 117, + "displayName": "Brewing Stand", + "name": "brewing_stand", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 117 + } + ], + "transparent": true, + "emitLight": 1, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 118, + "displayName": "Cauldron", + "name": "cauldron", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 118 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 2 + }, + { + "id": 119, + "displayName": "End Portal", + "name": "end_portal", + "hardness": null, + "stackSize": 0, + "diggable": false, + "boundingBox": "empty", + "drops": [ + { + "drop": 119 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3600000 + }, + { + "id": 120, + "displayName": "End Portal Block", + "name": "end_portal_frame", + "hardness": null, + "stackSize": 64, + "diggable": false, + "boundingBox": "block", + "drops": [ + { + "drop": 120 + } + ], + "transparent": true, + "emitLight": 1, + "filterLight": 0, + "resistance": 3600000 + }, + { + "id": 121, + "displayName": "End Stone", + "name": "end_stone", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 121 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 9 + }, + { + "id": 122, + "displayName": "Dragon Egg", + "name": "dragon_egg", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 122 + } + ], + "transparent": true, + "emitLight": 1, + "filterLight": 0, + "resistance": 9 + }, + { + "id": 123, + "displayName": "Redstone Lamp (inactive)", + "name": "redstone_lamp", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 123 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 124, + "displayName": "Redstone Lamp (active)", + "name": "lit_redstone_lamp", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 124 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 125, + "displayName": "Double Wooden Slab", + "name": "double_wooden_slab", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Double Oak Wood Slab" + }, + { + "metadata": 1, + "displayName": "Double Spruce Wood Slab" + }, + { + "metadata": 2, + "displayName": "Double Birch Wood Slab" + }, + { + "metadata": 3, + "displayName": "Double Jungle Wood Slab" + }, + { + "metadata": 4, + "displayName": "Double Acacia Wood Slab" + }, + { + "metadata": 5, + "displayName": "Double Dark Oak Wood Slab" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 126, + "displayName": "Wooden Slab", + "name": "wooden_slab", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Oak Wood Slab" + }, + { + "metadata": 1, + "displayName": "Spruce Wood Slab" + }, + { + "metadata": 2, + "displayName": "Birch Wood Slab" + }, + { + "metadata": 3, + "displayName": "Jungle Wood Slab" + }, + { + "metadata": 4, + "displayName": "Acacia Wood Slab" + }, + { + "metadata": 5, + "displayName": "Dark Oak Wood Slab" + }, + { + "metadata": 8, + "displayName": "Upper Oak Wood Slab" + }, + { + "metadata": 9, + "displayName": "Upper Spruce Wood Slab" + }, + { + "metadata": 10, + "displayName": "Upper Birch Wood Slab" + }, + { + "metadata": 11, + "displayName": "Upper Jungle Wood Slab" + }, + { + "metadata": 12, + "displayName": "Upper Acacia Wood Slab" + }, + { + "metadata": 13, + "displayName": "Upper Dark Oak Wood Slab" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 127, + "displayName": "Cocoa", + "name": "cocoa", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "plant", + "drops": [ + { + "drop": { + "id": 351, + "metadata": 3 + } + }, + { + "drop": { + "id": 351, + "metadata": 3 + }, + "minCount": 3 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 128, + "displayName": "Sandstone Stairs", + "name": "sandstone_stairs", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 128 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 129, + "displayName": "Emerald Ore", + "name": "emerald_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 388 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 130, + "displayName": "Ender Chest", + "name": "ender_chest", + "hardness": 22.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 49, + "minCount": 8 + } + ], + "transparent": true, + "emitLight": 7, + "filterLight": 0, + "resistance": 600 + }, + { + "id": 131, + "displayName": "Tripwire Hook", + "name": "tripwire_hook", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 131 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 132, + "displayName": "Tripwire", + "name": "tripwire", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 132 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 133, + "displayName": "Block of Emerald", + "name": "emerald_block", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "278": true + }, + "drops": [ + { + "drop": 133 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 134, + "displayName": "Spruce Wood Stairs", + "name": "spruce_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 134 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 135, + "displayName": "Birch Wood Stairs", + "name": "birch_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 135 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 136, + "displayName": "Jungle Wood Stairs", + "name": "jungle_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 136 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 137, + "displayName": "Command Block", + "name": "command_block", + "hardness": null, + "stackSize": 64, + "diggable": false, + "boundingBox": "block", + "drops": [ + { + "drop": 137 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3600000 + }, + { + "id": 138, + "displayName": "Beacon", + "name": "beacon", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 138 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 139, + "displayName": "Cobblestone Wall", + "name": "cobblestone_wall", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Cobblestone Wall" + }, + { + "metadata": 1, + "displayName": "Mossy Cobblestone Wall" + } + ], + "drops": [ + { + "drop": 139 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 140, + "displayName": "Flower Pot", + "name": "flower_pot", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "Empty Flower Pot" + }, + { + "metadata": 1, + "displayName": "Poppy Flower Pot" + }, + { + "metadata": 2, + "displayName": "Dandelion Flower Pot" + }, + { + "metadata": 3, + "displayName": "Oak sapling Flower Pot" + }, + { + "metadata": 4, + "displayName": "Spruce sapling Flower Pot" + }, + { + "metadata": 5, + "displayName": "Birch sapling Flower Pot" + }, + { + "metadata": 6, + "displayName": "Jungle sapling Flower Pot" + }, + { + "metadata": 7, + "displayName": "Red mushroom Flower Pot" + }, + { + "metadata": 8, + "displayName": "Brown mushroom Flower Pot" + }, + { + "metadata": 9, + "displayName": "Cactus Flower Pot" + }, + { + "metadata": 10, + "displayName": "Dead bush Flower Pot" + }, + { + "metadata": 11, + "displayName": "Fern Flower Pot" + }, + { + "metadata": 12, + "displayName": "Acacia sapling Flower Pot" + }, + { + "metadata": 13, + "displayName": "Dark oak sapling Flower Pot" + } + ], + "drops": [ + { + "drop": 140 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 141, + "displayName": "Carrot", + "name": "carrots", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 141 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 142, + "displayName": "Potato", + "name": "potatoes", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "drops": [ + { + "drop": 142 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 143, + "displayName": "Wooden Button", + "name": "wooden_button", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "drops": [ + { + "drop": 143 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 144, + "displayName": "Mob head", + "name": "skull", + "hardness": 1, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "Skeleton Skull" + }, + { + "metadata": 1, + "displayName": "Wither Skeleton Skull" + }, + { + "metadata": 2, + "displayName": "Zombie Head" + }, + { + "metadata": 3, + "displayName": "Head" + }, + { + "metadata": 4, + "displayName": "Creeper Head" + } + ], + "drops": [ + { + "drop": 144 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1 + }, + { + "id": 145, + "displayName": "Anvil", + "name": "anvil", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Anvil" + }, + { + "metadata": 1, + "displayName": "Slightly Damaged Anvil" + }, + { + "metadata": 2, + "displayName": "Very Damaged Anvil" + }, + { + "metadata": 3, + "displayName": "Anvil (North/South)" + }, + { + "metadata": 4, + "displayName": "Anvil (East/West)" + }, + { + "metadata": 5, + "displayName": "Anvil (South/North)" + }, + { + "metadata": 6, + "displayName": "Anvil (West/East)" + }, + { + "metadata": 7, + "displayName": "Slightly Damaged Anvil (North/South)" + }, + { + "metadata": 8, + "displayName": "Slightly Damaged Anvil (East/West)" + }, + { + "metadata": 9, + "displayName": "Slightly Damaged Anvil (West/East)" + }, + { + "metadata": 10, + "displayName": "Slightly Damaged Anvil (South/North)" + }, + { + "metadata": 11, + "displayName": "Very Damaged Anvil (North/South)" + }, + { + "metadata": 12, + "displayName": "Very Damaged Anvil (East/West)" + }, + { + "metadata": 13, + "displayName": "Very Damaged Anvil (West/East)" + }, + { + "metadata": 14, + "displayName": "Very Damaged Anvil (South/North)" + } + ], + "drops": [ + { + "drop": 145 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1200 + }, + { + "id": 146, + "displayName": "Trapped Chest", + "name": "trapped_chest", + "hardness": 2.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 146 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 2.5 + }, + { + "id": 147, + "displayName": "Weighted Pressure Plate (Light)", + "name": "light_weighted_pressure_plate", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 147 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 148, + "displayName": "Weighted Pressure Plate (Heavy)", + "name": "heavy_weighted_pressure_plate", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 148 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.5 + }, + { + "id": 149, + "displayName": "Redstone Comparator", + "name": "unpowered_comparator", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 149 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 150, + "displayName": "Redstone Comparator (deprecated)", + "name": "powered_comparator", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 150 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 151, + "displayName": "Daylight Sensor", + "name": "daylight_detector", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 151 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 152, + "displayName": "Block of Redstone", + "name": "redstone_block", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 152 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 153, + "displayName": "Nether Quartz Ore", + "name": "quartz_ore", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 406 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3 + }, + { + "id": 154, + "displayName": "Hopper", + "name": "hopper", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 154 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 4.8 + }, + { + "id": 155, + "displayName": "Block of Quartz", + "name": "quartz_block", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Block of Quartz" + }, + { + "metadata": 1, + "displayName": "Chiseled Quartz Block" + }, + { + "metadata": 2, + "displayName": "Pillar Quartz Block (vertical)" + }, + { + "metadata": 3, + "displayName": "Pillar Quartz Block (north-south)" + }, + { + "metadata": 4, + "displayName": "Pillar Quartz Block (east-west)" + } + ], + "drops": [ + { + "drop": 155 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 156, + "displayName": "Quartz Stairs", + "name": "quartz_stairs", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 156 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 157, + "displayName": "Activator Rail", + "name": "activator_rail", + "hardness": 0.7, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "rock", + "drops": [ + { + "drop": 157 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.7 + }, + { + "id": 158, + "displayName": "Dropper", + "name": "dropper", + "hardness": 3.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 158 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 3.5 + }, + { + "id": 159, + "displayName": "Stained Clay", + "name": "stained_hardened_clay", + "hardness": 1.25, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 159 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 4.2 + }, + { + "id": 160, + "displayName": "Stained Glass Pane", + "name": "stained_glass_pane", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 161, + "displayName": "Leaves (Acacia/Dark Oak)", + "name": "leaves2", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "leaves", + "variations": [ + { + "metadata": 0, + "displayName": "Acacia Leaves" + }, + { + "metadata": 1, + "displayName": "Dark Oak Leaves" + }, + { + "metadata": 4, + "displayName": "Acacia Leaves (no decay)" + }, + { + "metadata": 5, + "displayName": "Dark Oak Leaves (no decay)" + }, + { + "metadata": 8, + "displayName": "Acacia Leaves (check decay)" + }, + { + "metadata": 9, + "displayName": "Dark Oak Leaves (check decay)" + }, + { + "metadata": 12, + "displayName": "Acacia Leaves (no decay and check decay)" + }, + { + "metadata": 13, + "displayName": "Dark Oak Leaves (no decay and check decay)" + } + ], + "drops": [ + { + "drop": 6, + "minCount": 0, + "maxCount": 1 + }, + { + "drop": 260, + "minCount": 0, + "maxCount": 1 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 162, + "displayName": "Wood (Acacia/Dark Oak)", + "name": "log2", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "variations": [ + { + "metadata": 0, + "displayName": "Acacia wood facing up/down" + }, + { + "metadata": 1, + "displayName": "Dark Oak wood facing up/down" + }, + { + "metadata": 4, + "displayName": "Acacia wood facing East/West" + }, + { + "metadata": 5, + "displayName": "Dark Oak wood facing East/West" + }, + { + "metadata": 8, + "displayName": "Acacia wood facing North/South" + }, + { + "metadata": 9, + "displayName": "Dark Oak wood facing North/South" + }, + { + "metadata": 12, + "displayName": "Acacia wood with only bark" + }, + { + "metadata": 13, + "displayName": "Dark Oak wood with only bark" + } + ], + "drops": [ + { + "drop": 162 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 163, + "displayName": "Acacia Wood Stairs", + "name": "acacia_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 163 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 164, + "displayName": "Dark Oak Wood Stairs", + "name": "dark_oak_stairs", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 164 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 165, + "displayName": "Slime Block", + "name": "slime", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 165 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 166, + "displayName": "Barrier", + "name": "barrier", + "hardness": null, + "stackSize": 64, + "diggable": false, + "boundingBox": "block", + "drops": [], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 167, + "displayName": "Iron Trapdoor", + "name": "iron_trapdoor", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 167 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 5 + }, + { + "id": 168, + "displayName": "Prismarine", + "name": "prismarine", + "hardness": 1.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Prismarine" + }, + { + "metadata": 1, + "displayName": "Prismarine Bricks" + }, + { + "metadata": 2, + "displayName": "Dark Prismarine" + } + ], + "drops": [ + { + "drop": 168 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 169, + "displayName": "Sea Lantern", + "name": "sea_lantern", + "hardness": 0.3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 410, + "minCount": 2, + "maxCount": 3 + } + ], + "transparent": true, + "emitLight": 15, + "filterLight": 0, + "resistance": 0.3 + }, + { + "id": 170, + "displayName": "Hay Bale", + "name": "hay_block", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "drops": [ + { + "drop": 170 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.5 + }, + { + "id": 171, + "displayName": "Carpet", + "name": "carpet", + "hardness": 0.1, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "variations": [ + { + "metadata": 0, + "displayName": "White Carpet" + }, + { + "metadata": 1, + "displayName": "Orange Carpet" + }, + { + "metadata": 2, + "displayName": "Magenta Carpet" + }, + { + "metadata": 3, + "displayName": "Light Blue Carpet" + }, + { + "metadata": 4, + "displayName": "Yellow Carpet" + }, + { + "metadata": 5, + "displayName": "Lime Carpet" + }, + { + "metadata": 6, + "displayName": "Pink Carpet" + }, + { + "metadata": 7, + "displayName": "Gray Carpet" + }, + { + "metadata": 8, + "displayName": "Light Gray Carpet" + }, + { + "metadata": 9, + "displayName": "Cyan Carpet" + }, + { + "metadata": 10, + "displayName": "Purple Carpet" + }, + { + "metadata": 11, + "displayName": "Blue Carpet" + }, + { + "metadata": 12, + "displayName": "Brown Carpet" + }, + { + "metadata": 13, + "displayName": "Green Carpet" + }, + { + "metadata": 14, + "displayName": "Red Carpet" + }, + { + "metadata": 15, + "displayName": "Black Carpet" + } + ], + "drops": [ + { + "drop": 171 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0.1 + }, + { + "id": 172, + "displayName": "Hardened Clay", + "name": "hardened_clay", + "hardness": 1.25, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 172 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 4.2 + }, + { + "id": 173, + "displayName": "Block of Coal", + "name": "coal_block", + "hardness": 5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 173 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 6 + }, + { + "id": 174, + "displayName": "Packed Ice", + "name": "packed_ice", + "hardness": 0.5, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "drops": [], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.5 + }, + { + "id": 175, + "displayName": "Large Flowers", + "name": "double_plant", + "hardness": 0, + "stackSize": 64, + "diggable": true, + "boundingBox": "empty", + "material": "plant", + "variations": [ + { + "metadata": 0, + "displayName": "Sunflower" + }, + { + "metadata": 1, + "displayName": "Lilac" + }, + { + "metadata": 2, + "displayName": "Double Tallgrass" + }, + { + "metadata": 3, + "displayName": "Large Fern" + }, + { + "metadata": 4, + "displayName": "Rose Bush" + }, + { + "metadata": 5, + "displayName": "Peony" + }, + { + "metadata": 8, + "displayName": "Top Half of any Large Plant; low three bits 0x7 are derived from the block below." + } + ], + "drops": [ + { + "drop": 175 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0 + }, + { + "id": 176, + "displayName": "Standing Banner", + "name": "standing_banner", + "hardness": 1, + "stackSize": 16, + "diggable": true, + "boundingBox": "empty", + "material": "wood", + "drops": [ + { + "drop": 176 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1 + }, + { + "id": 177, + "displayName": "Wall Banner", + "name": "wall_banner", + "hardness": 1, + "stackSize": 16, + "diggable": true, + "boundingBox": "empty", + "material": "wood", + "drops": [ + { + "drop": 177 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 1 + }, + { + "id": 178, + "displayName": "Inverted Daylight Sensor", + "name": "daylight_detector_inverted", + "hardness": 0.2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 178 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 0 + }, + { + "id": 179, + "displayName": "Red Sandstone", + "name": "red_sandstone", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Sandstone" + }, + { + "metadata": 1, + "displayName": "Chiseled sandstone" + }, + { + "metadata": 2, + "displayName": "Smooth sandstone" + } + ], + "drops": [ + { + "drop": 179 + } + ], + "transparent": false, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 180, + "displayName": "Red Sandstone Stairs", + "name": "red_sandstone_stairs", + "hardness": 0.8, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "drops": [ + { + "drop": 180 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 15, + "resistance": 0.8 + }, + { + "id": 181, + "displayName": "Double Red Sandstone Slab", + "name": "double_stone_slab2", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Double Red Sandstone Slab" + }, + { + "metadata": 8, + "displayName": "Smooth Double Red Sandstone Slab" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 182, + "displayName": "Red Sandstone Slab", + "name": "stone_slab2", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "rock", + "harvestTools": { + "257": true, + "270": true, + "274": true, + "278": true, + "285": true + }, + "variations": [ + { + "metadata": 0, + "displayName": "Red Sandstone Slab" + }, + { + "metadata": 8, + "displayName": "Upper Red Sandstone Slab" + } + ], + "drops": [ + { + "drop": { + "id": 44, + "metadata": 0 + } + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 6 + }, + { + "id": 183, + "displayName": "Spruce Fence Gate", + "name": "spruce_fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 183 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 184, + "displayName": "Birch Fence Gate", + "name": "birch_fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 184 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 185, + "displayName": "Jungle Fence Gate", + "name": "jungle_fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 185 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 186, + "displayName": "Dark Oak Fence Gate", + "name": "dark_oak_fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 186 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 187, + "displayName": "Acacia Fence Gate", + "name": "acacia_fence_gate", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 187 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 188, + "displayName": "Spruce Fence", + "name": "spruce_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 188 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 189, + "displayName": "Birch Fence", + "name": "birch_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 189 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 190, + "displayName": "Jungle Fence", + "name": "jungle_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 190 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 191, + "displayName": "Dark Oak Fence", + "name": "dark_oak_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 191 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 192, + "displayName": "Acacia Fence", + "name": "acacia_fence", + "hardness": 2, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 192 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 193, + "displayName": "Spruce Door", + "name": "spruce_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 193 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 194, + "displayName": "Birch Door", + "name": "birch_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 194 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 195, + "displayName": "Jungle Door", + "name": "jungle_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 195 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 196, + "displayName": "Acacia Door", + "name": "acacia_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 196 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + }, + { + "id": 197, + "displayName": "Dark Oak Door", + "name": "dark_oak_door", + "hardness": 3, + "stackSize": 64, + "diggable": true, + "boundingBox": "block", + "material": "wood", + "drops": [ + { + "drop": 197 + } + ], + "transparent": true, + "emitLight": 0, + "filterLight": 0, + "resistance": 3 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/effects.json b/mc/data/minecraft-data/pc/1.8/effects.json new file mode 100644 index 0000000..0b885b5 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/effects.json @@ -0,0 +1,140 @@ +[ + { + "id": 1, + "name": "Speed", + "displayName": "Speed", + "type": "good" + }, + { + "id": 2, + "name": "Slowness", + "displayName": "Slowness", + "type": "bad" + }, + { + "id": 3, + "name": "Haste", + "displayName": "Haste", + "type": "good" + }, + { + "id": 4, + "name": "MiningFatigue", + "displayName": "Mining Fatigue", + "type": "bad" + }, + { + "id": 5, + "name": "Strength", + "displayName": "Strength", + "type": "good" + }, + { + "id": 6, + "name": "InstantHealth", + "displayName": "Instant Health", + "type": "good" + }, + { + "id": 7, + "name": "InstantDamage", + "displayName": "Instant Damage", + "type": "bad" + }, + { + "id": 8, + "name": "JumpBoost", + "displayName": "Jump Boost", + "type": "good" + }, + { + "id": 9, + "name": "Nausea", + "displayName": "Nausea", + "type": "bad" + }, + { + "id": 10, + "name": "Regeneration", + "displayName": "Regeneration", + "type": "good" + }, + { + "id": 11, + "name": "Resistance", + "displayName": "Resistance", + "type": "good" + }, + { + "id": 12, + "name": "FireResistance", + "displayName": "Fire Resistance", + "type": "good" + }, + { + "id": 13, + "name": "WaterBreathing", + "displayName": "Water Breathing", + "type": "good" + }, + { + "id": 14, + "name": "Invisibility", + "displayName": "Invisibility", + "type": "good" + }, + { + "id": 15, + "name": "Blindness", + "displayName": "Blindness", + "type": "bad" + }, + { + "id": 16, + "name": "NightVision", + "displayName": "Night Vision", + "type": "good" + }, + { + "id": 17, + "name": "Hunger", + "displayName": "Hunger", + "type": "bad" + }, + { + "id": 18, + "name": "Weakness", + "displayName": "Weakness", + "type": "bad" + }, + { + "id": 19, + "name": "Poison", + "displayName": "Poison", + "type": "bad" + }, + { + "id": 20, + "name": "Wither", + "displayName": "Wither", + "type": "bad" + }, + { + "id": 21, + "name": "HealthBoost", + "displayName": "Health Boost", + "type": "good" + }, + { + "id": 22, + "name": "Absorption", + "displayName": "Absorption", + "type": "good" + }, + { + "id": 23, + "name": "Saturation", + "displayName": "Saturation", + "type": "good" + } +] diff --git a/mc/data/minecraft-data/pc/1.8/enchantments.json b/mc/data/minecraft-data/pc/1.8/enchantments.json new file mode 100644 index 0000000..8eeaa6e --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/enchantments.json @@ -0,0 +1,560 @@ +[ + { + "id": 0, + "name": "protection", + "displayName": "Protection", + "maxLevel": 4, + "minCost": { + "a": 11, + "b": -10 + }, + "maxCost": { + "a": 11, + "b": 1 + }, + "exclude": [ + "blast_protection", + "fire_protection", + "projectile_protection" + ], + "category": "armor", + "weight": 10, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 1, + "name": "fire_protection", + "displayName": "Fire Protection", + "maxLevel": 4, + "minCost": { + "a": 8, + "b": 2 + }, + "maxCost": { + "a": 8, + "b": 10 + }, + "exclude": [ + "blast_protection", + "protection", + "projectile_protection" + ], + "category": "armor", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 2, + "name": "feather_falling", + "displayName": "Feather Falling", + "maxLevel": 4, + "minCost": { + "a": 6, + "b": -1 + }, + "maxCost": { + "a": 6, + "b": 5 + }, + "exclude": [], + "category": "armor_feet", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 3, + "name": "blast_protection", + "displayName": "Blast Protection", + "maxLevel": 4, + "minCost": { + "a": 8, + "b": -3 + }, + "maxCost": { + "a": 8, + "b": 5 + }, + "exclude": [ + "fire_protection", + "protection", + "projectile_protection" + ], + "category": "armor", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 4, + "name": "projectile_protection", + "displayName": "Projectile Protection", + "maxLevel": 4, + "minCost": { + "a": 6, + "b": -3 + }, + "maxCost": { + "a": 6, + "b": 3 + }, + "exclude": [ + "protection", + "blast_protection", + "fire_protection" + ], + "category": "armor", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 5, + "name": "respiration", + "displayName": "Respiration", + "maxLevel": 3, + "minCost": { + "a": 10, + "b": 0 + }, + "maxCost": { + "a": 10, + "b": 30 + }, + "exclude": [], + "category": "armor_head", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 6, + "name": "aqua_affinity", + "displayName": "Aqua Affinity", + "maxLevel": 1, + "minCost": { + "a": 0, + "b": 1 + }, + "maxCost": { + "a": 0, + "b": 41 + }, + "exclude": [], + "category": "armor_head", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 7, + "name": "thorns", + "displayName": "Thorns", + "maxLevel": 3, + "minCost": { + "a": 20, + "b": -10 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "armor_chest", + "weight": 1, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 8, + "name": "depth_strider", + "displayName": "Depth Strider", + "maxLevel": 3, + "minCost": { + "a": 10, + "b": 0 + }, + "maxCost": { + "a": 10, + "b": 15 + }, + "exclude": [ + "frost_walker" + ], + "category": "armor_feet", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 16, + "name": "sharpness", + "displayName": "Sharpness", + "maxLevel": 5, + "minCost": { + "a": 11, + "b": -10 + }, + "maxCost": { + "a": 11, + "b": 10 + }, + "exclude": [ + "smite", + "bane_of_arthropods" + ], + "category": "weapon", + "weight": 10, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 17, + "name": "smite", + "displayName": "Smite", + "maxLevel": 5, + "minCost": { + "a": 8, + "b": -3 + }, + "maxCost": { + "a": 8, + "b": 17 + }, + "exclude": [ + "sharpness", + "bane_of_arthropods" + ], + "category": "weapon", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 18, + "name": "bane_of_arthropods", + "displayName": "Bane of Arthropods", + "maxLevel": 5, + "minCost": { + "a": 8, + "b": -3 + }, + "maxCost": { + "a": 8, + "b": 17 + }, + "exclude": [ + "smite", + "sharpness" + ], + "category": "weapon", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 19, + "name": "knockback", + "displayName": "Knockback", + "maxLevel": 2, + "minCost": { + "a": 20, + "b": -15 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "weapon", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 20, + "name": "fire_aspect", + "displayName": "Fire Aspect", + "maxLevel": 2, + "minCost": { + "a": 20, + "b": -10 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "weapon", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 21, + "name": "looting", + "displayName": "Looting", + "maxLevel": 3, + "minCost": { + "a": 9, + "b": 6 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "weapon", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 32, + "name": "efficiency", + "displayName": "Efficiency", + "maxLevel": 5, + "minCost": { + "a": 10, + "b": -9 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "digger", + "weight": 10, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 33, + "name": "silk_touch", + "displayName": "Silk Touch", + "maxLevel": 1, + "minCost": { + "a": 0, + "b": 15 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [ + "fortune" + ], + "category": "digger", + "weight": 1, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 34, + "name": "unbreaking", + "displayName": "Unbreaking", + "maxLevel": 3, + "minCost": { + "a": 8, + "b": -3 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "breakable", + "weight": 5, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 35, + "name": "fortune", + "displayName": "Fortune", + "maxLevel": 3, + "minCost": { + "a": 9, + "b": 6 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [ + "silk_touch" + ], + "category": "digger", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 48, + "name": "power", + "displayName": "Power", + "maxLevel": 5, + "minCost": { + "a": 10, + "b": -9 + }, + "maxCost": { + "a": 10, + "b": 6 + }, + "exclude": [], + "category": "bow", + "weight": 10, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 49, + "name": "punch", + "displayName": "Punch", + "maxLevel": 2, + "minCost": { + "a": 20, + "b": -8 + }, + "maxCost": { + "a": 20, + "b": 17 + }, + "exclude": [], + "category": "bow", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 50, + "name": "flame", + "displayName": "Flame", + "maxLevel": 1, + "minCost": { + "a": 0, + "b": 20 + }, + "maxCost": { + "a": 0, + "b": 50 + }, + "exclude": [], + "category": "bow", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 51, + "name": "infinity", + "displayName": "Infinity", + "maxLevel": 1, + "minCost": { + "a": 0, + "b": 20 + }, + "maxCost": { + "a": 0, + "b": 50 + }, + "exclude": [ + "mending" + ], + "category": "bow", + "weight": 1, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 61, + "name": "luck_of_the_sea", + "displayName": "Luck of the Sea", + "maxLevel": 3, + "minCost": { + "a": 9, + "b": 6 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "fishing_rod", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + }, + { + "id": 62, + "name": "lure", + "displayName": "Lure", + "maxLevel": 3, + "minCost": { + "a": 9, + "b": 6 + }, + "maxCost": { + "a": 10, + "b": 51 + }, + "exclude": [], + "category": "fishing_rod", + "weight": 2, + "treasureOnly": false, + "curse": false, + "tradeable": true, + "discoverable": true + } +] diff --git a/mc/data/minecraft-data/pc/1.8/entities.json b/mc/data/minecraft-data/pc/1.8/entities.json new file mode 100644 index 0000000..0c3f10e --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/entities.json @@ -0,0 +1,580 @@ +[ + { + "id": 48, + "internalId": 48, + "name": "Mob", + "displayName": "Mob", + "type": "mob", + "width": null, + "height": null, + "category": "Generic" + }, + { + "id": 49, + "internalId": 49, + "name": "Monster", + "displayName": "Monster", + "type": "mob", + "width": null, + "height": null, + "category": "Generic" + }, + { + "id": 50, + "internalId": 50, + "name": "Creeper", + "displayName": "Creeper", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "Hostile mobs" + }, + { + "id": 51, + "internalId": 51, + "name": "Skeleton", + "displayName": "Skeleton", + "type": "mob", + "width": 0.6, + "height": 1.95, + "category": "Hostile mobs" + }, + { + "id": 52, + "internalId": 52, + "name": "Spider", + "displayName": "Spider", + "type": "mob", + "width": 1.4, + "height": 0.9, + "category": "Hostile mobs" + }, + { + "id": 53, + "internalId": 53, + "name": "Giant", + "displayName": "Giant", + "type": "mob", + "width": 3.5999999999999996, + "height": 10.8, + "category": "Hostile mobs" + }, + { + "id": 54, + "internalId": 54, + "name": "Zombie", + "displayName": "Zombie", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "Hostile mobs" + }, + { + "id": 55, + "internalId": 55, + "name": "Slime", + "displayName": "Slime", + "type": "mob", + "width": 0.51000005, + "height": 0.51000005, + "category": "Hostile mobs" + }, + { + "id": 56, + "internalId": 56, + "name": "Ghast", + "displayName": "Ghast", + "type": "mob", + "width": 4, + "height": 4, + "category": "Hostile mobs" + }, + { + "id": 57, + "internalId": 57, + "name": "PigZombie", + "displayName": "Zombie Pigman", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "Hostile mobs" + }, + { + "id": 58, + "internalId": 58, + "name": "Enderman", + "displayName": "Enderman", + "type": "mob", + "width": 0.6, + "height": 2.9, + "category": "Hostile mobs" + }, + { + "id": 59, + "internalId": 59, + "name": "CaveSpider", + "displayName": "Cave Spider", + "type": "mob", + "width": 0.7, + "height": 0.5, + "category": "Hostile mobs" + }, + { + "id": 60, + "internalId": 60, + "name": "Silverfish", + "displayName": "Silverfish", + "type": "mob", + "width": 0.4, + "height": 0.3, + "category": "Hostile mobs" + }, + { + "id": 61, + "internalId": 61, + "name": "Blaze", + "displayName": "Blaze", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "Hostile mobs" + }, + { + "id": 62, + "internalId": 62, + "name": "LavaSlime", + "displayName": "Magma Cube", + "type": "mob", + "width": 0.51000005, + "height": 0.51000005, + "category": "Hostile mobs" + }, + { + "id": 63, + "internalId": 63, + "name": "EnderDragon", + "displayName": "Ender Dragon", + "type": "mob", + "width": 16, + "height": 8, + "category": "Hostile mobs" + }, + { + "id": 64, + "internalId": 64, + "name": "WitherBoss", + "displayName": "Wither", + "type": "mob", + "width": 0.9, + "height": 3.5, + "category": "Hostile mobs" + }, + { + "id": 65, + "internalId": 65, + "name": "Bat", + "displayName": "Bat", + "type": "mob", + "width": 0.5, + "height": 0.9, + "category": "Passive mobs" + }, + { + "id": 66, + "internalId": 66, + "name": "Witch", + "displayName": "Witch", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "Hostile mobs" + }, + { + "id": 67, + "internalId": 67, + "name": "Endermite", + "displayName": "Endermite", + "type": "mob", + "width": 0.4, + "height": 0.3, + "category": "Hostile mobs" + }, + { + "id": 68, + "internalId": 68, + "name": "Guardian", + "displayName": "Guardian", + "type": "mob", + "width": 0.85, + "height": 0.85, + "category": "Hostile mobs" + }, + { + "id": 90, + "internalId": 90, + "name": "Pig", + "displayName": "Pig", + "type": "mob", + "width": 0.9, + "height": 0.9, + "category": "Passive mobs" + }, + { + "id": 91, + "internalId": 91, + "name": "Sheep", + "displayName": "Sheep", + "type": "mob", + "width": 0.9, + "height": 1.3, + "category": "Passive mobs" + }, + { + "id": 92, + "internalId": 92, + "name": "Cow", + "displayName": "Cow", + "type": "mob", + "width": 0.9, + "height": 1.3, + "category": "Passive mobs" + }, + { + "id": 93, + "internalId": 93, + "name": "Chicken", + "displayName": "Chicken", + "type": "mob", + "width": 0.4, + "height": 0.7, + "category": "Passive mobs" + }, + { + "id": 94, + "internalId": 94, + "name": "Squid", + "displayName": "Squid", + "type": "mob", + "width": 0.95, + "height": 0.95, + "category": "Passive mobs" + }, + { + "id": 95, + "internalId": 95, + "name": "Wolf", + "displayName": "Wolf", + "type": "mob", + "width": 0.6, + "height": 0.8, + "category": "Passive mobs" + }, + { + "id": 96, + "internalId": 96, + "name": "MushroomCow", + "displayName": "Mooshroom", + "type": "mob", + "width": 0.9, + "height": 1.3, + "category": "Passive mobs" + }, + { + "id": 97, + "internalId": 97, + "name": "SnowMan", + "displayName": "Snow Golem", + "type": "mob", + "width": 0.7, + "height": 1.9, + "category": "Passive mobs" + }, + { + "id": 98, + "internalId": 98, + "name": "Ozelot", + "displayName": "Ocelot", + "type": "mob", + "width": 0.6, + "height": 0.8, + "category": "Passive mobs" + }, + { + "id": 99, + "internalId": 99, + "name": "VillagerGolem", + "displayName": "Iron Golem", + "type": "mob", + "width": 1.4, + "height": 2.9, + "category": "Passive mobs" + }, + { + "id": 100, + "internalId": 100, + "name": "EntityHorse", + "displayName": "Horse", + "type": "mob", + "width": 1.4, + "height": 1.6, + "category": "Passive mobs" + }, + { + "id": 101, + "internalId": 101, + "name": "Rabbit", + "displayName": "Rabbit", + "type": "mob", + "width": 0.6, + "height": 0.7, + "category": "Passive mobs" + }, + { + "id": 120, + "internalId": 120, + "name": "Villager", + "displayName": "Villager", + "type": "mob", + "width": 0.6, + "height": 1.8, + "category": "NPCs" + }, + { + "id": 1, + "internalId": 41, + "name": "Boat", + "displayName": "Boat", + "type": "object", + "width": 1.5, + "height": 0.6, + "category": "Vehicles" + }, + { + "id": 2, + "internalId": 1, + "name": "Item", + "displayName": "Dropped item", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Drops" + }, + { + "id": 10, + "internalId": 42, + "name": "MinecartRideable", + "displayName": "Minecart", + "type": "object", + "width": 0.98, + "height": 0.7, + "category": "Vehicles" + }, + { + "id": 11, + "internalId": 42, + "name": "MinecartRideable", + "displayName": "Minecart", + "type": "object", + "width": 0.98, + "height": 0.7, + "category": "Vehicles" + }, + { + "id": 12, + "internalId": 42, + "name": "MinecartRideable", + "displayName": "Minecart", + "type": "object", + "width": 0.98, + "height": 0.7, + "category": "Vehicles" + }, + { + "id": 50, + "internalId": 20, + "name": "PrimedTnt", + "displayName": "Primed TNT", + "type": "object", + "width": 0.98, + "height": 0.98, + "category": "Blocks" + }, + { + "id": 51, + "internalId": 200, + "name": "EnderCrystal", + "displayName": "Ender Crystal", + "type": "object", + "width": 2, + "height": 2, + "category": "Immobile" + }, + { + "id": 60, + "internalId": 10, + "name": "Arrow", + "displayName": "Shot arrow", + "type": "object", + "width": 0.5, + "height": 0.5, + "category": "Projectiles" + }, + { + "id": 61, + "internalId": 11, + "name": "Snowball", + "displayName": "Thrown snowball", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 62, + "internalId": 7, + "name": "ThrownEgg", + "displayName": "Thrown egg", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 63, + "internalId": 12, + "name": "Fireball", + "displayName": "Ghast fireball", + "type": "object", + "width": 1, + "height": 1, + "category": "Projectiles" + }, + { + "id": 64, + "internalId": 13, + "name": "SmallFireball", + "displayName": "Blaze fireball", + "type": "object", + "width": 0.3125, + "height": 0.3125, + "category": "Projectiles" + }, + { + "id": 65, + "internalId": 14, + "name": "ThrownEnderpearl", + "displayName": "Thrown Ender Pearl", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 66, + "internalId": 19, + "name": "WitherSkull", + "displayName": "Wither Skull", + "type": "object", + "width": 0.3125, + "height": 0.3125, + "category": "Projectiles" + }, + { + "id": 70, + "internalId": 21, + "name": "FallingSand", + "displayName": "Falling block", + "type": "object", + "width": 0.98, + "height": 0.98, + "category": "Blocks" + }, + { + "id": 71, + "internalId": 18, + "name": "ItemFrame", + "displayName": "Item Frame", + "type": "object", + "width": null, + "height": null, + "category": "Immobile" + }, + { + "id": 72, + "internalId": 15, + "name": "EyeOfEnderSignal", + "displayName": "Thrown Eye of Ender", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 73, + "internalId": 16, + "name": "ThrownPotion", + "displayName": "Thrown splash potion", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 74, + "internalId": 21, + "name": "FallingSand", + "displayName": "Falling block", + "type": "object", + "width": 0.98, + "height": 0.98, + "category": "Blocks" + }, + { + "id": 75, + "internalId": 17, + "name": "ThrownExpBottle", + "displayName": "Thrown Bottle o' Enchanting", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 76, + "internalId": 22, + "name": "FireworksRocketEntity", + "displayName": "Firework Rocket", + "type": "object", + "width": 0.25, + "height": 0.25, + "category": "Projectiles" + }, + { + "id": 77, + "internalId": 8, + "name": "LeashKnot", + "displayName": "Lead knot", + "type": "object", + "width": 0.5, + "height": 0.5, + "category": "Immobile" + }, + { + "id": 78, + "internalId": 30, + "name": "ArmorStand", + "displayName": "Armor Stand", + "type": "object", + "width": 0.5, + "height": 2, + "category": "Immobile" + }, + { + "id": 90, + "name": "Fishing Float", + "displayName": "Fishing Float", + "type": "object", + "width": 0.25, + "height": 0.25 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/foods.json b/mc/data/minecraft-data/pc/1.8/foods.json new file mode 100644 index 0000000..13698ea --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/foods.json @@ -0,0 +1,310 @@ +[ + { + "id": 103, + "displayName": "Melon", + "name": "melon_block", + "stackSize": 64, + "foodPoints": 2, + "saturation": 1.2, + "effectiveQuality": 3.2, + "saturationRatio": 0.6 + }, + { + "id": 141, + "displayName": "Carrot", + "name": "carrots", + "stackSize": 64, + "foodPoints": 3, + "saturation": 4.8, + "effectiveQuality": 7.8, + "saturationRatio": 1.5999999999999999 + }, + { + "id": 142, + "displayName": "Potato", + "name": "potatoes", + "stackSize": 64, + "foodPoints": 1, + "saturation": 0.6, + "effectiveQuality": 1.6, + "saturationRatio": 0.6 + }, + { + "id": 260, + "displayName": "Apple", + "stackSize": 64, + "name": "apple", + "foodPoints": 4, + "saturation": 2.4, + "effectiveQuality": 6.4, + "saturationRatio": 0.6 + }, + { + "id": 282, + "displayName": "Mushroom Stew", + "stackSize": 1, + "name": "mushroom_stew", + "foodPoints": 6, + "saturation": 7.2, + "effectiveQuality": 13.2, + "saturationRatio": 1.2 + }, + { + "id": 297, + "displayName": "Bread", + "stackSize": 64, + "name": "bread", + "foodPoints": 5, + "saturation": 6, + "effectiveQuality": 11, + "saturationRatio": 1.2 + }, + { + "id": 319, + "displayName": "Raw Porkchop", + "stackSize": 64, + "name": "porkchop", + "foodPoints": 3, + "saturation": 1.8, + "effectiveQuality": 4.8, + "saturationRatio": 0.6 + }, + { + "id": 320, + "displayName": "Cooked Porkchop", + "stackSize": 64, + "name": "cooked_porkchop", + "foodPoints": 8, + "saturation": 12.8, + "effectiveQuality": 20.8, + "saturationRatio": 1.6 + }, + { + "id": 322, + "displayName": "Golden Apple", + "stackSize": 64, + "name": "golden_apple", + "variations": [ + { + "metadata": 0, + "displayName": "Golden Apple" + }, + { + "metadata": 1, + "displayName": "Enchanted Golden Apple" + } + ], + "foodPoints": 4, + "saturation": 9.6, + "effectiveQuality": 13.6, + "saturationRatio": 2.4 + }, + { + "id": 349, + "displayName": "Raw Fish", + "stackSize": 64, + "name": "fish", + "variations": [ + { + "metadata": 0, + "displayName": "Raw Fish" + }, + { + "metadata": 1, + "displayName": "Raw Salmon" + }, + { + "metadata": 2, + "displayName": "Clownfish" + }, + { + "metadata": 3, + "displayName": "Pufferfish" + } + ], + "foodPoints": 2, + "saturation": 0.4, + "effectiveQuality": 2.4, + "saturationRatio": 0.2 + }, + { + "id": 350, + "displayName": "Cooked Fish", + "stackSize": 64, + "name": "cooked_fish", + "foodPoints": 5, + "saturation": 6, + "effectiveQuality": 11, + "saturationRatio": 1.2 + }, + { + "id": 354, + "displayName": "Cake", + "stackSize": 1, + "name": "cake", + "foodPoints": 2, + "saturation": 0.4, + "effectiveQuality": 2.4, + "saturationRatio": 0.2 + }, + { + "id": 357, + "displayName": "Cookie", + "stackSize": 64, + "name": "cookie", + "foodPoints": 2, + "saturation": 0.4, + "effectiveQuality": 2.4, + "saturationRatio": 0.2 + }, + { + "id": 363, + "displayName": "Raw Beef", + "stackSize": 64, + "name": "beef", + "foodPoints": 3, + "saturation": 1.8, + "effectiveQuality": 4.8, + "saturationRatio": 0.6 + }, + { + "id": 364, + "displayName": "Steak", + "stackSize": 64, + "name": "cooked_beef", + "foodPoints": 8, + "saturation": 12.8, + "effectiveQuality": 20.8, + "saturationRatio": 1.6 + }, + { + "id": 365, + "displayName": "Raw Chicken", + "stackSize": 64, + "name": "chicken", + "foodPoints": 2, + "saturation": 1.2, + "effectiveQuality": 3.2, + "saturationRatio": 0.6 + }, + { + "id": 366, + "displayName": "Cooked Chicken", + "stackSize": 64, + "name": "cooked_chicken", + "foodPoints": 6, + "saturation": 7.2, + "effectiveQuality": 13.2, + "saturationRatio": 1.2 + }, + { + "id": 367, + "displayName": "Rotten Flesh", + "stackSize": 64, + "name": "rotten_flesh", + "foodPoints": 4, + "saturation": 0.8, + "effectiveQuality": 4.8, + "saturationRatio": 0.2 + }, + { + "id": 375, + "displayName": "Spider Eye", + "stackSize": 64, + "name": "spider_eye", + "foodPoints": 2, + "saturation": 3.2, + "effectiveQuality": 5.2, + "saturationRatio": 1.6 + }, + { + "id": 393, + "displayName": "Baked Potato", + "stackSize": 64, + "name": "baked_potato", + "foodPoints": 5, + "saturation": 7.2, + "effectiveQuality": 12.2, + "saturationRatio": 1.44 + }, + { + "id": 394, + "displayName": "Poisonous Potato", + "stackSize": 64, + "name": "poisonous_potato", + "foodPoints": 2, + "saturation": 1.2, + "effectiveQuality": 3.2, + "saturationRatio": 0.6 + }, + { + "id": 396, + "displayName": "Golden Carrot", + "stackSize": 64, + "name": "golden_carrot", + "foodPoints": 6, + "saturation": 14.4, + "effectiveQuality": 20.4, + "saturationRatio": 2.4 + }, + { + "id": 400, + "displayName": "Pumpkin Pie", + "stackSize": 64, + "name": "pumpkin_pie", + "foodPoints": 8, + "saturation": 4.8, + "effectiveQuality": 12.8, + "saturationRatio": 0.6 + }, + { + "id": 411, + "displayName": "Raw Rabbit", + "stackSize": 64, + "name": "rabbit", + "foodPoints": 3, + "saturation": 1.8, + "effectiveQuality": 4.8, + "saturationRatio": 0.6 + }, + { + "id": 412, + "displayName": "Cooked Rabbit", + "stackSize": 64, + "name": "cooked_rabbit", + "foodPoints": 5, + "saturation": 6, + "effectiveQuality": 11, + "saturationRatio": 1.2 + }, + { + "id": 413, + "displayName": "Rabbit Stew", + "stackSize": 1, + "name": "rabbit_stew", + "foodPoints": 10, + "saturation": 12, + "effectiveQuality": 22, + "saturationRatio": 1.2 + }, + { + "id": 423, + "displayName": "Raw Mutton", + "stackSize": 64, + "name": "mutton", + "foodPoints": 2, + "saturation": 1.2, + "effectiveQuality": 3.2, + "saturationRatio": 0.6 + }, + { + "id": 424, + "displayName": "Cooked Mutton", + "stackSize": 64, + "name": "cooked_mutton", + "foodPoints": 6, + "saturation": 9.6, + "effectiveQuality": 15.6, + "saturationRatio": 1.5999999999999999 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/instruments.json b/mc/data/minecraft-data/pc/1.8/instruments.json new file mode 100644 index 0000000..d877f18 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/instruments.json @@ -0,0 +1,22 @@ +[ + { + "id": 0, + "name": "harp" + }, + { + "id": 1, + "name": "doubleBass" + }, + { + "id": 2, + "name": "snareDrum" + }, + { + "id": 3, + "name": "sticks" + }, + { + "id": 4, + "name": "bassDrum" + } +] diff --git a/mc/data/minecraft-data/pc/1.8/items.json b/mc/data/minecraft-data/pc/1.8/items.json new file mode 100644 index 0000000..a32702c --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/items.json @@ -0,0 +1,3733 @@ +[ + { + "id": 1, + "displayName": "Stone", + "name": "stone", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Stone" + }, + { + "metadata": 1, + "displayName": "Granite" + }, + { + "metadata": 2, + "displayName": "Polished Granite" + }, + { + "metadata": 3, + "displayName": "Diorite" + }, + { + "metadata": 4, + "displayName": "Polished Diorite" + }, + { + "metadata": 5, + "displayName": "Andesite" + }, + { + "metadata": 6, + "displayName": "Polished Andesite" + } + ] + }, + { + "id": 2, + "displayName": "Grass Block", + "name": "grass", + "stackSize": 64 + }, + { + "id": 3, + "displayName": "Dirt", + "name": "dirt", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Dirt" + }, + { + "metadata": 1, + "displayName": "Coarse Dirt" + }, + { + "metadata": 2, + "displayName": "Podzol" + } + ] + }, + { + "id": 4, + "displayName": "Cobblestone", + "name": "cobblestone", + "stackSize": 64 + }, + { + "id": 5, + "displayName": "Wooden Planks", + "name": "planks", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Oak Wood Planks" + }, + { + "metadata": 1, + "displayName": "Spruce Wood Planks" + }, + { + "metadata": 2, + "displayName": "Birch Wood Planks" + }, + { + "metadata": 3, + "displayName": "Jungle Wood Planks" + }, + { + "metadata": 4, + "displayName": "Acacia Wood Planks" + }, + { + "metadata": 5, + "displayName": "Dark Oak Wood Planks" + } + ] + }, + { + "id": 6, + "displayName": "Sapling", + "name": "sapling", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Oak Sapling" + }, + { + "metadata": 1, + "displayName": "Spruce Sapling" + }, + { + "metadata": 2, + "displayName": "Birch Sapling" + }, + { + "metadata": 3, + "displayName": "Jungle Sapling" + }, + { + "metadata": 4, + "displayName": "Acacia Sapling" + }, + { + "metadata": 5, + "displayName": "Dark Oak Sapling" + } + ] + }, + { + "id": 7, + "displayName": "Bedrock", + "name": "bedrock", + "stackSize": 64 + }, + { + "id": 12, + "displayName": "Sand", + "name": "sand", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Sand" + }, + { + "metadata": 1, + "displayName": "Red Sand" + } + ] + }, + { + "id": 13, + "displayName": "Gravel", + "name": "gravel", + "stackSize": 64 + }, + { + "id": 14, + "displayName": "Gold Ore", + "name": "gold_ore", + "stackSize": 64 + }, + { + "id": 15, + "displayName": "Iron Ore", + "name": "iron_ore", + "stackSize": 64 + }, + { + "id": 16, + "displayName": "Coal Ore", + "name": "coal_ore", + "stackSize": 64 + }, + { + "id": 17, + "displayName": "Wood", + "name": "log", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Oak Wood" + }, + { + "metadata": 1, + "displayName": "Spruce Wood" + }, + { + "metadata": 2, + "displayName": "Birch Wood" + }, + { + "metadata": 3, + "displayName": "Jungle Wood" + }, + { + "metadata": 4, + "displayName": "Acacia Wood" + }, + { + "metadata": 5, + "displayName": "Dark Oak Wood" + } + ] + }, + { + "id": 18, + "displayName": "Leaves", + "name": "leaves", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Oak Leaves" + }, + { + "metadata": 1, + "displayName": "Spruce Leaves" + }, + { + "metadata": 2, + "displayName": "Birch Leaves" + }, + { + "metadata": 3, + "displayName": "Jungle Leaves" + } + ] + }, + { + "id": 19, + "displayName": "Sponge", + "name": "sponge", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Sponge" + }, + { + "metadata": 1, + "displayName": "Wet Sponge" + } + ] + }, + { + "id": 20, + "displayName": "Glass", + "name": "glass", + "stackSize": 64 + }, + { + "id": 21, + "displayName": "Lapis Lazuli Ore", + "name": "lapis_ore", + "stackSize": 64 + }, + { + "id": 22, + "displayName": "Lapis Lazuli Block", + "name": "lapis_block", + "stackSize": 64 + }, + { + "id": 23, + "displayName": "Dispenser", + "name": "dispenser", + "stackSize": 64 + }, + { + "id": 24, + "displayName": "Sandstone", + "name": "sandstone", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Sandstone" + }, + { + "metadata": 1, + "displayName": "Chiseled Sandstone" + }, + { + "metadata": 2, + "displayName": "Smooth Sandstone" + } + ] + }, + { + "id": 25, + "displayName": "Note Block", + "name": "noteblock", + "stackSize": 64 + }, + { + "id": 27, + "displayName": "Powered Rail", + "name": "golden_rail", + "stackSize": 64 + }, + { + "id": 28, + "displayName": "Detector Rail", + "name": "detector_rail", + "stackSize": 64 + }, + { + "id": 29, + "displayName": "Sticky Piston", + "name": "sticky_piston", + "stackSize": 64 + }, + { + "id": 30, + "displayName": "Cobweb", + "name": "web", + "stackSize": 64 + }, + { + "id": 31, + "displayName": "Grass", + "name": "tallgrass", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Shrub" + }, + { + "metadata": 1, + "displayName": "Tall Grass" + }, + { + "metadata": 2, + "displayName": "Fern" + } + ] + }, + { + "id": 32, + "displayName": "Dead Bush", + "name": "deadbush", + "stackSize": 64 + }, + { + "id": 33, + "displayName": "Piston", + "name": "piston", + "stackSize": 64 + }, + { + "id": 35, + "displayName": "Wool", + "name": "wool", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "White Wool" + }, + { + "metadata": 1, + "displayName": "Orange Wool" + }, + { + "metadata": 2, + "displayName": "Magenta Wool" + }, + { + "metadata": 3, + "displayName": "Light blue Wool" + }, + { + "metadata": 4, + "displayName": "Yellow Wool" + }, + { + "metadata": 5, + "displayName": "Lime Wool" + }, + { + "metadata": 6, + "displayName": "Pink Wool" + }, + { + "metadata": 7, + "displayName": "Gray Wool" + }, + { + "metadata": 8, + "displayName": "Light gray Wool" + }, + { + "metadata": 9, + "displayName": "Cyan Wool" + }, + { + "metadata": 10, + "displayName": "Purple Wool" + }, + { + "metadata": 11, + "displayName": "Blue Wool" + }, + { + "metadata": 12, + "displayName": "Brown Wool" + }, + { + "metadata": 13, + "displayName": "Green Wool" + }, + { + "metadata": 14, + "displayName": "Red Wool" + }, + { + "metadata": 15, + "displayName": "Black Wool" + } + ] + }, + { + "id": 37, + "displayName": "Dandelion", + "name": "yellow_flower", + "stackSize": 64 + }, + { + "id": 38, + "displayName": "Poppy", + "name": "red_flower", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Poppy" + }, + { + "metadata": 1, + "displayName": "Blue Orchid" + }, + { + "metadata": 2, + "displayName": "Allium" + }, + { + "metadata": 3, + "displayName": "Azure Bluet" + }, + { + "metadata": 4, + "displayName": "Red Tulip" + }, + { + "metadata": 5, + "displayName": "Orange Tulip" + }, + { + "metadata": 6, + "displayName": "White Tulip" + }, + { + "metadata": 7, + "displayName": "Pink Tulip" + }, + { + "metadata": 8, + "displayName": "Oxeye Daisy" + } + ] + }, + { + "id": 39, + "displayName": "Brown Mushroom", + "name": "brown_mushroom", + "stackSize": 64 + }, + { + "id": 40, + "displayName": "Red Mushroom", + "name": "red_mushroom", + "stackSize": 64 + }, + { + "id": 41, + "displayName": "Block of Gold", + "name": "gold_block", + "stackSize": 64 + }, + { + "id": 42, + "displayName": "Block of Iron", + "name": "iron_block", + "stackSize": 64 + }, + { + "id": 44, + "displayName": "Stone Slab", + "name": "stone_slab", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Stone Slab" + }, + { + "metadata": 1, + "displayName": "Sandstone Slab" + }, + { + "metadata": 2, + "displayName": "Wooden Slab" + }, + { + "metadata": 3, + "displayName": "Cobblestone Slab" + }, + { + "metadata": 4, + "displayName": "Bricks Slab" + }, + { + "metadata": 5, + "displayName": "Stone Bricks Slab" + }, + { + "metadata": 6, + "displayName": "Nether Brick Slab" + }, + { + "metadata": 7, + "displayName": "Quartz Slab" + } + ] + }, + { + "id": 45, + "displayName": "Brick", + "name": "brick_block", + "stackSize": 64 + }, + { + "id": 46, + "displayName": "TNT", + "name": "tnt", + "stackSize": 64 + }, + { + "id": 47, + "displayName": "Bookshelf", + "name": "bookshelf", + "stackSize": 64 + }, + { + "id": 48, + "displayName": "Moss Stone", + "name": "mossy_cobblestone", + "stackSize": 64 + }, + { + "id": 49, + "displayName": "Obsidian", + "name": "obsidian", + "stackSize": 64 + }, + { + "id": 50, + "displayName": "Torch", + "name": "torch", + "stackSize": 64 + }, + { + "id": 52, + "displayName": "Monster Spawner", + "name": "mob_spawner", + "stackSize": 64 + }, + { + "id": 53, + "displayName": "Oak Wood Stairs", + "name": "oak_stairs", + "stackSize": 64 + }, + { + "id": 54, + "displayName": "Chest", + "name": "chest", + "stackSize": 64 + }, + { + "id": 56, + "displayName": "Diamond Ore", + "name": "diamond_ore", + "stackSize": 64 + }, + { + "id": 57, + "displayName": "Block of Diamond", + "name": "diamond_block", + "stackSize": 64 + }, + { + "id": 58, + "displayName": "Crafting Table", + "name": "crafting_table", + "stackSize": 64 + }, + { + "id": 60, + "displayName": "Farmland", + "name": "farmland", + "stackSize": 64 + }, + { + "id": 61, + "displayName": "Furnace", + "name": "furnace", + "stackSize": 64 + }, + { + "id": 65, + "displayName": "Ladder", + "name": "ladder", + "stackSize": 64 + }, + { + "id": 66, + "displayName": "Rail", + "name": "rail", + "stackSize": 64 + }, + { + "id": 67, + "displayName": "Cobblestone Stairs", + "name": "stone_stairs", + "stackSize": 64 + }, + { + "id": 69, + "displayName": "Lever", + "name": "lever", + "stackSize": 64 + }, + { + "id": 70, + "displayName": "Stone Pressure Plate", + "name": "stone_pressure_plate", + "stackSize": 64 + }, + { + "id": 72, + "displayName": "Wooden Pressure Plate", + "name": "wooden_pressure_plate", + "stackSize": 64 + }, + { + "id": 73, + "displayName": "Redstone Ore", + "name": "redstone_ore", + "stackSize": 64 + }, + { + "id": 76, + "displayName": "Redstone Torch", + "name": "redstone_torch", + "stackSize": 64 + }, + { + "id": 77, + "displayName": "Stone Button", + "name": "stone_button", + "stackSize": 64 + }, + { + "id": 78, + "displayName": "Snow", + "name": "snow_layer", + "stackSize": 64 + }, + { + "id": 79, + "displayName": "Ice", + "name": "ice", + "stackSize": 64 + }, + { + "id": 80, + "displayName": "Snow", + "name": "snow", + "stackSize": 64 + }, + { + "id": 81, + "displayName": "Cactus", + "name": "cactus", + "stackSize": 64 + }, + { + "id": 82, + "displayName": "Clay", + "name": "clay", + "stackSize": 64 + }, + { + "id": 84, + "displayName": "Jukebox", + "name": "jukebox", + "stackSize": 64 + }, + { + "id": 85, + "displayName": "Oak Fence", + "name": "fence", + "stackSize": 64 + }, + { + "id": 86, + "displayName": "Pumpkin", + "name": "pumpkin", + "stackSize": 64 + }, + { + "id": 87, + "displayName": "Netherrack", + "name": "netherrack", + "stackSize": 64 + }, + { + "id": 88, + "displayName": "Soul Sand", + "name": "soul_sand", + "stackSize": 64 + }, + { + "id": 89, + "displayName": "Glowstone", + "name": "glowstone", + "stackSize": 64 + }, + { + "id": 91, + "displayName": "Jack o'Lantern", + "name": "lit_pumpkin", + "stackSize": 64 + }, + { + "id": 95, + "displayName": "Stained Glass", + "name": "stained_glass", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "White Stained Glass" + }, + { + "metadata": 1, + "displayName": "Orange Stained Glass" + }, + { + "metadata": 2, + "displayName": "Magenta Stained Glass" + }, + { + "metadata": 3, + "displayName": "Light Blue Stained Glass" + }, + { + "metadata": 4, + "displayName": "Yellow Stained Glass" + }, + { + "metadata": 5, + "displayName": "Lime Stained Glass" + }, + { + "metadata": 6, + "displayName": "Pink Stained Glass" + }, + { + "metadata": 7, + "displayName": "Gray Stained Glass" + }, + { + "metadata": 8, + "displayName": "Light Gray Stained Glass" + }, + { + "metadata": 9, + "displayName": "Cyan Stained Glass" + }, + { + "metadata": 10, + "displayName": "Purple Stained Glass" + }, + { + "metadata": 11, + "displayName": "Blue Stained Glass" + }, + { + "metadata": 12, + "displayName": "Brown Stained Glass" + }, + { + "metadata": 13, + "displayName": "Green Stained Glass" + }, + { + "metadata": 14, + "displayName": "Red Stained Glass" + }, + { + "metadata": 15, + "displayName": "Black Stained Glass" + } + ] + }, + { + "id": 96, + "displayName": "Wooden Trapdoor", + "name": "trapdoor", + "stackSize": 64 + }, + { + "id": 97, + "displayName": "Monster Egg", + "name": "monster_egg", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Stone Monster Egg" + }, + { + "metadata": 1, + "displayName": "Cobblestone Monster Egg" + }, + { + "metadata": 2, + "displayName": "Stone Brick Monster Egg" + }, + { + "metadata": 3, + "displayName": "Mossy Stone Brick Monster Egg" + }, + { + "metadata": 4, + "displayName": "Cracked Stone Brick Monster Egg" + }, + { + "metadata": 5, + "displayName": "Chiseled Stone Brick Monster Egg" + } + ] + }, + { + "id": 98, + "displayName": "Stone Bricks", + "name": "stonebrick", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Stone Bricks" + }, + { + "metadata": 1, + "displayName": "Mossy Stone Bricks" + }, + { + "metadata": 2, + "displayName": "Cracked Stone Bricks" + }, + { + "metadata": 3, + "displayName": "Chiseled Stone Bricks" + } + ] + }, + { + "id": 99, + "displayName": "Brown Mushroom Block", + "name": "brown_mushroom_block", + "stackSize": 64 + }, + { + "id": 100, + "displayName": "Red Mushroom Block", + "name": "red_mushroom_block", + "stackSize": 64 + }, + { + "id": 101, + "displayName": "Iron Bars", + "name": "iron_bars", + "stackSize": 64 + }, + { + "id": 102, + "displayName": "Glass Pane", + "name": "glass_pane", + "stackSize": 64 + }, + { + "id": 103, + "displayName": "Melon", + "name": "melon_block", + "stackSize": 64 + }, + { + "id": 106, + "displayName": "Vines", + "name": "vine", + "stackSize": 64 + }, + { + "id": 107, + "displayName": "Oak Fence Gate", + "name": "fence_gate", + "stackSize": 64 + }, + { + "id": 108, + "displayName": "Brick Stairs", + "name": "brick_stairs", + "stackSize": 64 + }, + { + "id": 109, + "displayName": "Stone Brick Stairs", + "name": "stone_brick_stairs", + "stackSize": 64 + }, + { + "id": 110, + "displayName": "Mycelium", + "name": "mycelium", + "stackSize": 64 + }, + { + "id": 111, + "displayName": "Lily Pad", + "name": "waterlily", + "stackSize": 64 + }, + { + "id": 112, + "displayName": "Nether Brick", + "name": "nether_brick", + "stackSize": 64 + }, + { + "id": 113, + "displayName": "Nether Brick Fence", + "name": "nether_brick_fence", + "stackSize": 64 + }, + { + "id": 114, + "displayName": "Nether Brick Stairs", + "name": "nether_brick_stairs", + "stackSize": 64 + }, + { + "id": 116, + "displayName": "Enchantment Table", + "name": "enchanting_table", + "stackSize": 64 + }, + { + "id": 120, + "displayName": "End Portal Frame", + "name": "end_portal_frame", + "stackSize": 64 + }, + { + "id": 121, + "displayName": "End Stone", + "name": "end_stone", + "stackSize": 64 + }, + { + "id": 122, + "displayName": "Dragon Egg", + "name": "dragon_egg", + "stackSize": 64 + }, + { + "id": 123, + "displayName": "Redstone Lamp", + "name": "redstone_lamp", + "stackSize": 64 + }, + { + "id": 126, + "displayName": "Wood Slab", + "name": "wooden_slab", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Oak Wood Slab" + }, + { + "metadata": 1, + "displayName": "Spruce Wood Slab" + }, + { + "metadata": 2, + "displayName": "Birch Wood Slab" + }, + { + "metadata": 3, + "displayName": "Jungle Wood Slab" + }, + { + "metadata": 4, + "displayName": "Acacia Wood Slab" + }, + { + "metadata": 5, + "displayName": "Dark Oak Wood Slab" + } + ] + }, + { + "id": 128, + "displayName": "Sandstone Stairs", + "name": "sandstone_stairs", + "stackSize": 64 + }, + { + "id": 129, + "displayName": "Emerald Ore", + "name": "emerald_ore", + "stackSize": 64 + }, + { + "id": 130, + "displayName": "Ender Chest", + "name": "ender_chest", + "stackSize": 64 + }, + { + "id": 131, + "displayName": "Tripwire Hook", + "name": "tripwire_hook", + "stackSize": 64 + }, + { + "id": 133, + "displayName": "Block of Emerald", + "name": "emerald_block", + "stackSize": 64 + }, + { + "id": 134, + "displayName": "Spruce Wood Stairs", + "name": "spruce_stairs", + "stackSize": 64 + }, + { + "id": 135, + "displayName": "Birch Wood Stairs", + "name": "birch_stairs", + "stackSize": 64 + }, + { + "id": 136, + "displayName": "Jungle Wood Stairs", + "name": "jungle_stairs", + "stackSize": 64 + }, + { + "id": 137, + "displayName": "Command Block", + "name": "command_block", + "stackSize": 64 + }, + { + "id": 138, + "displayName": "Beacon", + "name": "beacon", + "stackSize": 64 + }, + { + "id": 139, + "displayName": "Cobblestone Wall", + "name": "cobblestone_wall", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Cobblestone Wall" + }, + { + "metadata": 1, + "displayName": "Mossy Cobblestone Wall" + } + ] + }, + { + "id": 143, + "displayName": "Wooden Button", + "name": "wooden_button", + "stackSize": 64 + }, + { + "id": 145, + "displayName": "Anvil", + "name": "anvil", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Anvil" + }, + { + "metadata": 1, + "displayName": "Slightly Damaged Anvil" + }, + { + "metadata": 2, + "displayName": "Very Damaged Anvil" + } + ] + }, + { + "id": 146, + "displayName": "Trapped Chest", + "name": "trapped_chest", + "stackSize": 64 + }, + { + "id": 147, + "displayName": "Weighted Pressure Plate (Light)", + "name": "light_weighted_pressure_plate", + "stackSize": 64 + }, + { + "id": 148, + "displayName": "Weighted Pressure Plate (Heavy)", + "name": "heavy_weighted_pressure_plate", + "stackSize": 64 + }, + { + "id": 151, + "displayName": "Daylight Detector", + "name": "daylight_detector", + "stackSize": 64 + }, + { + "id": 152, + "displayName": "Block of Redstone", + "name": "redstone_block", + "stackSize": 64 + }, + { + "id": 153, + "displayName": "Nether Quartz", + "name": "quartz_ore", + "stackSize": 64 + }, + { + "id": 154, + "displayName": "Hopper", + "name": "hopper", + "stackSize": 64 + }, + { + "id": 155, + "displayName": "Block of Quartz", + "name": "quartz_block", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Block of Quartz" + }, + { + "metadata": 1, + "displayName": "Chiseled Quartz Block" + }, + { + "metadata": 2, + "displayName": "Pillar Quartz Block" + } + ] + }, + { + "id": 156, + "displayName": "Quartz Stairs", + "name": "quartz_stairs", + "stackSize": 64 + }, + { + "id": 157, + "displayName": "Activator Rail", + "name": "activator_rail", + "stackSize": 64 + }, + { + "id": 158, + "displayName": "Dropper", + "name": "dropper", + "stackSize": 64 + }, + { + "id": 159, + "displayName": "Stained Clay", + "name": "stained_hardened_clay", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "White Stained Clay" + }, + { + "metadata": 1, + "displayName": "Orange Stained Clay" + }, + { + "metadata": 2, + "displayName": "Magenta Stained Clay" + }, + { + "metadata": 3, + "displayName": "Light Blue Stained Clay" + }, + { + "metadata": 4, + "displayName": "Yellow Stained Clay" + }, + { + "metadata": 5, + "displayName": "Lime Stained Clay" + }, + { + "metadata": 6, + "displayName": "Pink Stained Clay" + }, + { + "metadata": 7, + "displayName": "Gray Stained Clay" + }, + { + "metadata": 8, + "displayName": "Light Gray Stained Clay" + }, + { + "metadata": 9, + "displayName": "Cyan Stained Clay" + }, + { + "metadata": 10, + "displayName": "Purple Stained Clay" + }, + { + "metadata": 11, + "displayName": "Blue Stained Clay" + }, + { + "metadata": 12, + "displayName": "Brown Stained Clay" + }, + { + "metadata": 13, + "displayName": "Green Stained Clay" + }, + { + "metadata": 14, + "displayName": "Red Stained Clay" + }, + { + "metadata": 15, + "displayName": "Black Stained Clay" + } + ] + }, + { + "id": 160, + "displayName": "Stained Glass Pane", + "name": "stained_glass_pane", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "White Stained Glass Pane" + }, + { + "metadata": 1, + "displayName": "Orange Stained Glass Pane" + }, + { + "metadata": 2, + "displayName": "Magenta Stained Glass Pane" + }, + { + "metadata": 3, + "displayName": "Light Blue Stained Glass Pane" + }, + { + "metadata": 4, + "displayName": "Yellow Stained Glass Pane" + }, + { + "metadata": 5, + "displayName": "Lime Stained Glass Pane" + }, + { + "metadata": 6, + "displayName": "Pink Stained Glass Pane" + }, + { + "metadata": 7, + "displayName": "Gray Stained Glass Pane" + }, + { + "metadata": 8, + "displayName": "Light Gray Stained Glass Pane" + }, + { + "metadata": 9, + "displayName": "Cyan Stained Glass Pane" + }, + { + "metadata": 10, + "displayName": "Purple Stained Glass Pane" + }, + { + "metadata": 11, + "displayName": "Blue Stained Glass Pane" + }, + { + "metadata": 12, + "displayName": "Brown Stained Glass Pane" + }, + { + "metadata": 13, + "displayName": "Green Stained Glass Pane" + }, + { + "metadata": 14, + "displayName": "Red Stained Glass Pane" + }, + { + "metadata": 15, + "displayName": "Black Stained Glass Pane" + } + ] + }, + { + "id": 161, + "displayName": "Leaves", + "name": "leaves2", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Acacia Leaves" + }, + { + "metadata": 1, + "displayName": "Dark Oak Leaves" + } + ] + }, + { + "id": 162, + "displayName": "Wood", + "name": "log2", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Acacia Wood" + }, + { + "metadata": 1, + "displayName": "Dark Oak Wood" + } + ] + }, + { + "id": 163, + "displayName": "Acacia Wood Stairs", + "name": "acacia_stairs", + "stackSize": 64 + }, + { + "id": 164, + "displayName": "Dark Oak Wood Stairs", + "name": "dark_oak_stairs", + "stackSize": 64 + }, + { + "id": 165, + "displayName": "Slime Block", + "name": "slime", + "stackSize": 64 + }, + { + "id": 166, + "displayName": "Barrier", + "name": "barrier", + "stackSize": 64 + }, + { + "id": 167, + "displayName": "Iron Trapdoor", + "name": "iron_trapdoor", + "stackSize": 64 + }, + { + "id": 168, + "displayName": "Prismarine", + "name": "prismarine", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Prismarine" + }, + { + "metadata": 1, + "displayName": "Prismarine Bricks" + }, + { + "metadata": 2, + "displayName": "Dark Prismarine" + } + ] + }, + { + "id": 169, + "displayName": "Sea Lantern", + "name": "sea_lantern", + "stackSize": 64 + }, + { + "id": 170, + "displayName": "Hay Bale", + "name": "hay_block", + "stackSize": 64 + }, + { + "id": 171, + "displayName": "Carpet", + "name": "carpet", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "White Carpet" + }, + { + "metadata": 1, + "displayName": "Orange Carpet" + }, + { + "metadata": 2, + "displayName": "Magenta Carpet" + }, + { + "metadata": 3, + "displayName": "Light Blue Carpet" + }, + { + "metadata": 4, + "displayName": "Yellow Carpet" + }, + { + "metadata": 5, + "displayName": "Lime Carpet" + }, + { + "metadata": 6, + "displayName": "Pink Carpet" + }, + { + "metadata": 7, + "displayName": "Gray Carpet" + }, + { + "metadata": 8, + "displayName": "Light Gray Carpet" + }, + { + "metadata": 9, + "displayName": "Cyan Carpet" + }, + { + "metadata": 10, + "displayName": "Purple Carpet" + }, + { + "metadata": 11, + "displayName": "Blue Carpet" + }, + { + "metadata": 12, + "displayName": "Brown Carpet" + }, + { + "metadata": 13, + "displayName": "Green Carpet" + }, + { + "metadata": 14, + "displayName": "Red Carpet" + }, + { + "metadata": 15, + "displayName": "Black Carpet" + } + ] + }, + { + "id": 172, + "displayName": "Hardened Clay", + "name": "hardened_clay", + "stackSize": 64 + }, + { + "id": 173, + "displayName": "Block of Coal", + "name": "coal_block", + "stackSize": 64 + }, + { + "id": 174, + "displayName": "Packed Ice", + "name": "packed_ice", + "stackSize": 64 + }, + { + "id": 175, + "displayName": "Large Flowers", + "name": "double_plant", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Sunflower" + }, + { + "metadata": 1, + "displayName": "Lilac" + }, + { + "metadata": 2, + "displayName": "Double Tallgrass" + }, + { + "metadata": 3, + "displayName": "Large Fern" + }, + { + "metadata": 4, + "displayName": "Rose Bush" + }, + { + "metadata": 5, + "displayName": "Peony" + } + ] + }, + { + "id": 179, + "displayName": "Red Sandstone", + "name": "red_sandstone", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Red Sandstone" + }, + { + "metadata": 1, + "displayName": "Chiseled Red Sandstone" + }, + { + "metadata": 2, + "displayName": "Smooth Red Sandstone" + } + ] + }, + { + "id": 180, + "displayName": "Red Sandstone Stairs", + "name": "red_sandstone_stairs", + "stackSize": 64 + }, + { + "id": 182, + "displayName": "Red Sandstone Slab", + "name": "stone_slab2", + "stackSize": 64 + }, + { + "id": 183, + "displayName": "Spruce Fence Gate", + "name": "spruce_fence_gate", + "stackSize": 64 + }, + { + "id": 184, + "displayName": "Birch Fence Gate", + "name": "birch_fence_gate", + "stackSize": 64 + }, + { + "id": 185, + "displayName": "Jungle Fence Gate", + "name": "jungle_fence_gate", + "stackSize": 64 + }, + { + "id": 186, + "displayName": "Dark Oak Fence Gate", + "name": "dark_oak_fence_gate", + "stackSize": 64 + }, + { + "id": 187, + "displayName": "Acacia Fence Gate", + "name": "acacia_fence_gate", + "stackSize": 64 + }, + { + "id": 188, + "displayName": "Spruce Fence", + "name": "spruce_fence", + "stackSize": 64 + }, + { + "id": 189, + "displayName": "Birch Fence", + "name": "birch_fence", + "stackSize": 64 + }, + { + "id": 190, + "displayName": "Jungle Fence", + "name": "jungle_fence", + "stackSize": 64 + }, + { + "id": 191, + "displayName": "Dark Oak Fence", + "name": "dark_oak_fence", + "stackSize": 64 + }, + { + "id": 192, + "displayName": "Acacia Fence", + "name": "acacia_fence", + "stackSize": 64 + }, + { + "id": 256, + "displayName": "Iron Shovel", + "name": "iron_shovel", + "stackSize": 1, + "maxDurability": 250, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 257, + "displayName": "Iron Pickaxe", + "name": "iron_pickaxe", + "stackSize": 1, + "maxDurability": 250, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 258, + "displayName": "Iron Axe", + "name": "iron_axe", + "stackSize": 1, + "maxDurability": 250, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 259, + "displayName": "Flint and Steel", + "name": "flint_and_steel", + "stackSize": 1, + "maxDurability": 64, + "enchantCategories": [ + "breakable", + "vanishable" + ] + }, + { + "id": 260, + "displayName": "Apple", + "name": "apple", + "stackSize": 64 + }, + { + "id": 261, + "displayName": "Bow", + "name": "bow", + "stackSize": 1, + "maxDurability": 384, + "enchantCategories": [ + "breakable", + "bow", + "vanishable" + ] + }, + { + "id": 262, + "displayName": "Arrow", + "name": "arrow", + "stackSize": 64 + }, + { + "id": 263, + "displayName": "Coal", + "name": "coal", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Coal" + }, + { + "metadata": 1, + "displayName": "Charcoal" + } + ] + }, + { + "id": 264, + "displayName": "Diamond", + "name": "diamond", + "stackSize": 64 + }, + { + "id": 265, + "displayName": "Iron Ingot", + "name": "iron_ingot", + "stackSize": 64 + }, + { + "id": 266, + "displayName": "Gold Ingot", + "name": "gold_ingot", + "stackSize": 64 + }, + { + "id": 267, + "displayName": "Iron Sword", + "name": "iron_sword", + "stackSize": 1, + "maxDurability": 250, + "enchantCategories": [ + "weapon", + "breakable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 268, + "displayName": "Wooden Sword", + "name": "wooden_sword", + "stackSize": 1, + "maxDurability": 59, + "enchantCategories": [ + "weapon", + "breakable", + "vanishable" + ], + "repairWith": [ + "oak_planks", + "spruce_planks", + "birch_planks", + "jungle_planks", + "acacia_planks", + "dark_oak_planks", + "crimson_planks", + "warped_planks" + ] + }, + { + "id": 269, + "displayName": "Wooden Shovel", + "name": "wooden_shovel", + "stackSize": 1, + "maxDurability": 59, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "oak_planks", + "spruce_planks", + "birch_planks", + "jungle_planks", + "acacia_planks", + "dark_oak_planks", + "crimson_planks", + "warped_planks" + ] + }, + { + "id": 270, + "displayName": "Wooden Pickaxe", + "name": "wooden_pickaxe", + "stackSize": 1, + "maxDurability": 59, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "oak_planks", + "spruce_planks", + "birch_planks", + "jungle_planks", + "acacia_planks", + "dark_oak_planks", + "crimson_planks", + "warped_planks" + ] + }, + { + "id": 271, + "displayName": "Wooden Axe", + "name": "wooden_axe", + "stackSize": 1, + "maxDurability": 59, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "oak_planks", + "spruce_planks", + "birch_planks", + "jungle_planks", + "acacia_planks", + "dark_oak_planks", + "crimson_planks", + "warped_planks" + ] + }, + { + "id": 272, + "displayName": "Stone Sword", + "name": "stone_sword", + "stackSize": 1, + "maxDurability": 131, + "enchantCategories": [ + "weapon", + "breakable", + "vanishable" + ], + "repairWith": [ + "cobblestone", + "blackstone" + ] + }, + { + "id": 273, + "displayName": "Stone Shovel", + "name": "stone_shovel", + "stackSize": 1, + "maxDurability": 131, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "cobblestone", + "blackstone" + ] + }, + { + "id": 274, + "displayName": "Stone Pickaxe", + "name": "stone_pickaxe", + "stackSize": 1, + "maxDurability": 131, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "cobblestone", + "blackstone" + ] + }, + { + "id": 275, + "displayName": "Stone Axe", + "name": "stone_axe", + "stackSize": 1, + "maxDurability": 131, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "cobblestone", + "blackstone" + ] + }, + { + "id": 276, + "displayName": "Diamond Sword", + "name": "diamond_sword", + "stackSize": 1, + "maxDurability": 1561, + "enchantCategories": [ + "weapon", + "breakable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 277, + "displayName": "Diamond Shovel", + "name": "diamond_shovel", + "stackSize": 1, + "maxDurability": 1561, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 278, + "displayName": "Diamond Pickaxe", + "name": "diamond_pickaxe", + "stackSize": 1, + "maxDurability": 1561, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 279, + "displayName": "Diamond Axe", + "name": "diamond_axe", + "stackSize": 1, + "maxDurability": 1561, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 280, + "displayName": "Stick", + "name": "stick", + "stackSize": 64 + }, + { + "id": 281, + "displayName": "Bowl", + "name": "bowl", + "stackSize": 64 + }, + { + "id": 282, + "displayName": "Mushroom Stew", + "name": "mushroom_stew", + "stackSize": 1 + }, + { + "id": 283, + "displayName": "Golden Sword", + "name": "golden_sword", + "stackSize": 1, + "maxDurability": 32, + "enchantCategories": [ + "weapon", + "breakable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 284, + "displayName": "Golden Shovel", + "name": "golden_shovel", + "stackSize": 1, + "maxDurability": 32, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 285, + "displayName": "Golden Pickaxe", + "name": "golden_pickaxe", + "stackSize": 1, + "maxDurability": 32, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 286, + "displayName": "Golden Axe", + "name": "golden_axe", + "stackSize": 1, + "maxDurability": 32, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 287, + "displayName": "String", + "name": "string", + "stackSize": 64 + }, + { + "id": 288, + "displayName": "Feather", + "name": "feather", + "stackSize": 64 + }, + { + "id": 289, + "displayName": "Gunpowder", + "name": "gunpowder", + "stackSize": 64 + }, + { + "id": 290, + "displayName": "Wooden Hoe", + "name": "wooden_hoe", + "stackSize": 1, + "maxDurability": 59, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "oak_planks", + "spruce_planks", + "birch_planks", + "jungle_planks", + "acacia_planks", + "dark_oak_planks", + "crimson_planks", + "warped_planks" + ] + }, + { + "id": 291, + "displayName": "Stone Hoe", + "name": "stone_hoe", + "stackSize": 1, + "maxDurability": 131, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "cobblestone", + "blackstone" + ] + }, + { + "id": 292, + "displayName": "Iron Hoe", + "name": "iron_hoe", + "stackSize": 1, + "maxDurability": 250, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 293, + "displayName": "Diamond Hoe", + "name": "diamond_hoe", + "stackSize": 1, + "maxDurability": 1561, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 294, + "displayName": "Golden Hoe", + "name": "golden_hoe", + "stackSize": 1, + "maxDurability": 32, + "enchantCategories": [ + "digger", + "breakable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 295, + "displayName": "Seeds", + "name": "wheat_seeds", + "stackSize": 64 + }, + { + "id": 296, + "displayName": "Wheat", + "name": "wheat", + "stackSize": 64 + }, + { + "id": 297, + "displayName": "Bread", + "name": "bread", + "stackSize": 64 + }, + { + "id": 298, + "displayName": "Leather Cap", + "name": "leather_helmet", + "stackSize": 1, + "maxDurability": 55, + "enchantCategories": [ + "armor", + "armor_head", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "leather" + ] + }, + { + "id": 299, + "displayName": "Leather Tunic", + "name": "leather_chestplate", + "stackSize": 1, + "maxDurability": 80, + "enchantCategories": [ + "armor", + "armor_chest", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "leather" + ] + }, + { + "id": 300, + "displayName": "Leather Pants", + "name": "leather_leggings", + "stackSize": 1, + "maxDurability": 75, + "enchantCategories": [ + "armor", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "leather" + ] + }, + { + "id": 301, + "displayName": "Leather Boots", + "name": "leather_boots", + "stackSize": 1, + "maxDurability": 65, + "enchantCategories": [ + "armor", + "armor_feet", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "leather" + ] + }, + { + "id": 302, + "displayName": "Chain Helmet", + "name": "chainmail_helmet", + "stackSize": 1, + "maxDurability": 165, + "enchantCategories": [ + "armor", + "armor_head", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 303, + "displayName": "Chain Chestplate", + "name": "chainmail_chestplate", + "stackSize": 1, + "maxDurability": 240, + "enchantCategories": [ + "armor", + "armor_chest", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 304, + "displayName": "Chain Leggings", + "name": "chainmail_leggings", + "stackSize": 1, + "maxDurability": 225, + "enchantCategories": [ + "armor", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 305, + "displayName": "Chain Boots", + "name": "chainmail_boots", + "stackSize": 1, + "maxDurability": 195, + "enchantCategories": [ + "armor", + "armor_feet", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 306, + "displayName": "Iron Helmet", + "name": "iron_helmet", + "stackSize": 1, + "maxDurability": 165, + "enchantCategories": [ + "armor", + "armor_head", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 307, + "displayName": "Iron Chestplate", + "name": "iron_chestplate", + "stackSize": 1, + "maxDurability": 240, + "enchantCategories": [ + "armor", + "armor_chest", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 308, + "displayName": "Iron Leggings", + "name": "iron_leggings", + "stackSize": 1, + "maxDurability": 225, + "enchantCategories": [ + "armor", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 309, + "displayName": "Iron Boots", + "name": "iron_boots", + "stackSize": 1, + "maxDurability": 195, + "enchantCategories": [ + "armor", + "armor_feet", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "iron_ingot" + ] + }, + { + "id": 310, + "displayName": "Diamond Helmet", + "name": "diamond_helmet", + "stackSize": 1, + "maxDurability": 363, + "enchantCategories": [ + "armor", + "armor_head", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 311, + "displayName": "Diamond Chestplate", + "name": "diamond_chestplate", + "stackSize": 1, + "maxDurability": 528, + "enchantCategories": [ + "armor", + "armor_chest", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 312, + "displayName": "Diamond Leggings", + "name": "diamond_leggings", + "stackSize": 1, + "maxDurability": 495, + "enchantCategories": [ + "armor", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 313, + "displayName": "Diamond Boots", + "name": "diamond_boots", + "stackSize": 1, + "maxDurability": 429, + "enchantCategories": [ + "armor", + "armor_feet", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "diamond" + ] + }, + { + "id": 314, + "displayName": "Golden Helmet", + "name": "golden_helmet", + "stackSize": 1, + "maxDurability": 77, + "enchantCategories": [ + "armor", + "armor_head", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 315, + "displayName": "Golden Chestplate", + "name": "golden_chestplate", + "stackSize": 1, + "maxDurability": 112, + "enchantCategories": [ + "armor", + "armor_chest", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 316, + "displayName": "Golden Leggings", + "name": "golden_leggings", + "stackSize": 1, + "maxDurability": 105, + "enchantCategories": [ + "armor", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 317, + "displayName": "Golden Boots", + "name": "golden_boots", + "stackSize": 1, + "maxDurability": 91, + "enchantCategories": [ + "armor", + "armor_feet", + "breakable", + "wearable", + "vanishable" + ], + "repairWith": [ + "gold_ingot" + ] + }, + { + "id": 318, + "displayName": "Flint", + "name": "flint", + "stackSize": 64 + }, + { + "id": 319, + "displayName": "Raw Porkchop", + "name": "porkchop", + "stackSize": 64 + }, + { + "id": 320, + "displayName": "Cooked Porkchop", + "name": "cooked_porkchop", + "stackSize": 64 + }, + { + "id": 321, + "displayName": "Painting", + "name": "painting", + "stackSize": 64 + }, + { + "id": 322, + "displayName": "Golden Apple", + "name": "golden_apple", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Golden Apple" + }, + { + "metadata": 1, + "displayName": "Enchanted Golden Apple" + } + ] + }, + { + "id": 323, + "displayName": "Sign", + "name": "sign", + "stackSize": 16 + }, + { + "id": 324, + "displayName": "Oak Door", + "name": "wooden_door", + "stackSize": 64 + }, + { + "id": 325, + "displayName": "Bucket", + "name": "bucket", + "stackSize": 16 + }, + { + "id": 326, + "displayName": "Water Bucket", + "name": "water_bucket", + "stackSize": 1 + }, + { + "id": 327, + "displayName": "Lava Bucket", + "name": "lava_bucket", + "stackSize": 1 + }, + { + "id": 328, + "displayName": "Minecart", + "name": "minecart", + "stackSize": 1 + }, + { + "id": 329, + "displayName": "Saddle", + "name": "saddle", + "stackSize": 1 + }, + { + "id": 330, + "displayName": "Iron Door", + "name": "iron_door", + "stackSize": 64 + }, + { + "id": 331, + "displayName": "Redstone", + "name": "redstone", + "stackSize": 64 + }, + { + "id": 332, + "displayName": "Snowball", + "name": "snowball", + "stackSize": 16 + }, + { + "id": 333, + "displayName": "Boat", + "name": "boat", + "stackSize": 1 + }, + { + "id": 334, + "displayName": "Leather", + "name": "leather", + "stackSize": 64 + }, + { + "id": 335, + "displayName": "Milk", + "name": "milk_bucket", + "stackSize": 1 + }, + { + "id": 336, + "displayName": "Brick", + "name": "brick", + "stackSize": 64 + }, + { + "id": 337, + "displayName": "Clay", + "name": "clay_ball", + "stackSize": 64 + }, + { + "id": 338, + "displayName": "Sugar Canes", + "name": "reeds", + "stackSize": 64 + }, + { + "id": 339, + "displayName": "Paper", + "name": "paper", + "stackSize": 64 + }, + { + "id": 340, + "displayName": "Book", + "name": "book", + "stackSize": 64 + }, + { + "id": 341, + "displayName": "Slimeball", + "name": "slime_ball", + "stackSize": 64 + }, + { + "id": 342, + "displayName": "Minecart with Chest", + "name": "chest_minecart", + "stackSize": 1 + }, + { + "id": 343, + "displayName": "Minecart with Furnace", + "name": "furnace_minecart", + "stackSize": 1 + }, + { + "id": 344, + "displayName": "Egg", + "name": "egg", + "stackSize": 16 + }, + { + "id": 345, + "displayName": "Compass", + "name": "compass", + "stackSize": 64 + }, + { + "id": 346, + "displayName": "Fishing Rod", + "name": "fishing_rod", + "stackSize": 1, + "maxDurability": 64, + "enchantCategories": [ + "breakable", + "fishing_rod", + "vanishable" + ] + }, + { + "id": 347, + "displayName": "Clock", + "name": "clock", + "stackSize": 64 + }, + { + "id": 348, + "displayName": "Glowstone Dust", + "name": "glowstone_dust", + "stackSize": 64 + }, + { + "id": 349, + "displayName": "Fish", + "name": "fish", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Raw Fish" + }, + { + "metadata": 1, + "displayName": "Raw Salmon" + }, + { + "metadata": 2, + "displayName": "Clownfish" + }, + { + "metadata": 3, + "displayName": "Pufferfish" + } + ] + }, + { + "id": 350, + "displayName": "Cooked Fish", + "name": "cooked_fish", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Cooked Fish" + }, + { + "metadata": 1, + "displayName": "Cooked Salmon" + } + ] + }, + { + "id": 351, + "displayName": "Dye", + "name": "dye", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Ink Sac" + }, + { + "metadata": 1, + "displayName": "Rose Red" + }, + { + "metadata": 2, + "displayName": "Cactus Green" + }, + { + "metadata": 3, + "displayName": "Cocoa Beans" + }, + { + "metadata": 4, + "displayName": "Lapis Lazuli" + }, + { + "metadata": 5, + "displayName": "Purple Dye" + }, + { + "metadata": 6, + "displayName": "Cyan Dye" + }, + { + "metadata": 7, + "displayName": "Light Gray Dye" + }, + { + "metadata": 8, + "displayName": "Gray Dye" + }, + { + "metadata": 9, + "displayName": "Pink Dye" + }, + { + "metadata": 10, + "displayName": "Lime Dye" + }, + { + "metadata": 11, + "displayName": "Dandelion Yellow" + }, + { + "metadata": 12, + "displayName": "Light Blue Dye" + }, + { + "metadata": 13, + "displayName": "Magenta Dye" + }, + { + "metadata": 14, + "displayName": "Orange Dye" + }, + { + "metadata": 15, + "displayName": "Bone Meal" + } + ] + }, + { + "id": 352, + "displayName": "Bone", + "name": "bone", + "stackSize": 64 + }, + { + "id": 353, + "displayName": "Sugar", + "name": "sugar", + "stackSize": 64 + }, + { + "id": 354, + "displayName": "Cake", + "name": "cake", + "stackSize": 1 + }, + { + "id": 355, + "displayName": "Bed", + "name": "bed", + "stackSize": 1 + }, + { + "id": 356, + "displayName": "Redstone Repeater", + "name": "repeater", + "stackSize": 64 + }, + { + "id": 357, + "displayName": "Cookie", + "name": "cookie", + "stackSize": 64 + }, + { + "id": 358, + "displayName": "Map", + "name": "filled_map", + "stackSize": 64 + }, + { + "id": 359, + "displayName": "Shears", + "name": "shears", + "stackSize": 1, + "maxDurability": 238, + "enchantCategories": [ + "breakable", + "vanishable" + ] + }, + { + "id": 360, + "displayName": "Melon", + "name": "melon", + "stackSize": 64 + }, + { + "id": 361, + "displayName": "Pumpkin Seeds", + "name": "pumpkin_seeds", + "stackSize": 64 + }, + { + "id": 362, + "displayName": "Melon Seeds", + "name": "melon_seeds", + "stackSize": 64 + }, + { + "id": 363, + "displayName": "Raw Beef", + "name": "beef", + "stackSize": 64 + }, + { + "id": 364, + "displayName": "Steak", + "name": "cooked_beef", + "stackSize": 64 + }, + { + "id": 365, + "displayName": "Raw Chicken", + "name": "chicken", + "stackSize": 64 + }, + { + "id": 366, + "displayName": "Cooked Chicken", + "name": "cooked_chicken", + "stackSize": 64 + }, + { + "id": 367, + "displayName": "Rotten Flesh", + "name": "rotten_flesh", + "stackSize": 64 + }, + { + "id": 368, + "displayName": "Ender Pearl", + "name": "ender_pearl", + "stackSize": 16 + }, + { + "id": 369, + "displayName": "Blaze Rod", + "name": "blaze_rod", + "stackSize": 64 + }, + { + "id": 370, + "displayName": "Ghast Tear", + "name": "ghast_tear", + "stackSize": 64 + }, + { + "id": 371, + "displayName": "Gold Nugget", + "name": "gold_nugget", + "stackSize": 64 + }, + { + "id": 372, + "displayName": "Nether Wart", + "name": "nether_wart", + "stackSize": 64 + }, + { + "id": 373, + "displayName": "Potion", + "name": "potion", + "stackSize": 1 + }, + { + "id": 374, + "displayName": "Glass Bottle", + "name": "glass_bottle", + "stackSize": 64 + }, + { + "id": 375, + "displayName": "Spider Eye", + "name": "spider_eye", + "stackSize": 64 + }, + { + "id": 376, + "displayName": "Fermented Spider Eye", + "name": "fermented_spider_eye", + "stackSize": 64 + }, + { + "id": 377, + "displayName": "Blaze Powder", + "name": "blaze_powder", + "stackSize": 64 + }, + { + "id": 378, + "displayName": "Magma Cream", + "name": "magma_cream", + "stackSize": 64 + }, + { + "id": 379, + "displayName": "Brewing Stand", + "name": "brewing_stand", + "stackSize": 64 + }, + { + "id": 380, + "displayName": "Cauldron", + "name": "cauldron", + "stackSize": 64 + }, + { + "id": 381, + "displayName": "Eye of Ender", + "name": "ender_eye", + "stackSize": 64 + }, + { + "id": 382, + "displayName": "Glistering Melon", + "name": "speckled_melon", + "stackSize": 64 + }, + { + "id": 383, + "displayName": "Spawn Egg", + "name": "spawn_egg", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Spawn" + }, + { + "metadata": 1, + "displayName": "Spawn Dropped item" + }, + { + "metadata": 7, + "displayName": "Spawn Thrown egg" + }, + { + "metadata": 8, + "displayName": "Spawn Lead knot" + }, + { + "metadata": 10, + "displayName": "Spawn Shot arrow" + }, + { + "metadata": 11, + "displayName": "Spawn Thrown snowball" + }, + { + "metadata": 12, + "displayName": "Spawn Ghast fireball" + }, + { + "metadata": 13, + "displayName": "Spawn Blaze fireball" + }, + { + "metadata": 14, + "displayName": "Spawn Thrown Ender Pearl" + }, + { + "metadata": 15, + "displayName": "Spawn Thrown Eye of Ender" + }, + { + "metadata": 16, + "displayName": "Spawn Thrown splash potion" + }, + { + "metadata": 17, + "displayName": "Spawn Thrown Bottle o' Enchanting" + }, + { + "metadata": 18, + "displayName": "Spawn Item Frame" + }, + { + "metadata": 19, + "displayName": "Spawn Wither Skull" + }, + { + "metadata": 20, + "displayName": "Spawn Primed TNT" + }, + { + "metadata": 21, + "displayName": "Spawn Falling block" + }, + { + "metadata": 21, + "displayName": "Spawn Falling block" + }, + { + "metadata": 22, + "displayName": "Spawn Firework Rocket" + }, + { + "metadata": 30, + "displayName": "Spawn Armor Stand" + }, + { + "metadata": 41, + "displayName": "Spawn Boat" + }, + { + "metadata": 42, + "displayName": "Spawn Minecart" + }, + { + "metadata": 42, + "displayName": "Spawn Minecart" + }, + { + "metadata": 42, + "displayName": "Spawn Minecart" + }, + { + "metadata": 48, + "displayName": "Spawn Mob" + }, + { + "metadata": 49, + "displayName": "Spawn Monster" + }, + { + "metadata": 50, + "displayName": "Spawn Creeper" + }, + { + "metadata": 51, + "displayName": "Spawn Skeleton" + }, + { + "metadata": 52, + "displayName": "Spawn Spider" + }, + { + "metadata": 53, + "displayName": "Spawn Giant" + }, + { + "metadata": 54, + "displayName": "Spawn Zombie" + }, + { + "metadata": 55, + "displayName": "Spawn Slime" + }, + { + "metadata": 56, + "displayName": "Spawn Ghast" + }, + { + "metadata": 57, + "displayName": "Spawn Zombie Pigman" + }, + { + "metadata": 58, + "displayName": "Spawn Enderman" + }, + { + "metadata": 59, + "displayName": "Spawn Cave Spider" + }, + { + "metadata": 60, + "displayName": "Spawn Silverfish" + }, + { + "metadata": 61, + "displayName": "Spawn Blaze" + }, + { + "metadata": 62, + "displayName": "Spawn Magma Cube" + }, + { + "metadata": 63, + "displayName": "Spawn Ender Dragon" + }, + { + "metadata": 64, + "displayName": "Spawn Wither" + }, + { + "metadata": 65, + "displayName": "Spawn Bat" + }, + { + "metadata": 66, + "displayName": "Spawn Witch" + }, + { + "metadata": 67, + "displayName": "Spawn Endermite" + }, + { + "metadata": 68, + "displayName": "Spawn Guardian" + }, + { + "metadata": 90, + "displayName": "Spawn Pig" + }, + { + "metadata": 91, + "displayName": "Spawn Sheep" + }, + { + "metadata": 92, + "displayName": "Spawn Cow" + }, + { + "metadata": 93, + "displayName": "Spawn Chicken" + }, + { + "metadata": 94, + "displayName": "Spawn Squid" + }, + { + "metadata": 95, + "displayName": "Spawn Wolf" + }, + { + "metadata": 96, + "displayName": "Spawn Mooshroom" + }, + { + "metadata": 97, + "displayName": "Spawn Snow Golem" + }, + { + "metadata": 98, + "displayName": "Spawn Ocelot" + }, + { + "metadata": 99, + "displayName": "Spawn Iron Golem" + }, + { + "metadata": 100, + "displayName": "Spawn Horse" + }, + { + "metadata": 101, + "displayName": "Spawn Rabbit" + }, + { + "metadata": 120, + "displayName": "Spawn Villager" + }, + { + "metadata": 200, + "displayName": "Spawn Ender Crystal" + } + ] + }, + { + "id": 384, + "displayName": "Bottle o' Enchanting", + "name": "experience_bottle", + "stackSize": 64 + }, + { + "id": 385, + "displayName": "Fire Charge", + "name": "fire_charge", + "stackSize": 64 + }, + { + "id": 386, + "displayName": "Book and Quill", + "name": "writable_book", + "stackSize": 1 + }, + { + "id": 387, + "displayName": "Written Book", + "name": "written_book", + "stackSize": 16 + }, + { + "id": 388, + "displayName": "Emerald", + "name": "emerald", + "stackSize": 64 + }, + { + "id": 389, + "displayName": "Item Frame", + "name": "item_frame", + "stackSize": 64 + }, + { + "id": 390, + "displayName": "Flower Pot", + "name": "flower_pot", + "stackSize": 64 + }, + { + "id": 391, + "displayName": "Carrot", + "name": "carrot", + "stackSize": 64 + }, + { + "id": 392, + "displayName": "Potato", + "name": "potato", + "stackSize": 64 + }, + { + "id": 393, + "displayName": "Baked Potato", + "name": "baked_potato", + "stackSize": 64 + }, + { + "id": 394, + "displayName": "Poisonous Potato", + "name": "poisonous_potato", + "stackSize": 64 + }, + { + "id": 395, + "displayName": "Empty Map", + "name": "map", + "stackSize": 64 + }, + { + "id": 396, + "displayName": "Golden Carrot", + "name": "golden_carrot", + "stackSize": 64 + }, + { + "id": 397, + "displayName": "Skull", + "name": "skull", + "stackSize": 64, + "variations": [ + { + "metadata": 0, + "displayName": "Skeleton Skull" + }, + { + "metadata": 1, + "displayName": "Wither Skeleton Skull" + }, + { + "metadata": 2, + "displayName": "Zombie Head" + }, + { + "metadata": 3, + "displayName": "Head" + }, + { + "metadata": 4, + "displayName": "Creeper Head" + } + ] + }, + { + "id": 398, + "displayName": "Carrot on a Stick", + "name": "carrot_on_a_stick", + "stackSize": 1, + "maxDurability": 25, + "enchantCategories": [ + "breakable", + "vanishable" + ] + }, + { + "id": 399, + "displayName": "Nether Star", + "name": "nether_star", + "stackSize": 64 + }, + { + "id": 400, + "displayName": "Pumpkin Pie", + "name": "pumpkin_pie", + "stackSize": 64 + }, + { + "id": 401, + "displayName": "Firework Rocket", + "name": "fireworks", + "stackSize": 64 + }, + { + "id": 402, + "displayName": "Firework Star", + "name": "firework_charge", + "stackSize": 64 + }, + { + "id": 403, + "displayName": "Enchanted Book", + "name": "enchanted_book", + "stackSize": 1 + }, + { + "id": 404, + "displayName": "Redstone Comparator", + "name": "comparator", + "stackSize": 64 + }, + { + "id": 405, + "displayName": "Nether Brick", + "name": "netherbrick", + "stackSize": 64 + }, + { + "id": 406, + "displayName": "Nether Quartz", + "name": "quartz", + "stackSize": 64 + }, + { + "id": 407, + "displayName": "Minecart with TNT", + "name": "tnt_minecart", + "stackSize": 1 + }, + { + "id": 408, + "displayName": "Minecart with Hopper", + "name": "hopper_minecart", + "stackSize": 1 + }, + { + "id": 409, + "displayName": "Prismarine Shard", + "name": "prismarine_shard", + "stackSize": 64 + }, + { + "id": 410, + "displayName": "Prismarine Crystals", + "name": "prismarine_crystals", + "stackSize": 64 + }, + { + "id": 411, + "displayName": "Raw Rabbit", + "name": "rabbit", + "stackSize": 64 + }, + { + "id": 412, + "displayName": "Cooked Rabbit", + "name": "cooked_rabbit", + "stackSize": 64 + }, + { + "id": 413, + "displayName": "Rabbit Stew", + "name": "rabbit_stew", + "stackSize": 1 + }, + { + "id": 414, + "displayName": "Rabbit's Foot", + "name": "rabbit_foot", + "stackSize": 64 + }, + { + "id": 415, + "displayName": "Rabbit Hide", + "name": "rabbit_hide", + "stackSize": 64 + }, + { + "id": 416, + "displayName": "Armor Stand", + "name": "armor_stand", + "stackSize": 16 + }, + { + "id": 417, + "displayName": "Iron Horse Armor", + "name": "iron_horse_armor", + "stackSize": 1 + }, + { + "id": 418, + "displayName": "Gold Horse Armor", + "name": "golden_horse_armor", + "stackSize": 1 + }, + { + "id": 419, + "displayName": "Diamond Horse Armor", + "name": "diamond_horse_armor", + "stackSize": 1 + }, + { + "id": 420, + "displayName": "Lead", + "name": "lead", + "stackSize": 64 + }, + { + "id": 421, + "displayName": "Name Tag", + "name": "name_tag", + "stackSize": 64 + }, + { + "id": 422, + "displayName": "Minecart with Command Block", + "name": "command_block_minecart", + "stackSize": 1 + }, + { + "id": 423, + "displayName": "Raw Mutton", + "name": "mutton", + "stackSize": 64 + }, + { + "id": 424, + "displayName": "Cooked Mutton", + "name": "cooked_mutton", + "stackSize": 64 + }, + { + "id": 425, + "displayName": "Banner", + "name": "banner", + "stackSize": 16, + "variations": [ + { + "metadata": 0, + "displayName": "Black Banner" + }, + { + "metadata": 1, + "displayName": "Red Banner" + }, + { + "metadata": 2, + "displayName": "Green Banner" + }, + { + "metadata": 3, + "displayName": "Brown Banner" + }, + { + "metadata": 4, + "displayName": "Blue Banner" + }, + { + "metadata": 5, + "displayName": "Purple Banner" + }, + { + "metadata": 6, + "displayName": "Cyan Banner" + }, + { + "metadata": 7, + "displayName": "Light Gray Banner" + }, + { + "metadata": 8, + "displayName": "Gray Banner" + }, + { + "metadata": 9, + "displayName": "Pink Banner" + }, + { + "metadata": 10, + "displayName": "Lime Banner" + }, + { + "metadata": 11, + "displayName": "Yellow Banner" + }, + { + "metadata": 12, + "displayName": "Light Blue Banner" + }, + { + "metadata": 13, + "displayName": "Magenta Banner" + }, + { + "metadata": 14, + "displayName": "Orange Banner" + }, + { + "metadata": 15, + "displayName": "White Banner" + } + ] + }, + { + "id": 427, + "displayName": "Spruce Door", + "name": "spruce_door", + "stackSize": 64 + }, + { + "id": 428, + "displayName": "Birch Door", + "name": "birch_door", + "stackSize": 64 + }, + { + "id": 429, + "displayName": "Jungle Door", + "name": "jungle_door", + "stackSize": 64 + }, + { + "id": 430, + "displayName": "Acacia Door", + "name": "acacia_door", + "stackSize": 64 + }, + { + "id": 431, + "displayName": "Dark Oak Door", + "name": "dark_oak_door", + "stackSize": 64 + }, + { + "id": 2256, + "displayName": "13 Disc", + "name": "record_13", + "stackSize": 1 + }, + { + "id": 2257, + "displayName": "Cat Disc", + "name": "record_cat", + "stackSize": 1 + }, + { + "id": 2258, + "displayName": "Blocks Disc", + "name": "record_blocks", + "stackSize": 1 + }, + { + "id": 2259, + "displayName": "Chirp Disc", + "name": "record_chirp", + "stackSize": 1 + }, + { + "id": 2260, + "displayName": "Far Disc", + "name": "record_far", + "stackSize": 1 + }, + { + "id": 2261, + "displayName": "Mall Disc", + "name": "record_mall", + "stackSize": 1 + }, + { + "id": 2262, + "displayName": "Mellohi Disc", + "name": "record_mellohi", + "stackSize": 1 + }, + { + "id": 2263, + "displayName": "Stal Disc", + "name": "record_stal", + "stackSize": 1 + }, + { + "id": 2264, + "displayName": "Strad Disc", + "name": "record_strad", + "stackSize": 1 + }, + { + "id": 2265, + "displayName": "Ward Disc", + "name": "record_ward", + "stackSize": 1 + }, + { + "id": 2266, + "displayName": "11 Disc", + "name": "record_11", + "stackSize": 1 + }, + { + "id": 2267, + "displayName": "Wait Disc", + "name": "record_wait", + "stackSize": 1 + } +] \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/language.json b/mc/data/minecraft-data/pc/1.8/language.json new file mode 100644 index 0000000..50aa365 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/language.json @@ -0,0 +1,2552 @@ +{ + "language.name": "English", + "language.region": "US", + "language.code": "en_US", + "gui.done": "Done", + "gui.cancel": "Cancel", + "gui.back": "Back", + "gui.toTitle": "Back to title screen", + "gui.toMenu": "Back to server list", + "gui.up": "Up", + "gui.down": "Down", + "gui.yes": "Yes", + "gui.no": "No", + "gui.none": "None", + "gui.all": "All", + "translation.test.none": "Hello, world!", + "translation.test.complex": "Prefix, %s%2$s again %s and %1$s lastly %s and also %1$s again!", + "translation.test.escape": "%%s %%%s %%%%s %%%%%s", + "translation.test.invalid": "hi %", + "translation.test.invalid2": "hi % s", + "translation.test.args": "%s %s", + "translation.test.world": "world", + "menu.game": "Game menu", + "menu.singleplayer": "Singleplayer", + "menu.multiplayer": "Multiplayer", + "menu.online": "Minecraft Realms", + "menu.options": "Options...", + "menu.quit": "Quit Game", + "menu.returnToMenu": "Save and Quit to Title", + "menu.disconnect": "Disconnect", + "menu.returnToGame": "Back to Game", + "menu.switchingLevel": "Switching worlds", + "menu.generatingLevel": "Generating world", + "menu.loadingLevel": "Loading world", + "menu.generatingTerrain": "Building terrain", + "menu.convertingLevel": "Converting world", + "menu.simulating": "Simulating the world for a bit", + "menu.respawning": "Respawning", + "menu.shareToLan": "Open to LAN", + "selectWorld.title": "Select World", + "selectWorld.empty": "empty", + "selectWorld.world": "World", + "selectWorld.select": "Play Selected World", + "selectWorld.create": "Create New World", + "selectWorld.recreate": "Re-Create", + "selectWorld.createDemo": "Play New Demo World", + "selectWorld.delete": "Delete", + "selectWorld.rename": "Rename", + "selectWorld.deleteQuestion": "Are you sure you want to delete this world?", + "selectWorld.deleteWarning": "will be lost forever! (A long time!)", + "selectWorld.deleteButton": "Delete", + "selectWorld.renameButton": "Rename", + "selectWorld.renameTitle": "Rename World", + "selectWorld.conversion": "Must be converted!", + "selectWorld.newWorld": "New World", + "selectWorld.newWorld.copyOf": "Copy of %s", + "selectWorld.enterName": "World Name", + "selectWorld.resultFolder": "Will be saved in:", + "selectWorld.enterSeed": "Seed for the World Generator", + "selectWorld.seedInfo": "Leave blank for a random seed", + "selectWorld.cheats": "Cheats", + "selectWorld.customizeType": "Customize", + "createWorld.customize.presets": "Presets", + "createWorld.customize.presets.title": "Select a Preset", + "createWorld.customize.presets.select": "Use Preset", + "createWorld.customize.presets.share": "Want to share your preset with someone? Use the below box!", + "createWorld.customize.presets.list": "Alternatively, here's some we made earlier!", + "createWorld.customize.flat.title": "Superflat Customization", + "createWorld.customize.flat.tile": "Layer Material", + "createWorld.customize.flat.height": "Height", + "createWorld.customize.flat.addLayer": "Add Layer", + "createWorld.customize.flat.editLayer": "Edit Layer", + "createWorld.customize.flat.removeLayer": "Remove Layer", + "createWorld.customize.flat.layer.top": "Top - %d", + "createWorld.customize.flat.layer": "%d", + "createWorld.customize.flat.layer.bottom": "Bottom - %d", + "createWorld.customize.custom.page0": "Basic Settings", + "createWorld.customize.custom.page1": "Ore Settings", + "createWorld.customize.custom.page2": "Advanced Settings (Expert Users Only!)", + "createWorld.customize.custom.page3": "Extra Advanced Settings (Expert Users Only!)", + "createWorld.customize.custom.randomize": "Randomize", + "createWorld.customize.custom.prev": "Previous Page", + "createWorld.customize.custom.next": "Next Page", + "createWorld.customize.custom.defaults": "Defaults", + "createWorld.customize.custom.confirm1": "This will overwrite your current", + "createWorld.customize.custom.confirm2": "settings and cannot be undone.", + "createWorld.customize.custom.confirmTitle": "Warning!", + "createWorld.customize.custom.mainNoiseScaleX": "Main Noise Scale X", + "createWorld.customize.custom.mainNoiseScaleY": "Main Noise Scale Y", + "createWorld.customize.custom.mainNoiseScaleZ": "Main Noise Scale Z", + "createWorld.customize.custom.depthNoiseScaleX": "Depth Noise Scale X", + "createWorld.customize.custom.depthNoiseScaleZ": "Depth Noise Scale Z", + "createWorld.customize.custom.depthNoiseScaleExponent": "Depth Noise Exponent", + "createWorld.customize.custom.baseSize": "Depth Base Size", + "createWorld.customize.custom.coordinateScale": "Coordinate Scale", + "createWorld.customize.custom.heightScale": "Height Scale", + "createWorld.customize.custom.stretchY": "Height Stretch", + "createWorld.customize.custom.upperLimitScale": "Upper Limit Scale", + "createWorld.customize.custom.lowerLimitScale": "Lower Limit Scale", + "createWorld.customize.custom.biomeDepthWeight": "Biome Depth Weight", + "createWorld.customize.custom.biomeDepthOffset": "Biome Depth Offset", + "createWorld.customize.custom.biomeScaleWeight": "Biome Scale Weight", + "createWorld.customize.custom.biomeScaleOffset": "Biome Scale Offset", + "createWorld.customize.custom.seaLevel": "Sea Level", + "createWorld.customize.custom.useCaves": "Caves", + "createWorld.customize.custom.useStrongholds": "Strongholds", + "createWorld.customize.custom.useVillages": "Villages", + "createWorld.customize.custom.useMineShafts": "Mineshafts", + "createWorld.customize.custom.useTemples": "Temples", + "createWorld.customize.custom.useMonuments": "Ocean Monuments", + "createWorld.customize.custom.useRavines": "Ravines", + "createWorld.customize.custom.useDungeons": "Dungeons", + "createWorld.customize.custom.dungeonChance": "Dungeon Count", + "createWorld.customize.custom.useWaterLakes": "Water Lakes", + "createWorld.customize.custom.waterLakeChance": "Water Lake Rarity", + "createWorld.customize.custom.useLavaLakes": "Lava Lakes", + "createWorld.customize.custom.lavaLakeChance": "Lava Lake Rarity", + "createWorld.customize.custom.useLavaOceans": "Lava Oceans", + "createWorld.customize.custom.fixedBiome": "Biome", + "createWorld.customize.custom.biomeSize": "Biome Size", + "createWorld.customize.custom.riverSize": "River Size", + "createWorld.customize.custom.size": " Spawn Size", + "createWorld.customize.custom.count": " Spawn Tries", + "createWorld.customize.custom.minHeight": " Min. Height", + "createWorld.customize.custom.maxHeight": " Max. Height", + "createWorld.customize.custom.center": " Center Height", + "createWorld.customize.custom.spread": " Spread Height", + "createWorld.customize.custom.presets.title": "Customize World Presets", + "createWorld.customize.custom.presets": "Presets", + "createWorld.customize.custom.preset.waterWorld": "Water World", + "createWorld.customize.custom.preset.isleLand": "Isle Land", + "createWorld.customize.custom.preset.caveDelight": "Caver's Delight", + "createWorld.customize.custom.preset.mountains": "Mountain Madness", + "createWorld.customize.custom.preset.drought": "Drought", + "createWorld.customize.custom.preset.caveChaos": "Caves of Chaos", + "createWorld.customize.custom.preset.goodLuck": "Good Luck", + "gameMode.survival": "Survival Mode", + "gameMode.creative": "Creative Mode", + "gameMode.adventure": "Adventure Mode", + "gameMode.spectator": "Spectator Mode", + "gameMode.hardcore": "Hardcore Mode!", + "gameMode.changed": "Your game mode has been updated", + "selectWorld.gameMode": "Game Mode", + "selectWorld.gameMode.survival": "Survival", + "selectWorld.gameMode.survival.line1": "Search for resources, crafting, gain", + "selectWorld.gameMode.survival.line2": "levels, health and hunger", + "selectWorld.gameMode.creative": "Creative", + "selectWorld.gameMode.creative.line1": "Unlimited resources, free flying and", + "selectWorld.gameMode.creative.line2": "destroy blocks instantly", + "selectWorld.gameMode.spectator": "Spectator", + "selectWorld.gameMode.spectator.line1": "You can look but don't touch", + "selectWorld.gameMode.hardcore": "Hardcore", + "selectWorld.gameMode.hardcore.line1": "Same as survival mode, locked at hardest", + "selectWorld.gameMode.hardcore.line2": "difficulty, and one life only", + "selectWorld.gameMode.adventure": "Adventure", + "selectWorld.gameMode.adventure.line1": "Same as survival mode, but blocks can't", + "selectWorld.gameMode.adventure.line2": "be added or removed", + "selectWorld.moreWorldOptions": "More World Options...", + "selectWorld.mapFeatures": "Generate Structures:", + "selectWorld.mapFeatures.info": "Villages, dungeons etc", + "selectWorld.mapType": "World Type:", + "selectWorld.mapType.normal": "Normal", + "selectWorld.allowCommands": "Allow Cheats:", + "selectWorld.allowCommands.info": "Commands like /gamemode, /xp", + "selectWorld.hardcoreMode": "Hardcore:", + "selectWorld.hardcoreMode.info": "World is deleted upon death", + "selectWorld.bonusItems": "Bonus Chest:", + "generator.default": "Default", + "generator.flat": "Superflat", + "generator.largeBiomes": "Large Biomes", + "generator.amplified": "AMPLIFIED", + "generator.customized": "Customized", + "generator.debug_all_block_states": "Debug Mode", + "generator.amplified.info": "Notice: Just for fun, requires beefy computer", + "selectServer.title": "Select Server", + "selectServer.empty": "empty", + "selectServer.select": "Join Server", + "selectServer.direct": "Direct Connect", + "selectServer.edit": "Edit", + "selectServer.delete": "Delete", + "selectServer.add": "Add server", + "selectServer.defaultName": "Minecraft Server", + "selectServer.deleteQuestion": "Are you sure you want to remove this server?", + "selectServer.deleteWarning": "will be lost forever! (A long time!)", + "selectServer.deleteButton": "Delete", + "selectServer.refresh": "Refresh", + "selectServer.hiddenAddress": "(Hidden)", + "addServer.title": "Edit Server Info", + "addServer.enterName": "Server Name", + "addServer.enterIp": "Server Address", + "addServer.add": "Done", + "addServer.hideAddress": "Hide Address", + "addServer.resourcePack": "Server Resource Packs", + "addServer.resourcePack.enabled": "Enabled", + "addServer.resourcePack.disabled": "Disabled", + "addServer.resourcePack.prompt": "Prompt", + "lanServer.title": "LAN World", + "lanServer.scanning": "Scanning for games on your local network", + "lanServer.start": "Start LAN World", + "lanServer.otherPlayers": "Settings for Other Players", + "mcoServer.title": "Minecraft Online World", + "multiplayer.title": "Play Multiplayer", + "multiplayer.connect": "Connect", + "multiplayer.info1": "Minecraft Multiplayer is currently not finished, but there", + "multiplayer.info2": "is some buggy early testing going on.", + "multiplayer.ipinfo": "Enter the IP of a server to connect to it:", + "multiplayer.texturePrompt.line1": "This server recommends the use of a custom resource pack.", + "multiplayer.texturePrompt.line2": "Would you like to download and install it automagically?", + "multiplayer.downloadingTerrain": "Downloading terrain", + "multiplayer.downloadingStats": "Downloading statistics & achievements...", + "multiplayer.stopSleeping": "Leave Bed", + "multiplayer.player.joined": "%s joined the game", + "multiplayer.player.joined.renamed": "%s (formerly known as %s) joined the game", + "multiplayer.player.left": "%s left the game", + "chat.cannotSend": "Cannot send chat message", + "chat.type.text": "<%s> %s", + "chat.type.emote": "* %s %s", + "chat.type.announcement": "[%s] %s", + "chat.type.admin": "[%s: %s]", + "chat.type.achievement": "%s has just earned the achievement %s", + "chat.type.achievement.taken": "%s has lost the achievement %s", + "chat.link.confirm": "Are you sure you want to open the following website?", + "chat.link.warning": "Never open links from people that you don't trust!", + "chat.copy": "Copy to Clipboard", + "chat.link.confirmTrusted": "Do you want to open this link or copy it to your clipboard?", + "chat.link.open": "Open in browser", + "chat.stream.text": "(%s) <%s> %s", + "chat.stream.emote": "(%s) * %s %s", + "menu.playdemo": "Play Demo World", + "menu.resetdemo": "Reset Demo World", + "demo.day.1": "This demo will last five game days, do your best!", + "demo.day.2": "Day Two", + "demo.day.3": "Day Three", + "demo.day.4": "Day Four", + "demo.day.5": "This is your last day!", + "demo.day.warning": "Your time is almost up!", + "demo.day.6": "You have passed your fifth day, use F2 to save a screenshot of your creation", + "demo.reminder": "The demo time has expired, buy the game to continue or start a new world!", + "demo.remainingTime": "Remaining time: %s", + "demo.demoExpired": "Demo time's up!", + "demo.help.movement": "Use %1$s, %2$s, %3$s, %4$s and the mouse to move around", + "demo.help.movementShort": "Move by pressing %1$s, %2$s, %3$s, %4$s", + "demo.help.movementMouse": "Look around using the mouse", + "demo.help.jump": "Jump by pressing %1$s", + "demo.help.inventory": "Use %1$s to open your inventory", + "demo.help.title": "Minecraft Demo Mode", + "demo.help.fullWrapped": "This demo will last 5 ingame days (about 1 hour and 40 minutes of real time). Check the achievements for hints! Have fun!", + "demo.help.buy": "Purchase Now!", + "demo.help.later": "Continue Playing!", + "connect.connecting": "Connecting to the server...", + "connect.authorizing": "Logging in...", + "connect.failed": "Failed to connect to the server", + "disconnect.genericReason": "%s", + "disconnect.disconnected": "Disconnected by Server", + "disconnect.lost": "Connection Lost", + "disconnect.kicked": "Was kicked from the game", + "disconnect.timeout": "Timed out", + "disconnect.closed": "Connection closed", + "disconnect.loginFailed": "Failed to login", + "disconnect.loginFailedInfo": "Failed to login: %s", + "disconnect.loginFailedInfo.serversUnavailable": "The authentication servers are currently down for maintenance.", + "disconnect.loginFailedInfo.invalidSession": "Invalid session (Try restarting your game)", + "disconnect.quitting": "Quitting", + "disconnect.endOfStream": "End of stream", + "disconnect.overflow": "Buffer overflow", + "disconnect.spam": "Kicked for spamming", + "soundCategory.master": "Master Volume", + "soundCategory.music": "Music", + "soundCategory.record": "Jukebox/Noteblocks", + "soundCategory.weather": "Weather", + "soundCategory.hostile": "Hostile Creatures", + "soundCategory.neutral": "Friendly Creatures", + "soundCategory.player": "Players", + "soundCategory.block": "Blocks", + "soundCategory.ambient": "Ambient/Environment", + "record.nowPlaying": "Now playing: %s", + "options.off": "OFF", + "options.on": "ON", + "options.visible": "Shown", + "options.hidden": "Hidden", + "options.title": "Options", + "options.controls": "Controls...", + "options.video": "Video Settings...", + "options.language": "Language...", + "options.stream": "Broadcast Settings...", + "options.sounds": "Music & Sounds...", + "options.sounds.title": "Music & Sound Options", + "options.languageWarning": "Language translations may not be 100%% accurate", + "options.videoTitle": "Video Settings", + "options.customizeTitle": "Customize World Settings", + "options.music": "Music", + "options.sound": "Sound", + "options.invertMouse": "Invert Mouse", + "options.fov": "FOV", + "options.fov.min": "Normal", + "options.fov.max": "Quake Pro", + "options.saturation": "Saturation", + "options.gamma": "Brightness", + "options.gamma.min": "Moody", + "options.gamma.max": "Bright", + "options.sensitivity": "Sensitivity", + "options.sensitivity.min": "*yawn*", + "options.sensitivity.max": "HYPERSPEED!!!", + "options.renderDistance": "Render Distance", + "options.renderDistance.tiny": "Tiny", + "options.renderDistance.short": "Short", + "options.renderDistance.normal": "Normal", + "options.renderDistance.far": "Far", + "options.viewBobbing": "View Bobbing", + "options.ao": "Smooth Lighting", + "options.ao.off": "OFF", + "options.ao.min": "Minimum", + "options.ao.max": "Maximum", + "options.anaglyph": "3D Anaglyph", + "options.framerateLimit": "Max Framerate", + "options.framerateLimit.max": "Unlimited", + "options.difficulty": "Difficulty", + "options.difficulty.peaceful": "Peaceful", + "options.difficulty.easy": "Easy", + "options.difficulty.normal": "Normal", + "options.difficulty.hard": "Hard", + "options.difficulty.hardcore": "Hardcore", + "options.graphics": "Graphics", + "options.graphics.fancy": "Fancy", + "options.graphics.fast": "Fast", + "options.guiScale": "GUI Scale", + "options.guiScale.auto": "Auto", + "options.guiScale.small": "Small", + "options.guiScale.normal": "Normal", + "options.guiScale.large": "Large", + "options.advancedOpengl": "Advanced OpenGL", + "options.fboEnable": "Enable FBOs", + "options.postProcessEnable": "Enable Post-Processing", + "options.renderClouds": "Clouds", + "options.qualityButton": "Video Quality Settings...", + "options.qualityVideoTitle": "Video Quality Settings", + "options.performanceButton": "Video Performance Settings...", + "options.performanceVideoTitle": "Video Performance Settings", + "options.advancedButton": "Advanced Video Settings...", + "options.advancedVideoTitle": "Advanced Video Settings", + "options.postButton": "Post-Processing Settings...", + "options.postVideoTitle": "Post-Processing Settings", + "options.farWarning1": "A 64 bit Java installation is recommended", + "options.farWarning2": "for 'Far' render distance (you have 32 bit)", + "options.particles": "Particles", + "options.particles.all": "All", + "options.particles.decreased": "Decreased", + "options.particles.minimal": "Minimal", + "options.multiplayer.title": "Multiplayer Settings...", + "options.chat.title": "Chat Settings...", + "options.chat.visibility": "Chat", + "options.chat.visibility.full": "Shown", + "options.chat.visibility.system": "Commands Only", + "options.chat.visibility.hidden": "Hidden", + "options.chat.color": "Colors", + "options.chat.opacity": "Opacity", + "options.chat.links": "Web Links", + "options.chat.links.prompt": "Prompt on Links", + "options.chat.scale": "Scale", + "options.chat.width": "Width", + "options.chat.height.focused": "Focused Height", + "options.chat.height.unfocused": "Unfocused Height", + "options.skinCustomisation": "Skin Customization...", + "options.skinCustomisation.title": "Skin Customization", + "options.modelPart.cape": "Cape", + "options.modelPart.hat": "Hat", + "options.modelPart.jacket": "Jacket", + "options.modelPart.left_sleeve": "Left Sleeve", + "options.modelPart.right_sleeve": "Right Sleeve", + "options.modelPart.left_pants_leg": "Left Pants Leg", + "options.modelPart.right_pants_leg": "Right Pants Leg", + "options.snooper": "Allow Snooper", + "options.snooper.view": "Snooper Settings...", + "options.snooper.title": "Machine Specs Collection", + "options.snooper.desc": "We want to collect information about your machine to help improve Minecraft by knowing what we can support and where the biggest problems are. All of this information is completely anonymous and viewable below. We promise we won't do anything bad with this data, but if you want to opt out then feel free to toggle it off!", + "options.resourcepack": "Resource Packs...", + "options.fullscreen": "Fullscreen", + "options.vsync": "Use VSync", + "options.vbo": "Use VBOs", + "options.touchscreen": "Touchscreen Mode", + "options.blockAlternatives": "Alternate Blocks", + "options.reducedDebugInfo": "Reduced Debug Info", + "options.entityShadows": "Entity Shadows", + "options.mipmapLevels": "Mipmap Levels", + "options.forceUnicodeFont": "Force Unicode Font", + "options.stream.title": "Twitch Broadcast Settings", + "options.stream.bytesPerPixel": "Quality", + "options.stream.micVolumne": "Mic Volume", + "options.stream.micToggleBehavior": "Push To", + "options.stream.mic_toggle.mute": "Mute", + "options.stream.mic_toggle.talk": "Talk", + "options.stream.systemVolume": "System Volume", + "options.stream.kbps": "Bandwidth", + "options.stream.fps": "Framerate", + "options.stream.sendMetadata": "Send Metadata", + "options.stream.compression": "Compression", + "options.stream.compression.low": "Low", + "options.stream.compression.medium": "Medium", + "options.stream.compression.high": "High", + "options.stream.estimation": "Estimated resolution: %dx%d", + "options.stream.changes": "You may need to restart your stream for these changes to take place.", + "options.stream.ingestSelection": "Broadcast Server List", + "options.stream.ingest.title": "Twitch Broadcast Servers", + "options.stream.ingest.reset": "Reset Preference", + "options.stream.chat.title": "Twitch Chat Settings", + "options.stream.chat.enabled": "Enable", + "options.stream.chat.enabled.streaming": "Whilst Streaming", + "options.stream.chat.enabled.always": "Always", + "options.stream.chat.enabled.never": "Never", + "options.stream.chat.userFilter": "User Filter", + "options.stream.chat.userFilter.all": "All Viewers", + "options.stream.chat.userFilter.subs": "Subscribers", + "options.stream.chat.userFilter.mods": "Moderators", + "difficulty.lock.title": "Lock World Difficulty", + "difficulty.lock.question": "Are you sure you want to lock the difficulty of this world? This will set this world to always be %1$s, and you will never be able to change that again.", + "title.oldgl1": "Old graphics card detected; this may prevent you from", + "title.oldgl2": "playing in the future as OpenGL 2.0 will be required.", + "controls.title": "Controls", + "controls.reset": "Reset", + "controls.resetAll": "Reset Keys", + "key.sprint": "Sprint", + "key.forward": "Walk Forwards", + "key.left": "Strafe Left", + "key.back": "Walk Backwards", + "key.right": "Strafe Right", + "key.jump": "Jump", + "key.inventory": "Inventory", + "key.drop": "Drop Item", + "key.chat": "Open Chat", + "key.sneak": "Sneak", + "key.playerlist": "List Players", + "key.attack": "Attack/Destroy", + "key.use": "Use Item/Place Block", + "key.pickItem": "Pick Block", + "key.mouseButton": "Button %1$s", + "key.command": "Open Command", + "key.screenshot": "Take Screenshot", + "key.togglePerspective": "Toggle Perspective", + "key.smoothCamera": "Toggle Cinematic Camera", + "key.fullscreen": "Toggle Fullscreen", + "key.spectatorOutlines": "Highlight Players (Spectators)", + "key.hotbar.1": "Hotbar Slot 1", + "key.hotbar.2": "Hotbar Slot 2", + "key.hotbar.3": "Hotbar Slot 3", + "key.hotbar.4": "Hotbar Slot 4", + "key.hotbar.5": "Hotbar Slot 5", + "key.hotbar.6": "Hotbar Slot 6", + "key.hotbar.7": "Hotbar Slot 7", + "key.hotbar.8": "Hotbar Slot 8", + "key.hotbar.9": "Hotbar Slot 9", + "key.streamStartStop": "Start/Stop Stream", + "key.streamPauseUnpause": "Pause/Unpause Stream", + "key.streamCommercial": "Show Stream Commercials", + "key.streamToggleMic": "Push To Talk/Mute", + "key.categories.movement": "Movement", + "key.categories.misc": "Miscellaneous", + "key.categories.multiplayer": "Multiplayer", + "key.categories.gameplay": "Gameplay", + "key.categories.ui": "Game Interface", + "key.categories.inventory": "Inventory", + "key.categories.stream": "Streaming", + "resourcePack.openFolder": "Open resource pack folder", + "resourcePack.title": "Select Resource Packs", + "resourcePack.available.title": "Available Resource Packs", + "resourcePack.selected.title": "Selected Resource Packs", + "resourcePack.folderInfo": "(Place resource pack files here)", + "resourcePack.incompatible": "Incompatible", + "resourcePack.incompatible.old": "(Made for an older version of Minecraft)", + "resourcePack.incompatible.new": "(Made for a newer version of Minecraft)", + "resourcePack.incompatible.confirm.title": "Are you sure you want to load this resource pack?", + "resourcePack.incompatible.confirm.old": "This resource pack was made for an older version of Minecraft and may no longer work correctly.", + "resourcePack.incompatible.confirm.new": "This resource pack was made for a newer version of Minecraft and may no longer work correctly.", + "sign.edit": "Edit sign message", + "book.pageIndicator": "Page %1$s of %2$s", + "book.byAuthor": "by %1$s", + "book.signButton": "Sign", + "book.editTitle": "Enter Book Title:", + "book.finalizeButton": "Sign and Close", + "book.finalizeWarning": "Note! When you sign the book, it will no longer be editable.", + "book.generation.0": "Original", + "book.generation.1": "Copy of original", + "book.generation.2": "Copy of a copy", + "book.generation.3": "Tattered", + "merchant.deprecated": "Trade something else to unlock!", + "tile.barrier.name": "Barrier", + "tile.stone.stone.name": "Stone", + "tile.stone.granite.name": "Granite", + "tile.stone.graniteSmooth.name": "Polished Granite", + "tile.stone.diorite.name": "Diorite", + "tile.stone.dioriteSmooth.name": "Polished Diorite", + "tile.stone.andesite.name": "Andesite", + "tile.stone.andesiteSmooth.name": "Polished Andesite", + "tile.hayBlock.name": "Hay Bale", + "tile.grass.name": "Grass Block", + "tile.dirt.name": "Dirt", + "tile.dirt.default.name": "Dirt", + "tile.dirt.coarse.name": "Coarse Dirt", + "tile.dirt.podzol.name": "Podzol", + "tile.stonebrick.name": "Cobblestone", + "tile.wood.name": "Wooden Planks", + "tile.wood.oak.name": "Oak Wood Planks", + "tile.wood.spruce.name": "Spruce Wood Planks", + "tile.wood.birch.name": "Birch Wood Planks", + "tile.wood.jungle.name": "Jungle Wood Planks", + "tile.wood.acacia.name": "Acacia Wood Planks", + "tile.wood.big_oak.name": "Dark Oak Wood Planks", + "tile.sapling.oak.name": "Oak Sapling", + "tile.sapling.spruce.name": "Spruce Sapling", + "tile.sapling.birch.name": "Birch Sapling", + "tile.sapling.jungle.name": "Jungle Sapling", + "tile.sapling.acacia.name": "Acacia Sapling", + "tile.sapling.big_oak.name": "Dark Oak Sapling", + "tile.deadbush.name": "Dead Bush", + "tile.bedrock.name": "Bedrock", + "tile.water.name": "Water", + "tile.lava.name": "Lava", + "tile.sand.name": "Sand", + "tile.sand.default.name": "Sand", + "tile.sand.red.name": "Red Sand", + "tile.sandStone.name": "Sandstone", + "tile.sandStone.default.name": "Sandstone", + "tile.sandStone.chiseled.name": "Chiseled Sandstone", + "tile.sandStone.smooth.name": "Smooth Sandstone", + "tile.redSandStone.name": "Red Sandstone", + "tile.redSandStone.default.name": "Red Sandstone", + "tile.redSandStone.chiseled.name": "Chiseled Red Sandstone", + "tile.redSandStone.smooth.name": "Smooth Red Sandstone", + "tile.gravel.name": "Gravel", + "tile.oreGold.name": "Gold Ore", + "tile.oreIron.name": "Iron Ore", + "tile.oreCoal.name": "Coal Ore", + "tile.log.name": "Wood", + "tile.log.oak.name": "Oak Wood", + "tile.log.spruce.name": "Spruce Wood", + "tile.log.birch.name": "Birch Wood", + "tile.log.jungle.name": "Jungle Wood", + "tile.log.acacia.name": "Acacia Wood", + "tile.log.big_oak.name": "Dark Oak Wood", + "tile.leaves.name": "Leaves", + "tile.leaves.oak.name": "Oak Leaves", + "tile.leaves.spruce.name": "Spruce Leaves", + "tile.leaves.birch.name": "Birch Leaves", + "tile.leaves.jungle.name": "Jungle Leaves", + "tile.leaves.acacia.name": "Acacia Leaves", + "tile.leaves.big_oak.name": "Dark Oak Leaves", + "tile.tallgrass.name": "Grass", + "tile.tallgrass.shrub.name": "Shrub", + "tile.tallgrass.grass.name": "Grass", + "tile.tallgrass.fern.name": "Fern", + "tile.sponge.dry.name": "Sponge", + "tile.sponge.wet.name": "Wet Sponge", + "tile.glass.name": "Glass", + "tile.stainedGlass.name": "Stained Glass", + "tile.stainedGlass.black.name": "Black Stained Glass", + "tile.stainedGlass.red.name": "Red Stained Glass", + "tile.stainedGlass.green.name": "Green Stained Glass", + "tile.stainedGlass.brown.name": "Brown Stained Glass", + "tile.stainedGlass.blue.name": "Blue Stained Glass", + "tile.stainedGlass.purple.name": "Purple Stained Glass", + "tile.stainedGlass.cyan.name": "Cyan Stained Glass", + "tile.stainedGlass.silver.name": "Light Gray Stained Glass", + "tile.stainedGlass.gray.name": "Gray Stained Glass", + "tile.stainedGlass.pink.name": "Pink Stained Glass", + "tile.stainedGlass.lime.name": "Lime Stained Glass", + "tile.stainedGlass.yellow.name": "Yellow Stained Glass", + "tile.stainedGlass.lightBlue.name": "Light Blue Stained Glass", + "tile.stainedGlass.magenta.name": "Magenta Stained Glass", + "tile.stainedGlass.orange.name": "Orange Stained Glass", + "tile.stainedGlass.white.name": "White Stained Glass", + "tile.thinStainedGlass.name": "Stained Glass Pane", + "tile.thinStainedGlass.black.name": "Black Stained Glass Pane", + "tile.thinStainedGlass.red.name": "Red Stained Glass Pane", + "tile.thinStainedGlass.green.name": "Green Stained Glass Pane", + "tile.thinStainedGlass.brown.name": "Brown Stained Glass Pane", + "tile.thinStainedGlass.blue.name": "Blue Stained Glass Pane", + "tile.thinStainedGlass.purple.name": "Purple Stained Glass Pane", + "tile.thinStainedGlass.cyan.name": "Cyan Stained Glass Pane", + "tile.thinStainedGlass.silver.name": "Light Gray Stained Glass Pane", + "tile.thinStainedGlass.gray.name": "Gray Stained Glass Pane", + "tile.thinStainedGlass.pink.name": "Pink Stained Glass Pane", + "tile.thinStainedGlass.lime.name": "Lime Stained Glass Pane", + "tile.thinStainedGlass.yellow.name": "Yellow Stained Glass Pane", + "tile.thinStainedGlass.lightBlue.name": "Light Blue Stained Glass Pane", + "tile.thinStainedGlass.magenta.name": "Magenta Stained Glass Pane", + "tile.thinStainedGlass.orange.name": "Orange Stained Glass Pane", + "tile.thinStainedGlass.white.name": "White Stained Glass Pane", + "tile.thinGlass.name": "Glass Pane", + "tile.cloth.name": "Wool", + "tile.flower1.name": "Flower", + "tile.flower1.dandelion.name": "Dandelion", + "tile.flower2.name": "Flower", + "tile.flower2.poppy.name": "Poppy", + "tile.flower2.blueOrchid.name": "Blue Orchid", + "tile.flower2.allium.name": "Allium", + "tile.flower2.houstonia.name": "Azure Bluet", + "tile.flower2.tulipRed.name": "Red Tulip", + "tile.flower2.tulipOrange.name": "Orange Tulip", + "tile.flower2.tulipWhite.name": "White Tulip", + "tile.flower2.tulipPink.name": "Pink Tulip", + "tile.flower2.oxeyeDaisy.name": "Oxeye Daisy", + "tile.doublePlant.name": "Plant", + "tile.doublePlant.sunflower.name": "Sunflower", + "tile.doublePlant.syringa.name": "Lilac", + "tile.doublePlant.grass.name": "Double Tallgrass", + "tile.doublePlant.fern.name": "Large Fern", + "tile.doublePlant.rose.name": "Rose Bush", + "tile.doublePlant.paeonia.name": "Peony", + "tile.mushroom.name": "Mushroom", + "tile.blockGold.name": "Block of Gold", + "tile.blockIron.name": "Block of Iron", + "tile.stoneSlab.name": "Stone Slab", + "tile.stoneSlab.stone.name": "Stone Slab", + "tile.stoneSlab.sand.name": "Sandstone Slab", + "tile.stoneSlab.wood.name": "Wooden Slab", + "tile.stoneSlab.cobble.name": "Cobblestone Slab", + "tile.stoneSlab.brick.name": "Bricks Slab", + "tile.stoneSlab.smoothStoneBrick.name": "Stone Bricks Slab", + "tile.stoneSlab.netherBrick.name": "Nether Brick Slab", + "tile.stoneSlab.quartz.name": "Quartz Slab", + "tile.stoneSlab2.red_sandstone.name": "Red Sandstone Slab", + "tile.woodSlab.name": "Wood Slab", + "tile.woodSlab.oak.name": "Oak Wood Slab", + "tile.woodSlab.spruce.name": "Spruce Wood Slab", + "tile.woodSlab.birch.name": "Birch Wood Slab", + "tile.woodSlab.jungle.name": "Jungle Wood Slab", + "tile.woodSlab.acacia.name": "Acacia Wood Slab", + "tile.woodSlab.big_oak.name": "Dark Oak Wood Slab", + "tile.brick.name": "Bricks", + "tile.tnt.name": "TNT", + "tile.bookshelf.name": "Bookshelf", + "tile.stoneMoss.name": "Moss Stone", + "tile.obsidian.name": "Obsidian", + "tile.torch.name": "Torch", + "tile.fire.name": "Fire", + "tile.mobSpawner.name": "Monster Spawner", + "tile.stairsWood.name": "Oak Wood Stairs", + "tile.stairsWoodSpruce.name": "Spruce Wood Stairs", + "tile.stairsWoodBirch.name": "Birch Wood Stairs", + "tile.stairsWoodJungle.name": "Jungle Wood Stairs", + "tile.stairsWoodAcacia.name": "Acacia Wood Stairs", + "tile.stairsWoodDarkOak.name": "Dark Oak Wood Stairs", + "tile.chest.name": "Chest", + "tile.chestTrap.name": "Trapped Chest", + "tile.redstoneDust.name": "Redstone Dust", + "tile.oreDiamond.name": "Diamond Ore", + "tile.blockCoal.name": "Block of Coal", + "tile.blockDiamond.name": "Block of Diamond", + "tile.workbench.name": "Crafting Table", + "tile.crops.name": "Crops", + "tile.farmland.name": "Farmland", + "tile.furnace.name": "Furnace", + "tile.sign.name": "Sign", + "tile.doorWood.name": "Wooden Door", + "tile.ladder.name": "Ladder", + "tile.rail.name": "Rail", + "tile.goldenRail.name": "Powered Rail", + "tile.activatorRail.name": "Activator Rail", + "tile.detectorRail.name": "Detector Rail", + "tile.stairsStone.name": "Cobblestone Stairs", + "tile.stairsSandStone.name": "Sandstone Stairs", + "tile.stairsRedSandStone.name": "Red Sandstone Stairs", + "tile.lever.name": "Lever", + "tile.pressurePlateStone.name": "Stone Pressure Plate", + "tile.pressurePlateWood.name": "Wooden Pressure Plate", + "tile.weightedPlate_light.name": "Weighted Pressure Plate (Light)", + "tile.weightedPlate_heavy.name": "Weighted Pressure Plate (Heavy)", + "tile.doorIron.name": "Iron Door", + "tile.oreRedstone.name": "Redstone Ore", + "tile.notGate.name": "Redstone Torch", + "tile.button.name": "Button", + "tile.snow.name": "Snow", + "tile.woolCarpet.name": "Carpet", + "tile.woolCarpet.black.name": "Black Carpet", + "tile.woolCarpet.red.name": "Red Carpet", + "tile.woolCarpet.green.name": "Green Carpet", + "tile.woolCarpet.brown.name": "Brown Carpet", + "tile.woolCarpet.blue.name": "Blue Carpet", + "tile.woolCarpet.purple.name": "Purple Carpet", + "tile.woolCarpet.cyan.name": "Cyan Carpet", + "tile.woolCarpet.silver.name": "Light Gray Carpet", + "tile.woolCarpet.gray.name": "Gray Carpet", + "tile.woolCarpet.pink.name": "Pink Carpet", + "tile.woolCarpet.lime.name": "Lime Carpet", + "tile.woolCarpet.yellow.name": "Yellow Carpet", + "tile.woolCarpet.lightBlue.name": "Light Blue Carpet", + "tile.woolCarpet.magenta.name": "Magenta Carpet", + "tile.woolCarpet.orange.name": "Orange Carpet", + "tile.woolCarpet.white.name": "Carpet", + "tile.ice.name": "Ice", + "tile.icePacked.name": "Packed Ice", + "tile.cactus.name": "Cactus", + "tile.clay.name": "Clay", + "tile.clayHardenedStained.name": "Stained Clay", + "tile.clayHardenedStained.black.name": "Black Stained Clay", + "tile.clayHardenedStained.red.name": "Red Stained Clay", + "tile.clayHardenedStained.green.name": "Green Stained Clay", + "tile.clayHardenedStained.brown.name": "Brown Stained Clay", + "tile.clayHardenedStained.blue.name": "Blue Stained Clay", + "tile.clayHardenedStained.purple.name": "Purple Stained Clay", + "tile.clayHardenedStained.cyan.name": "Cyan Stained Clay", + "tile.clayHardenedStained.silver.name": "Light Gray Stained Clay", + "tile.clayHardenedStained.gray.name": "Gray Stained Clay", + "tile.clayHardenedStained.pink.name": "Pink Stained Clay", + "tile.clayHardenedStained.lime.name": "Lime Stained Clay", + "tile.clayHardenedStained.yellow.name": "Yellow Stained Clay", + "tile.clayHardenedStained.lightBlue.name": "Light Blue Stained Clay", + "tile.clayHardenedStained.magenta.name": "Magenta Stained Clay", + "tile.clayHardenedStained.orange.name": "Orange Stained Clay", + "tile.clayHardenedStained.white.name": "White Stained Clay", + "tile.clayHardened.name": "Hardened Clay", + "tile.reeds.name": "Sugar cane", + "tile.jukebox.name": "Jukebox", + "tile.fence.name": "Oak Fence", + "tile.spruceFence.name": "Spruce Fence", + "tile.birchFence.name": "Birch Fence", + "tile.jungleFence.name": "Jungle Fence", + "tile.darkOakFence.name": "Dark Oak Fence", + "tile.acaciaFence.name": "Acacia Fence", + "tile.fenceGate.name": "Oak Fence Gate", + "tile.spruceFenceGate.name": "Spruce Fence Gate", + "tile.birchFenceGate.name": "Birch Fence Gate", + "tile.jungleFenceGate.name": "Jungle Fence Gate", + "tile.darkOakFenceGate.name": "Dark Oak Fence Gate", + "tile.acaciaFenceGate.name": "Acacia Fence Gate", + "tile.pumpkinStem.name": "Pumpkin Stem", + "tile.pumpkin.name": "Pumpkin", + "tile.litpumpkin.name": "Jack o'Lantern", + "tile.hellrock.name": "Netherrack", + "tile.hellsand.name": "Soul Sand", + "tile.lightgem.name": "Glowstone", + "tile.portal.name": "Portal", + "tile.cloth.black.name": "Black Wool", + "tile.cloth.red.name": "Red Wool", + "tile.cloth.green.name": "Green Wool", + "tile.cloth.brown.name": "Brown Wool", + "tile.cloth.blue.name": "Blue Wool", + "tile.cloth.purple.name": "Purple Wool", + "tile.cloth.cyan.name": "Cyan Wool", + "tile.cloth.silver.name": "Light Gray Wool", + "tile.cloth.gray.name": "Gray Wool", + "tile.cloth.pink.name": "Pink Wool", + "tile.cloth.lime.name": "Lime Wool", + "tile.cloth.yellow.name": "Yellow Wool", + "tile.cloth.lightBlue.name": "Light Blue Wool", + "tile.cloth.magenta.name": "Magenta Wool", + "tile.cloth.orange.name": "Orange Wool", + "tile.cloth.white.name": "Wool", + "tile.oreLapis.name": "Lapis Lazuli Ore", + "tile.blockLapis.name": "Lapis Lazuli Block", + "tile.dispenser.name": "Dispenser", + "tile.dropper.name": "Dropper", + "tile.musicBlock.name": "Note Block", + "tile.cake.name": "Cake", + "tile.bed.name": "Bed", + "tile.bed.occupied": "This bed is occupied", + "tile.bed.noSleep": "You can only sleep at night", + "tile.bed.notSafe": "You may not rest now, there are monsters nearby", + "tile.bed.notValid": "Your home bed was missing or obstructed", + "tile.lockedchest.name": "Locked chest", + "tile.trapdoor.name": "Wooden Trapdoor", + "tile.ironTrapdoor.name": "Iron Trapdoor", + "tile.web.name": "Cobweb", + "tile.stonebricksmooth.name": "Stone Bricks", + "tile.stonebricksmooth.default.name": "Stone Bricks", + "tile.stonebricksmooth.mossy.name": "Mossy Stone Bricks", + "tile.stonebricksmooth.cracked.name": "Cracked Stone Bricks", + "tile.stonebricksmooth.chiseled.name": "Chiseled Stone Bricks", + "tile.monsterStoneEgg.name": "Stone Monster Egg", + "tile.monsterStoneEgg.stone.name": "Stone Monster Egg", + "tile.monsterStoneEgg.cobble.name": "Cobblestone Monster Egg", + "tile.monsterStoneEgg.brick.name": "Stone Brick Monster Egg", + "tile.monsterStoneEgg.mossybrick.name": "Mossy Stone Brick Monster Egg", + "tile.monsterStoneEgg.crackedbrick.name": "Cracked Stone Brick Monster Egg", + "tile.monsterStoneEgg.chiseledbrick.name": "Chiseled Stone Brick Monster Egg", + "tile.pistonBase.name": "Piston", + "tile.pistonStickyBase.name": "Sticky Piston", + "tile.fenceIron.name": "Iron Bars", + "tile.melon.name": "Melon", + "tile.stairsBrick.name": "Brick Stairs", + "tile.stairsStoneBrickSmooth.name": "Stone Brick Stairs", + "tile.vine.name": "Vines", + "tile.netherBrick.name": "Nether Brick", + "tile.netherFence.name": "Nether Brick Fence", + "tile.stairsNetherBrick.name": "Nether Brick Stairs", + "tile.netherStalk.name": "Nether Wart", + "tile.cauldron.name": "Cauldron", + "tile.enchantmentTable.name": "Enchantment Table", + "tile.anvil.name": "Anvil", + "tile.anvil.intact.name": "Anvil", + "tile.anvil.slightlyDamaged.name": "Slightly Damaged Anvil", + "tile.anvil.veryDamaged.name": "Very Damaged Anvil", + "tile.whiteStone.name": "End Stone", + "tile.endPortalFrame.name": "End Portal", + "tile.mycel.name": "Mycelium", + "tile.waterlily.name": "Lily Pad", + "tile.dragonEgg.name": "Dragon Egg", + "tile.redstoneLight.name": "Redstone Lamp", + "tile.cocoa.name": "Cocoa", + "tile.enderChest.name": "Ender Chest", + "tile.oreRuby.name": "Ruby Ore", + "tile.oreEmerald.name": "Emerald Ore", + "tile.blockEmerald.name": "Block of Emerald", + "tile.blockRedstone.name": "Block of Redstone", + "tile.tripWire.name": "Tripwire", + "tile.tripWireSource.name": "Tripwire Hook", + "tile.commandBlock.name": "Command Block", + "tile.beacon.name": "Beacon", + "tile.beacon.primary": "Primary Power", + "tile.beacon.secondary": "Secondary Power", + "tile.cobbleWall.normal.name": "Cobblestone Wall", + "tile.cobbleWall.mossy.name": "Mossy Cobblestone Wall", + "tile.carrots.name": "Carrots", + "tile.potatoes.name": "Potatoes", + "tile.daylightDetector.name": "Daylight Sensor", + "tile.netherquartz.name": "Nether Quartz Ore", + "tile.hopper.name": "Hopper", + "tile.quartzBlock.name": "Block of Quartz", + "tile.quartzBlock.default.name": "Block of Quartz", + "tile.quartzBlock.chiseled.name": "Chiseled Quartz Block", + "tile.quartzBlock.lines.name": "Pillar Quartz Block", + "tile.stairsQuartz.name": "Quartz Stairs", + "tile.slime.name": "Slime Block", + "tile.prismarine.rough.name": "Prismarine", + "tile.prismarine.bricks.name": "Prismarine Bricks", + "tile.prismarine.dark.name": "Dark Prismarine", + "tile.seaLantern.name": "Sea Lantern", + "item.nameTag.name": "Name Tag", + "item.leash.name": "Lead", + "item.shovelIron.name": "Iron Shovel", + "item.pickaxeIron.name": "Iron Pickaxe", + "item.hatchetIron.name": "Iron Axe", + "item.flintAndSteel.name": "Flint and Steel", + "item.apple.name": "Apple", + "item.cookie.name": "Cookie", + "item.bow.name": "Bow", + "item.arrow.name": "Arrow", + "item.coal.name": "Coal", + "item.charcoal.name": "Charcoal", + "item.diamond.name": "Diamond", + "item.emerald.name": "Emerald", + "item.ingotIron.name": "Iron Ingot", + "item.ingotGold.name": "Gold Ingot", + "item.swordIron.name": "Iron Sword", + "item.swordWood.name": "Wooden Sword", + "item.shovelWood.name": "Wooden Shovel", + "item.pickaxeWood.name": "Wooden Pickaxe", + "item.hatchetWood.name": "Wooden Axe", + "item.swordStone.name": "Stone Sword", + "item.shovelStone.name": "Stone Shovel", + "item.pickaxeStone.name": "Stone Pickaxe", + "item.hatchetStone.name": "Stone Axe", + "item.swordDiamond.name": "Diamond Sword", + "item.shovelDiamond.name": "Diamond Shovel", + "item.pickaxeDiamond.name": "Diamond Pickaxe", + "item.hatchetDiamond.name": "Diamond Axe", + "item.stick.name": "Stick", + "item.bowl.name": "Bowl", + "item.mushroomStew.name": "Mushroom Stew", + "item.swordGold.name": "Golden Sword", + "item.shovelGold.name": "Golden Shovel", + "item.pickaxeGold.name": "Golden Pickaxe", + "item.hatchetGold.name": "Golden Axe", + "item.string.name": "String", + "item.feather.name": "Feather", + "item.sulphur.name": "Gunpowder", + "item.hoeWood.name": "Wooden Hoe", + "item.hoeStone.name": "Stone Hoe", + "item.hoeIron.name": "Iron Hoe", + "item.hoeDiamond.name": "Diamond Hoe", + "item.hoeGold.name": "Golden Hoe", + "item.seeds.name": "Seeds", + "item.seeds_pumpkin.name": "Pumpkin Seeds", + "item.seeds_melon.name": "Melon Seeds", + "item.melon.name": "Melon", + "item.wheat.name": "Wheat", + "item.bread.name": "Bread", + "item.helmetCloth.name": "Leather Cap", + "item.chestplateCloth.name": "Leather Tunic", + "item.leggingsCloth.name": "Leather Pants", + "item.bootsCloth.name": "Leather Boots", + "item.helmetChain.name": "Chain Helmet", + "item.chestplateChain.name": "Chain Chestplate", + "item.leggingsChain.name": "Chain Leggings", + "item.bootsChain.name": "Chain Boots", + "item.helmetIron.name": "Iron Helmet", + "item.chestplateIron.name": "Iron Chestplate", + "item.leggingsIron.name": "Iron Leggings", + "item.bootsIron.name": "Iron Boots", + "item.helmetDiamond.name": "Diamond Helmet", + "item.chestplateDiamond.name": "Diamond Chestplate", + "item.leggingsDiamond.name": "Diamond Leggings", + "item.bootsDiamond.name": "Diamond Boots", + "item.helmetGold.name": "Golden Helmet", + "item.chestplateGold.name": "Golden Chestplate", + "item.leggingsGold.name": "Golden Leggings", + "item.bootsGold.name": "Golden Boots", + "item.flint.name": "Flint", + "item.porkchopRaw.name": "Raw Porkchop", + "item.porkchopCooked.name": "Cooked Porkchop", + "item.chickenRaw.name": "Raw Chicken", + "item.chickenCooked.name": "Cooked Chicken", + "item.muttonRaw.name": "Raw Mutton", + "item.muttonCooked.name": "Cooked Mutton", + "item.rabbitRaw.name": "Raw Rabbit", + "item.rabbitCooked.name": "Cooked Rabbit", + "item.rabbitStew.name": "Rabbit Stew", + "item.rabbitFoot.name": "Rabbit's Foot", + "item.rabbitHide.name": "Rabbit Hide", + "item.beefRaw.name": "Raw Beef", + "item.beefCooked.name": "Steak", + "item.painting.name": "Painting", + "item.frame.name": "Item Frame", + "item.appleGold.name": "Golden Apple", + "item.sign.name": "Sign", + "item.doorOak.name": "Oak Door", + "item.doorSpruce.name": "Spruce Door", + "item.doorBirch.name": "Birch Door", + "item.doorJungle.name": "Jungle Door", + "item.doorAcacia.name": "Acacia Door", + "item.doorDarkOak.name": "Dark Oak Door", + "item.bucket.name": "Bucket", + "item.bucketWater.name": "Water Bucket", + "item.bucketLava.name": "Lava Bucket", + "item.minecart.name": "Minecart", + "item.saddle.name": "Saddle", + "item.doorIron.name": "Iron Door", + "item.redstone.name": "Redstone", + "item.snowball.name": "Snowball", + "item.boat.name": "Boat", + "item.leather.name": "Leather", + "item.milk.name": "Milk", + "item.brick.name": "Brick", + "item.clay.name": "Clay", + "item.reeds.name": "Sugar Canes", + "item.paper.name": "Paper", + "item.book.name": "Book", + "item.slimeball.name": "Slimeball", + "item.minecartChest.name": "Minecart with Chest", + "item.minecartFurnace.name": "Minecart with Furnace", + "item.minecartTnt.name": "Minecart with TNT", + "item.minecartHopper.name": "Minecart with Hopper", + "item.minecartCommandBlock.name": "Minecart with Command Block", + "item.egg.name": "Egg", + "item.compass.name": "Compass", + "item.fishingRod.name": "Fishing Rod", + "item.clock.name": "Clock", + "item.yellowDust.name": "Glowstone Dust", + "item.fish.cod.raw.name": "Raw Fish", + "item.fish.salmon.raw.name": "Raw Salmon", + "item.fish.pufferfish.raw.name": "Pufferfish", + "item.fish.clownfish.raw.name": "Clownfish", + "item.fish.cod.cooked.name": "Cooked Fish", + "item.fish.salmon.cooked.name": "Cooked Salmon", + "item.record.name": "Music Disc", + "item.record.13.desc": "C418 - 13", + "item.record.cat.desc": "C418 - cat", + "item.record.blocks.desc": "C418 - blocks", + "item.record.chirp.desc": "C418 - chirp", + "item.record.far.desc": "C418 - far", + "item.record.mall.desc": "C418 - mall", + "item.record.mellohi.desc": "C418 - mellohi", + "item.record.stal.desc": "C418 - stal", + "item.record.strad.desc": "C418 - strad", + "item.record.ward.desc": "C418 - ward", + "item.record.11.desc": "C418 - 11", + "item.record.wait.desc": "C418 - wait", + "item.bone.name": "Bone", + "item.dyePowder.black.name": "Ink Sac", + "item.dyePowder.red.name": "Rose Red", + "item.dyePowder.green.name": "Cactus Green", + "item.dyePowder.brown.name": "Cocoa Beans", + "item.dyePowder.blue.name": "Lapis Lazuli", + "item.dyePowder.purple.name": "Purple Dye", + "item.dyePowder.cyan.name": "Cyan Dye", + "item.dyePowder.silver.name": "Light Gray Dye", + "item.dyePowder.gray.name": "Gray Dye", + "item.dyePowder.pink.name": "Pink Dye", + "item.dyePowder.lime.name": "Lime Dye", + "item.dyePowder.yellow.name": "Dandelion Yellow", + "item.dyePowder.lightBlue.name": "Light Blue Dye", + "item.dyePowder.magenta.name": "Magenta Dye", + "item.dyePowder.orange.name": "Orange Dye", + "item.dyePowder.white.name": "Bone Meal", + "item.sugar.name": "Sugar", + "item.cake.name": "Cake", + "item.bed.name": "Bed", + "item.diode.name": "Redstone Repeater", + "item.comparator.name": "Redstone Comparator", + "item.map.name": "Map", + "item.leaves.name": "Leaves", + "item.shears.name": "Shears", + "item.rottenFlesh.name": "Rotten Flesh", + "item.enderPearl.name": "Ender Pearl", + "item.blazeRod.name": "Blaze Rod", + "item.ghastTear.name": "Ghast Tear", + "item.netherStalkSeeds.name": "Nether Wart", + "item.potion.name": "Potion", + "item.emptyPotion.name": "Water Bottle", + "item.goldNugget.name": "Gold Nugget", + "item.glassBottle.name": "Glass Bottle", + "item.spiderEye.name": "Spider Eye", + "item.fermentedSpiderEye.name": "Fermented Spider Eye", + "item.blazePowder.name": "Blaze Powder", + "item.magmaCream.name": "Magma Cream", + "item.cauldron.name": "Cauldron", + "item.brewingStand.name": "Brewing Stand", + "item.eyeOfEnder.name": "Eye of Ender", + "item.speckledMelon.name": "Glistering Melon", + "item.monsterPlacer.name": "Spawn", + "item.expBottle.name": "Bottle o' Enchanting", + "item.fireball.name": "Fire Charge", + "item.writingBook.name": "Book and Quill", + "item.writtenBook.name": "Written Book", + "item.ruby.name": "Ruby", + "item.flowerPot.name": "Flower Pot", + "item.emptyMap.name": "Empty Map", + "item.carrots.name": "Carrot", + "item.carrotGolden.name": "Golden Carrot", + "item.potato.name": "Potato", + "item.potatoBaked.name": "Baked Potato", + "item.potatoPoisonous.name": "Poisonous Potato", + "item.skull.skeleton.name": "Skeleton Skull", + "item.skull.wither.name": "Wither Skeleton Skull", + "item.skull.zombie.name": "Zombie Head", + "item.skull.char.name": "Head", + "item.skull.player.name": "%s's Head", + "item.skull.creeper.name": "Creeper Head", + "item.carrotOnAStick.name": "Carrot on a Stick", + "item.netherStar.name": "Nether Star", + "item.pumpkinPie.name": "Pumpkin Pie", + "item.enchantedBook.name": "Enchanted Book", + "item.fireworks.name": "Firework Rocket", + "item.fireworks.flight": "Flight Duration:", + "item.fireworksCharge.name": "Firework Star", + "item.fireworksCharge.black": "Black", + "item.fireworksCharge.red": "Red", + "item.fireworksCharge.green": "Green", + "item.fireworksCharge.brown": "Brown", + "item.fireworksCharge.blue": "Blue", + "item.fireworksCharge.purple": "Purple", + "item.fireworksCharge.cyan": "Cyan", + "item.fireworksCharge.silver": "Light Gray", + "item.fireworksCharge.gray": "Gray", + "item.fireworksCharge.pink": "Pink", + "item.fireworksCharge.lime": "Lime", + "item.fireworksCharge.yellow": "Yellow", + "item.fireworksCharge.lightBlue": "Light Blue", + "item.fireworksCharge.magenta": "Magenta", + "item.fireworksCharge.orange": "Orange", + "item.fireworksCharge.white": "White", + "item.fireworksCharge.customColor": "Custom", + "item.fireworksCharge.fadeTo": "Fade to", + "item.fireworksCharge.flicker": "Twinkle", + "item.fireworksCharge.trail": "Trail", + "item.fireworksCharge.type.0": "Small Ball", + "item.fireworksCharge.type.1": "Large Ball", + "item.fireworksCharge.type.2": "Star-shaped", + "item.fireworksCharge.type.3": "Creeper-shaped", + "item.fireworksCharge.type.4": "Burst", + "item.fireworksCharge.type": "Unknown Shape", + "item.netherbrick.name": "Nether Brick", + "item.netherquartz.name": "Nether Quartz", + "item.armorStand.name": "Armor Stand", + "item.horsearmormetal.name": "Iron Horse Armor", + "item.horsearmorgold.name": "Gold Horse Armor", + "item.horsearmordiamond.name": "Diamond Horse Armor", + "item.prismarineShard.name": "Prismarine Shard", + "item.prismarineCrystals.name": "Prismarine Crystals", + "container.inventory": "Inventory", + "container.hopper": "Item Hopper", + "container.crafting": "Crafting", + "container.dispenser": "Dispenser", + "container.dropper": "Dropper", + "container.furnace": "Furnace", + "container.enchant": "Enchant", + "container.enchant.lapis.one": "1 Lapis Lazuli", + "container.enchant.lapis.many": "%d Lapis Lazuli", + "container.enchant.level.one": "1 Enchantment Level", + "container.enchant.level.many": "%d Enchantment Levels", + "container.enchant.clue": "%s . . . ?", + "container.repair": "Repair & Name", + "container.repair.cost": "Enchantment Cost: %1$d", + "container.repair.expensive": "Too Expensive!", + "container.creative": "Item Selection", + "container.brewing": "Brewing Stand", + "container.chest": "Chest", + "container.chestDouble": "Large Chest", + "container.minecart": "Minecart", + "container.enderchest": "Ender Chest", + "container.beacon": "Beacon", + "container.isLocked": "%s is locked!", + "item.dyed": "Dyed", + "item.unbreakable": "Unbreakable", + "item.canBreak": "Can break:", + "item.canPlace": "Can be placed on:", + "entity.Item.name": "Item", + "entity.XPOrb.name": "Experience Orb", + "entity.SmallFireball.name": "Small Fireball", + "entity.Fireball.name": "Fireball", + "entity.ThrownPotion.name": "Potion", + "entity.Arrow.name": "Arrow", + "entity.Snowball.name": "Snowball", + "entity.Painting.name": "Painting", + "entity.ArmorStand.name": "Armor Stand", + "entity.Mob.name": "Mob", + "entity.Monster.name": "Monster", + "entity.Creeper.name": "Creeper", + "entity.Skeleton.name": "Skeleton", + "entity.Spider.name": "Spider", + "entity.Giant.name": "Giant", + "entity.Zombie.name": "Zombie", + "entity.Slime.name": "Slime", + "entity.Ghast.name": "Ghast", + "entity.PigZombie.name": "Zombie Pigman", + "entity.Enderman.name": "Enderman", + "entity.Endermite.name": "Endermite", + "entity.Silverfish.name": "Silverfish", + "entity.CaveSpider.name": "Cave Spider", + "entity.Blaze.name": "Blaze", + "entity.LavaSlime.name": "Magma Cube", + "entity.MushroomCow.name": "Mooshroom", + "entity.Villager.name": "Villager", + "entity.VillagerGolem.name": "Iron Golem", + "entity.SnowMan.name": "Snow Golem", + "entity.EnderDragon.name": "Ender Dragon", + "entity.WitherBoss.name": "Wither", + "entity.Witch.name": "Witch", + "entity.Guardian.name": "Guardian", + "entity.Villager.farmer": "Farmer", + "entity.Villager.fisherman": "Fisherman", + "entity.Villager.shepherd": "Shepherd", + "entity.Villager.fletcher": "Fletcher", + "entity.Villager.librarian": "Librarian", + "entity.Villager.cleric": "Cleric", + "entity.Villager.armor": "Armorer", + "entity.Villager.weapon": "Weapon Smith", + "entity.Villager.tool": "Tool Smith", + "entity.Villager.butcher": "Butcher", + "entity.Villager.leather": "Leatherworker", + "entity.Pig.name": "Pig", + "entity.Sheep.name": "Sheep", + "entity.Cow.name": "Cow", + "entity.Chicken.name": "Chicken", + "entity.Squid.name": "Squid", + "entity.Wolf.name": "Wolf", + "entity.Ozelot.name": "Ocelot", + "entity.Cat.name": "Cat", + "entity.Bat.name": "Bat", + "entity.EntityHorse.name": "Horse", + "entity.horse.name": "Horse", + "entity.donkey.name": "Donkey", + "entity.mule.name": "Mule", + "entity.skeletonhorse.name": "Skeleton Horse", + "entity.zombiehorse.name": "Zombie Horse", + "entity.Rabbit.name": "Rabbit", + "entity.KillerBunny.name": "The Killer Bunny", + "entity.PrimedTnt.name": "Block of TNT", + "entity.FallingSand.name": "Falling Block", + "entity.Minecart.name": "Minecart", + "entity.Boat.name": "Boat", + "entity.generic.name": "unknown", + "death.fell.accident.ladder": "%1$s fell off a ladder", + "death.fell.accident.vines": "%1$s fell off some vines", + "death.fell.accident.water": "%1$s fell out of the water", + "death.fell.accident.generic": "%1$s fell from a high place", + "death.fell.killer": "%1$s was doomed to fall", + "death.fell.assist": "%1$s was doomed to fall by %2$s", + "death.fell.assist.item": "%1$s was doomed to fall by %2$s using %3$s", + "death.fell.finish": "%1$s fell too far and was finished by %2$s", + "death.fell.finish.item": "%1$s fell too far and was finished by %2$s using %3$s", + "death.attack.lightningBolt": "%1$s was struck by lightning", + "death.attack.inFire": "%1$s went up in flames", + "death.attack.inFire.player": "%1$s walked into fire whilst fighting %2$s", + "death.attack.onFire": "%1$s burned to death", + "death.attack.onFire.player": "%1$s was burnt to a crisp whilst fighting %2$s", + "death.attack.lava": "%1$s tried to swim in lava", + "death.attack.lava.player": "%1$s tried to swim in lava to escape %2$s", + "death.attack.inWall": "%1$s suffocated in a wall", + "death.attack.drown": "%1$s drowned", + "death.attack.drown.player": "%1$s drowned whilst trying to escape %2$s", + "death.attack.starve": "%1$s starved to death", + "death.attack.cactus": "%1$s was pricked to death", + "death.attack.cactus.player": "%1$s walked into a cactus whilst trying to escape %2$s", + "death.attack.generic": "%1$s died", + "death.attack.explosion": "%1$s blew up", + "death.attack.explosion.player": "%1$s was blown up by %2$s", + "death.attack.magic": "%1$s was killed by magic", + "death.attack.wither": "%1$s withered away", + "death.attack.anvil": "%1$s was squashed by a falling anvil", + "death.attack.fallingBlock": "%1$s was squashed by a falling block", + "death.attack.mob": "%1$s was slain by %2$s", + "death.attack.player": "%1$s was slain by %2$s", + "death.attack.player.item": "%1$s was slain by %2$s using %3$s", + "death.attack.arrow": "%1$s was shot by %2$s", + "death.attack.arrow.item": "%1$s was shot by %2$s using %3$s", + "death.attack.fireball": "%1$s was fireballed by %2$s", + "death.attack.fireball.item": "%1$s was fireballed by %2$s using %3$s", + "death.attack.thrown": "%1$s was pummeled by %2$s", + "death.attack.thrown.item": "%1$s was pummeled by %2$s using %3$s", + "death.attack.indirectMagic": "%1$s was killed by %2$s using magic", + "death.attack.indirectMagic.item": "%1$s was killed by %2$s using %3$s", + "death.attack.thorns": "%1$s was killed trying to hurt %2$s", + "death.attack.fall": "%1$s hit the ground too hard", + "death.attack.outOfWorld": "%1$s fell out of the world", + "deathScreen.respawn": "Respawn", + "deathScreen.deleteWorld": "Delete world", + "deathScreen.titleScreen": "Title screen", + "deathScreen.score": "Score", + "deathScreen.title.hardcore": "Game over!", + "deathScreen.hardcoreInfo": "You cannot respawn in hardcore mode!", + "deathScreen.title": "You died!", + "deathScreen.leaveServer": "Leave server", + "deathScreen.quit.confirm": "Are you sure you want to quit?", + "potion.effects.whenDrank": "When Applied:", + "potion.empty": "No Effects", + "potion.moveSpeed": "Speed", + "potion.moveSlowdown": "Slowness", + "potion.digSpeed": "Haste", + "potion.digSlowDown": "Mining Fatigue", + "potion.damageBoost": "Strength", + "potion.heal": "Instant Health", + "potion.harm": "Instant Damage", + "potion.jump": "Jump Boost", + "potion.confusion": "Nausea", + "potion.regeneration": "Regeneration", + "potion.resistance": "Resistance", + "potion.fireResistance": "Fire Resistance", + "potion.waterBreathing": "Water Breathing", + "potion.invisibility": "Invisibility", + "potion.blindness": "Blindness", + "potion.nightVision": "Night Vision", + "potion.hunger": "Hunger", + "potion.weakness": "Weakness", + "potion.poison": "Poison", + "potion.wither": "Wither", + "potion.healthBoost": "Health Boost", + "potion.absorption": "Absorption", + "potion.saturation": "Saturation", + "potion.moveSpeed.postfix": "Potion of Swiftness", + "potion.moveSlowdown.postfix": "Potion of Slowness", + "potion.digSpeed.postfix": "Potion of Haste", + "potion.digSlowDown.postfix": "Potion of Dullness", + "potion.damageBoost.postfix": "Potion of Strength", + "potion.weakness.postfix": "Potion of Weakness", + "potion.heal.postfix": "Potion of Healing", + "potion.harm.postfix": "Potion of Harming", + "potion.jump.postfix": "Potion of Leaping", + "potion.confusion.postfix": "Potion of Nausea", + "potion.regeneration.postfix": "Potion of Regeneration", + "potion.resistance.postfix": "Potion of Resistance", + "potion.fireResistance.postfix": "Potion of Fire Resistance", + "potion.waterBreathing.postfix": "Potion of Water Breathing", + "potion.invisibility.postfix": "Potion of Invisibility", + "potion.blindness.postfix": "Potion of Blindness", + "potion.nightVision.postfix": "Potion of Night Vision", + "potion.hunger.postfix": "Potion of Hunger", + "potion.poison.postfix": "Potion of Poison", + "potion.wither.postfix": "Potion of Decay", + "potion.healthBoost.postfix": "Potion of Health Boost", + "potion.absorption.postfix": "Potion of Absorption", + "potion.saturation.postfix": "Potion of Saturation", + "potion.potency.1": "II", + "potion.potency.2": "III", + "potion.potency.3": "IV", + "potion.prefix.grenade": "Splash", + "potion.prefix.mundane": "Mundane", + "potion.prefix.uninteresting": "Uninteresting", + "potion.prefix.bland": "Bland", + "potion.prefix.clear": "Clear", + "potion.prefix.milky": "Milky", + "potion.prefix.diffuse": "Diffuse", + "potion.prefix.artless": "Artless", + "potion.prefix.thin": "Thin", + "potion.prefix.awkward": "Awkward", + "potion.prefix.flat": "Flat", + "potion.prefix.bulky": "Bulky", + "potion.prefix.bungling": "Bungling", + "potion.prefix.buttered": "Buttered", + "potion.prefix.smooth": "Smooth", + "potion.prefix.suave": "Suave", + "potion.prefix.debonair": "Debonair", + "potion.prefix.thick": "Thick", + "potion.prefix.elegant": "Elegant", + "potion.prefix.fancy": "Fancy", + "potion.prefix.charming": "Charming", + "potion.prefix.dashing": "Dashing", + "potion.prefix.refined": "Refined", + "potion.prefix.cordial": "Cordial", + "potion.prefix.sparkling": "Sparkling", + "potion.prefix.potent": "Potent", + "potion.prefix.foul": "Foul", + "potion.prefix.odorless": "Odorless", + "potion.prefix.rank": "Rank", + "potion.prefix.harsh": "Harsh", + "potion.prefix.acrid": "Acrid", + "potion.prefix.gross": "Gross", + "potion.prefix.stinky": "Stinky", + "enchantment.damage.all": "Sharpness", + "enchantment.damage.undead": "Smite", + "enchantment.damage.arthropods": "Bane of Arthropods", + "enchantment.knockback": "Knockback", + "enchantment.fire": "Fire Aspect", + "enchantment.protect.all": "Protection", + "enchantment.protect.fire": "Fire Protection", + "enchantment.protect.fall": "Feather Falling", + "enchantment.protect.explosion": "Blast Protection", + "enchantment.protect.projectile": "Projectile Protection", + "enchantment.oxygen": "Respiration", + "enchantment.waterWorker": "Aqua Affinity", + "enchantment.waterWalker": "Depth Strider", + "enchantment.digging": "Efficiency", + "enchantment.untouching": "Silk Touch", + "enchantment.durability": "Unbreaking", + "enchantment.lootBonus": "Looting", + "enchantment.lootBonusDigger": "Fortune", + "enchantment.lootBonusFishing": "Luck of the Sea", + "enchantment.fishingSpeed": "Lure", + "enchantment.arrowDamage": "Power", + "enchantment.arrowFire": "Flame", + "enchantment.arrowKnockback": "Punch", + "enchantment.arrowInfinite": "Infinity", + "enchantment.thorns": "Thorns", + "enchantment.level.1": "I", + "enchantment.level.2": "II", + "enchantment.level.3": "III", + "enchantment.level.4": "IV", + "enchantment.level.5": "V", + "enchantment.level.6": "VI", + "enchantment.level.7": "VII", + "enchantment.level.8": "VIII", + "enchantment.level.9": "IX", + "enchantment.level.10": "X", + "gui.achievements": "Achievements", + "gui.stats": "Statistics", + "stats.tooltip.type.achievement": "Achievement", + "stats.tooltip.type.statistic": "Statistic", + "stat.generalButton": "General", + "stat.blocksButton": "Blocks", + "stat.itemsButton": "Items", + "stat.mobsButton": "Mobs", + "stat.used": "Times Used", + "stat.mined": "Times Mined", + "stat.depleted": "Times Depleted", + "stat.crafted": "Times Crafted", + "stat.entityKills": "You killed %d %s", + "stat.entityKilledBy": "%s killed you %d time(s)", + "stat.entityKills.none": "You have never killed %s", + "stat.entityKilledBy.none": "You have never been killed by %s", + "stat.startGame": "Times played", + "stat.createWorld": "Worlds created", + "stat.loadWorld": "Saves loaded", + "stat.joinMultiplayer": "Multiplayer joins", + "stat.leaveGame": "Games quit", + "stat.playOneMinute": "Minutes Played", + "stat.timeSinceDeath": "Since Last Death", + "stat.walkOneCm": "Distance Walked", + "stat.crouchOneCm": "Distance Crouched", + "stat.sprintOneCm": "Distance Sprinted", + "stat.fallOneCm": "Distance Fallen", + "stat.swimOneCm": "Distance Swum", + "stat.flyOneCm": "Distance Flown", + "stat.climbOneCm": "Distance Climbed", + "stat.diveOneCm": "Distance Dove", + "stat.minecartOneCm": "Distance by Minecart", + "stat.boatOneCm": "Distance by Boat", + "stat.pigOneCm": "Distance by Pig", + "stat.horseOneCm": "Distance by Horse", + "stat.jump": "Jumps", + "stat.drop": "Items Dropped", + "stat.damageDealt": "Damage Dealt", + "stat.damageTaken": "Damage Taken", + "stat.deaths": "Number of Deaths", + "stat.mobKills": "Mob Kills", + "stat.animalsBred": "Animals Bred", + "stat.playerKills": "Player Kills", + "stat.fishCaught": "Fish Caught", + "stat.treasureFished": "Treasure Fished", + "stat.junkFished": "Junk Fished", + "stat.talkedToVillager": "Talked to Villagers", + "stat.tradedWithVillager": "Traded with Villagers", + "stat.cakeSlicesEaten": "Cake Slices Eaten", + "stat.cauldronFilled": "Cauldrons Filled", + "stat.cauldronUsed": "Water Taken from Cauldron", + "stat.armorCleaned": "Armor Pieces Cleaned", + "stat.bannerCleaned": "Banners Cleaned", + "stat.brewingstandInteraction": "Interactions with Brewing Stand", + "stat.beaconInteraction": "Interactions with Beacon", + "stat.dropperInspected": "Droppers Searched", + "stat.hopperInspected": "Hoppers Searched", + "stat.dispenserInspected": "Dispensers Searched", + "stat.noteblockPlayed": "Noteblocks played", + "stat.noteblockTuned": "Noteblocks tuned", + "stat.flowerPotted": "Plants potted", + "stat.trappedChestTriggered": "Trapped Chests Triggered", + "stat.enderchestOpened": "Ender Chests Opened", + "stat.itemEnchanted": "Items Enchanted", + "stat.recordPlayed": "Records Played", + "stat.furnaceInteraction": "Interactions with Furnace", + "stat.workbenchInteraction": "Interactions with Crafting Table", + "stat.chestOpened": "Chests Opened", + "stat.mineBlock": "%1$s Mined", + "stat.craftItem": "%1$s Crafted", + "stat.useItem": "%1$s Used", + "stat.breakItem": "%1$s Depleted", + "achievement.get": "Achievement get!", + "achievement.taken": "Taken!", + "achievement.unknown": "???", + "achievement.requires": "Requires '%1$s'", + "achievement.openInventory": "Taking Inventory", + "achievement.openInventory.desc": "Press '%1$s' to open your inventory.", + "achievement.mineWood": "Getting Wood", + "achievement.mineWood.desc": "Attack a tree until a block of wood pops out", + "achievement.buildWorkBench": "Benchmarking", + "achievement.buildWorkBench.desc": "Craft a workbench with four blocks of planks", + "achievement.buildPickaxe": "Time to Mine!", + "achievement.buildPickaxe.desc": "Use planks and sticks to make a pickaxe", + "achievement.buildFurnace": "Hot Topic", + "achievement.buildFurnace.desc": "Construct a furnace out of eight stone blocks", + "achievement.acquireIron": "Acquire Hardware", + "achievement.acquireIron.desc": "Smelt an iron ingot", + "achievement.buildHoe": "Time to Farm!", + "achievement.buildHoe.desc": "Use planks and sticks to make a hoe", + "achievement.makeBread": "Bake Bread", + "achievement.makeBread.desc": "Turn wheat into bread", + "achievement.bakeCake": "The Lie", + "achievement.bakeCake.desc": "Wheat, sugar, milk and eggs!", + "achievement.buildBetterPickaxe": "Getting an Upgrade", + "achievement.buildBetterPickaxe.desc": "Construct a better pickaxe", + "achievement.overpowered": "Overpowered", + "achievement.overpowered.desc": "Build a Notch apple", + "achievement.cookFish": "Delicious Fish", + "achievement.cookFish.desc": "Catch and cook fish!", + "achievement.onARail": "On A Rail", + "achievement.onARail.desc": "Travel by minecart at least 1 km from where you started", + "achievement.buildSword": "Time to Strike!", + "achievement.buildSword.desc": "Use planks and sticks to make a sword", + "achievement.killEnemy": "Monster Hunter", + "achievement.killEnemy.desc": "Attack and destroy a monster", + "achievement.killCow": "Cow Tipper", + "achievement.killCow.desc": "Harvest some leather", + "achievement.breedCow": "Repopulation", + "achievement.breedCow.desc": "Breed two cows with wheat", + "achievement.flyPig": "When Pigs Fly", + "achievement.flyPig.desc": "Fly a pig off a cliff", + "achievement.snipeSkeleton": "Sniper Duel", + "achievement.snipeSkeleton.desc": "Kill a skeleton with an arrow from more than 50 meters", + "achievement.diamonds": "DIAMONDS!", + "achievement.diamonds.desc": "Acquire diamonds with your iron tools", + "achievement.diamondsToYou": "Diamonds to you!", + "achievement.diamondsToYou.desc": "Throw diamonds at another player.", + "achievement.portal": "We Need to Go Deeper", + "achievement.portal.desc": "Build a portal to the Nether", + "achievement.ghast": "Return to Sender", + "achievement.ghast.desc": "Destroy a Ghast with a fireball", + "achievement.blazeRod": "Into Fire", + "achievement.blazeRod.desc": "Relieve a Blaze of its rod", + "achievement.potion": "Local Brewery", + "achievement.potion.desc": "Brew a potion", + "achievement.theEnd": "The End?", + "achievement.theEnd.desc": "Locate the End", + "achievement.theEnd2": "The End.", + "achievement.theEnd2.desc": "Defeat the Ender Dragon", + "achievement.spawnWither": "The Beginning?", + "achievement.spawnWither.desc": "Spawn the Wither", + "achievement.killWither": "The Beginning.", + "achievement.killWither.desc": "Kill the Wither", + "achievement.fullBeacon": "Beaconator", + "achievement.fullBeacon.desc": "Create a full beacon", + "achievement.exploreAllBiomes": "Adventuring Time", + "achievement.exploreAllBiomes.desc": "Discover all biomes", + "achievement.enchantments": "Enchanter", + "achievement.enchantments.desc": "Use a book, obsidian and diamonds to construct an enchantment table", + "achievement.overkill": "Overkill", + "achievement.overkill.desc": "Deal nine hearts of damage in a single hit", + "achievement.bookcase": "Librarian", + "achievement.bookcase.desc": "Build some bookshelves to improve your enchantment table", + "commands.generic.exception": "An unknown error occurred while attempting to perform this command", + "commands.generic.permission": "You do not have permission to use this command", + "commands.generic.syntax": "Invalid command syntax", + "commands.generic.player.notFound": "That player cannot be found", + "commands.generic.entity.notFound": "That entity cannot be found", + "commands.generic.entity.invalidUuid": "The entity UUID provided is in an invalid format", + "commands.generic.entity.invalidType": "Entity type '%s' is invalid", + "commands.generic.notFound": "Unknown command. Try /help for a list of commands", + "commands.generic.parameter.invalid": "'%s' is not a valid parameter", + "commands.generic.num.invalid": "'%s' is not a valid number", + "commands.generic.boolean.invalid": "'%s' is not true or false", + "commands.generic.num.tooSmall": "The number you have entered (%d) is too small, it must be at least %d", + "commands.generic.num.tooBig": "The number you have entered (%d) is too big, it must be at most %d", + "commands.generic.double.tooSmall": "The number you have entered (%.2f) is too small, it must be at least %.2f", + "commands.generic.double.tooBig": "The number you have entered (%.2f) is too big, it must be at most %.2f", + "commands.generic.usage": "Usage: %s", + "commands.setidletimeout.usage": "/setidletimeout ", + "commands.setidletimeout.success": "Successfully set the idle timeout to %d minutes.", + "commands.xp.failure.widthdrawXp": "Cannot give player negative experience points", + "commands.xp.success": "Given %d experience to %s", + "commands.xp.success.levels": "Given %d levels to %s", + "commands.xp.success.negative.levels": "Taken %d levels from %s", + "commands.xp.usage": "/xp [player] OR /xp L [player]", + "commands.playsound.usage": "/playsound [x] [y] [z] [volume] [pitch] [minimumVolume]", + "commands.playsound.success": "Played sound '%s' to %s", + "commands.playsound.playerTooFar": "Player %s is too far away to hear the sound", + "commands.give.usage": "/give [amount] [data] [dataTag]", + "commands.give.item.notFound": "There is no such item with name %d", + "commands.give.block.notFound": "There is no such block with name %d", + "commands.give.success": "Given %s * %d to %s", + "commands.give.tagError": "Data tag parsing failed: %s", + "commands.replaceitem.usage": "/replaceitem ...", + "commands.replaceitem.entity.usage": "/replaceitem entity [amount] [data] [dataTag]", + "commands.replaceitem.block.usage": "/replaceitem block [amount] [data] [dataTag]", + "commands.replaceitem.tagError": "Data tag parsing failed: %s", + "commands.replaceitem.noContainer": "Block at %d, %d, %d is not a container", + "commands.replaceitem.failed": "Could not replace slot %d with %d * %s", + "commands.replaceitem.success": "Replaced slot %d with %d * %s", + "commands.stats.usage": "/stats ...", + "commands.stats.entity.usage": "/stats entity ", + "commands.stats.entity.set.usage": "/stats entity set ", + "commands.stats.entity.clear.usage": "/stats entity clear ", + "commands.stats.block.usage": "/stats block ...", + "commands.stats.block.set.usage": "/stats block set ", + "commands.stats.block.clear.usage": "/stats block clear ", + "commands.stats.noCompatibleBlock": "Block at %d, %d, %d can not track stats", + "commands.stats.failed": "Invalid parameters", + "commands.stats.cleared": "Cleared %s stats", + "commands.stats.success": "Storing %s stats in %s on %s", + "commands.summon.usage": "/summon [x] [y] [z] [dataTag]", + "commands.summon.success": "Object successfully summoned", + "commands.summon.failed": "Unable to summon object", + "commands.summon.tagError": "Data tag parsing failed: %s", + "commands.summon.outOfWorld": "Cannot summon the object out of the world", + "commands.testforblock.usage": "/testforblock [dataValue] [dataTag]", + "commands.testforblock.failed.tile": "The block at %d,%d,%d is %s (expected: %s).", + "commands.testforblock.failed.data": "The block at %d,%d,%d had the data value of %s (expected: %s).", + "commands.testforblock.failed.nbt": "The block at %d,%d,%d did not have the required NBT keys.", + "commands.testforblock.failed.tileEntity": "The block at %d,%d,%d is not a tile entity and cannot support tag matching.", + "commands.testforblock.success": "Successfully found the block at %d,%d,%d.", + "commands.testforblock.outOfWorld": "Cannot test for block outside of the world", + "commands.setblock.usage": "/setblock [dataValue] [oldBlockHandling] [dataTag]", + "commands.setblock.success": "Block placed", + "commands.setblock.failed": "Unable to place block", + "commands.setblock.tagError": "Data tag parsing failed: %s", + "commands.setblock.outOfWorld": "Cannot place block outside of the world", + "commands.setblock.notFound": "There is no such block with ID/name %s", + "commands.setblock.noChange": "The block couldn't be placed", + "commands.fill.usage": "/fill [dataValue] [oldBlockHandling] [dataTag]", + "commands.fill.outOfWorld": "Cannot place blocks outside of the world", + "commands.fill.tagError": "Data tag parsing failed: %s", + "commands.fill.success": "%d blocks filled", + "commands.fill.failed": "No blocks filled", + "commands.fill.tooManyBlocks": "Too many blocks in the specified area (%d > %d)", + "commands.clone.usage": "/clone [maskMode] [cloneMode]", + "commands.clone.outOfWorld": "Cannot access blocks outside of the world", + "commands.clone.noOverlap": "Source and destination can not overlap", + "commands.clone.success": "%d blocks cloned", + "commands.clone.failed": "No blocks cloned", + "commands.clone.tooManyBlocks": "Too many blocks in the specified area (%d > %d)", + "commands.compare.usage": "/testforblocks [mode]", + "commands.compare.outOfWorld": "Cannot access blocks outside of the world", + "commands.compare.failed": "Source and destination are not identical", + "commands.compare.success": "%d blocks compared", + "commands.compare.tooManyBlocks": "Too many blocks in the specified area (%d > %d)", + "commands.blockdata.usage": "/blockdata ", + "commands.blockdata.success": "Block data updated to: %s", + "commands.blockdata.tagError": "Data tag parsing failed: %s", + "commands.blockdata.outOfWorld": "Cannot change block outside of the world", + "commands.blockdata.notValid": "The target block is not a data holder block", + "commands.blockdata.failed": "The data tag did not change: %s", + "commands.entitydata.usage": "/entitydata ", + "commands.entitydata.success": "Entity data updated to: %s", + "commands.entitydata.tagError": "Data tag parsing failed: %s", + "commands.entitydata.noPlayers": "%s is a player and cannot be changed", + "commands.entitydata.failed": "The data tag did not change: %s", + "commands.effect.usage": "/effect [seconds] [amplifier] [hideParticles] OR /effect clear", + "commands.effect.notFound": "There is no such mob effect with ID %d", + "commands.effect.success": "Given %1$s (ID %2$d) * %3$d to %4$s for %5$d seconds", + "commands.effect.success.removed": "Took %1$s from %2$s", + "commands.effect.success.removed.all": "Took all effects from %s", + "commands.effect.failure.notActive": "Couldn't take %1$s from %2$s as they do not have the effect", + "commands.effect.failure.notActive.all": "Couldn't take any effects from %s as they do not have any", + "commands.enchant.usage": "/enchant [level]", + "commands.enchant.notFound": "There is no such enchantment with ID %d", + "commands.enchant.noItem": "The target doesn't hold an item", + "commands.enchant.cantEnchant": "The selected enchantment can't be added to the target item", + "commands.enchant.cantCombine": "%1$s can't be combined with %2$s", + "commands.enchant.success": "Enchanting succeeded", + "commands.particle.usage": "/particle [count] [mode]", + "commands.particle.success": "Playing effect %s for %d times", + "commands.particle.notFound": "Unknown effect name (%s)", + "commands.clear.usage": "/clear [player] [item] [data] [maxCount] [dataTag]", + "commands.clear.success": "Cleared the inventory of %s, removing %d items", + "commands.clear.testing": "%s has %d items that match the criteria", + "commands.clear.failure": "Could not clear the inventory of %s, no items to remove", + "commands.clear.tagError": "Data tag parsing failed: %s", + "commands.downfall.usage": "/toggledownfall", + "commands.downfall.success": "Toggled downfall", + "commands.time.usage": "/time ", + "commands.time.added": "Added %d to the time", + "commands.time.set": "Set the time to %d", + "commands.time.query": "Time is %d", + "commands.players.usage": "/list", + "commands.players.list": "There are %d/%d players online:", + "commands.banlist.ips": "There are %d total banned IP addresses:", + "commands.banlist.players": "There are %d total banned players:", + "commands.banlist.usage": "/banlist [ips|players]", + "commands.kill.usage": "/kill [player|entity]", + "commands.kill.successful": "Killed %s", + "commands.kick.success": "Kicked %s from the game", + "commands.kick.success.reason": "Kicked %s from the game: '%s'", + "commands.kick.usage": "/kick [reason ...]", + "commands.op.success": "Opped %s", + "commands.op.failed": "Could not op %s", + "commands.op.usage": "/op ", + "commands.deop.success": "De-opped %s", + "commands.deop.failed": "Could not de-op %s", + "commands.deop.usage": "/deop ", + "commands.say.usage": "/say ", + "commands.ban.success": "Banned player %s", + "commands.ban.failed": "Could not ban player %s", + "commands.ban.usage": "/ban [reason ...]", + "commands.unban.success": "Unbanned player %s", + "commands.unban.failed": "Could not unban player %s", + "commands.unban.usage": "/pardon ", + "commands.banip.invalid": "You have entered an invalid IP address or a player that is not online", + "commands.banip.success": "Banned IP address %s", + "commands.banip.success.players": "Banned IP address %s belonging to %s", + "commands.banip.usage": "/ban-ip [reason ...]", + "commands.unbanip.invalid": "You have entered an invalid IP address", + "commands.unbanip.success": "Unbanned IP address %s", + "commands.unbanip.usage": "/pardon-ip
", + "commands.save.usage": "/save-all", + "commands.save-on.alreadyOn": "Saving is already turned on.", + "commands.save-on.usage": "/save-on", + "commands.save-off.alreadyOff": "Saving is already turned off.", + "commands.save-off.usage": "/save-off", + "commands.save.enabled": "Turned on world auto-saving", + "commands.save.disabled": "Turned off world auto-saving", + "commands.save.start": "Saving...", + "commands.save.success": "Saved the world", + "commands.save.failed": "Saving failed: %s", + "commands.stop.usage": "/stop", + "commands.stop.start": "Stopping the server", + "commands.tp.success": "Teleported %s to %s", + "commands.tp.success.coordinates": "Teleported %s to %s, %s, %s", + "commands.tp.usage": "/tp [target player] OR /tp [target player] [ ]", + "commands.tp.notSameDimension": "Unable to teleport because players are not in the same dimension", + "commands.whitelist.list": "There are %d (out of %d seen) whitelisted players:", + "commands.whitelist.enabled": "Turned on the whitelist", + "commands.whitelist.disabled": "Turned off the whitelist", + "commands.whitelist.reloaded": "Reloaded the whitelist", + "commands.whitelist.add.success": "Added %s to the whitelist", + "commands.whitelist.add.failed": "Could not add %s to the whitelist", + "commands.whitelist.add.usage": "/whitelist add ", + "commands.whitelist.remove.success": "Removed %s from the whitelist", + "commands.whitelist.remove.failed": "Could not remove %s from the whitelist", + "commands.whitelist.remove.usage": "/whitelist remove ", + "commands.whitelist.usage": "/whitelist ", + "commands.scoreboard.usage": "/scoreboard ...", + "commands.scoreboard.noMultiWildcard": "Only one user wildcard allowed", + "commands.scoreboard.allMatchesFailed": "All matches failed", + "commands.scoreboard.teamNotFound": "No team was found by the name '%s'", + "commands.scoreboard.objectiveNotFound": "No objective was found by the name '%s'", + "commands.scoreboard.objectiveReadOnly": "The objective '%s' is read-only and cannot be set", + "commands.scoreboard.objectives.usage": "/scoreboard objectives ...", + "commands.scoreboard.objectives.setdisplay.usage": "/scoreboard objectives setdisplay [objective]", + "commands.scoreboard.objectives.setdisplay.invalidSlot": "No such display slot '%s'", + "commands.scoreboard.objectives.setdisplay.successCleared": "Cleared objective display slot '%s'", + "commands.scoreboard.objectives.setdisplay.successSet": "Set the display objective in slot '%s' to '%s'", + "commands.scoreboard.objectives.add.usage": "/scoreboard objectives add [display name ...]", + "commands.scoreboard.objectives.add.wrongType": "Invalid objective criteria type '%s'", + "commands.scoreboard.objectives.add.alreadyExists": "An objective with the name '%s' already exists", + "commands.scoreboard.objectives.add.tooLong": "The name '%s' is too long for an objective, it can be at most %d characters long", + "commands.scoreboard.objectives.add.displayTooLong": "The display name '%s' is too long for an objective, it can be at most %d characters long", + "commands.scoreboard.objectives.add.success": "Added new objective '%s' successfully", + "commands.scoreboard.objectives.remove.usage": "/scoreboard objectives remove ", + "commands.scoreboard.objectives.remove.success": "Removed objective '%s' successfully", + "commands.scoreboard.objectives.list.count": "Showing %d objective(s) on scoreboard:", + "commands.scoreboard.objectives.list.entry": "- %s: displays as '%s' and is type '%s'", + "commands.scoreboard.objectives.list.empty": "There are no objectives on the scoreboard", + "commands.scoreboard.players.usage": "/scoreboard players ...", + "commands.scoreboard.players.name.tooLong": "The name '%s' is too long for a player, it can be at most %d characters long", + "commands.scoreboard.players.set.success": "Set score of %s for player %s to %d", + "commands.scoreboard.players.set.tagMismatch": "The dataTag does not match for %s", + "commands.scoreboard.players.set.tagError": "Could not parse dataTag, reason: %s", + "commands.scoreboard.players.set.usage": "/scoreboard players set [dataTag]", + "commands.scoreboard.players.add.usage": "/scoreboard players add [dataTag]", + "commands.scoreboard.players.remove.usage": "/scoreboard players remove [dataTag]", + "commands.scoreboard.players.reset.usage": "/scoreboard players reset [objective]", + "commands.scoreboard.players.reset.success": "Reset scores of player %s", + "commands.scoreboard.players.resetscore.success": "Reset score %s of player %s", + "commands.scoreboard.players.list.usage": "/scoreboard players list [name]", + "commands.scoreboard.players.list.count": "Showing %d tracked players on the scoreboard:", + "commands.scoreboard.players.list.empty": "There are no tracked players on the scoreboard", + "commands.scoreboard.players.list.player.count": "Showing %d tracked objective(s) for %s:", + "commands.scoreboard.players.list.player.entry": "- %2$s: %1$d (%3$s)", + "commands.scoreboard.players.list.player.empty": "Player %s has no scores recorded", + "commands.scoreboard.players.enable.usage": "/scoreboard players enable ", + "commands.scoreboard.players.enable.success": "Enabled trigger %s for %s", + "commands.scoreboard.players.enable.noTrigger": "Objective %s is not a trigger", + "commands.scoreboard.players.test.usage": "/scoreboard players test ", + "commands.scoreboard.players.test.notFound": "No %s score for %s found", + "commands.scoreboard.players.test.failed": "Score %d is NOT in range %d to %d", + "commands.scoreboard.players.test.success": "Score %d is in range %d to %d", + "commands.scoreboard.players.operation.usage": "/scoreboard players operation ", + "commands.scoreboard.players.operation.notFound": "No %s score for %s found", + "commands.scoreboard.players.operation.invalidOperation": "Invalid operation %s", + "commands.scoreboard.players.operation.success": "Operation applied successfully", + "commands.scoreboard.teams.usage": "/scoreboard teams ...", + "commands.scoreboard.teams.add.usage": "/scoreboard teams add [display name ...]", + "commands.scoreboard.teams.add.alreadyExists": "A team with the name '%s' already exists", + "commands.scoreboard.teams.add.tooLong": "The name '%s' is too long for a team, it can be at most %d characters long", + "commands.scoreboard.teams.add.displayTooLong": "The display name '%s' is too long for a team, it can be at most %d characters long", + "commands.scoreboard.teams.add.success": "Added new team '%s' successfully", + "commands.scoreboard.teams.list.usage": "/scoreboard teams list [name]", + "commands.scoreboard.teams.list.count": "Showing %d teams on the scoreboard:", + "commands.scoreboard.teams.list.entry": "- %1$s: '%2$s' has %3$d players", + "commands.scoreboard.teams.list.empty": "There are no teams registered on the scoreboard", + "commands.scoreboard.teams.list.player.count": "Showing %d player(s) in team %s:", + "commands.scoreboard.teams.list.player.entry": "- %2$s: %1$d (%3$s)", + "commands.scoreboard.teams.list.player.empty": "Team %s has no players", + "commands.scoreboard.teams.empty.usage": "/scoreboard teams empty ", + "commands.scoreboard.teams.empty.alreadyEmpty": "Team %s is already empty, cannot remove nonexistant players", + "commands.scoreboard.teams.empty.success": "Removed all %d player(s) from team %s", + "commands.scoreboard.teams.remove.usage": "/scoreboard teams remove ", + "commands.scoreboard.teams.remove.success": "Removed team %s", + "commands.scoreboard.teams.join.usage": "/scoreboard teams join [player]", + "commands.scoreboard.teams.join.success": "Added %d player(s) to team %s: %s", + "commands.scoreboard.teams.join.failure": "Could not add %d player(s) to team %s: %s", + "commands.scoreboard.teams.leave.usage": "/scoreboard teams leave [player]", + "commands.scoreboard.teams.leave.success": "Removed %d player(s) from their teams: %s", + "commands.scoreboard.teams.leave.failure": "Could not remove %d player(s) from their teams: %s", + "commands.scoreboard.teams.leave.noTeam": "You are not in a team", + "commands.scoreboard.teams.option.usage": "/scoreboard teams option ", + "commands.scoreboard.teams.option.noValue": "Valid values for option %s are: %s", + "commands.scoreboard.teams.option.success": "Set option %s for team %s to %s", + "commands.execute.usage": "/execute OR /execute detect ", + "commands.execute.allInvocationsFailed": "All invocations failed: '%s'", + "commands.execute.failed": "Failed to execute '%s' as %s", + "commands.gamemode.success.self": "Set own game mode to %s", + "commands.gamemode.success.other": "Set %s's game mode to %s", + "commands.gamemode.usage": "/gamemode [player]", + "commands.defaultgamemode.usage": "/defaultgamemode ", + "commands.defaultgamemode.success": "The world's default game mode is now %s", + "commands.me.usage": "/me ", + "commands.help.header": "--- Showing help page %d of %d (/help ) ---", + "commands.help.footer": "Tip: Use the key while typing a command to auto-complete the command or its arguments", + "commands.help.usage": "/help [page|command name]", + "commands.trigger.usage": "/trigger ", + "commands.trigger.invalidObjective": "Invalid trigger name %s", + "commands.trigger.invalidMode": "Invalid trigger mode %s", + "commands.trigger.disabled": "Trigger %s is not enabled", + "commands.trigger.invalidPlayer": "Only players can use the /trigger command", + "commands.trigger.success": "Trigger %s changed with %s %s", + "commands.publish.usage": "/publish", + "commands.publish.started": "Local game hosted on port %s", + "commands.publish.failed": "Unable to host local game", + "commands.debug.start": "Started debug profiling", + "commands.debug.stop": "Stopped debug profiling after %.2f seconds (%d ticks)", + "commands.debug.notStarted": "Can't stop profiling when we haven't started yet!", + "commands.debug.usage": "/debug ", + "commands.chunkinfo.usage": "/chunkinfo [ ]", + "commands.chunkinfo.location": "Chunk location: (%d, %d, %d)", + "commands.chunkinfo.noChunk": "No chunk found at chunk position %d, %d, %d", + "commands.chunkinfo.notEmpty": "Chunk is not empty.", + "commands.chunkinfo.empty": "Chunk is empty.", + "commands.chunkinfo.notCompiled": "Chunk is not compiled.", + "commands.chunkinfo.compiled": "Chunk is compiled.", + "commands.chunkinfo.hasNoRenderableLayers": "Chunk has no renderable layers.", + "commands.chunkinfo.hasLayers": "Chunk has layers: %s", + "commands.chunkinfo.isEmpty": "Chunk has empty layers: %s", + "commands.chunkinfo.vertices": "%s layer's buffer contains %d vertices", + "commands.chunkinfo.data": "First 64 vertices are: %s", + "commands.tellraw.usage": "/tellraw ", + "commands.tellraw.jsonException": "Invalid json: %s", + "commands.message.usage": "/tell ", + "commands.message.sameTarget": "You can't send a private message to yourself!", + "commands.message.display.outgoing": "You whisper to %s: %s", + "commands.message.display.incoming": "%s whispers to you: %s", + "commands.difficulty.usage": "/difficulty ", + "commands.difficulty.success": "Set game difficulty to %s", + "commands.spawnpoint.usage": "/spawnpoint [player] [ ]", + "commands.spawnpoint.success": "Set %s's spawn point to (%d, %d, %d)", + "commands.setworldspawn.usage": "/setworldspawn [ ]", + "commands.setworldspawn.success": "Set the world spawn point to (%d, %d, %d)", + "commands.gamerule.usage": "/gamerule [value]", + "commands.gamerule.success": "Game rule has been updated", + "commands.gamerule.norule": "No game rule called '%s' is available", + "commands.gamerule.nopermission": "Only server owners can change '%s'", + "commands.weather.usage": "/weather [duration in seconds]", + "commands.weather.clear": "Changing to clear weather", + "commands.weather.rain": "Changing to rainy weather", + "commands.weather.thunder": "Changing to rain and thunder", + "commands.testfor.usage": "/testfor [dataTag]", + "commands.testfor.failure": "%s did not match the required data structure", + "commands.testfor.success": "Found %s", + "commands.testfor.tagError": "Data tag parsing failed: %s", + "commands.seed.usage": "/seed", + "commands.seed.success": "Seed: %s", + "commands.spreadplayers.usage": "/spreadplayers ", + "commands.spreadplayers.spreading.teams": "Spreading %s teams %s blocks around %s,%s (min %s blocks apart)", + "commands.spreadplayers.spreading.players": "Spreading %s players %s blocks around %s,%s (min %s blocks apart)", + "commands.spreadplayers.success.teams": "Successfully spread %s teams around %s,%s", + "commands.spreadplayers.success.players": "Successfully spread %s players around %s,%s", + "commands.spreadplayers.info.teams": "(Average distance between teams is %s blocks apart after %s iterations)", + "commands.spreadplayers.info.players": "(Average distance between players is %s blocks apart after %s iterations)", + "commands.spreadplayers.failure.teams": "Could not spread %s teams around %s,%s (too many players for space - try using spread of at most %s)", + "commands.spreadplayers.failure.players": "Could not spread %s players around %s,%s (too many players for space - try using spread of at most %s)", + "commands.achievement.usage": "/achievement [player]", + "commands.achievement.unknownAchievement": "Unknown achievement or statistic '%s'", + "commands.achievement.alreadyHave": "Player %s already has achievement %s", + "commands.achievement.dontHave": "Player %s doesn't have achievement %s", + "commands.achievement.give.success.all": "Successfully given all achievements to %s", + "commands.achievement.give.success.one": "Successfully given %s the stat %s", + "commands.achievement.take.success.all": "Successfully taken all achievements from %s", + "commands.achievement.take.success.one": "Successfully taken the stat %s from %s", + "commands.achievement.statTooLow": "Player %s does not have the stat %s", + "commands.worldborder.usage": "/worldborder ...", + "commands.worldborder.add.usage": "/worldborder add [timeInSeconds]", + "commands.worldborder.set.usage": "/worldborder set [timeInSeconds]", + "commands.worldborder.set.success": "Set world border to %s blocks wide (from %s blocks)", + "commands.worldborder.get.success": "World border is currently %s blocks wide", + "commands.worldborder.setSlowly.shrink.success": "Shrinking world border to %s blocks wide (down from %s blocks) over %s seconds", + "commands.worldborder.setSlowly.grow.success": "Growing world border to %s blocks wide (up from %s blocks) over %s seconds", + "commands.worldborder.center.usage": "/worldborder center ", + "commands.worldborder.center.success": "Set world border center to %s,%s", + "commands.worldborder.damage.usage": "/worldborder damage ", + "commands.worldborder.damage.buffer.usage": "/worldborder damage buffer ", + "commands.worldborder.damage.buffer.success": "Set world border damage buffer to %s blocks (from %s blocks)", + "commands.worldborder.damage.amount.usage": "/worldborder damage amount ", + "commands.worldborder.damage.amount.success": "Set world border damage amount to %s per block (from %s per block)", + "commands.worldborder.warning.usage": "/worldborder warning ", + "commands.worldborder.warning.time.usage": "/worldborder warning time ", + "commands.worldborder.warning.time.success": "Set world border warning to %s seconds away (from %s seconds)", + "commands.worldborder.warning.distance.usage": "/worldborder warning distance ", + "commands.worldborder.warning.distance.success": "Set world border warning to %s blocks away (from %s blocks)", + "commands.title.usage": "/title ...", + "commands.title.usage.title": "/title title|subtitle ", + "commands.title.usage.clear": "/title clear|reset", + "commands.title.usage.times": "/title times ", + "commands.title.success": "Title command successfully executed", + "itemGroup.buildingBlocks": "Building Blocks", + "itemGroup.decorations": "Decoration Blocks", + "itemGroup.redstone": "Redstone", + "itemGroup.transportation": "Transportation", + "itemGroup.misc": "Miscellaneous", + "itemGroup.search": "Search Items", + "itemGroup.food": "Foodstuffs", + "itemGroup.tools": "Tools", + "itemGroup.combat": "Combat", + "itemGroup.brewing": "Brewing", + "itemGroup.materials": "Materials", + "itemGroup.inventory": "Survival Inventory", + "inventory.binSlot": "Destroy Item", + "advMode.setCommand": "Set Console Command for Block", + "advMode.setCommand.success": "Command set: %s", + "advMode.command": "Console Command", + "advMode.nearestPlayer": "Use \"@p\" to target nearest player", + "advMode.randomPlayer": "Use \"@r\" to target random player", + "advMode.allPlayers": "Use \"@a\" to target all players", + "advMode.allEntities": "Use \"@e\" to target all entities", + "advMode.previousOutput": "Previous Output", + "advMode.notEnabled": "Command blocks are not enabled on this server", + "advMode.notAllowed": "Must be an opped player in creative mode", + "mount.onboard": "Press %1$s to dismount", + "build.tooHigh": "Height limit for building is %s blocks", + "attribute.modifier.plus.0": "+%d %s", + "attribute.modifier.plus.1": "+%d%% %s", + "attribute.modifier.plus.2": "+%d%% %s", + "attribute.modifier.take.0": "-%d %s", + "attribute.modifier.take.1": "-%d%% %s", + "attribute.modifier.take.2": "-%d%% %s", + "attribute.name.horse.jumpStrength": "Horse Jump Strength", + "attribute.name.zombie.spawnReinforcements": "Zombie Reinforcements", + "attribute.name.generic.maxHealth": "Max Health", + "attribute.name.generic.followRange": "Mob Follow Range", + "attribute.name.generic.knockbackResistance": "Knockback Resistance", + "attribute.name.generic.movementSpeed": "Speed", + "attribute.name.generic.attackDamage": "Attack Damage", + "screenshot.success": "Saved screenshot as %s", + "screenshot.failure": "Couldn't save screenshot: %s", + "stream.user.mode.moderator": "Moderator", + "stream.user.mode.moderator.self": "Moderator on your channel", + "stream.user.mode.moderator.other": "Moderator on %s's channel", + "stream.user.mode.broadcaster": "Broadcaster", + "stream.user.mode.broadcaster.self": "Broadcaster (You!)", + "stream.user.mode.broadcaster.other": "Broadcaster", + "stream.user.mode.administrator": "Twitch Administrator", + "stream.user.mode.staff": "Twitch Staff", + "stream.user.mode.banned": "Banned", + "stream.user.mode.banned.self": "Banned on your channel", + "stream.user.mode.banned.other": "Banned on %s's channel", + "stream.user.subscription.subscriber": "Subscriber", + "stream.user.subscription.subscriber.self": "Subscriber to your channel", + "stream.user.subscription.subscriber.other": "Subscriber to %s's channel", + "stream.user.subscription.turbo": "Twitch Turbo", + "stream.unavailable.title": "Twitch Broadcasting Unavailable", + "stream.unavailable.report_to_mojang": "Report to Mojang", + "stream.confirm_start": "Are you sure you want to start broadcasting?", + "stream.unavailable.account_not_bound": "Before you can broadcast Minecraft through Twitch, you will need to link your Twitch account on mojang.com. Would you like to do that now?", + "stream.unavailable.account_not_bound.okay": "Link Accounts", + "stream.unavailable.account_not_migrated": "Before you can broadcast Minecraft through Twitch, you will need to migrate your Minecraft account to a Mojang account. Would you like to do that now?", + "stream.unavailable.account_not_migrated.okay": "Migrate Account", + "stream.unavailable.failed_auth": "Authentication to Twitch failed. Please go to mojang.com and rebind your Twitch account.", + "stream.unavailable.failed_auth.okay": "Rebind Accounts", + "stream.unavailable.failed_auth_error": "Unable to authenticate to Twitch. Please try again later.", + "stream.unavailable.initialization_failure": "Unable to initialize the Twitch SDK.", + "stream.unavailable.initialization_failure.extra": "(Reason: %s)", + "stream.unavailable.library_arch_mismatch": "The custom java version used to launch Minecraft has a different architecture than the one used to run the launcher. Please make sure these are the same, either 32-bit or 64-bit for both.", + "stream.unavailable.library_failure": "Unable to load the libraries needed for the integrated Twitch broadcasting service.", + "stream.unavailable.no_fbo": "Your video card needs to support at least OpenGL version 3.0 or support Framebuffer Objects via an extension to use the integrated Twitch broadcasting.", + "stream.unavailable.no_fbo.version": "You are currently using: %s", + "stream.unavailable.no_fbo.blend": "Separate blending support via EXT is: %s", + "stream.unavailable.no_fbo.arb": "Framebuffer object support via ARB is: %s", + "stream.unavailable.no_fbo.ext": "Framebuffer object support via EXT is: %s", + "stream.unavailable.not_supported.windows": "Unfortunately the integrated Twitch broadcasting requires a newer version of Windows than you are on. You must have at least Windows Vista or newer.", + "stream.unavailable.not_supported.mac": "Unfortunately the integrated Twitch broadcasting on Mac requires a version of OSX newer than the one you are on. You must use 10.7 (Mac OS X Lion) or newer to be able to use this service. Would you like to visit apple.com to learn about upgrading?", + "stream.unavailable.not_supported.mac.okay": "Upgrade", + "stream.unavailable.not_supported.other": "Unfortunately the integrated Twitch broadcasting service requires Windows (Vista or newer) or Mac OS X (10.7/Lion or newer)", + "stream.unavailable.unknown": "Unfortunately you cannot broadcast to Twitch at this time. And we don't know why :'(", + "stream.unavailable.unknown.chat": "Could not start stream: %s", + "stream.unavailable.soundflower.chat": "Soundflower is required to be able to stream on Mac. %s", + "stream.unavailable.soundflower.chat.link": "Please click here to install it.", + "stream.userinfo.chatTooltip": "Click to manage user", + "stream.userinfo.timeout": "Timeout", + "stream.userinfo.ban": "Ban", + "stream.userinfo.unban": "Unban", + "stream.userinfo.mod": "Promote to Moderator", + "stream.userinfo.unmod": "Demote from Moderator", + "item.banner.black.name": "Black Banner", + "item.banner.red.name": "Red Banner", + "item.banner.green.name": "Green Banner", + "item.banner.brown.name": "Brown Banner", + "item.banner.blue.name": "Blue Banner", + "item.banner.purple.name": "Purple Banner", + "item.banner.cyan.name": "Cyan Banner", + "item.banner.silver.name": "Light Gray Banner", + "item.banner.gray.name": "Gray Banner", + "item.banner.pink.name": "Pink Banner", + "item.banner.lime.name": "Lime Banner", + "item.banner.yellow.name": "Yellow Banner", + "item.banner.lightBlue.name": "Light Blue Banner", + "item.banner.magenta.name": "Magenta Banner", + "item.banner.orange.name": "Orange Banner", + "item.banner.white.name": "White Banner", + "item.banner.square_bottom_left.black": "Black Base Dexter Canton", + "item.banner.square_bottom_left.red": "Red Base Dexter Canton", + "item.banner.square_bottom_left.green": "Green Base Dexter Canton", + "item.banner.square_bottom_left.brown": "Brown Base Dexter Canton", + "item.banner.square_bottom_left.blue": "Blue Base Dexter Canton", + "item.banner.square_bottom_left.purple": "Purple Base Dexter Canton", + "item.banner.square_bottom_left.cyan": "Cyan Base Dexter Canton", + "item.banner.square_bottom_left.silver": "Light Gray Base Dexter Canton", + "item.banner.square_bottom_left.gray": "Gray Base Dexter Canton", + "item.banner.square_bottom_left.pink": "Pink Base Dexter Canton", + "item.banner.square_bottom_left.lime": "Lime Base Dexter Canton", + "item.banner.square_bottom_left.yellow": "Yellow Base Dexter Canton", + "item.banner.square_bottom_left.lightBlue": "Light Blue Base Dexter Canton", + "item.banner.square_bottom_left.magenta": "Magenta Base Dexter Canton", + "item.banner.square_bottom_left.orange": "Orange Base Dexter Canton", + "item.banner.square_bottom_left.white": "White Base Dexter Canton", + "item.banner.square_bottom_right.black": "Black Base Sinister Canton", + "item.banner.square_bottom_right.red": "Red Base Sinister Canton", + "item.banner.square_bottom_right.green": "Green Base Sinister Canton", + "item.banner.square_bottom_right.brown": "Brown Base Sinister Canton", + "item.banner.square_bottom_right.blue": "Blue Base Sinister Canton", + "item.banner.square_bottom_right.purple": "Purple Base Sinister Canton", + "item.banner.square_bottom_right.cyan": "Cyan Base Sinister Canton", + "item.banner.square_bottom_right.silver": "Light Gray Base Sinister Canton", + "item.banner.square_bottom_right.gray": "Gray Base Sinister Canton", + "item.banner.square_bottom_right.pink": "Pink Base Sinister Canton", + "item.banner.square_bottom_right.lime": "Lime Base Sinister Canton", + "item.banner.square_bottom_right.yellow": "Yellow Base Sinister Canton", + "item.banner.square_bottom_right.lightBlue": "Light Blue Base Sinister Canton", + "item.banner.square_bottom_right.magenta": "Magenta Base Sinister Canton", + "item.banner.square_bottom_right.orange": "Orange Base Sinister Canton", + "item.banner.square_bottom_right.white": "White Base Sinister Canton", + "item.banner.square_top_left.black": "Black Chief Dexter Canton", + "item.banner.square_top_left.red": "Red Chief Dexter Canton", + "item.banner.square_top_left.green": "Green Chief Dexter Canton", + "item.banner.square_top_left.brown": "Brown Chief Dexter Canton", + "item.banner.square_top_left.blue": "Blue Chief Dexter Canton", + "item.banner.square_top_left.purple": "Purple Chief Dexter Canton", + "item.banner.square_top_left.cyan": "Cyan Chief Dexter Canton", + "item.banner.square_top_left.silver": "Light Gray Chief Dexter Canton", + "item.banner.square_top_left.gray": "Gray Chief Dexter Canton", + "item.banner.square_top_left.pink": "Pink Chief Dexter Canton", + "item.banner.square_top_left.lime": "Lime Chief Dexter Canton", + "item.banner.square_top_left.yellow": "Yellow Chief Dexter Canton", + "item.banner.square_top_left.lightBlue": "Light Blue Chief Dexter Canton", + "item.banner.square_top_left.magenta": "Magenta Chief Dexter Canton", + "item.banner.square_top_left.orange": "Orange Chief Dexter Canton", + "item.banner.square_top_left.white": "White Chief Dexter Canton", + "item.banner.square_top_right.black": "Black Chief Sinister Canton", + "item.banner.square_top_right.red": "Red Chief Sinister Canton", + "item.banner.square_top_right.green": "Green Chief Sinister Canton", + "item.banner.square_top_right.brown": "Brown Chief Sinister Canton", + "item.banner.square_top_right.blue": "Blue Chief Sinister Canton", + "item.banner.square_top_right.purple": "Purple Chief Sinister Canton", + "item.banner.square_top_right.cyan": "Cyan Chief Sinister Canton", + "item.banner.square_top_right.silver": "Light Gray Chief Sinister Canton", + "item.banner.square_top_right.gray": "Gray Chief Sinister Canton", + "item.banner.square_top_right.pink": "Pink Chief Sinister Canton", + "item.banner.square_top_right.lime": "Lime Chief Sinister Canton", + "item.banner.square_top_right.yellow": "Yellow Chief Sinister Canton", + "item.banner.square_top_right.lightBlue": "Light Blue Chief Sinister Canton", + "item.banner.square_top_right.magenta": "Magenta Chief Sinister Canton", + "item.banner.square_top_right.orange": "Orange Chief Sinister Canton", + "item.banner.square_top_right.white": "White Chief Sinister Canton", + "item.banner.stripe_bottom.black": "Black Base Fess", + "item.banner.stripe_bottom.red": "Red Base Fess", + "item.banner.stripe_bottom.green": "Green Base Fess", + "item.banner.stripe_bottom.brown": "Brown Base Fess", + "item.banner.stripe_bottom.blue": "Blue Base Fess", + "item.banner.stripe_bottom.purple": "Purple Base Fess", + "item.banner.stripe_bottom.cyan": "Cyan Base Fess", + "item.banner.stripe_bottom.silver": "Light Gray Base Fess", + "item.banner.stripe_bottom.gray": "Gray Base Fess", + "item.banner.stripe_bottom.pink": "Pink Base Fess", + "item.banner.stripe_bottom.lime": "Lime Base Fess", + "item.banner.stripe_bottom.yellow": "Yellow Base Fess", + "item.banner.stripe_bottom.lightBlue": "Light Blue Base Fess", + "item.banner.stripe_bottom.magenta": "Magenta Base Fess", + "item.banner.stripe_bottom.orange": "Orange Base Fess", + "item.banner.stripe_bottom.white": "White Base Fess", + "item.banner.stripe_top.black": "Black Chief Fess", + "item.banner.stripe_top.red": "Red Chief Fess", + "item.banner.stripe_top.green": "Green Chief Fess", + "item.banner.stripe_top.brown": "Brown Chief Fess", + "item.banner.stripe_top.blue": "Blue Chief Fess", + "item.banner.stripe_top.purple": "Purple Chief Fess", + "item.banner.stripe_top.cyan": "Cyan Chief Fess", + "item.banner.stripe_top.silver": "Light Gray Chief Fess", + "item.banner.stripe_top.gray": "Gray Chief Fess", + "item.banner.stripe_top.pink": "Pink Chief Fess", + "item.banner.stripe_top.lime": "Lime Chief Fess", + "item.banner.stripe_top.yellow": "Yellow Chief Fess", + "item.banner.stripe_top.lightBlue": "Light Blue Chief Fess", + "item.banner.stripe_top.magenta": "Magenta Chief Fess", + "item.banner.stripe_top.orange": "Orange Chief Fess", + "item.banner.stripe_top.white": "White Chief Fess", + "item.banner.stripe_left.black": "Black Pale Dexter", + "item.banner.stripe_left.red": "Red Pale Dexter", + "item.banner.stripe_left.green": "Green Pale Dexter", + "item.banner.stripe_left.brown": "Brown Pale Dexter", + "item.banner.stripe_left.blue": "Blue Pale Dexter", + "item.banner.stripe_left.purple": "Purple Pale Dexter", + "item.banner.stripe_left.cyan": "Cyan Pale Dexter", + "item.banner.stripe_left.silver": "Light Gray Pale Dexter", + "item.banner.stripe_left.gray": "Gray Pale Dexter", + "item.banner.stripe_left.pink": "Pink Pale Dexter", + "item.banner.stripe_left.lime": "Lime Pale Dexter", + "item.banner.stripe_left.yellow": "Yellow Pale Dexter", + "item.banner.stripe_left.lightBlue": "Light Blue Pale Dexter", + "item.banner.stripe_left.magenta": "Magenta Pale Dexter", + "item.banner.stripe_left.orange": "Orange Pale Dexter", + "item.banner.stripe_left.white": "White Pale Dexter", + "item.banner.stripe_right.black": "Black Pale Sinister", + "item.banner.stripe_right.red": "Red Pale Sinister", + "item.banner.stripe_right.green": "Green Pale Sinister", + "item.banner.stripe_right.brown": "Brown Pale Sinister", + "item.banner.stripe_right.blue": "Blue Pale Sinister", + "item.banner.stripe_right.purple": "Purple Pale Sinister", + "item.banner.stripe_right.cyan": "Cyan Pale Sinister", + "item.banner.stripe_right.silver": "Light Gray Pale Sinister", + "item.banner.stripe_right.gray": "Gray Pale Sinister", + "item.banner.stripe_right.pink": "Pink Pale Sinister", + "item.banner.stripe_right.lime": "Lime Pale Sinister", + "item.banner.stripe_right.yellow": "Yellow Pale Sinister", + "item.banner.stripe_right.lightBlue": "Light Blue Pale Sinister", + "item.banner.stripe_right.magenta": "Magenta Pale Sinister", + "item.banner.stripe_right.orange": "Orange Pale Sinister", + "item.banner.stripe_right.white": "White Pale Sinister", + "item.banner.stripe_center.black": "Black Pale", + "item.banner.stripe_center.red": "Red Pale", + "item.banner.stripe_center.green": "Green Pale", + "item.banner.stripe_center.brown": "Brown Pale", + "item.banner.stripe_center.blue": "Blue Pale", + "item.banner.stripe_center.purple": "Purple Pale", + "item.banner.stripe_center.cyan": "Cyan Pale", + "item.banner.stripe_center.silver": "Light Gray Pale", + "item.banner.stripe_center.gray": "Gray Pale", + "item.banner.stripe_center.pink": "Pink Pale", + "item.banner.stripe_center.lime": "Lime Pale", + "item.banner.stripe_center.yellow": "Yellow Pale", + "item.banner.stripe_center.lightBlue": "Light Blue Pale", + "item.banner.stripe_center.magenta": "Magenta Pale", + "item.banner.stripe_center.orange": "Orange Pale", + "item.banner.stripe_center.white": "White Pale", + "item.banner.stripe_middle.black": "Black Fess", + "item.banner.stripe_middle.red": "Red Fess", + "item.banner.stripe_middle.green": "Green Fess", + "item.banner.stripe_middle.brown": "Brown Fess", + "item.banner.stripe_middle.blue": "Blue Fess", + "item.banner.stripe_middle.purple": "Purple Fess", + "item.banner.stripe_middle.cyan": "Cyan Fess", + "item.banner.stripe_middle.silver": "Light Gray Fess", + "item.banner.stripe_middle.gray": "Gray Fess", + "item.banner.stripe_middle.pink": "Pink Fess", + "item.banner.stripe_middle.lime": "Lime Fess", + "item.banner.stripe_middle.yellow": "Yellow Fess", + "item.banner.stripe_middle.lightBlue": "Light Blue Fess", + "item.banner.stripe_middle.magenta": "Magenta Fess", + "item.banner.stripe_middle.orange": "Orange Fess", + "item.banner.stripe_middle.white": "White Fess", + "item.banner.stripe_downright.black": "Black Bend", + "item.banner.stripe_downright.red": "Red Bend", + "item.banner.stripe_downright.green": "Green Bend", + "item.banner.stripe_downright.brown": "Brown Bend", + "item.banner.stripe_downright.blue": "Blue Bend", + "item.banner.stripe_downright.purple": "Purple Bend", + "item.banner.stripe_downright.cyan": "Cyan Bend", + "item.banner.stripe_downright.silver": "Light Gray Bend", + "item.banner.stripe_downright.gray": "Gray Bend", + "item.banner.stripe_downright.pink": "Pink Bend", + "item.banner.stripe_downright.lime": "Lime Bend", + "item.banner.stripe_downright.yellow": "Yellow Bend", + "item.banner.stripe_downright.lightBlue": "Light Blue Bend", + "item.banner.stripe_downright.magenta": "Magenta Bend", + "item.banner.stripe_downright.orange": "Orange Bend", + "item.banner.stripe_downright.white": "White Bend", + "item.banner.stripe_downleft.black": "Black Bend Sinister", + "item.banner.stripe_downleft.red": "Red Bend Sinister", + "item.banner.stripe_downleft.green": "Green Bend Sinister", + "item.banner.stripe_downleft.brown": "Brown Bend Sinister", + "item.banner.stripe_downleft.blue": "Blue Bend Sinister", + "item.banner.stripe_downleft.purple": "Purple Bend Sinister", + "item.banner.stripe_downleft.cyan": "Cyan Bend Sinister", + "item.banner.stripe_downleft.silver": "Light Gray Bend Sinister", + "item.banner.stripe_downleft.gray": "Gray Bend Sinister", + "item.banner.stripe_downleft.pink": "Pink Bend Sinister", + "item.banner.stripe_downleft.lime": "Lime Bend Sinister", + "item.banner.stripe_downleft.yellow": "Yellow Bend Sinister", + "item.banner.stripe_downleft.lightBlue": "Light Blue Bend Sinister", + "item.banner.stripe_downleft.magenta": "Magenta Bend Sinister", + "item.banner.stripe_downleft.orange": "Orange Bend Sinister", + "item.banner.stripe_downleft.white": "White Bend Sinister", + "item.banner.small_stripes.black": "Black Paly", + "item.banner.small_stripes.red": "Red Paly", + "item.banner.small_stripes.green": "Green Paly", + "item.banner.small_stripes.brown": "Brown Paly", + "item.banner.small_stripes.blue": "Blue Paly", + "item.banner.small_stripes.purple": "Purple Paly", + "item.banner.small_stripes.cyan": "Cyan Paly", + "item.banner.small_stripes.silver": "Light Gray Paly", + "item.banner.small_stripes.gray": "Gray Paly", + "item.banner.small_stripes.pink": "Pink Paly", + "item.banner.small_stripes.lime": "Lime Paly", + "item.banner.small_stripes.yellow": "Yellow Paly", + "item.banner.small_stripes.lightBlue": "Light Blue Paly", + "item.banner.small_stripes.magenta": "Magenta Paly", + "item.banner.small_stripes.orange": "Orange Paly", + "item.banner.small_stripes.white": "White Paly", + "item.banner.cross.black": "Black Saltire", + "item.banner.cross.red": "Red Saltire", + "item.banner.cross.green": "Green Saltire", + "item.banner.cross.brown": "Brown Saltire", + "item.banner.cross.blue": "Blue Saltire", + "item.banner.cross.purple": "Purple Saltire", + "item.banner.cross.cyan": "Cyan Saltire", + "item.banner.cross.silver": "Light Gray Saltire", + "item.banner.cross.gray": "Gray Saltire", + "item.banner.cross.pink": "Pink Saltire", + "item.banner.cross.lime": "Lime Saltire", + "item.banner.cross.yellow": "Yellow Saltire", + "item.banner.cross.lightBlue": "Light Blue Saltire", + "item.banner.cross.magenta": "Magenta Saltire", + "item.banner.cross.orange": "Orange Saltire", + "item.banner.cross.white": "White Saltire", + "item.banner.triangle_bottom.black": "Black Chevron", + "item.banner.triangle_bottom.red": "Red Chevron", + "item.banner.triangle_bottom.green": "Green Chevron", + "item.banner.triangle_bottom.brown": "Brown Chevron", + "item.banner.triangle_bottom.blue": "Blue Chevron", + "item.banner.triangle_bottom.purple": "Purple Chevron", + "item.banner.triangle_bottom.cyan": "Cyan Chevron", + "item.banner.triangle_bottom.silver": "Light Gray Chevron", + "item.banner.triangle_bottom.gray": "Gray Chevron", + "item.banner.triangle_bottom.pink": "Pink Chevron", + "item.banner.triangle_bottom.lime": "Lime Chevron", + "item.banner.triangle_bottom.yellow": "Yellow Chevron", + "item.banner.triangle_bottom.lightBlue": "Light Blue Chevron", + "item.banner.triangle_bottom.magenta": "Magenta Chevron", + "item.banner.triangle_bottom.orange": "Orange Chevron", + "item.banner.triangle_bottom.white": "White Chevron", + "item.banner.triangle_top.black": "Black Inverted Chevron", + "item.banner.triangle_top.red": "Red Inverted Chevron", + "item.banner.triangle_top.green": "Green Inverted Chevron", + "item.banner.triangle_top.brown": "Brown Inverted Chevron", + "item.banner.triangle_top.blue": "Blue Inverted Chevron", + "item.banner.triangle_top.purple": "Purple Inverted Chevron", + "item.banner.triangle_top.cyan": "Cyan Inverted Chevron", + "item.banner.triangle_top.silver": "Light Gray Inverted Chevron", + "item.banner.triangle_top.gray": "Gray Inverted Chevron", + "item.banner.triangle_top.pink": "Pink Inverted Chevron", + "item.banner.triangle_top.lime": "Lime Inverted Chevron", + "item.banner.triangle_top.yellow": "Yellow Inverted Chevron", + "item.banner.triangle_top.lightBlue": "Light Blue Inverted Chevron", + "item.banner.triangle_top.magenta": "Magenta Inverted Chevron", + "item.banner.triangle_top.orange": "Orange Inverted Chevron", + "item.banner.triangle_top.white": "White Inverted Chevron", + "item.banner.triangles_bottom.black": "Black Base Indented", + "item.banner.triangles_bottom.red": "Red Base Indented", + "item.banner.triangles_bottom.green": "Green Base Indented", + "item.banner.triangles_bottom.brown": "Brown Base Indented", + "item.banner.triangles_bottom.blue": "Blue Base Indented", + "item.banner.triangles_bottom.purple": "Purple Base Indented", + "item.banner.triangles_bottom.cyan": "Cyan Base Indented", + "item.banner.triangles_bottom.silver": "Light Gray Base Indented", + "item.banner.triangles_bottom.gray": "Gray Base Indented", + "item.banner.triangles_bottom.pink": "Pink Base Indented", + "item.banner.triangles_bottom.lime": "Lime Base Indented", + "item.banner.triangles_bottom.yellow": "Yellow Base Indented", + "item.banner.triangles_bottom.lightBlue": "Light Blue Base Indented", + "item.banner.triangles_bottom.magenta": "Magenta Base Indented", + "item.banner.triangles_bottom.orange": "Orange Base Indented", + "item.banner.triangles_bottom.white": "White Base Indented", + "item.banner.triangles_top.black": "Black Chief Indented", + "item.banner.triangles_top.red": "Red Chief Indented", + "item.banner.triangles_top.green": "Green Chief Indented", + "item.banner.triangles_top.brown": "Brown Chief Indented", + "item.banner.triangles_top.blue": "Blue Chief Indented", + "item.banner.triangles_top.purple": "Purple Chief Indented", + "item.banner.triangles_top.cyan": "Cyan Chief Indented", + "item.banner.triangles_top.silver": "Light Gray Chief Indented", + "item.banner.triangles_top.gray": "Gray Chief Indented", + "item.banner.triangles_top.pink": "Pink Chief Indented", + "item.banner.triangles_top.lime": "Lime Chief Indented", + "item.banner.triangles_top.yellow": "Yellow Chief Indented", + "item.banner.triangles_top.lightBlue": "Light Blue Chief Indented", + "item.banner.triangles_top.magenta": "Magenta Chief Indented", + "item.banner.triangles_top.orange": "Orange Chief Indented", + "item.banner.triangles_top.white": "White Chief Indented", + "item.banner.diagonal_left.black": "Black Per Bend Sinister", + "item.banner.diagonal_left.red": "Red Per Bend Sinister", + "item.banner.diagonal_left.green": "Green Per Bend Sinister", + "item.banner.diagonal_left.brown": "Brown Per Bend Sinister", + "item.banner.diagonal_left.blue": "Blue Per Bend Sinister", + "item.banner.diagonal_left.purple": "Purple Per Bend Sinister", + "item.banner.diagonal_left.cyan": "Cyan Per Bend Sinister", + "item.banner.diagonal_left.silver": "Light Gray Per Bend Sinister", + "item.banner.diagonal_left.gray": "Gray Per Bend Sinister", + "item.banner.diagonal_left.pink": "Pink Per Bend Sinister", + "item.banner.diagonal_left.lime": "Lime Per Bend Sinister", + "item.banner.diagonal_left.yellow": "Yellow Per Bend Sinister", + "item.banner.diagonal_left.lightBlue": "Light Blue Per Bend Sinister", + "item.banner.diagonal_left.magenta": "Magenta Per Bend Sinister", + "item.banner.diagonal_left.orange": "Orange Per Bend Sinister", + "item.banner.diagonal_left.white": "White Per Bend Sinister", + "item.banner.diagonal_right.black": "Black Per Bend", + "item.banner.diagonal_right.red": "Red Per Bend", + "item.banner.diagonal_right.green": "Green Per Bend", + "item.banner.diagonal_right.brown": "Brown Per Bend", + "item.banner.diagonal_right.blue": "Blue Per Bend", + "item.banner.diagonal_right.purple": "Purple Per Bend", + "item.banner.diagonal_right.cyan": "Cyan Per Bend", + "item.banner.diagonal_right.silver": "Light Gray Per Bend", + "item.banner.diagonal_right.gray": "Gray Per Bend", + "item.banner.diagonal_right.pink": "Pink Per Bend", + "item.banner.diagonal_right.lime": "Lime Per Bend", + "item.banner.diagonal_right.yellow": "Yellow Per Bend", + "item.banner.diagonal_right.lightBlue": "Light Blue Per Bend", + "item.banner.diagonal_right.magenta": "Magenta Per Bend", + "item.banner.diagonal_right.orange": "Orange Per Bend", + "item.banner.diagonal_right.white": "White Per Bend", + "item.banner.diagonal_up_left.black": "Black Per Bend Inverted", + "item.banner.diagonal_up_left.red": "Red Per Bend Inverted", + "item.banner.diagonal_up_left.green": "Green Per Bend Inverted", + "item.banner.diagonal_up_left.brown": "Brown Per Bend Inverted", + "item.banner.diagonal_up_left.blue": "Blue Per Bend Inverted", + "item.banner.diagonal_up_left.purple": "Purple Per Bend Inverted", + "item.banner.diagonal_up_left.cyan": "Cyan Per Bend Inverted", + "item.banner.diagonal_up_left.silver": "Light Gray Per Bend Inverted", + "item.banner.diagonal_up_left.gray": "Gray Per Bend Inverted", + "item.banner.diagonal_up_left.pink": "Pink Per Bend Inverted", + "item.banner.diagonal_up_left.lime": "Lime Per Bend Inverted", + "item.banner.diagonal_up_left.yellow": "Yellow Per Bend Inverted", + "item.banner.diagonal_up_left.lightBlue": "Light Blue Per Bend Inverted", + "item.banner.diagonal_up_left.magenta": "Magenta Per Bend Inverted", + "item.banner.diagonal_up_left.orange": "Orange Per Bend Inverted", + "item.banner.diagonal_up_left.white": "White Per Bend Inverted", + "item.banner.diagonal_up_right.black": "Black Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.red": "Red Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.green": "Green Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.brown": "Brown Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.blue": "Blue Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.purple": "Purple Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.cyan": "Cyan Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.silver": "Light Gray Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.gray": "Gray Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.pink": "Pink Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.lime": "Lime Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.yellow": "Yellow Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.lightBlue": "Light Blue Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.magenta": "Magenta Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.orange": "Orange Per Bend Sinister Inverted", + "item.banner.diagonal_up_right.white": "White Per Bend Sinister Inverted", + "item.banner.circle.black": "Black Roundel", + "item.banner.circle.red": "Red Roundel", + "item.banner.circle.green": "Green Roundel", + "item.banner.circle.brown": "Brown Roundel", + "item.banner.circle.blue": "Blue Roundel", + "item.banner.circle.purple": "Purple Roundel", + "item.banner.circle.cyan": "Cyan Roundel", + "item.banner.circle.silver": "Light Gray Roundel", + "item.banner.circle.gray": "Gray Roundel", + "item.banner.circle.pink": "Pink Roundel", + "item.banner.circle.lime": "Lime Roundel", + "item.banner.circle.yellow": "Yellow Roundel", + "item.banner.circle.lightBlue": "Light Blue Roundel", + "item.banner.circle.magenta": "Magenta Roundel", + "item.banner.circle.orange": "Orange Roundel", + "item.banner.circle.white": "White Roundel", + "item.banner.rhombus.black": "Black Lozenge", + "item.banner.rhombus.red": "Red Lozenge", + "item.banner.rhombus.green": "Green Lozenge", + "item.banner.rhombus.brown": "Brown Lozenge", + "item.banner.rhombus.blue": "Blue Lozenge", + "item.banner.rhombus.purple": "Purple Lozenge", + "item.banner.rhombus.cyan": "Cyan Lozenge", + "item.banner.rhombus.silver": "Light Gray Lozenge", + "item.banner.rhombus.gray": "Gray Lozenge", + "item.banner.rhombus.pink": "Pink Lozenge", + "item.banner.rhombus.lime": "Lime Lozenge", + "item.banner.rhombus.yellow": "Yellow Lozenge", + "item.banner.rhombus.lightBlue": "Light Blue Lozenge", + "item.banner.rhombus.magenta": "Magenta Lozenge", + "item.banner.rhombus.orange": "Orange Lozenge", + "item.banner.rhombus.white": "White Lozenge", + "item.banner.half_vertical.black": "Black Per Pale", + "item.banner.half_vertical.red": "Red Per Pale", + "item.banner.half_vertical.green": "Green Per Pale", + "item.banner.half_vertical.brown": "Brown Per Pale", + "item.banner.half_vertical.blue": "Blue Per Pale", + "item.banner.half_vertical.purple": "Purple Per Pale", + "item.banner.half_vertical.cyan": "Cyan Per Pale", + "item.banner.half_vertical.silver": "Light Gray Per Pale", + "item.banner.half_vertical.gray": "Gray Per Pale", + "item.banner.half_vertical.pink": "Pink Per Pale", + "item.banner.half_vertical.lime": "Lime Per Pale", + "item.banner.half_vertical.yellow": "Yellow Per Pale", + "item.banner.half_vertical.lightBlue": "Light Blue Per Pale", + "item.banner.half_vertical.magenta": "Magenta Per Pale", + "item.banner.half_vertical.orange": "Orange Per Pale", + "item.banner.half_vertical.white": "White Per Pale", + "item.banner.half_horizontal.black": "Black Per Fess", + "item.banner.half_horizontal.red": "Red Per Fess", + "item.banner.half_horizontal.green": "Green Per Fess", + "item.banner.half_horizontal.brown": "Brown Per Fess", + "item.banner.half_horizontal.blue": "Blue Per Fess", + "item.banner.half_horizontal.purple": "Purple Per Fess", + "item.banner.half_horizontal.cyan": "Cyan Per Fess", + "item.banner.half_horizontal.silver": "Light Gray Per Fess", + "item.banner.half_horizontal.gray": "Gray Per Fess", + "item.banner.half_horizontal.pink": "Pink Per Fess", + "item.banner.half_horizontal.lime": "Lime Per Fess", + "item.banner.half_horizontal.yellow": "Yellow Per Fess", + "item.banner.half_horizontal.lightBlue": "Light Blue Per Fess", + "item.banner.half_horizontal.magenta": "Magenta Per Fess", + "item.banner.half_horizontal.orange": "Orange Per Fess", + "item.banner.half_horizontal.white": "White Per Fess", + "item.banner.half_vertical_right.black": "Black Per Pale Inverted", + "item.banner.half_vertical_right.red": "Red Per Pale Inverted", + "item.banner.half_vertical_right.green": "Green Per Pale Inverted", + "item.banner.half_vertical_right.brown": "Brown Per Pale Inverted", + "item.banner.half_vertical_right.blue": "Blue Per Pale Inverted", + "item.banner.half_vertical_right.purple": "Purple Per Pale Inverted", + "item.banner.half_vertical_right.cyan": "Cyan Per Pale Inverted", + "item.banner.half_vertical_right.silver": "Light Gray Per Pale Inverted", + "item.banner.half_vertical_right.gray": "Gray Per Pale Inverted", + "item.banner.half_vertical_right.pink": "Pink Per Pale Inverted", + "item.banner.half_vertical_right.lime": "Lime Per Pale Inverted", + "item.banner.half_vertical_right.yellow": "Yellow Per Pale Inverted", + "item.banner.half_vertical_right.lightBlue": "Light Blue Per Pale Inverted", + "item.banner.half_vertical_right.magenta": "Magenta Per Pale Inverted", + "item.banner.half_vertical_right.orange": "Orange Per Pale Inverted", + "item.banner.half_vertical_right.white": "White Per Pale Inverted", + "item.banner.half_horizontal_bottom.black": "Black Per Fess Inverted", + "item.banner.half_horizontal_bottom.red": "Red Per Fess Inverted", + "item.banner.half_horizontal_bottom.green": "Green Per Fess Inverted", + "item.banner.half_horizontal_bottom.brown": "Brown Per Fess Inverted", + "item.banner.half_horizontal_bottom.blue": "Blue Per Fess Inverted", + "item.banner.half_horizontal_bottom.purple": "Purple Per Fess Inverted", + "item.banner.half_horizontal_bottom.cyan": "Cyan Per Fess Inverted", + "item.banner.half_horizontal_bottom.silver": "Light Gray Per Fess Inverted", + "item.banner.half_horizontal_bottom.gray": "Gray Per Fess Inverted", + "item.banner.half_horizontal_bottom.pink": "Pink Per Fess Inverted", + "item.banner.half_horizontal_bottom.lime": "Lime Per Fess Inverted", + "item.banner.half_horizontal_bottom.yellow": "Yellow Per Fess Inverted", + "item.banner.half_horizontal_bottom.lightBlue": "Light Blue Per Fess Inverted", + "item.banner.half_horizontal_bottom.magenta": "Magenta Per Fess Inverted", + "item.banner.half_horizontal_bottom.orange": "Orange Per Fess Inverted", + "item.banner.half_horizontal_bottom.white": "White Per Fess Inverted", + "item.banner.creeper.black": "Black Creeper Charge", + "item.banner.creeper.red": "Red Creeper Charge", + "item.banner.creeper.green": "Green Creeper Charge", + "item.banner.creeper.brown": "Brown Creeper Charge", + "item.banner.creeper.blue": "Blue Creeper Charge", + "item.banner.creeper.purple": "Purple Creeper Charge", + "item.banner.creeper.cyan": "Cyan Creeper Charge", + "item.banner.creeper.silver": "Light Gray Creeper Charge", + "item.banner.creeper.gray": "Gray Creeper Charge", + "item.banner.creeper.pink": "Pink Creeper Charge", + "item.banner.creeper.lime": "Lime Creeper Charge", + "item.banner.creeper.yellow": "Yellow Creeper Charge", + "item.banner.creeper.lightBlue": "Light Blue Creeper Charge", + "item.banner.creeper.magenta": "Magenta Creeper Charge", + "item.banner.creeper.orange": "Orange Creeper Charge", + "item.banner.creeper.white": "White Creeper Charge", + "item.banner.bricks.black": "Black Field Masoned", + "item.banner.bricks.red": "Red Field Masoned", + "item.banner.bricks.green": "Green Field Masoned", + "item.banner.bricks.brown": "Brown Field Masoned", + "item.banner.bricks.blue": "Blue Field Masoned", + "item.banner.bricks.purple": "Purple Field Masoned", + "item.banner.bricks.cyan": "Cyan Field Masoned", + "item.banner.bricks.silver": "Light Gray Field Masoned", + "item.banner.bricks.gray": "Gray Field Masoned", + "item.banner.bricks.pink": "Pink Field Masoned", + "item.banner.bricks.lime": "Lime Field Masoned", + "item.banner.bricks.yellow": "Yellow Field Masoned", + "item.banner.bricks.lightBlue": "Light Blue Field Masoned", + "item.banner.bricks.magenta": "Magenta Field Masoned", + "item.banner.bricks.orange": "Orange Field Masoned", + "item.banner.bricks.white": "White Field Masoned", + "item.banner.gradient.black": "Black Gradient", + "item.banner.gradient.red": "Red Gradient", + "item.banner.gradient.green": "Green Gradient", + "item.banner.gradient.brown": "Brown Gradient", + "item.banner.gradient.blue": "Blue Gradient", + "item.banner.gradient.purple": "Purple Gradient", + "item.banner.gradient.cyan": "Cyan Gradient", + "item.banner.gradient.silver": "Light Gray Gradient", + "item.banner.gradient.gray": "Gray Gradient", + "item.banner.gradient.pink": "Pink Gradient", + "item.banner.gradient.lime": "Lime Gradient", + "item.banner.gradient.yellow": "Yellow Gradient", + "item.banner.gradient.lightBlue": "Light Blue Gradient", + "item.banner.gradient.magenta": "Magenta Gradient", + "item.banner.gradient.orange": "Orange Gradient", + "item.banner.gradient.white": "White Gradient", + "item.banner.gradient_up.black": "Black Base Gradient", + "item.banner.gradient_up.red": "Red Base Gradient", + "item.banner.gradient_up.green": "Green Base Gradient", + "item.banner.gradient_up.brown": "Brown Base Gradient", + "item.banner.gradient_up.blue": "Blue Base Gradient", + "item.banner.gradient_up.purple": "Purple Base Gradient", + "item.banner.gradient_up.cyan": "Cyan Base Gradient", + "item.banner.gradient_up.silver": "Light Gray Base Gradient", + "item.banner.gradient_up.gray": "Gray Base Gradient", + "item.banner.gradient_up.pink": "Pink Base Gradient", + "item.banner.gradient_up.lime": "Lime Base Gradient", + "item.banner.gradient_up.yellow": "Yellow Base Gradient", + "item.banner.gradient_up.lightBlue": "Light Blue Base Gradient", + "item.banner.gradient_up.magenta": "Magenta Base Gradient", + "item.banner.gradient_up.orange": "Orange Base Gradient", + "item.banner.gradient_up.white": "White Base Gradient", + "item.banner.skull.black": "Black Skull Charge", + "item.banner.skull.red": "Red Skull Charge", + "item.banner.skull.green": "Green Skull Charge", + "item.banner.skull.brown": "Brown Skull Charge", + "item.banner.skull.blue": "Blue Skull Charge", + "item.banner.skull.purple": "Purple Skull Charge", + "item.banner.skull.cyan": "Cyan Skull Charge", + "item.banner.skull.silver": "Light Gray Skull Charge", + "item.banner.skull.gray": "Gray Skull Charge", + "item.banner.skull.pink": "Pink Skull Charge", + "item.banner.skull.lime": "Lime Skull Charge", + "item.banner.skull.yellow": "Yellow Skull Charge", + "item.banner.skull.lightBlue": "Light Blue Skull Charge", + "item.banner.skull.magenta": "Magenta Skull Charge", + "item.banner.skull.orange": "Orange Skull Charge", + "item.banner.skull.white": "White Skull Charge", + "item.banner.flower.black": "Black Flower Charge", + "item.banner.flower.red": "Red Flower Charge", + "item.banner.flower.green": "Green Flower Charge", + "item.banner.flower.brown": "Brown Flower Charge", + "item.banner.flower.blue": "Blue Flower Charge", + "item.banner.flower.purple": "Purple Flower Charge", + "item.banner.flower.cyan": "Cyan Flower Charge", + "item.banner.flower.silver": "Light Gray Flower Charge", + "item.banner.flower.gray": "Gray Flower Charge", + "item.banner.flower.pink": "Pink Flower Charge", + "item.banner.flower.lime": "Lime Flower Charge", + "item.banner.flower.yellow": "Yellow Flower Charge", + "item.banner.flower.lightBlue": "Light Blue Flower Charge", + "item.banner.flower.magenta": "Magenta Flower Charge", + "item.banner.flower.orange": "Orange Flower Charge", + "item.banner.flower.white": "White Flower Charge", + "item.banner.border.black": "Black Bordure", + "item.banner.border.red": "Red Bordure", + "item.banner.border.green": "Green Bordure", + "item.banner.border.brown": "Brown Bordure", + "item.banner.border.blue": "Blue Bordure", + "item.banner.border.purple": "Purple Bordure", + "item.banner.border.cyan": "Cyan Bordure", + "item.banner.border.silver": "Light Gray Bordure", + "item.banner.border.gray": "Gray Bordure", + "item.banner.border.pink": "Pink Bordure", + "item.banner.border.lime": "Lime Bordure", + "item.banner.border.yellow": "Yellow Bordure", + "item.banner.border.lightBlue": "Light Blue Bordure", + "item.banner.border.magenta": "Magenta Bordure", + "item.banner.border.orange": "Orange Bordure", + "item.banner.border.white": "White Bordure", + "item.banner.curly_border.black": "Black Bordure Indented", + "item.banner.curly_border.red": "Red Bordure Indented", + "item.banner.curly_border.green": "Green Bordure Indented", + "item.banner.curly_border.brown": "Brown Bordure Indented", + "item.banner.curly_border.blue": "Blue Bordure Indented", + "item.banner.curly_border.purple": "Purple Bordure Indented", + "item.banner.curly_border.cyan": "Cyan Bordure Indented", + "item.banner.curly_border.silver": "Light Gray Bordure Indented", + "item.banner.curly_border.gray": "Gray Bordure Indented", + "item.banner.curly_border.pink": "Pink Bordure Indented", + "item.banner.curly_border.lime": "Lime Bordure Indented", + "item.banner.curly_border.yellow": "Yellow Bordure Indented", + "item.banner.curly_border.lightBlue": "Light Blue Bordure Indented", + "item.banner.curly_border.magenta": "Magenta Bordure Indented", + "item.banner.curly_border.orange": "Orange Bordure Indented", + "item.banner.curly_border.white": "White Bordure Indented", + "item.banner.mojang.black": "Black Thing", + "item.banner.mojang.red": "Red Thing", + "item.banner.mojang.green": "Green Thing", + "item.banner.mojang.brown": "Brown Thing", + "item.banner.mojang.blue": "Blue Thing", + "item.banner.mojang.purple": "Purple Thing", + "item.banner.mojang.cyan": "Cyan Thing", + "item.banner.mojang.silver": "Light Gray Thing", + "item.banner.mojang.gray": "Gray Thing", + "item.banner.mojang.pink": "Pink Thing", + "item.banner.mojang.lime": "Lime Thing", + "item.banner.mojang.yellow": "Yellow Thing", + "item.banner.mojang.lightBlue": "Light Blue Thing", + "item.banner.mojang.magenta": "Magenta Thing", + "item.banner.mojang.orange": "Orange Thing", + "item.banner.mojang.white": "White Thing", + "item.banner.straight_cross.black": "Black Cross", + "item.banner.straight_cross.red": "Red Cross", + "item.banner.straight_cross.green": "Green Cross", + "item.banner.straight_cross.brown": "Brown Cross", + "item.banner.straight_cross.blue": "Blue Cross", + "item.banner.straight_cross.purple": "Purple Cross", + "item.banner.straight_cross.cyan": "Cyan Cross", + "item.banner.straight_cross.silver": "Light Gray Cross", + "item.banner.straight_cross.gray": "Gray Cross", + "item.banner.straight_cross.pink": "Pink Cross", + "item.banner.straight_cross.lime": "Lime Cross", + "item.banner.straight_cross.yellow": "Yellow Cross", + "item.banner.straight_cross.lightBlue": "Light Blue Cross", + "item.banner.straight_cross.magenta": "Magenta Cross", + "item.banner.straight_cross.orange": "Orange Cross", + "item.banner.straight_cross.white": "White Cross" +} \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/materials.json b/mc/data/minecraft-data/pc/1.8/materials.json new file mode 100644 index 0000000..69c797e --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/materials.json @@ -0,0 +1,61 @@ +{ + "rock": { + "257": 6, + "270": 2, + "274": 4, + "278": 8, + "285": 12 + }, + "wood": { + "258": 6, + "271": 2, + "275": 4, + "279": 8, + "286": 12 + }, + "plant": { + "258": 6, + "267": 1.5, + "268": 1.5, + "271": 2, + "272": 1.5, + "275": 4, + "276": 1.5, + "279": 8, + "283": 1.5, + "286": 12 + }, + "melon": { + "267": 1.5, + "268": 1.5, + "272": 1.5, + "276": 1.5, + "283": 1.5 + }, + "leaves": { + "267": 1.5, + "268": 1.5, + "272": 1.5, + "276": 1.5, + "283": 1.5, + "359": 6 + }, + "dirt": { + "256": 6, + "269": 2, + "273": 4, + "277": 8, + "284": 12 + }, + "web": { + "267": 15, + "268": 15, + "272": 15, + "276": 15, + "283": 15, + "359": 15 + }, + "wool": { + "359": 4.8 + } +} \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/particles.json b/mc/data/minecraft-data/pc/1.8/particles.json new file mode 100644 index 0000000..c4ccc06 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/particles.json @@ -0,0 +1,170 @@ +[ + { + "id": 0, + "name": "explode" + }, + { + "id": 1, + "name": "largeexplode" + }, + { + "id": 2, + "name": "hugeexplosion" + }, + { + "id": 3, + "name": "fireworksSpark" + }, + { + "id": 4, + "name": "bubble" + }, + { + "id": 5, + "name": "splash" + }, + { + "id": 6, + "name": "wake" + }, + { + "id": 7, + "name": "suspended" + }, + { + "id": 8, + "name": "depthsuspend" + }, + { + "id": 9, + "name": "crit" + }, + { + "id": 10, + "name": "magicCrit" + }, + { + "id": 11, + "name": "smoke" + }, + { + "id": 12, + "name": "largesmoke" + }, + { + "id": 13, + "name": "spell" + }, + { + "id": 14, + "name": "instantSpell" + }, + { + "id": 15, + "name": "mobSpell" + }, + { + "id": 16, + "name": "mobSpellAmbient" + }, + { + "id": 17, + "name": "witchMagic" + }, + { + "id": 18, + "name": "dripWater" + }, + { + "id": 19, + "name": "dripLava" + }, + { + "id": 20, + "name": "angryVillager" + }, + { + "id": 21, + "name": "happyVillager" + }, + { + "id": 22, + "name": "townaura" + }, + { + "id": 23, + "name": "note" + }, + { + "id": 24, + "name": "portal" + }, + { + "id": 25, + "name": "enchantmenttable" + }, + { + "id": 26, + "name": "flame" + }, + { + "id": 27, + "name": "lava" + }, + { + "id": 28, + "name": "footstep" + }, + { + "id": 29, + "name": "cloud" + }, + { + "id": 30, + "name": "reddust" + }, + { + "id": 31, + "name": "snowballpoof" + }, + { + "id": 32, + "name": "snowshovel" + }, + { + "id": 33, + "name": "slime" + }, + { + "id": 34, + "name": "heart" + }, + { + "id": 35, + "name": "barrier" + }, + { + "id": 36, + "name": "iconcrack_" + }, + { + "id": 37, + "name": "blockcrack_" + }, + { + "id": 38, + "name": "blockdust_" + }, + { + "id": 39, + "name": "droplet" + }, + { + "id": 40, + "name": "take" + }, + { + "id": 41, + "name": "mobappearance" + } +] diff --git a/mc/data/minecraft-data/pc/1.8/proto.yml b/mc/data/minecraft-data/pc/1.8/proto.yml new file mode 100644 index 0000000..1fd70fb --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/proto.yml @@ -0,0 +1,1022 @@ +!version: 1.8 + +^types: + varint: native + varlong: native + pstring: native + u16: native + u8: native + i64: native + buffer: native + i32: native + i8: native + bool: native + i16: native + f32: native + f64: native + UUID: native + option: native + entityMetadataLoop: native + bitfield: native + bitflags: native + container: native + switch: native + void: native + array: native + restBuffer: native + nbt: native + optionalNbt: native + ByteArray: ["buffer", { "countType": "varint" }] + string: ["pstring", { "countType": "varint" }] + vec3i16: + x: i16 + y: i16 + z: i16 + slot: + blockId: i16 + _: blockId ? + if -1: void + default: + itemCount: i8 + itemDamage: i16 + nbtData: optionalNbt + position: [ + "bitfield", + [ + { + "name": "x", + "size": 26, + "signed": true + }, + { + "name": "y", + "size": 12, + "signed": true + }, + { + "name": "z", + "size": 26, + "signed": true + } + ] + ] + entityMetadataItem: $compareTo ? + if 0: i8 + if 1: i16 + if 2: i32 + if 3: f32 + if 4: string + if 5: slot + if 6: + x: i32 + y: i32 + z: i32 + if 7: + pitch: f32 + yaw: f32 + roll: f32 + entityMetadata: [ + "entityMetadataLoop", + { + "endVal": 127, + "type": [ + "container", + [ + { + "anon": true, + "type": [ + "bitfield", + [ + { + "name": "type", + "size": 3, + "signed": false + }, + { + "name": "key", + "size": 5, + "signed": false + } + ] + ] + }, + { + "name": "value", + "type": [ + "entityMetadataItem", + { + "compareTo": "type" + } + ] + } + ] + ] + } + ] + +^handshaking.toClient.types: + packet: + name: varint => + params: ["switch",{"compareTo":"name","fields":{}}] + +^handshaking.toServer.types: + packet_set_protocol: + protocolVersion: varint + serverHost: string + serverPort: u16 + nextState: varint + packet_legacy_server_list_ping: + payload: u8 + packet: + name: varint => + 0x00: set_protocol + 0xfe: legacy_server_list_ping + params: name ? + if set_protocol: packet_set_protocol + if legacy_server_list_ping: packet_legacy_server_list_ping + +^status.toClient.types: + packet_server_info: + response: string + packet_ping: + time: i64 + packet: + name: varint => + 0x00: server_info + 0x01: ping + params: name ? + if server_info: packet_server_info + if ping: packet_ping + +^status.toServer.types: + packet_ping_start: + # Empty + packet_ping: + time: i64 + packet: + name: varint => + 0x00: ping_start + 0x01: ping + params: name ? + if ping_start: packet_ping_start + if ping: packet_ping + +^login.toClient.types: + packet_disconnect: + reason: string + packet_encryption_begin: + serverId: string + publicKey: [ + "buffer", + { + "countType": "varint" + } + ] + verifyToken: [ + "buffer", + { + "countType": "varint" + } + ] + packet_success: + uuid: string + username: string + packet_compress: + threshold: varint + packet: + name: varint => + 0x00: disconnect + 0x01: encryption_begin + 0x02: success + 0x03: compress + params: name ? + if disconnect: packet_disconnect + if encryption_begin: packet_encryption_begin + if success: packet_success + if compress: packet_compress + +^login.toServer.types: + packet_login_start: + username: string + packet_encryption_begin: + sharedSecret: [ + "buffer", + { + "countType": "varint" + } + ] + verifyToken: [ + "buffer", + { + "countType": "varint" + } + ] + packet: + name: varint => + 0x00: login_start + 0x01: encryption_begin + params: name ? + if login_start: packet_login_start + if encryption_begin: packet_encryption_begin + +^play.toClient.types: + packet_keep_alive: + keepAliveId: varint + packet_login: + entityId: i32 + gameMode: u8 + dimension: i8 + difficulty: u8 + maxPlayers: u8 + levelType: string + reducedDebugInfo: bool + packet_chat: + message: string + position: i8 + packet_update_time: + age: i64 + time: i64 + packet_entity_equipment: + entityId: varint + slot: i16 + item: slot + packet_spawn_position: + location: position + packet_update_health: + health: f32 + food: varint + foodSaturation: f32 + packet_respawn: + dimension: i32 + difficulty: u8 + gamemode: u8 + levelType: string + packet_position: + x: f64 + y: f64 + z: f64 + yaw: f32 + pitch: f32 + flags: i8 + packet_held_item_slot: + slot: i8 + packet_bed: + entityId: varint + location: position + packet_animation: + entityId: varint + animation: u8 + packet_named_entity_spawn: + entityId: varint + playerUUID: UUID + x: i32 + y: i32 + z: i32 + yaw: i8 + pitch: i8 + currentItem: i16 + metadata: entityMetadata + packet_collect: + collectedEntityId: varint + collectorEntityId: varint + packet_spawn_entity: + entityId: varint + type: i8 + x: i32 + y: i32 + z: i32 + pitch: i8 + yaw: i8 + objectData: i32 + velocity: objectData ? + if 0: void + default: vec3i16 + packet_spawn_entity_living: + entityId: varint + type: u8 + x: i32 + y: i32 + z: i32 + yaw: i8 + pitch: i8 + headPitch: i8 + velocity: vec3i16 + metadata: entityMetadata + packet_spawn_entity_painting: + entityId: varint + title: string + location: position + direction: u8 + packet_spawn_entity_experience_orb: + entityId: varint + x: i32 + y: i32 + z: i32 + count: i16 + packet_entity_velocity: + entityId: varint + velocity: vec3i16 + packet_entity_destroy: + entityIds: varint[]varint + packet_entity: + entityId: varint + packet_rel_entity_move: + entityId: varint + dX: i8 + dY: i8 + dZ: i8 + onGround: bool + packet_entity_look: + entityId: varint + yaw: i8 + pitch: i8 + onGround: bool + packet_entity_move_look: + entityId: varint + dX: i8 + dY: i8 + dZ: i8 + yaw: i8 + pitch: i8 + onGround: bool + packet_entity_teleport: + entityId: varint + x: i32 + y: i32 + z: i32 + yaw: i8 + pitch: i8 + onGround: bool + packet_entity_head_rotation: + entityId: varint + headYaw: i8 + packet_entity_status: + entityId: i32 + entityStatus: i8 + packet_attach_entity: + entityId: i32 + vehicleId: i32 + leash: bool + packet_entity_metadata: + entityId: varint + metadata: entityMetadata + packet_entity_effect: + entityId: varint + effectId: i8 + amplifier: i8 + duration: varint + hideParticles: bool + packet_remove_entity_effect: + entityId: varint + effectId: i8 + packet_experience: + experienceBar: f32 + level: varint + totalExperience: varint + packet_update_attributes: + entityId: varint + properties: []i32 + key: string + value: f64 + modifiers: []varint + uuid: UUID + amount: f64 + operation: i8 + packet_map_chunk: + x: i32 + z: i32 + groundUp: bool + bitMap: u16 + chunkData: [ + "buffer", + { + "countType": "varint" + } + ] + packet_multi_block_change: + chunkX: i32 + chunkZ: i32 + records: []varint + horizontalPos: u8 + y: u8 + blockId: varint + packet_block_change: + location: position + type: varint + packet_block_action: + location: position + byte1: u8 + byte2: u8 + blockId: varint + packet_block_break_animation: + entityId: varint + location: position + destroyStage: i8 + packet_map_chunk_bulk: + skyLightSent: bool + meta: []varint + x: i32 + z: i32 + bitMap: u16 + data: restBuffer + packet_explosion: + x: f32 + y: f32 + z: f32 + radius: f32 + affectedBlockOffsets: []i32 + x: i8 + y: i8 + z: i8 + playerMotionX: f32 + playerMotionY: f32 + playerMotionZ: f32 + packet_world_event: + effectId: i32 + location: position + data: i32 + global: bool + packet_named_sound_effect: + soundName: string + x: i32 + y: i32 + z: i32 + volume: f32 + pitch: u8 + packet_world_particles: + particleId: i32 + longDistance: bool + x: f32 + y: f32 + z: f32 + offsetX: f32 + offsetY: f32 + offsetZ: f32 + particleData: f32 + particles: i32 + data: particleId ? + if 36: varint[]$2 + if 37: varint[]$1 + if 38: varint[]$1 + default: void + packet_game_state_change: + reason: u8 + gameMode: f32 + packet_spawn_entity_weather: + entityId: varint + type: i8 + x: i32 + y: i32 + z: i32 + packet_open_window: + windowId: u8 + inventoryType: string + windowTitle: string + slotCount: u8 + entityId: inventoryType ? + if EntityHorse: i32 + default: void + packet_close_window: + windowId: u8 + packet_set_slot: + windowId: i8 + slot: i16 + item: slot + packet_window_items: + windowId: u8 + items: slot[]i16 + packet_craft_progress_bar: + windowId: u8 + property: i16 + value: i16 + packet_transaction: + windowId: i8 + action: i16 + accepted: bool + packet_update_sign: + location: position + text1: string + text2: string + text3: string + text4: string + packet_map: + itemDamage: varint + scale: i8 + icons: []varint + directionAndType: i8 + x: i8 + z: i8 + columns: i8 + rows: columns ? + if 0: void + default: i8 + x: columns ? + if 0: void + default: i8 + y: columns ? + if 0: void + default: i8 + data: columns ? + if 0: void + default: [ + "buffer", + { + "countType": "varint" + } + ] + packet_tile_entity_data: + location: position + action: u8 + nbtData: optionalNbt + packet_open_sign_entity: + location: position + packet_statistics: + entries: []varint + name: string + value: varint + # MC: ClientboundPlayerInfoPacket + packet_player_info: + action: varint => + - add_player + - update_game_mode + - update_latency + - update_display_name + - remove_player + ## https://github.com/extremeheat/extracted_minecraft_data/blob/client1.8.9/client/net/minecraft/network/play/server/S38PacketPlayerListItem.java#L113 + data: []varint + uuid: UUID + _: ../action ? + if add_player: + name: string + properties: []varint + name: string + value: string + signature?: string + gamemode: varint + ping: varint + displayName?: string + if update_game_mode: + gamemode: varint + if update_latency: + ping: varint + if update_display_name: + displayName?: string + if remove_player: void + packet_abilities: + flags: i8 + flyingSpeed: f32 + walkingSpeed: f32 + packet_tab_complete: + matches: string[]varint + packet_scoreboard_objective: + name: string + action: i8 + displayText: action ? + if 0: string + if 2: string + default: void + type: action ? + if 0: string + if 2: string + default: void + packet_scoreboard_score: + itemName: string + action: varint + scoreName: string + value: action ? + if 1: void + default: varint + packet_scoreboard_display_objective: + position: i8 + name: string + packet_scoreboard_team: + team: string + mode: i8 + name: mode ? + if 0: string + if 2: string + default: void + prefix: mode ? + if 0: string + if 2: string + default: void + suffix: mode ? + if 0: string + if 2: string + default: void + friendlyFire: mode ? + if 0: i8 + if 2: i8 + default: void + nameTagVisibility: mode ? + if 0: string + if 2: string + default: void + color: mode ? + if 0: i8 + if 2: i8 + default: void + players: mode ? + if 0: string[]varint + if 3: string[]varint + if 4: string[]varint + default: void + packet_custom_payload: + channel: string + data: restBuffer + packet_kick_disconnect: + reason: string + packet_difficulty: + difficulty: u8 + packet_combat_event: + event: varint + duration: event ? + if 1: varint + default: void + playerId: event ? + if 2: varint + default: void + entityId: event ? + if 1: i32 + if 2: i32 + default: void + message: event ? + if 2: string + default: void + packet_camera: + cameraId: varint + packet_world_border: + action: varint + radius: action ? + if 0: f64 + default: void + x: action ? + if 2: f64 + if 3: f64 + default: void + z: action ? + if 2: f64 + if 3: f64 + default: void + old_radius: action ? + if 1: f64 + if 3: f64 + default: void + new_radius: action ? + if 1: f64 + if 3: f64 + default: void + speed: action ? + if 1: varlong + if 3: varlong + default: void + portalBoundary: action ? + if 3: varint + default: void + warning_time: action ? + if 3: varint + if 4: varint + default: void + warning_blocks: action ? + if 3: varint + if 5: varint + default: void + packet_title: + action: varint + text: action ? + if 0: string + if 1: string + default: void + fadeIn: action ? + if 2: i32 + default: void + stay: action ? + if 2: i32 + default: void + fadeOut: action ? + if 2: i32 + default: void + packet_set_compression: + threshold: varint + packet_playerlist_header: + header: string + footer: string + packet_resource_pack_send: + url: string + hash: string + packet_update_entity_nbt: + entityId: varint + tag: nbt + packet: + name: varint => + 0x00: keep_alive + 0x01: login + 0x02: chat + 0x03: update_time + 0x04: entity_equipment + 0x05: spawn_position + 0x06: update_health + 0x07: respawn + 0x08: position + 0x09: held_item_slot + 0x0a: bed + 0x0b: animation + 0x0c: named_entity_spawn + 0x0d: collect + 0x0e: spawn_entity + 0x0f: spawn_entity_living + 0x10: spawn_entity_painting + 0x11: spawn_entity_experience_orb + 0x12: entity_velocity + 0x13: entity_destroy + 0x14: entity + 0x15: rel_entity_move + 0x16: entity_look + 0x17: entity_move_look + 0x18: entity_teleport + 0x19: entity_head_rotation + 0x1a: entity_status + 0x1b: attach_entity + 0x1c: entity_metadata + 0x1d: entity_effect + 0x1e: remove_entity_effect + 0x1f: experience + 0x20: update_attributes + 0x21: map_chunk + 0x22: multi_block_change + 0x23: block_change + 0x24: block_action + 0x25: block_break_animation + 0x26: map_chunk_bulk + 0x27: explosion + 0x28: world_event + 0x29: named_sound_effect + 0x2a: world_particles + 0x2b: game_state_change + 0x2c: spawn_entity_weather + 0x2d: open_window + 0x2e: close_window + 0x2f: set_slot + 0x30: window_items + 0x31: craft_progress_bar + 0x32: transaction + 0x33: update_sign + 0x34: map + 0x35: tile_entity_data + 0x36: open_sign_entity + 0x37: statistics + 0x38: player_info + 0x39: abilities + 0x3a: tab_complete + 0x3b: scoreboard_objective + 0x3c: scoreboard_score + 0x3d: scoreboard_display_objective + 0x3e: scoreboard_team + 0x3f: custom_payload + 0x40: kick_disconnect + 0x41: difficulty + 0x42: combat_event + 0x43: camera + 0x44: world_border + 0x45: title + 0x46: set_compression + 0x47: playerlist_header + 0x48: resource_pack_send + 0x49: update_entity_nbt + params: name ? + if keep_alive: packet_keep_alive + if login: packet_login + if chat: packet_chat + if update_time: packet_update_time + if entity_equipment: packet_entity_equipment + if spawn_position: packet_spawn_position + if update_health: packet_update_health + if respawn: packet_respawn + if position: packet_position + if held_item_slot: packet_held_item_slot + if bed: packet_bed + if animation: packet_animation + if named_entity_spawn: packet_named_entity_spawn + if collect: packet_collect + if spawn_entity: packet_spawn_entity + if spawn_entity_living: packet_spawn_entity_living + if spawn_entity_painting: packet_spawn_entity_painting + if spawn_entity_experience_orb: packet_spawn_entity_experience_orb + if entity_velocity: packet_entity_velocity + if entity_destroy: packet_entity_destroy + if entity: packet_entity + if rel_entity_move: packet_rel_entity_move + if entity_look: packet_entity_look + if entity_move_look: packet_entity_move_look + if entity_teleport: packet_entity_teleport + if entity_head_rotation: packet_entity_head_rotation + if entity_status: packet_entity_status + if attach_entity: packet_attach_entity + if entity_metadata: packet_entity_metadata + if entity_effect: packet_entity_effect + if remove_entity_effect: packet_remove_entity_effect + if experience: packet_experience + if update_attributes: packet_update_attributes + if map_chunk: packet_map_chunk + if multi_block_change: packet_multi_block_change + if block_change: packet_block_change + if block_action: packet_block_action + if block_break_animation: packet_block_break_animation + if map_chunk_bulk: packet_map_chunk_bulk + if explosion: packet_explosion + if world_event: packet_world_event + if named_sound_effect: packet_named_sound_effect + if world_particles: packet_world_particles + if game_state_change: packet_game_state_change + if spawn_entity_weather: packet_spawn_entity_weather + if open_window: packet_open_window + if close_window: packet_close_window + if set_slot: packet_set_slot + if window_items: packet_window_items + if craft_progress_bar: packet_craft_progress_bar + if transaction: packet_transaction + if update_sign: packet_update_sign + if map: packet_map + if tile_entity_data: packet_tile_entity_data + if open_sign_entity: packet_open_sign_entity + if statistics: packet_statistics + if player_info: packet_player_info + if abilities: packet_abilities + if tab_complete: packet_tab_complete + if scoreboard_objective: packet_scoreboard_objective + if scoreboard_score: packet_scoreboard_score + if scoreboard_display_objective: packet_scoreboard_display_objective + if scoreboard_team: packet_scoreboard_team + if custom_payload: packet_custom_payload + if kick_disconnect: packet_kick_disconnect + if difficulty: packet_difficulty + if combat_event: packet_combat_event + if camera: packet_camera + if world_border: packet_world_border + if title: packet_title + if set_compression: packet_set_compression + if playerlist_header: packet_playerlist_header + if resource_pack_send: packet_resource_pack_send + if update_entity_nbt: packet_update_entity_nbt + +^play.toServer.types: + packet_keep_alive: + keepAliveId: varint + packet_chat: + message: string + packet_use_entity: + target: varint + mouse: varint + x: mouse ? + if 2: f32 + default: void + y: mouse ? + if 2: f32 + default: void + z: mouse ? + if 2: f32 + default: void + packet_flying: + onGround: bool + packet_position: + x: f64 + y: f64 + z: f64 + onGround: bool + packet_look: + yaw: f32 + pitch: f32 + onGround: bool + packet_position_look: + x: f64 + y: f64 + z: f64 + yaw: f32 + pitch: f32 + onGround: bool + packet_block_dig: + status: varint + location: position + face: i8 + packet_block_place: + location: position + direction: i8 + heldItem: slot + cursorX: i8 + cursorY: i8 + cursorZ: i8 + packet_held_item_slot: + slotId: i16 + packet_arm_animation: + # Empty + packet_entity_action: + entityId: varint + actionId: varint + jumpBoost: varint + packet_steer_vehicle: + sideways: f32 + forward: f32 + jump: u8 + packet_close_window: + windowId: u8 + packet_window_click: + windowId: u8 + slot: i16 + mouseButton: i8 + action: i16 + mode: i8 + item: slot + packet_transaction: + windowId: i8 + action: i16 + accepted: bool + packet_set_creative_slot: + slot: i16 + item: slot + packet_enchant_item: + windowId: i8 + enchantment: i8 + packet_update_sign: + location: position + text1: string + text2: string + text3: string + text4: string + packet_abilities: + flags: i8 + flyingSpeed: f32 + walkingSpeed: f32 + packet_tab_complete: + text: string + block?: position + packet_settings: + locale: string + viewDistance: i8 + chatFlags: i8 + chatColors: bool + skinParts: u8 + packet_client_command: + payload: varint + packet_custom_payload: + channel: string + data: restBuffer + packet_spectate: + target: UUID + packet_resource_pack_receive: + hash: string + result: varint + packet: + name: varint => + 0x00: keep_alive + 0x01: chat + 0x02: use_entity + 0x03: flying + 0x04: position + 0x05: look + 0x06: position_look + 0x07: block_dig + 0x08: block_place + 0x09: held_item_slot + 0x0a: arm_animation + 0x0b: entity_action + 0x0c: steer_vehicle + 0x0d: close_window + 0x0e: window_click + 0x0f: transaction + 0x10: set_creative_slot + 0x11: enchant_item + 0x12: update_sign + 0x13: abilities + 0x14: tab_complete + 0x15: settings + 0x16: client_command + 0x17: custom_payload + 0x18: spectate + 0x19: resource_pack_receive + params: name ? + if keep_alive: packet_keep_alive + if chat: packet_chat + if use_entity: packet_use_entity + if flying: packet_flying + if position: packet_position + if look: packet_look + if position_look: packet_position_look + if block_dig: packet_block_dig + if block_place: packet_block_place + if held_item_slot: packet_held_item_slot + if arm_animation: packet_arm_animation + if entity_action: packet_entity_action + if steer_vehicle: packet_steer_vehicle + if close_window: packet_close_window + if window_click: packet_window_click + if transaction: packet_transaction + if set_creative_slot: packet_set_creative_slot + if enchant_item: packet_enchant_item + if update_sign: packet_update_sign + if abilities: packet_abilities + if tab_complete: packet_tab_complete + if settings: packet_settings + if client_command: packet_client_command + if custom_payload: packet_custom_payload + if spectate: packet_spectate + if resource_pack_receive: packet_resource_pack_receive diff --git a/mc/data/minecraft-data/pc/1.8/protocol.json b/mc/data/minecraft-data/pc/1.8/protocol.json new file mode 100644 index 0000000..095ace0 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/protocol.json @@ -0,0 +1,3386 @@ +{ + "types": { + "varint": "native", + "varlong": "native", + "pstring": "native", + "u16": "native", + "u8": "native", + "i64": "native", + "buffer": "native", + "i32": "native", + "i8": "native", + "bool": "native", + "i16": "native", + "f32": "native", + "f64": "native", + "UUID": "native", + "option": "native", + "entityMetadataLoop": "native", + "bitfield": "native", + "bitflags": "native", + "container": "native", + "switch": "native", + "void": "native", + "array": "native", + "restBuffer": "native", + "nbt": "native", + "optionalNbt": "native", + "ByteArray": [ + "buffer", + { + "countType": "varint" + } + ], + "string": [ + "pstring", + { + "countType": "varint" + } + ], + "vec3i16": [ + "container", + [ + { + "name": "x", + "type": "i16" + }, + { + "name": "y", + "type": "i16" + }, + { + "name": "z", + "type": "i16" + } + ] + ], + "slot": [ + "container", + [ + { + "name": "blockId", + "type": "i16" + }, + { + "anon": true, + "type": [ + "switch", + { + "compareTo": "blockId", + "fields": { + "-1": "void" + }, + "default": [ + "container", + [ + { + "name": "itemCount", + "type": "i8" + }, + { + "name": "itemDamage", + "type": "i16" + }, + { + "name": "nbtData", + "type": "optionalNbt" + } + ] + ] + } + ] + } + ] + ], + "position": [ + "bitfield", + [ + { + "name": "x", + "size": 26, + "signed": true + }, + { + "name": "y", + "size": 12, + "signed": true + }, + { + "name": "z", + "size": 26, + "signed": true + } + ] + ], + "entityMetadataItem": [ + "switch", + { + "compareTo": "$compareTo", + "fields": { + "0": "i8", + "1": "i16", + "2": "i32", + "3": "f32", + "4": "string", + "5": "slot", + "6": [ + "container", + [ + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + } + ] + ], + "7": [ + "container", + [ + { + "name": "pitch", + "type": "f32" + }, + { + "name": "yaw", + "type": "f32" + }, + { + "name": "roll", + "type": "f32" + } + ] + ] + } + } + ], + "entityMetadata": [ + "entityMetadataLoop", + { + "endVal": 127, + "type": [ + "container", + [ + { + "anon": true, + "type": [ + "bitfield", + [ + { + "name": "type", + "size": 3, + "signed": false + }, + { + "name": "key", + "size": 5, + "signed": false + } + ] + ] + }, + { + "name": "value", + "type": [ + "entityMetadataItem", + { + "compareTo": "type" + } + ] + } + ] + ] + } + ] + }, + "handshaking": { + "toClient": { + "types": { + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": {} + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": {} + } + ] + } + ] + ] + } + }, + "toServer": { + "types": { + "packet_set_protocol": [ + "container", + [ + { + "name": "protocolVersion", + "type": "varint" + }, + { + "name": "serverHost", + "type": "string" + }, + { + "name": "serverPort", + "type": "u16" + }, + { + "name": "nextState", + "type": "varint" + } + ] + ], + "packet_legacy_server_list_ping": [ + "container", + [ + { + "name": "payload", + "type": "u8" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "set_protocol", + "0xfe": "legacy_server_list_ping" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "set_protocol": "packet_set_protocol", + "legacy_server_list_ping": "packet_legacy_server_list_ping" + } + } + ] + } + ] + ] + } + } + }, + "status": { + "toClient": { + "types": { + "packet_server_info": [ + "container", + [ + { + "name": "response", + "type": "string" + } + ] + ], + "packet_ping": [ + "container", + [ + { + "name": "time", + "type": "i64" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "server_info", + "0x01": "ping" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "server_info": "packet_server_info", + "ping": "packet_ping" + } + } + ] + } + ] + ] + } + }, + "toServer": { + "types": { + "packet_ping_start": [ + "container", + [] + ], + "packet_ping": [ + "container", + [ + { + "name": "time", + "type": "i64" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "ping_start", + "0x01": "ping" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "ping_start": "packet_ping_start", + "ping": "packet_ping" + } + } + ] + } + ] + ] + } + } + }, + "login": { + "toClient": { + "types": { + "packet_disconnect": [ + "container", + [ + { + "name": "reason", + "type": "string" + } + ] + ], + "packet_encryption_begin": [ + "container", + [ + { + "name": "serverId", + "type": "string" + }, + { + "name": "publicKey", + "type": [ + "buffer", + { + "countType": "varint" + } + ] + }, + { + "name": "verifyToken", + "type": [ + "buffer", + { + "countType": "varint" + } + ] + } + ] + ], + "packet_success": [ + "container", + [ + { + "name": "uuid", + "type": "string" + }, + { + "name": "username", + "type": "string" + } + ] + ], + "packet_compress": [ + "container", + [ + { + "name": "threshold", + "type": "varint" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "disconnect", + "0x01": "encryption_begin", + "0x02": "success", + "0x03": "compress" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "disconnect": "packet_disconnect", + "encryption_begin": "packet_encryption_begin", + "success": "packet_success", + "compress": "packet_compress" + } + } + ] + } + ] + ] + } + }, + "toServer": { + "types": { + "packet_login_start": [ + "container", + [ + { + "name": "username", + "type": "string" + } + ] + ], + "packet_encryption_begin": [ + "container", + [ + { + "name": "sharedSecret", + "type": [ + "buffer", + { + "countType": "varint" + } + ] + }, + { + "name": "verifyToken", + "type": [ + "buffer", + { + "countType": "varint" + } + ] + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "login_start", + "0x01": "encryption_begin" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "login_start": "packet_login_start", + "encryption_begin": "packet_encryption_begin" + } + } + ] + } + ] + ] + } + } + }, + "play": { + "toClient": { + "types": { + "packet_keep_alive": [ + "container", + [ + { + "name": "keepAliveId", + "type": "varint" + } + ] + ], + "packet_login": [ + "container", + [ + { + "name": "entityId", + "type": "i32" + }, + { + "name": "gameMode", + "type": "u8" + }, + { + "name": "dimension", + "type": "i8" + }, + { + "name": "difficulty", + "type": "u8" + }, + { + "name": "maxPlayers", + "type": "u8" + }, + { + "name": "levelType", + "type": "string" + }, + { + "name": "reducedDebugInfo", + "type": "bool" + } + ] + ], + "packet_chat": [ + "container", + [ + { + "name": "message", + "type": "string" + }, + { + "name": "position", + "type": "i8" + } + ] + ], + "packet_update_time": [ + "container", + [ + { + "name": "age", + "type": "i64" + }, + { + "name": "time", + "type": "i64" + } + ] + ], + "packet_entity_equipment": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "slot", + "type": "i16" + }, + { + "name": "item", + "type": "slot" + } + ] + ], + "packet_spawn_position": [ + "container", + [ + { + "name": "location", + "type": "position" + } + ] + ], + "packet_update_health": [ + "container", + [ + { + "name": "health", + "type": "f32" + }, + { + "name": "food", + "type": "varint" + }, + { + "name": "foodSaturation", + "type": "f32" + } + ] + ], + "packet_respawn": [ + "container", + [ + { + "name": "dimension", + "type": "i32" + }, + { + "name": "difficulty", + "type": "u8" + }, + { + "name": "gamemode", + "type": "u8" + }, + { + "name": "levelType", + "type": "string" + } + ] + ], + "packet_position": [ + "container", + [ + { + "name": "x", + "type": "f64" + }, + { + "name": "y", + "type": "f64" + }, + { + "name": "z", + "type": "f64" + }, + { + "name": "yaw", + "type": "f32" + }, + { + "name": "pitch", + "type": "f32" + }, + { + "name": "flags", + "type": "i8" + } + ] + ], + "packet_held_item_slot": [ + "container", + [ + { + "name": "slot", + "type": "i8" + } + ] + ], + "packet_bed": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "location", + "type": "position" + } + ] + ], + "packet_animation": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "animation", + "type": "u8" + } + ] + ], + "packet_named_entity_spawn": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "playerUUID", + "type": "UUID" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "currentItem", + "type": "i16" + }, + { + "name": "metadata", + "type": "entityMetadata" + } + ] + ], + "packet_collect": [ + "container", + [ + { + "name": "collectedEntityId", + "type": "varint" + }, + { + "name": "collectorEntityId", + "type": "varint" + } + ] + ], + "packet_spawn_entity": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "type", + "type": "i8" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "objectData", + "type": "i32" + }, + { + "name": "velocity", + "type": [ + "switch", + { + "compareTo": "objectData", + "fields": { + "0": "void" + }, + "default": "vec3i16" + } + ] + } + ] + ], + "packet_spawn_entity_living": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "type", + "type": "u8" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "headPitch", + "type": "i8" + }, + { + "name": "velocity", + "type": "vec3i16" + }, + { + "name": "metadata", + "type": "entityMetadata" + } + ] + ], + "packet_spawn_entity_painting": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "location", + "type": "position" + }, + { + "name": "direction", + "type": "u8" + } + ] + ], + "packet_spawn_entity_experience_orb": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "count", + "type": "i16" + } + ] + ], + "packet_entity_velocity": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "velocity", + "type": "vec3i16" + } + ] + ], + "packet_entity_destroy": [ + "container", + [ + { + "name": "entityIds", + "type": [ + "array", + { + "countType": "varint", + "type": "varint" + } + ] + } + ] + ], + "packet_entity": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + } + ] + ], + "packet_rel_entity_move": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "dX", + "type": "i8" + }, + { + "name": "dY", + "type": "i8" + }, + { + "name": "dZ", + "type": "i8" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_entity_look": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_entity_move_look": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "dX", + "type": "i8" + }, + { + "name": "dY", + "type": "i8" + }, + { + "name": "dZ", + "type": "i8" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_entity_teleport": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "yaw", + "type": "i8" + }, + { + "name": "pitch", + "type": "i8" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_entity_head_rotation": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "headYaw", + "type": "i8" + } + ] + ], + "packet_entity_status": [ + "container", + [ + { + "name": "entityId", + "type": "i32" + }, + { + "name": "entityStatus", + "type": "i8" + } + ] + ], + "packet_attach_entity": [ + "container", + [ + { + "name": "entityId", + "type": "i32" + }, + { + "name": "vehicleId", + "type": "i32" + }, + { + "name": "leash", + "type": "bool" + } + ] + ], + "packet_entity_metadata": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "metadata", + "type": "entityMetadata" + } + ] + ], + "packet_entity_effect": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "effectId", + "type": "i8" + }, + { + "name": "amplifier", + "type": "i8" + }, + { + "name": "duration", + "type": "varint" + }, + { + "name": "hideParticles", + "type": "bool" + } + ] + ], + "packet_remove_entity_effect": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "effectId", + "type": "i8" + } + ] + ], + "packet_experience": [ + "container", + [ + { + "name": "experienceBar", + "type": "f32" + }, + { + "name": "level", + "type": "varint" + }, + { + "name": "totalExperience", + "type": "varint" + } + ] + ], + "packet_update_attributes": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "properties", + "type": [ + "array", + { + "countType": "i32", + "type": [ + "container", + [ + { + "name": "key", + "type": "string" + }, + { + "name": "value", + "type": "f64" + }, + { + "name": "modifiers", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "uuid", + "type": "UUID" + }, + { + "name": "amount", + "type": "f64" + }, + { + "name": "operation", + "type": "i8" + } + ] + ] + } + ] + } + ] + ] + } + ] + } + ] + ], + "packet_map_chunk": [ + "container", + [ + { + "name": "x", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "groundUp", + "type": "bool" + }, + { + "name": "bitMap", + "type": "u16" + }, + { + "name": "chunkData", + "type": [ + "buffer", + { + "countType": "varint" + } + ] + } + ] + ], + "packet_multi_block_change": [ + "container", + [ + { + "name": "chunkX", + "type": "i32" + }, + { + "name": "chunkZ", + "type": "i32" + }, + { + "name": "records", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "horizontalPos", + "type": "u8" + }, + { + "name": "y", + "type": "u8" + }, + { + "name": "blockId", + "type": "varint" + } + ] + ] + } + ] + } + ] + ], + "packet_block_change": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "type", + "type": "varint" + } + ] + ], + "packet_block_action": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "byte1", + "type": "u8" + }, + { + "name": "byte2", + "type": "u8" + }, + { + "name": "blockId", + "type": "varint" + } + ] + ], + "packet_block_break_animation": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "location", + "type": "position" + }, + { + "name": "destroyStage", + "type": "i8" + } + ] + ], + "packet_map_chunk_bulk": [ + "container", + [ + { + "name": "skyLightSent", + "type": "bool" + }, + { + "name": "meta", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "x", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "bitMap", + "type": "u16" + } + ] + ] + } + ] + }, + { + "name": "data", + "type": "restBuffer" + } + ] + ], + "packet_explosion": [ + "container", + [ + { + "name": "x", + "type": "f32" + }, + { + "name": "y", + "type": "f32" + }, + { + "name": "z", + "type": "f32" + }, + { + "name": "radius", + "type": "f32" + }, + { + "name": "affectedBlockOffsets", + "type": [ + "array", + { + "countType": "i32", + "type": [ + "container", + [ + { + "name": "x", + "type": "i8" + }, + { + "name": "y", + "type": "i8" + }, + { + "name": "z", + "type": "i8" + } + ] + ] + } + ] + }, + { + "name": "playerMotionX", + "type": "f32" + }, + { + "name": "playerMotionY", + "type": "f32" + }, + { + "name": "playerMotionZ", + "type": "f32" + } + ] + ], + "packet_world_event": [ + "container", + [ + { + "name": "effectId", + "type": "i32" + }, + { + "name": "location", + "type": "position" + }, + { + "name": "data", + "type": "i32" + }, + { + "name": "global", + "type": "bool" + } + ] + ], + "packet_named_sound_effect": [ + "container", + [ + { + "name": "soundName", + "type": "string" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + }, + { + "name": "volume", + "type": "f32" + }, + { + "name": "pitch", + "type": "u8" + } + ] + ], + "packet_world_particles": [ + "container", + [ + { + "name": "particleId", + "type": "i32" + }, + { + "name": "longDistance", + "type": "bool" + }, + { + "name": "x", + "type": "f32" + }, + { + "name": "y", + "type": "f32" + }, + { + "name": "z", + "type": "f32" + }, + { + "name": "offsetX", + "type": "f32" + }, + { + "name": "offsetY", + "type": "f32" + }, + { + "name": "offsetZ", + "type": "f32" + }, + { + "name": "particleData", + "type": "f32" + }, + { + "name": "particles", + "type": "i32" + }, + { + "name": "data", + "type": [ + "switch", + { + "compareTo": "particleId", + "fields": { + "36": [ + "array", + { + "count": 2, + "type": "varint" + } + ], + "37": [ + "array", + { + "count": 1, + "type": "varint" + } + ], + "38": [ + "array", + { + "count": 1, + "type": "varint" + } + ] + }, + "default": "void" + } + ] + } + ] + ], + "packet_game_state_change": [ + "container", + [ + { + "name": "reason", + "type": "u8" + }, + { + "name": "gameMode", + "type": "f32" + } + ] + ], + "packet_spawn_entity_weather": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "type", + "type": "i8" + }, + { + "name": "x", + "type": "i32" + }, + { + "name": "y", + "type": "i32" + }, + { + "name": "z", + "type": "i32" + } + ] + ], + "packet_open_window": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + }, + { + "name": "inventoryType", + "type": "string" + }, + { + "name": "windowTitle", + "type": "string" + }, + { + "name": "slotCount", + "type": "u8" + }, + { + "name": "entityId", + "type": [ + "switch", + { + "compareTo": "inventoryType", + "fields": { + "EntityHorse": "i32" + }, + "default": "void" + } + ] + } + ] + ], + "packet_close_window": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + } + ] + ], + "packet_set_slot": [ + "container", + [ + { + "name": "windowId", + "type": "i8" + }, + { + "name": "slot", + "type": "i16" + }, + { + "name": "item", + "type": "slot" + } + ] + ], + "packet_window_items": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + }, + { + "name": "items", + "type": [ + "array", + { + "countType": "i16", + "type": "slot" + } + ] + } + ] + ], + "packet_craft_progress_bar": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + }, + { + "name": "property", + "type": "i16" + }, + { + "name": "value", + "type": "i16" + } + ] + ], + "packet_transaction": [ + "container", + [ + { + "name": "windowId", + "type": "i8" + }, + { + "name": "action", + "type": "i16" + }, + { + "name": "accepted", + "type": "bool" + } + ] + ], + "packet_update_sign": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "text1", + "type": "string" + }, + { + "name": "text2", + "type": "string" + }, + { + "name": "text3", + "type": "string" + }, + { + "name": "text4", + "type": "string" + } + ] + ], + "packet_map": [ + "container", + [ + { + "name": "itemDamage", + "type": "varint" + }, + { + "name": "scale", + "type": "i8" + }, + { + "name": "icons", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "directionAndType", + "type": "i8" + }, + { + "name": "x", + "type": "i8" + }, + { + "name": "z", + "type": "i8" + } + ] + ] + } + ] + }, + { + "name": "columns", + "type": "i8" + }, + { + "name": "rows", + "type": [ + "switch", + { + "compareTo": "columns", + "fields": { + "0": "void" + }, + "default": "i8" + } + ] + }, + { + "name": "x", + "type": [ + "switch", + { + "compareTo": "columns", + "fields": { + "0": "void" + }, + "default": "i8" + } + ] + }, + { + "name": "y", + "type": [ + "switch", + { + "compareTo": "columns", + "fields": { + "0": "void" + }, + "default": "i8" + } + ] + }, + { + "name": "data", + "type": [ + "switch", + { + "compareTo": "columns", + "fields": { + "0": "void" + }, + "default": [ + "buffer", + { + "countType": "varint" + } + ] + } + ] + } + ] + ], + "packet_tile_entity_data": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "action", + "type": "u8" + }, + { + "name": "nbtData", + "type": "optionalNbt" + } + ] + ], + "packet_open_sign_entity": [ + "container", + [ + { + "name": "location", + "type": "position" + } + ] + ], + "packet_statistics": [ + "container", + [ + { + "name": "entries", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "name", + "type": "string" + }, + { + "name": "value", + "type": "varint" + } + ] + ] + } + ] + } + ] + ], + "packet_player_info": [ + "container", + [ + { + "name": "action", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0": "add_player", + "1": "update_game_mode", + "2": "update_latency", + "3": "update_display_name", + "4": "remove_player" + } + } + ] + }, + { + "name": "data", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "uuid", + "type": "UUID" + }, + { + "anon": true, + "type": [ + "switch", + { + "compareTo": "../action", + "fields": { + "add_player": [ + "container", + [ + { + "name": "name", + "type": "string" + }, + { + "name": "properties", + "type": [ + "array", + { + "countType": "varint", + "type": [ + "container", + [ + { + "name": "name", + "type": "string" + }, + { + "name": "value", + "type": "string" + }, + { + "name": "signature", + "type": [ + "option", + "string" + ] + } + ] + ] + } + ] + }, + { + "name": "gamemode", + "type": "varint" + }, + { + "name": "ping", + "type": "varint" + }, + { + "name": "displayName", + "type": [ + "option", + "string" + ] + } + ] + ], + "update_game_mode": [ + "container", + [ + { + "name": "gamemode", + "type": "varint" + } + ] + ], + "update_latency": [ + "container", + [ + { + "name": "ping", + "type": "varint" + } + ] + ], + "update_display_name": [ + "container", + [ + { + "name": "displayName", + "type": [ + "option", + "string" + ] + } + ] + ], + "remove_player": "void" + } + } + ] + } + ] + ] + } + ] + } + ] + ], + "packet_abilities": [ + "container", + [ + { + "name": "flags", + "type": "i8" + }, + { + "name": "flyingSpeed", + "type": "f32" + }, + { + "name": "walkingSpeed", + "type": "f32" + } + ] + ], + "packet_tab_complete": [ + "container", + [ + { + "name": "matches", + "type": [ + "array", + { + "countType": "varint", + "type": "string" + } + ] + } + ] + ], + "packet_scoreboard_objective": [ + "container", + [ + { + "name": "name", + "type": "string" + }, + { + "name": "action", + "type": "i8" + }, + { + "name": "displayText", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + }, + { + "name": "type", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + } + ] + ], + "packet_scoreboard_score": [ + "container", + [ + { + "name": "itemName", + "type": "string" + }, + { + "name": "action", + "type": "varint" + }, + { + "name": "scoreName", + "type": "string" + }, + { + "name": "value", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "1": "void" + }, + "default": "varint" + } + ] + } + ] + ], + "packet_scoreboard_display_objective": [ + "container", + [ + { + "name": "position", + "type": "i8" + }, + { + "name": "name", + "type": "string" + } + ] + ], + "packet_scoreboard_team": [ + "container", + [ + { + "name": "team", + "type": "string" + }, + { + "name": "mode", + "type": "i8" + }, + { + "name": "name", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + }, + { + "name": "prefix", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + }, + { + "name": "suffix", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + }, + { + "name": "friendlyFire", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "i8", + "2": "i8" + }, + "default": "void" + } + ] + }, + { + "name": "nameTagVisibility", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "string", + "2": "string" + }, + "default": "void" + } + ] + }, + { + "name": "color", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": "i8", + "2": "i8" + }, + "default": "void" + } + ] + }, + { + "name": "players", + "type": [ + "switch", + { + "compareTo": "mode", + "fields": { + "0": [ + "array", + { + "countType": "varint", + "type": "string" + } + ], + "3": [ + "array", + { + "countType": "varint", + "type": "string" + } + ], + "4": [ + "array", + { + "countType": "varint", + "type": "string" + } + ] + }, + "default": "void" + } + ] + } + ] + ], + "packet_custom_payload": [ + "container", + [ + { + "name": "channel", + "type": "string" + }, + { + "name": "data", + "type": "restBuffer" + } + ] + ], + "packet_kick_disconnect": [ + "container", + [ + { + "name": "reason", + "type": "string" + } + ] + ], + "packet_difficulty": [ + "container", + [ + { + "name": "difficulty", + "type": "u8" + } + ] + ], + "packet_combat_event": [ + "container", + [ + { + "name": "event", + "type": "varint" + }, + { + "name": "duration", + "type": [ + "switch", + { + "compareTo": "event", + "fields": { + "1": "varint" + }, + "default": "void" + } + ] + }, + { + "name": "playerId", + "type": [ + "switch", + { + "compareTo": "event", + "fields": { + "2": "varint" + }, + "default": "void" + } + ] + }, + { + "name": "entityId", + "type": [ + "switch", + { + "compareTo": "event", + "fields": { + "1": "i32", + "2": "i32" + }, + "default": "void" + } + ] + }, + { + "name": "message", + "type": [ + "switch", + { + "compareTo": "event", + "fields": { + "2": "string" + }, + "default": "void" + } + ] + } + ] + ], + "packet_camera": [ + "container", + [ + { + "name": "cameraId", + "type": "varint" + } + ] + ], + "packet_world_border": [ + "container", + [ + { + "name": "action", + "type": "varint" + }, + { + "name": "radius", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "0": "f64" + }, + "default": "void" + } + ] + }, + { + "name": "x", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "2": "f64", + "3": "f64" + }, + "default": "void" + } + ] + }, + { + "name": "z", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "2": "f64", + "3": "f64" + }, + "default": "void" + } + ] + }, + { + "name": "old_radius", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "1": "f64", + "3": "f64" + }, + "default": "void" + } + ] + }, + { + "name": "new_radius", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "1": "f64", + "3": "f64" + }, + "default": "void" + } + ] + }, + { + "name": "speed", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "1": "varlong", + "3": "varlong" + }, + "default": "void" + } + ] + }, + { + "name": "portalBoundary", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "3": "varint" + }, + "default": "void" + } + ] + }, + { + "name": "warning_time", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "3": "varint", + "4": "varint" + }, + "default": "void" + } + ] + }, + { + "name": "warning_blocks", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "3": "varint", + "5": "varint" + }, + "default": "void" + } + ] + } + ] + ], + "packet_title": [ + "container", + [ + { + "name": "action", + "type": "varint" + }, + { + "name": "text", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "0": "string", + "1": "string" + }, + "default": "void" + } + ] + }, + { + "name": "fadeIn", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "2": "i32" + }, + "default": "void" + } + ] + }, + { + "name": "stay", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "2": "i32" + }, + "default": "void" + } + ] + }, + { + "name": "fadeOut", + "type": [ + "switch", + { + "compareTo": "action", + "fields": { + "2": "i32" + }, + "default": "void" + } + ] + } + ] + ], + "packet_set_compression": [ + "container", + [ + { + "name": "threshold", + "type": "varint" + } + ] + ], + "packet_playerlist_header": [ + "container", + [ + { + "name": "header", + "type": "string" + }, + { + "name": "footer", + "type": "string" + } + ] + ], + "packet_resource_pack_send": [ + "container", + [ + { + "name": "url", + "type": "string" + }, + { + "name": "hash", + "type": "string" + } + ] + ], + "packet_update_entity_nbt": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "tag", + "type": "nbt" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "keep_alive", + "0x01": "login", + "0x02": "chat", + "0x03": "update_time", + "0x04": "entity_equipment", + "0x05": "spawn_position", + "0x06": "update_health", + "0x07": "respawn", + "0x08": "position", + "0x09": "held_item_slot", + "0x0a": "bed", + "0x0b": "animation", + "0x0c": "named_entity_spawn", + "0x0d": "collect", + "0x0e": "spawn_entity", + "0x0f": "spawn_entity_living", + "0x10": "spawn_entity_painting", + "0x11": "spawn_entity_experience_orb", + "0x12": "entity_velocity", + "0x13": "entity_destroy", + "0x14": "entity", + "0x15": "rel_entity_move", + "0x16": "entity_look", + "0x17": "entity_move_look", + "0x18": "entity_teleport", + "0x19": "entity_head_rotation", + "0x1a": "entity_status", + "0x1b": "attach_entity", + "0x1c": "entity_metadata", + "0x1d": "entity_effect", + "0x1e": "remove_entity_effect", + "0x1f": "experience", + "0x20": "update_attributes", + "0x21": "map_chunk", + "0x22": "multi_block_change", + "0x23": "block_change", + "0x24": "block_action", + "0x25": "block_break_animation", + "0x26": "map_chunk_bulk", + "0x27": "explosion", + "0x28": "world_event", + "0x29": "named_sound_effect", + "0x2a": "world_particles", + "0x2b": "game_state_change", + "0x2c": "spawn_entity_weather", + "0x2d": "open_window", + "0x2e": "close_window", + "0x2f": "set_slot", + "0x30": "window_items", + "0x31": "craft_progress_bar", + "0x32": "transaction", + "0x33": "update_sign", + "0x34": "map", + "0x35": "tile_entity_data", + "0x36": "open_sign_entity", + "0x37": "statistics", + "0x38": "player_info", + "0x39": "abilities", + "0x3a": "tab_complete", + "0x3b": "scoreboard_objective", + "0x3c": "scoreboard_score", + "0x3d": "scoreboard_display_objective", + "0x3e": "scoreboard_team", + "0x3f": "custom_payload", + "0x40": "kick_disconnect", + "0x41": "difficulty", + "0x42": "combat_event", + "0x43": "camera", + "0x44": "world_border", + "0x45": "title", + "0x46": "set_compression", + "0x47": "playerlist_header", + "0x48": "resource_pack_send", + "0x49": "update_entity_nbt" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "keep_alive": "packet_keep_alive", + "login": "packet_login", + "chat": "packet_chat", + "update_time": "packet_update_time", + "entity_equipment": "packet_entity_equipment", + "spawn_position": "packet_spawn_position", + "update_health": "packet_update_health", + "respawn": "packet_respawn", + "position": "packet_position", + "held_item_slot": "packet_held_item_slot", + "bed": "packet_bed", + "animation": "packet_animation", + "named_entity_spawn": "packet_named_entity_spawn", + "collect": "packet_collect", + "spawn_entity": "packet_spawn_entity", + "spawn_entity_living": "packet_spawn_entity_living", + "spawn_entity_painting": "packet_spawn_entity_painting", + "spawn_entity_experience_orb": "packet_spawn_entity_experience_orb", + "entity_velocity": "packet_entity_velocity", + "entity_destroy": "packet_entity_destroy", + "entity": "packet_entity", + "rel_entity_move": "packet_rel_entity_move", + "entity_look": "packet_entity_look", + "entity_move_look": "packet_entity_move_look", + "entity_teleport": "packet_entity_teleport", + "entity_head_rotation": "packet_entity_head_rotation", + "entity_status": "packet_entity_status", + "attach_entity": "packet_attach_entity", + "entity_metadata": "packet_entity_metadata", + "entity_effect": "packet_entity_effect", + "remove_entity_effect": "packet_remove_entity_effect", + "experience": "packet_experience", + "update_attributes": "packet_update_attributes", + "map_chunk": "packet_map_chunk", + "multi_block_change": "packet_multi_block_change", + "block_change": "packet_block_change", + "block_action": "packet_block_action", + "block_break_animation": "packet_block_break_animation", + "map_chunk_bulk": "packet_map_chunk_bulk", + "explosion": "packet_explosion", + "world_event": "packet_world_event", + "named_sound_effect": "packet_named_sound_effect", + "world_particles": "packet_world_particles", + "game_state_change": "packet_game_state_change", + "spawn_entity_weather": "packet_spawn_entity_weather", + "open_window": "packet_open_window", + "close_window": "packet_close_window", + "set_slot": "packet_set_slot", + "window_items": "packet_window_items", + "craft_progress_bar": "packet_craft_progress_bar", + "transaction": "packet_transaction", + "update_sign": "packet_update_sign", + "map": "packet_map", + "tile_entity_data": "packet_tile_entity_data", + "open_sign_entity": "packet_open_sign_entity", + "statistics": "packet_statistics", + "player_info": "packet_player_info", + "abilities": "packet_abilities", + "tab_complete": "packet_tab_complete", + "scoreboard_objective": "packet_scoreboard_objective", + "scoreboard_score": "packet_scoreboard_score", + "scoreboard_display_objective": "packet_scoreboard_display_objective", + "scoreboard_team": "packet_scoreboard_team", + "custom_payload": "packet_custom_payload", + "kick_disconnect": "packet_kick_disconnect", + "difficulty": "packet_difficulty", + "combat_event": "packet_combat_event", + "camera": "packet_camera", + "world_border": "packet_world_border", + "title": "packet_title", + "set_compression": "packet_set_compression", + "playerlist_header": "packet_playerlist_header", + "resource_pack_send": "packet_resource_pack_send", + "update_entity_nbt": "packet_update_entity_nbt" + } + } + ] + } + ] + ] + } + }, + "toServer": { + "types": { + "packet_keep_alive": [ + "container", + [ + { + "name": "keepAliveId", + "type": "varint" + } + ] + ], + "packet_chat": [ + "container", + [ + { + "name": "message", + "type": "string" + } + ] + ], + "packet_use_entity": [ + "container", + [ + { + "name": "target", + "type": "varint" + }, + { + "name": "mouse", + "type": "varint" + }, + { + "name": "x", + "type": [ + "switch", + { + "compareTo": "mouse", + "fields": { + "2": "f32" + }, + "default": "void" + } + ] + }, + { + "name": "y", + "type": [ + "switch", + { + "compareTo": "mouse", + "fields": { + "2": "f32" + }, + "default": "void" + } + ] + }, + { + "name": "z", + "type": [ + "switch", + { + "compareTo": "mouse", + "fields": { + "2": "f32" + }, + "default": "void" + } + ] + } + ] + ], + "packet_flying": [ + "container", + [ + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_position": [ + "container", + [ + { + "name": "x", + "type": "f64" + }, + { + "name": "y", + "type": "f64" + }, + { + "name": "z", + "type": "f64" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_look": [ + "container", + [ + { + "name": "yaw", + "type": "f32" + }, + { + "name": "pitch", + "type": "f32" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_position_look": [ + "container", + [ + { + "name": "x", + "type": "f64" + }, + { + "name": "y", + "type": "f64" + }, + { + "name": "z", + "type": "f64" + }, + { + "name": "yaw", + "type": "f32" + }, + { + "name": "pitch", + "type": "f32" + }, + { + "name": "onGround", + "type": "bool" + } + ] + ], + "packet_block_dig": [ + "container", + [ + { + "name": "status", + "type": "varint" + }, + { + "name": "location", + "type": "position" + }, + { + "name": "face", + "type": "i8" + } + ] + ], + "packet_block_place": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "direction", + "type": "i8" + }, + { + "name": "heldItem", + "type": "slot" + }, + { + "name": "cursorX", + "type": "i8" + }, + { + "name": "cursorY", + "type": "i8" + }, + { + "name": "cursorZ", + "type": "i8" + } + ] + ], + "packet_held_item_slot": [ + "container", + [ + { + "name": "slotId", + "type": "i16" + } + ] + ], + "packet_arm_animation": [ + "container", + [] + ], + "packet_entity_action": [ + "container", + [ + { + "name": "entityId", + "type": "varint" + }, + { + "name": "actionId", + "type": "varint" + }, + { + "name": "jumpBoost", + "type": "varint" + } + ] + ], + "packet_steer_vehicle": [ + "container", + [ + { + "name": "sideways", + "type": "f32" + }, + { + "name": "forward", + "type": "f32" + }, + { + "name": "jump", + "type": "u8" + } + ] + ], + "packet_close_window": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + } + ] + ], + "packet_window_click": [ + "container", + [ + { + "name": "windowId", + "type": "u8" + }, + { + "name": "slot", + "type": "i16" + }, + { + "name": "mouseButton", + "type": "i8" + }, + { + "name": "action", + "type": "i16" + }, + { + "name": "mode", + "type": "i8" + }, + { + "name": "item", + "type": "slot" + } + ] + ], + "packet_transaction": [ + "container", + [ + { + "name": "windowId", + "type": "i8" + }, + { + "name": "action", + "type": "i16" + }, + { + "name": "accepted", + "type": "bool" + } + ] + ], + "packet_set_creative_slot": [ + "container", + [ + { + "name": "slot", + "type": "i16" + }, + { + "name": "item", + "type": "slot" + } + ] + ], + "packet_enchant_item": [ + "container", + [ + { + "name": "windowId", + "type": "i8" + }, + { + "name": "enchantment", + "type": "i8" + } + ] + ], + "packet_update_sign": [ + "container", + [ + { + "name": "location", + "type": "position" + }, + { + "name": "text1", + "type": "string" + }, + { + "name": "text2", + "type": "string" + }, + { + "name": "text3", + "type": "string" + }, + { + "name": "text4", + "type": "string" + } + ] + ], + "packet_abilities": [ + "container", + [ + { + "name": "flags", + "type": "i8" + }, + { + "name": "flyingSpeed", + "type": "f32" + }, + { + "name": "walkingSpeed", + "type": "f32" + } + ] + ], + "packet_tab_complete": [ + "container", + [ + { + "name": "text", + "type": "string" + }, + { + "name": "block", + "type": [ + "option", + "position" + ] + } + ] + ], + "packet_settings": [ + "container", + [ + { + "name": "locale", + "type": "string" + }, + { + "name": "viewDistance", + "type": "i8" + }, + { + "name": "chatFlags", + "type": "i8" + }, + { + "name": "chatColors", + "type": "bool" + }, + { + "name": "skinParts", + "type": "u8" + } + ] + ], + "packet_client_command": [ + "container", + [ + { + "name": "payload", + "type": "varint" + } + ] + ], + "packet_custom_payload": [ + "container", + [ + { + "name": "channel", + "type": "string" + }, + { + "name": "data", + "type": "restBuffer" + } + ] + ], + "packet_spectate": [ + "container", + [ + { + "name": "target", + "type": "UUID" + } + ] + ], + "packet_resource_pack_receive": [ + "container", + [ + { + "name": "hash", + "type": "string" + }, + { + "name": "result", + "type": "varint" + } + ] + ], + "packet": [ + "container", + [ + { + "name": "name", + "type": [ + "mapper", + { + "type": "varint", + "mappings": { + "0x00": "keep_alive", + "0x01": "chat", + "0x02": "use_entity", + "0x03": "flying", + "0x04": "position", + "0x05": "look", + "0x06": "position_look", + "0x07": "block_dig", + "0x08": "block_place", + "0x09": "held_item_slot", + "0x0a": "arm_animation", + "0x0b": "entity_action", + "0x0c": "steer_vehicle", + "0x0d": "close_window", + "0x0e": "window_click", + "0x0f": "transaction", + "0x10": "set_creative_slot", + "0x11": "enchant_item", + "0x12": "update_sign", + "0x13": "abilities", + "0x14": "tab_complete", + "0x15": "settings", + "0x16": "client_command", + "0x17": "custom_payload", + "0x18": "spectate", + "0x19": "resource_pack_receive" + } + } + ] + }, + { + "name": "params", + "type": [ + "switch", + { + "compareTo": "name", + "fields": { + "keep_alive": "packet_keep_alive", + "chat": "packet_chat", + "use_entity": "packet_use_entity", + "flying": "packet_flying", + "position": "packet_position", + "look": "packet_look", + "position_look": "packet_position_look", + "block_dig": "packet_block_dig", + "block_place": "packet_block_place", + "held_item_slot": "packet_held_item_slot", + "arm_animation": "packet_arm_animation", + "entity_action": "packet_entity_action", + "steer_vehicle": "packet_steer_vehicle", + "close_window": "packet_close_window", + "window_click": "packet_window_click", + "transaction": "packet_transaction", + "set_creative_slot": "packet_set_creative_slot", + "enchant_item": "packet_enchant_item", + "update_sign": "packet_update_sign", + "abilities": "packet_abilities", + "tab_complete": "packet_tab_complete", + "settings": "packet_settings", + "client_command": "packet_client_command", + "custom_payload": "packet_custom_payload", + "spectate": "packet_spectate", + "resource_pack_receive": "packet_resource_pack_receive" + } + } + ] + } + ] + ] + } + } + } +} \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/recipes.json b/mc/data/minecraft-data/pc/1.8/recipes.json new file mode 100644 index 0000000..9752e24 --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/recipes.json @@ -0,0 +1,26871 @@ +{ + "1": [ + { + "ingredients": [ + { + "id": 1, + "metadata": 3 + }, + 4 + ], + "result": { + "count": 2, + "id": 1, + "metadata": 5 + } + }, + { + "inShape": [ + [ + { + "id": 1, + "metadata": 5 + }, + { + "id": 1, + "metadata": 5 + } + ], + [ + { + "id": 1, + "metadata": 5 + }, + { + "id": 1, + "metadata": 5 + } + ] + ], + "result": { + "count": 4, + "id": 1, + "metadata": 6 + } + }, + { + "inShape": [ + [ + 4, + 406 + ], + [ + 406, + 4 + ] + ], + "result": { + "count": 2, + "id": 1, + "metadata": 3 + } + }, + { + "inShape": [ + [ + { + "id": 1, + "metadata": 3 + }, + { + "id": 1, + "metadata": 3 + } + ], + [ + { + "id": 1, + "metadata": 3 + }, + { + "id": 1, + "metadata": 3 + } + ] + ], + "result": { + "count": 4, + "id": 1, + "metadata": 4 + } + }, + { + "ingredients": [ + { + "id": 1, + "metadata": 3 + }, + 406 + ], + "result": { + "count": 1, + "id": 1, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 1, + "metadata": 1 + }, + { + "id": 1, + "metadata": 1 + } + ], + [ + { + "id": 1, + "metadata": 1 + }, + { + "id": 1, + "metadata": 1 + } + ] + ], + "result": { + "count": 4, + "id": 1, + "metadata": 2 + } + } + ], + "3": [ + { + "inShape": [ + [ + { + "id": 3, + "metadata": 0 + }, + 13 + ], + [ + 13, + { + "id": 3, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 3, + "metadata": 1 + } + } + ], + "5": [ + { + "inShape": [ + [ + { + "id": 17, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 17, + "metadata": 1 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 17, + "metadata": 2 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 2 + } + }, + { + "inShape": [ + [ + { + "id": 17, + "metadata": 3 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 3 + } + }, + { + "inShape": [ + [ + { + "id": 162, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 4 + } + }, + { + "inShape": [ + [ + { + "id": 162, + "metadata": 1 + } + ] + ], + "result": { + "count": 4, + "id": 5, + "metadata": 5 + } + } + ], + "22": [ + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 22, + "metadata": 0 + } + } + ], + "23": [ + { + "inShape": [ + [ + 4, + 4, + 4 + ], + [ + 4, + 261, + 4 + ], + [ + 4, + 331, + 4 + ] + ], + "result": { + "count": 1, + "id": 23, + "metadata": 0 + } + } + ], + "24": [ + { + "inShape": [ + [ + { + "id": 12, + "metadata": 0 + }, + { + "id": 12, + "metadata": 0 + } + ], + [ + { + "id": 12, + "metadata": 0 + }, + { + "id": 12, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 24, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 24, + "metadata": 0 + }, + { + "id": 24, + "metadata": 0 + } + ], + [ + { + "id": 24, + "metadata": 0 + }, + { + "id": 24, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 24, + "metadata": 2 + } + }, + { + "inShape": [ + [ + { + "id": 44, + "metadata": 1 + } + ], + [ + { + "id": 44, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 24, + "metadata": 1 + } + } + ], + "25": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 5, + 331, + 5 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 25, + "metadata": 0 + } + } + ], + "27": [ + { + "inShape": [ + [ + 266, + null, + 266 + ], + [ + 266, + 280, + 266 + ], + [ + 266, + 331, + 266 + ] + ], + "result": { + "count": 6, + "id": 27, + "metadata": 0 + } + } + ], + "28": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + 70, + 265 + ], + [ + 265, + 331, + 265 + ] + ], + "result": { + "count": 6, + "id": 28, + "metadata": 0 + } + } + ], + "29": [ + { + "inShape": [ + [ + 341 + ], + [ + 33 + ] + ], + "result": { + "count": 1, + "id": 29, + "metadata": 0 + } + } + ], + "33": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 4, + 265, + 4 + ], + [ + 4, + 331, + 4 + ] + ], + "result": { + "count": 1, + "id": 33, + "metadata": 0 + } + } + ], + "35": [ + { + "inShape": [ + [ + 287, + 287 + ], + [ + 287, + 287 + ] + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 14 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 13 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 12 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 11 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 10 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 9 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 8 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 7 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 6 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 5 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 4 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 3 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 2 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 1 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + }, + { + "ingredients": [ + 35, + { + "id": 351, + "metadata": 0 + } + ], + "result": { + "count": 1, + "id": 35, + "metadata": 0 + } + } + ], + "41": [ + { + "inShape": [ + [ + 266, + 266, + 266 + ], + [ + 266, + 266, + 266 + ], + [ + 266, + 266, + 266 + ] + ], + "result": { + "count": 1, + "id": 41, + "metadata": 0 + } + } + ], + "42": [ + { + "inShape": [ + [ + 265, + 265, + 265 + ], + [ + 265, + 265, + 265 + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 42, + "metadata": 0 + } + } + ], + "44": [ + { + "inShape": [ + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 24, + 24, + 24 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 4, + 4, + 4 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 3 + } + }, + { + "inShape": [ + [ + 45, + 45, + 45 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 4 + } + }, + { + "inShape": [ + [ + 98, + 98, + 98 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 5 + } + }, + { + "inShape": [ + [ + 405, + 405, + 405 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 6 + } + }, + { + "inShape": [ + [ + 155, + 155, + 155 + ] + ], + "result": { + "count": 6, + "id": 44, + "metadata": 7 + } + } + ], + "45": [ + { + "inShape": [ + [ + 336, + 336 + ], + [ + 336, + 336 + ] + ], + "result": { + "count": 1, + "id": 45, + "metadata": 0 + } + } + ], + "46": [ + { + "inShape": [ + [ + 289, + 12, + 289 + ], + [ + 12, + 289, + 12 + ], + [ + 289, + 12, + 289 + ] + ], + "result": { + "count": 1, + "id": 46, + "metadata": 0 + } + } + ], + "47": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 340, + 340, + 340 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 47, + "metadata": 0 + } + } + ], + "48": [ + { + "ingredients": [ + 4, + 106 + ], + "result": { + "count": 1, + "id": 48, + "metadata": 0 + } + } + ], + "50": [ + { + "inShape": [ + [ + 263 + ], + [ + 280 + ] + ], + "result": { + "count": 4, + "id": 50, + "metadata": 0 + } + } + ], + "53": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 0 + } + ], + [ + null, + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 53, + "metadata": 0 + } + } + ], + "54": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 5, + null, + 5 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 54, + "metadata": 0 + } + } + ], + "57": [ + { + "inShape": [ + [ + 264, + 264, + 264 + ], + [ + 264, + 264, + 264 + ], + [ + 264, + 264, + 264 + ] + ], + "result": { + "count": 1, + "id": 57, + "metadata": 0 + } + } + ], + "58": [ + { + "inShape": [ + [ + 5, + 5 + ], + [ + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 58, + "metadata": 0 + } + } + ], + "61": [ + { + "inShape": [ + [ + 4, + 4, + 4 + ], + [ + 4, + null, + 4 + ], + [ + 4, + 4, + 4 + ] + ], + "result": { + "count": 1, + "id": 61, + "metadata": 0 + } + } + ], + "65": [ + { + "inShape": [ + [ + 280, + null, + 280 + ], + [ + 280, + 280, + 280 + ], + [ + 280, + null, + 280 + ] + ], + "result": { + "count": 3, + "id": 65, + "metadata": 0 + } + } + ], + "66": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + 280, + 265 + ], + [ + 265, + null, + 265 + ] + ], + "result": { + "count": 16, + "id": 66, + "metadata": 0 + } + } + ], + "67": [ + { + "inShape": [ + [ + null, + null, + 4 + ], + [ + null, + 4, + 4 + ], + [ + 4, + 4, + 4 + ] + ], + "result": { + "count": 4, + "id": 67, + "metadata": 0 + } + } + ], + "69": [ + { + "inShape": [ + [ + 280 + ], + [ + 4 + ] + ], + "result": { + "count": 1, + "id": 69, + "metadata": 0 + } + } + ], + "70": [ + { + "inShape": [ + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 70, + "metadata": 0 + } + } + ], + "72": [ + { + "inShape": [ + [ + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 72, + "metadata": 0 + } + } + ], + "75": [ + { + "inShape": [ + [ + 331 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 75, + "metadata": 0 + } + } + ], + "77": [ + { + "inShape": [ + [ + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 77, + "metadata": 0 + } + } + ], + "78": [ + { + "inShape": [ + [ + 80, + 80, + 80 + ] + ], + "result": { + "count": 6, + "id": 78, + "metadata": 0 + } + } + ], + "80": [ + { + "inShape": [ + [ + 332, + 332 + ], + [ + 332, + 332 + ] + ], + "result": { + "count": 1, + "id": 80, + "metadata": 0 + } + } + ], + "82": [ + { + "inShape": [ + [ + 337, + 337 + ], + [ + 337, + 337 + ] + ], + "result": { + "count": 1, + "id": 82, + "metadata": 0 + } + } + ], + "84": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 5, + 264, + 5 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 84, + "metadata": 0 + } + } + ], + "85": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + 280, + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + }, + 280, + { + "id": 5, + "metadata": 0 + } + ] + ], + "result": { + "count": 3, + "id": 85, + "metadata": 0 + } + } + ], + "89": [ + { + "inShape": [ + [ + 348, + 348 + ], + [ + 348, + 348 + ] + ], + "result": { + "count": 1, + "id": 89, + "metadata": 0 + } + } + ], + "91": [ + { + "inShape": [ + [ + 86 + ], + [ + 50 + ] + ], + "result": { + "count": 1, + "id": 91, + "metadata": 0 + } + } + ], + "95": [ + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 15 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 14 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 13 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 2 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 12 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 3 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 11 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 4 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 10 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 5 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 9 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 6 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 8 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 7 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 7 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 8 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 6 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 9 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 5 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 10 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 4 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 11 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 3 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 12 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 2 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 13 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 1 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 14 + } + }, + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + { + "id": 351, + "metadata": 0 + }, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 8, + "id": 95, + "metadata": 15 + } + } + ], + "96": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 2, + "id": 96, + "metadata": 0 + } + } + ], + "98": [ + { + "inShape": [ + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ], + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 98, + "metadata": 0 + } + }, + { + "ingredients": [ + 98, + 106 + ], + "result": { + "count": 1, + "id": 98, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 44, + "metadata": 5 + } + ], + [ + { + "id": 44, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 98, + "metadata": 3 + } + } + ], + "101": [ + { + "inShape": [ + [ + 265, + 265, + 265 + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 16, + "id": 101, + "metadata": 0 + } + } + ], + "102": [ + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + 20, + 20 + ] + ], + "result": { + "count": 16, + "id": 102, + "metadata": 0 + } + } + ], + "103": [ + { + "inShape": [ + [ + 360, + 360, + 360 + ], + [ + 360, + 360, + 360 + ], + [ + 360, + 360, + 360 + ] + ], + "result": { + "count": 1, + "id": 103, + "metadata": 0 + } + } + ], + "107": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 0 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 0 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 107, + "metadata": 0 + } + } + ], + "108": [ + { + "inShape": [ + [ + null, + null, + 45 + ], + [ + null, + 45, + 45 + ], + [ + 45, + 45, + 45 + ] + ], + "result": { + "count": 4, + "id": 108, + "metadata": 0 + } + } + ], + "109": [ + { + "inShape": [ + [ + null, + null, + 98 + ], + [ + null, + 98, + 98 + ], + [ + 98, + 98, + 98 + ] + ], + "result": { + "count": 4, + "id": 109, + "metadata": 0 + } + } + ], + "113": [ + { + "inShape": [ + [ + 405, + 405, + 405 + ], + [ + 405, + 405, + 405 + ] + ], + "result": { + "count": 6, + "id": 113, + "metadata": 0 + } + } + ], + "114": [ + { + "inShape": [ + [ + null, + null, + 405 + ], + [ + null, + 405, + 405 + ], + [ + 405, + 405, + 405 + ] + ], + "result": { + "count": 4, + "id": 114, + "metadata": 0 + } + } + ], + "116": [ + { + "inShape": [ + [ + null, + 340, + null + ], + [ + 264, + 49, + 264 + ], + [ + 49, + 49, + 49 + ] + ], + "result": { + "count": 1, + "id": 116, + "metadata": 0 + } + } + ], + "123": [ + { + "inShape": [ + [ + null, + 331, + null + ], + [ + 331, + 89, + 331 + ], + [ + null, + 331, + null + ] + ], + "result": { + "count": 1, + "id": 123, + "metadata": 0 + } + } + ], + "126": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 2 + } + }, + { + "inShape": [ + [ + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 3 + } + }, + { + "inShape": [ + [ + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 4 + } + }, + { + "inShape": [ + [ + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ] + ], + "result": { + "count": 6, + "id": 126, + "metadata": 5 + } + } + ], + "128": [ + { + "inShape": [ + [ + null, + null, + 24 + ], + [ + null, + 24, + 24 + ], + [ + 24, + 24, + 24 + ] + ], + "result": { + "count": 4, + "id": 128, + "metadata": 0 + } + } + ], + "130": [ + { + "inShape": [ + [ + 49, + 49, + 49 + ], + [ + 49, + 381, + 49 + ], + [ + 49, + 49, + 49 + ] + ], + "result": { + "count": 1, + "id": 130, + "metadata": 0 + } + } + ], + "131": [ + { + "inShape": [ + [ + 265 + ], + [ + 280 + ], + [ + 5 + ] + ], + "result": { + "count": 2, + "id": 131, + "metadata": 0 + } + } + ], + "133": [ + { + "inShape": [ + [ + 388, + 388, + 388 + ], + [ + 388, + 388, + 388 + ], + [ + 388, + 388, + 388 + ] + ], + "result": { + "count": 1, + "id": 133, + "metadata": 0 + } + } + ], + "134": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 1 + } + ], + [ + null, + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ], + [ + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ] + ], + "result": { + "count": 4, + "id": 134, + "metadata": 0 + } + } + ], + "135": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 2 + } + ], + [ + null, + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ], + [ + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ] + ], + "result": { + "count": 4, + "id": 135, + "metadata": 0 + } + } + ], + "136": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 3 + } + ], + [ + null, + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ], + [ + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ] + ], + "result": { + "count": 4, + "id": 136, + "metadata": 0 + } + } + ], + "138": [ + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 20, + 399, + 20 + ], + [ + 49, + 49, + 49 + ] + ], + "result": { + "count": 1, + "id": 138, + "metadata": 0 + } + } + ], + "139": [ + { + "inShape": [ + [ + 4, + 4, + 4 + ], + [ + 4, + 4, + 4 + ] + ], + "result": { + "count": 6, + "id": 139, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 48, + 48, + 48 + ], + [ + 48, + 48, + 48 + ] + ], + "result": { + "count": 6, + "id": 139, + "metadata": 1 + } + } + ], + "143": [ + { + "inShape": [ + [ + 5 + ] + ], + "result": { + "count": 1, + "id": 143, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 1, + "metadata": 0 + } + ], + [ + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 143, + "metadata": 0 + } + } + ], + "145": [ + { + "inShape": [ + [ + 42, + 42, + 42 + ], + [ + null, + 265, + null + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 145, + "metadata": 0 + } + } + ], + "146": [ + { + "inShape": [ + [ + 131, + 54 + ] + ], + "result": { + "count": 1, + "id": 146, + "metadata": 0 + } + } + ], + "147": [ + { + "inShape": [ + [ + 266, + 266 + ] + ], + "result": { + "count": 1, + "id": 147, + "metadata": 0 + } + } + ], + "148": [ + { + "inShape": [ + [ + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 148, + "metadata": 0 + } + } + ], + "151": [ + { + "inShape": [ + [ + 20, + 20, + 20 + ], + [ + 406, + 406, + 406 + ], + [ + 126, + 126, + 126 + ] + ], + "result": { + "count": 1, + "id": 151, + "metadata": 0 + } + } + ], + "152": [ + { + "inShape": [ + [ + 331, + 331, + 331 + ], + [ + 331, + 331, + 331 + ], + [ + 331, + 331, + 331 + ] + ], + "result": { + "count": 1, + "id": 152, + "metadata": 0 + } + } + ], + "154": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + 54, + 265 + ], + [ + null, + 265, + null + ] + ], + "result": { + "count": 1, + "id": 154, + "metadata": 0 + } + } + ], + "155": [ + { + "inShape": [ + [ + 406, + 406 + ], + [ + 406, + 406 + ] + ], + "result": { + "count": 1, + "id": 155, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 44, + "metadata": 7 + } + ], + [ + { + "id": 44, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 155, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 155, + "metadata": 0 + } + ], + [ + { + "id": 155, + "metadata": 0 + } + ] + ], + "result": { + "count": 2, + "id": 155, + "metadata": 0 + } + } + ], + "156": [ + { + "inShape": [ + [ + null, + null, + 155 + ], + [ + null, + 155, + 155 + ], + [ + 155, + 155, + 155 + ] + ], + "result": { + "count": 4, + "id": 156, + "metadata": 0 + } + } + ], + "157": [ + { + "inShape": [ + [ + 265, + 280, + 265 + ], + [ + 265, + 75, + 265 + ], + [ + 265, + 280, + 265 + ] + ], + "result": { + "count": 6, + "id": 157, + "metadata": 0 + } + } + ], + "158": [ + { + "inShape": [ + [ + 4, + 4, + 4 + ], + [ + 4, + null, + 4 + ], + [ + 4, + 331, + 4 + ] + ], + "result": { + "count": 1, + "id": 158, + "metadata": 0 + } + } + ], + "159": [ + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 15 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 14 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 13 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 2 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 12 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 3 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 11 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 4 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 10 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 5 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 9 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 6 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 8 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 7 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 7 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 8 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 6 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 9 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 5 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 10 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 4 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 11 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 3 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 12 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 2 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 13 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 1 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 14 + } + }, + { + "inShape": [ + [ + 172, + 172, + 172 + ], + [ + 172, + { + "id": 351, + "metadata": 0 + }, + 172 + ], + [ + 172, + 172, + 172 + ] + ], + "result": { + "count": 8, + "id": 159, + "metadata": 15 + } + } + ], + "160": [ + { + "inShape": [ + [ + { + "id": 95, + "metadata": 0 + }, + { + "id": 95, + "metadata": 0 + }, + { + "id": 95, + "metadata": 0 + } + ], + [ + { + "id": 95, + "metadata": 0 + }, + { + "id": 95, + "metadata": 0 + }, + { + "id": 95, + "metadata": 0 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 1 + }, + { + "id": 95, + "metadata": 1 + }, + { + "id": 95, + "metadata": 1 + } + ], + [ + { + "id": 95, + "metadata": 1 + }, + { + "id": 95, + "metadata": 1 + }, + { + "id": 95, + "metadata": 1 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 2 + }, + { + "id": 95, + "metadata": 2 + }, + { + "id": 95, + "metadata": 2 + } + ], + [ + { + "id": 95, + "metadata": 2 + }, + { + "id": 95, + "metadata": 2 + }, + { + "id": 95, + "metadata": 2 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 2 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 3 + }, + { + "id": 95, + "metadata": 3 + }, + { + "id": 95, + "metadata": 3 + } + ], + [ + { + "id": 95, + "metadata": 3 + }, + { + "id": 95, + "metadata": 3 + }, + { + "id": 95, + "metadata": 3 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 3 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 4 + }, + { + "id": 95, + "metadata": 4 + }, + { + "id": 95, + "metadata": 4 + } + ], + [ + { + "id": 95, + "metadata": 4 + }, + { + "id": 95, + "metadata": 4 + }, + { + "id": 95, + "metadata": 4 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 4 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 5 + }, + { + "id": 95, + "metadata": 5 + }, + { + "id": 95, + "metadata": 5 + } + ], + [ + { + "id": 95, + "metadata": 5 + }, + { + "id": 95, + "metadata": 5 + }, + { + "id": 95, + "metadata": 5 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 5 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 6 + }, + { + "id": 95, + "metadata": 6 + }, + { + "id": 95, + "metadata": 6 + } + ], + [ + { + "id": 95, + "metadata": 6 + }, + { + "id": 95, + "metadata": 6 + }, + { + "id": 95, + "metadata": 6 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 6 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 7 + }, + { + "id": 95, + "metadata": 7 + }, + { + "id": 95, + "metadata": 7 + } + ], + [ + { + "id": 95, + "metadata": 7 + }, + { + "id": 95, + "metadata": 7 + }, + { + "id": 95, + "metadata": 7 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 7 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 8 + }, + { + "id": 95, + "metadata": 8 + }, + { + "id": 95, + "metadata": 8 + } + ], + [ + { + "id": 95, + "metadata": 8 + }, + { + "id": 95, + "metadata": 8 + }, + { + "id": 95, + "metadata": 8 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 8 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 9 + }, + { + "id": 95, + "metadata": 9 + }, + { + "id": 95, + "metadata": 9 + } + ], + [ + { + "id": 95, + "metadata": 9 + }, + { + "id": 95, + "metadata": 9 + }, + { + "id": 95, + "metadata": 9 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 9 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 10 + }, + { + "id": 95, + "metadata": 10 + }, + { + "id": 95, + "metadata": 10 + } + ], + [ + { + "id": 95, + "metadata": 10 + }, + { + "id": 95, + "metadata": 10 + }, + { + "id": 95, + "metadata": 10 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 10 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 11 + }, + { + "id": 95, + "metadata": 11 + }, + { + "id": 95, + "metadata": 11 + } + ], + [ + { + "id": 95, + "metadata": 11 + }, + { + "id": 95, + "metadata": 11 + }, + { + "id": 95, + "metadata": 11 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 11 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 12 + }, + { + "id": 95, + "metadata": 12 + }, + { + "id": 95, + "metadata": 12 + } + ], + [ + { + "id": 95, + "metadata": 12 + }, + { + "id": 95, + "metadata": 12 + }, + { + "id": 95, + "metadata": 12 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 12 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 13 + }, + { + "id": 95, + "metadata": 13 + }, + { + "id": 95, + "metadata": 13 + } + ], + [ + { + "id": 95, + "metadata": 13 + }, + { + "id": 95, + "metadata": 13 + }, + { + "id": 95, + "metadata": 13 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 13 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 14 + }, + { + "id": 95, + "metadata": 14 + }, + { + "id": 95, + "metadata": 14 + } + ], + [ + { + "id": 95, + "metadata": 14 + }, + { + "id": 95, + "metadata": 14 + }, + { + "id": 95, + "metadata": 14 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 14 + } + }, + { + "inShape": [ + [ + { + "id": 95, + "metadata": 15 + }, + { + "id": 95, + "metadata": 15 + }, + { + "id": 95, + "metadata": 15 + } + ], + [ + { + "id": 95, + "metadata": 15 + }, + { + "id": 95, + "metadata": 15 + }, + { + "id": 95, + "metadata": 15 + } + ] + ], + "result": { + "count": 16, + "id": 160, + "metadata": 15 + } + } + ], + "163": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 4 + } + ], + [ + null, + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ], + [ + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ] + ], + "result": { + "count": 4, + "id": 163, + "metadata": 0 + } + } + ], + "164": [ + { + "inShape": [ + [ + null, + null, + { + "id": 5, + "metadata": 5 + } + ], + [ + null, + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ], + [ + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ] + ], + "result": { + "count": 4, + "id": 164, + "metadata": 0 + } + } + ], + "165": [ + { + "inShape": [ + [ + 341, + 341, + 341 + ], + [ + 341, + 341, + 341 + ], + [ + 341, + 341, + 341 + ] + ], + "result": { + "count": 1, + "id": 165, + "metadata": 0 + } + } + ], + "167": [ + { + "inShape": [ + [ + 265, + 265 + ], + [ + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 167, + "metadata": 0 + } + } + ], + "168": [ + { + "inShape": [ + [ + 409, + 409 + ], + [ + 409, + 409 + ] + ], + "result": { + "count": 1, + "id": 168, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 409, + 409, + 409 + ], + [ + 409, + 409, + 409 + ], + [ + 409, + 409, + 409 + ] + ], + "result": { + "count": 1, + "id": 168, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 409, + 409, + 409 + ], + [ + 409, + { + "id": 351, + "metadata": 0 + }, + 409 + ], + [ + 409, + 409, + 409 + ] + ], + "result": { + "count": 1, + "id": 168, + "metadata": 2 + } + } + ], + "169": [ + { + "inShape": [ + [ + 409, + 410, + 409 + ], + [ + 410, + 410, + 410 + ], + [ + 409, + 410, + 409 + ] + ], + "result": { + "count": 1, + "id": 169, + "metadata": 0 + } + } + ], + "170": [ + { + "inShape": [ + [ + 296, + 296, + 296 + ], + [ + 296, + 296, + 296 + ], + [ + 296, + 296, + 296 + ] + ], + "result": { + "count": 1, + "id": 170, + "metadata": 0 + } + } + ], + "171": [ + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 2 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 3 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 4 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 5 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 6 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 7 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 8 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 9 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 10 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 11 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 12 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 13 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 14 + } + }, + { + "inShape": [ + [ + 35, + 35 + ] + ], + "result": { + "count": 3, + "id": 171, + "metadata": 15 + } + } + ], + "173": [ + { + "inShape": [ + [ + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + } + ], + [ + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + } + ], + [ + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + }, + { + "id": 263, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 173, + "metadata": 0 + } + } + ], + "179": [ + { + "inShape": [ + [ + { + "id": 12, + "metadata": 1 + }, + { + "id": 12, + "metadata": 1 + } + ], + [ + { + "id": 12, + "metadata": 1 + }, + { + "id": 12, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 179, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 179, + "metadata": 0 + }, + { + "id": 179, + "metadata": 0 + } + ], + [ + { + "id": 179, + "metadata": 0 + }, + { + "id": 179, + "metadata": 0 + } + ] + ], + "result": { + "count": 4, + "id": 179, + "metadata": 2 + } + }, + { + "inShape": [ + [ + { + "id": 182, + "metadata": 0 + } + ], + [ + { + "id": 182, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 179, + "metadata": 1 + } + } + ], + "180": [ + { + "inShape": [ + [ + null, + null, + 179 + ], + [ + null, + 179, + 179 + ], + [ + 179, + 179, + 179 + ] + ], + "result": { + "count": 4, + "id": 180, + "metadata": 0 + } + } + ], + "182": [ + { + "inShape": [ + [ + 179, + 179, + 179 + ] + ], + "result": { + "count": 6, + "id": 182, + "metadata": 0 + } + } + ], + "183": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 1 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 1 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 183, + "metadata": 0 + } + } + ], + "184": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 2 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 2 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 184, + "metadata": 0 + } + } + ], + "185": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 3 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 3 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 185, + "metadata": 0 + } + } + ], + "186": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 5 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 5 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 186, + "metadata": 0 + } + } + ], + "187": [ + { + "inShape": [ + [ + 280, + { + "id": 5, + "metadata": 4 + }, + 280 + ], + [ + 280, + { + "id": 5, + "metadata": 4 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 187, + "metadata": 0 + } + } + ], + "188": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 1 + }, + 280, + { + "id": 5, + "metadata": 1 + } + ], + [ + { + "id": 5, + "metadata": 1 + }, + 280, + { + "id": 5, + "metadata": 1 + } + ] + ], + "result": { + "count": 3, + "id": 188, + "metadata": 0 + } + } + ], + "189": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 2 + }, + 280, + { + "id": 5, + "metadata": 2 + } + ], + [ + { + "id": 5, + "metadata": 2 + }, + 280, + { + "id": 5, + "metadata": 2 + } + ] + ], + "result": { + "count": 3, + "id": 189, + "metadata": 0 + } + } + ], + "190": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 3 + }, + 280, + { + "id": 5, + "metadata": 3 + } + ], + [ + { + "id": 5, + "metadata": 3 + }, + 280, + { + "id": 5, + "metadata": 3 + } + ] + ], + "result": { + "count": 3, + "id": 190, + "metadata": 0 + } + } + ], + "191": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 5 + }, + 280, + { + "id": 5, + "metadata": 5 + } + ], + [ + { + "id": 5, + "metadata": 5 + }, + 280, + { + "id": 5, + "metadata": 5 + } + ] + ], + "result": { + "count": 3, + "id": 191, + "metadata": 0 + } + } + ], + "192": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 4 + }, + 280, + { + "id": 5, + "metadata": 4 + } + ], + [ + { + "id": 5, + "metadata": 4 + }, + 280, + { + "id": 5, + "metadata": 4 + } + ] + ], + "result": { + "count": 3, + "id": 192, + "metadata": 0 + } + } + ], + "256": [ + { + "inShape": [ + [ + 265 + ], + [ + 280 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 256, + "metadata": 0 + } + }, + { + "ingredients": [ + 256, + 256 + ], + "result": { + "count": 1, + "id": 256, + "metadata": 0 + } + } + ], + "257": [ + { + "inShape": [ + [ + 265, + 265, + 265 + ], + [ + null, + 280, + null + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 257, + "metadata": 0 + } + }, + { + "ingredients": [ + 257, + 257 + ], + "result": { + "count": 1, + "id": 257, + "metadata": 0 + } + } + ], + "258": [ + { + "inShape": [ + [ + 265, + 265 + ], + [ + 265, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 258, + "metadata": 0 + } + }, + { + "ingredients": [ + 258, + 258 + ], + "result": { + "count": 1, + "id": 258, + "metadata": 0 + } + } + ], + "259": [ + { + "ingredients": [ + 265, + 318 + ], + "result": { + "count": 1, + "id": 259, + "metadata": 0 + } + }, + { + "ingredients": [ + 259, + 259 + ], + "result": { + "count": 1, + "id": 259, + "metadata": 0 + } + } + ], + "261": [ + { + "inShape": [ + [ + null, + 280, + 287 + ], + [ + 280, + null, + 287 + ], + [ + null, + 280, + 287 + ] + ], + "result": { + "count": 1, + "id": 261, + "metadata": 0 + } + }, + { + "ingredients": [ + 261, + 261 + ], + "result": { + "count": 1, + "id": 261, + "metadata": 0 + } + } + ], + "262": [ + { + "inShape": [ + [ + 318 + ], + [ + 280 + ], + [ + 288 + ] + ], + "result": { + "count": 4, + "id": 262, + "metadata": 0 + } + } + ], + "263": [ + { + "inShape": [ + [ + 173 + ] + ], + "result": { + "count": 9, + "id": 263, + "metadata": 0 + } + } + ], + "264": [ + { + "inShape": [ + [ + 57 + ] + ], + "result": { + "count": 9, + "id": 264, + "metadata": 0 + } + } + ], + "265": [ + { + "inShape": [ + [ + 42 + ] + ], + "result": { + "count": 9, + "id": 265, + "metadata": 0 + } + } + ], + "266": [ + { + "inShape": [ + [ + 41 + ] + ], + "result": { + "count": 9, + "id": 266, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 371, + 371, + 371 + ], + [ + 371, + 371, + 371 + ], + [ + 371, + 371, + 371 + ] + ], + "result": { + "count": 1, + "id": 266, + "metadata": 0 + } + } + ], + "267": [ + { + "inShape": [ + [ + 265 + ], + [ + 265 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 267, + "metadata": 0 + } + }, + { + "ingredients": [ + 267, + 267 + ], + "result": { + "count": 1, + "id": 267, + "metadata": 0 + } + } + ], + "268": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + } + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 268, + "metadata": 0 + } + }, + { + "ingredients": [ + 268, + 268 + ], + "result": { + "count": 1, + "id": 268, + "metadata": 0 + } + } + ], + "269": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + } + ], + [ + 280 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 269, + "metadata": 0 + } + }, + { + "ingredients": [ + 269, + 269 + ], + "result": { + "count": 1, + "id": 269, + "metadata": 0 + } + } + ], + "270": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + null, + 280, + null + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 270, + "metadata": 0 + } + }, + { + "ingredients": [ + 270, + 270 + ], + "result": { + "count": 1, + "id": 270, + "metadata": 0 + } + } + ], + "271": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + }, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 271, + "metadata": 0 + } + }, + { + "ingredients": [ + 271, + 271 + ], + "result": { + "count": 1, + "id": 271, + "metadata": 0 + } + } + ], + "272": [ + { + "inShape": [ + [ + 4 + ], + [ + 4 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 272, + "metadata": 0 + } + }, + { + "ingredients": [ + 272, + 272 + ], + "result": { + "count": 1, + "id": 272, + "metadata": 0 + } + } + ], + "273": [ + { + "inShape": [ + [ + 4 + ], + [ + 280 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 273, + "metadata": 0 + } + }, + { + "ingredients": [ + 273, + 273 + ], + "result": { + "count": 1, + "id": 273, + "metadata": 0 + } + } + ], + "274": [ + { + "inShape": [ + [ + 4, + 4, + 4 + ], + [ + null, + 280, + null + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 274, + "metadata": 0 + } + }, + { + "ingredients": [ + 274, + 274 + ], + "result": { + "count": 1, + "id": 274, + "metadata": 0 + } + } + ], + "275": [ + { + "inShape": [ + [ + 4, + 4 + ], + [ + 4, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 275, + "metadata": 0 + } + }, + { + "ingredients": [ + 275, + 275 + ], + "result": { + "count": 1, + "id": 275, + "metadata": 0 + } + } + ], + "276": [ + { + "inShape": [ + [ + 264 + ], + [ + 264 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 276, + "metadata": 0 + } + }, + { + "ingredients": [ + 276, + 276 + ], + "result": { + "count": 1, + "id": 276, + "metadata": 0 + } + } + ], + "277": [ + { + "inShape": [ + [ + 264 + ], + [ + 280 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 277, + "metadata": 0 + } + }, + { + "ingredients": [ + 277, + 277 + ], + "result": { + "count": 1, + "id": 277, + "metadata": 0 + } + } + ], + "278": [ + { + "inShape": [ + [ + 264, + 264, + 264 + ], + [ + null, + 280, + null + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 278, + "metadata": 0 + } + }, + { + "ingredients": [ + 278, + 278 + ], + "result": { + "count": 1, + "id": 278, + "metadata": 0 + } + } + ], + "279": [ + { + "inShape": [ + [ + 264, + 264 + ], + [ + 264, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 279, + "metadata": 0 + } + }, + { + "ingredients": [ + 279, + 279 + ], + "result": { + "count": 1, + "id": 279, + "metadata": 0 + } + } + ], + "280": [ + { + "inShape": [ + [ + 5 + ], + [ + 5 + ] + ], + "result": { + "count": 4, + "id": 280, + "metadata": 0 + } + } + ], + "281": [ + { + "inShape": [ + [ + 5, + null, + 5 + ], + [ + null, + 5, + null + ] + ], + "result": { + "count": 4, + "id": 281, + "metadata": 0 + } + } + ], + "282": [ + { + "ingredients": [ + 40, + 39, + 281 + ], + "result": { + "count": 1, + "id": 282, + "metadata": 0 + } + } + ], + "283": [ + { + "inShape": [ + [ + 266 + ], + [ + 266 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 283, + "metadata": 0 + } + }, + { + "ingredients": [ + 283, + 283 + ], + "result": { + "count": 1, + "id": 283, + "metadata": 0 + } + } + ], + "284": [ + { + "inShape": [ + [ + 266 + ], + [ + 280 + ], + [ + 280 + ] + ], + "result": { + "count": 1, + "id": 284, + "metadata": 0 + } + }, + { + "ingredients": [ + 284, + 284 + ], + "result": { + "count": 1, + "id": 284, + "metadata": 0 + } + } + ], + "285": [ + { + "inShape": [ + [ + 266, + 266, + 266 + ], + [ + null, + 280, + null + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 285, + "metadata": 0 + } + }, + { + "ingredients": [ + 285, + 285 + ], + "result": { + "count": 1, + "id": 285, + "metadata": 0 + } + } + ], + "286": [ + { + "inShape": [ + [ + 266, + 266 + ], + [ + 266, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 286, + "metadata": 0 + } + }, + { + "ingredients": [ + 286, + 286 + ], + "result": { + "count": 1, + "id": 286, + "metadata": 0 + } + } + ], + "290": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + null, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 290, + "metadata": 0 + } + }, + { + "ingredients": [ + 290, + 290 + ], + "result": { + "count": 1, + "id": 290, + "metadata": 0 + } + } + ], + "291": [ + { + "inShape": [ + [ + 4, + 4 + ], + [ + null, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 291, + "metadata": 0 + } + }, + { + "ingredients": [ + 291, + 291 + ], + "result": { + "count": 1, + "id": 291, + "metadata": 0 + } + } + ], + "292": [ + { + "inShape": [ + [ + 265, + 265 + ], + [ + null, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 292, + "metadata": 0 + } + }, + { + "ingredients": [ + 292, + 292 + ], + "result": { + "count": 1, + "id": 292, + "metadata": 0 + } + } + ], + "293": [ + { + "inShape": [ + [ + 264, + 264 + ], + [ + null, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 293, + "metadata": 0 + } + }, + { + "ingredients": [ + 293, + 293 + ], + "result": { + "count": 1, + "id": 293, + "metadata": 0 + } + } + ], + "294": [ + { + "inShape": [ + [ + 266, + 266 + ], + [ + null, + 280 + ], + [ + null, + 280 + ] + ], + "result": { + "count": 1, + "id": 294, + "metadata": 0 + } + }, + { + "ingredients": [ + 294, + 294 + ], + "result": { + "count": 1, + "id": 294, + "metadata": 0 + } + } + ], + "296": [ + { + "inShape": [ + [ + 170 + ] + ], + "result": { + "count": 9, + "id": 296, + "metadata": 0 + } + } + ], + "297": [ + { + "inShape": [ + [ + 296, + 296, + 296 + ] + ], + "result": { + "count": 1, + "id": 297, + "metadata": 0 + } + } + ], + "298": [ + { + "inShape": [ + [ + 334, + 334, + 334 + ], + [ + 334, + null, + 334 + ] + ], + "result": { + "count": 1, + "id": 298, + "metadata": 0 + } + }, + { + "ingredients": [ + 298, + 298 + ], + "result": { + "count": 1, + "id": 298, + "metadata": 0 + } + } + ], + "299": [ + { + "inShape": [ + [ + 334, + null, + 334 + ], + [ + 334, + 334, + 334 + ], + [ + 334, + 334, + 334 + ] + ], + "result": { + "count": 1, + "id": 299, + "metadata": 0 + } + }, + { + "ingredients": [ + 299, + 299 + ], + "result": { + "count": 1, + "id": 299, + "metadata": 0 + } + } + ], + "300": [ + { + "inShape": [ + [ + 334, + 334, + 334 + ], + [ + 334, + null, + 334 + ], + [ + 334, + null, + 334 + ] + ], + "result": { + "count": 1, + "id": 300, + "metadata": 0 + } + }, + { + "ingredients": [ + 300, + 300 + ], + "result": { + "count": 1, + "id": 300, + "metadata": 0 + } + } + ], + "301": [ + { + "inShape": [ + [ + 334, + null, + 334 + ], + [ + 334, + null, + 334 + ] + ], + "result": { + "count": 1, + "id": 301, + "metadata": 0 + } + }, + { + "ingredients": [ + 301, + 301 + ], + "result": { + "count": 1, + "id": 301, + "metadata": 0 + } + } + ], + "302": [ + { + "ingredients": [ + 302, + 302 + ], + "result": { + "count": 1, + "id": 302, + "metadata": 0 + } + } + ], + "303": [ + { + "ingredients": [ + 303, + 303 + ], + "result": { + "count": 1, + "id": 303, + "metadata": 0 + } + } + ], + "304": [ + { + "ingredients": [ + 304, + 304 + ], + "result": { + "count": 1, + "id": 304, + "metadata": 0 + } + } + ], + "305": [ + { + "ingredients": [ + 305, + 305 + ], + "result": { + "count": 1, + "id": 305, + "metadata": 0 + } + } + ], + "306": [ + { + "inShape": [ + [ + 265, + 265, + 265 + ], + [ + 265, + null, + 265 + ] + ], + "result": { + "count": 1, + "id": 306, + "metadata": 0 + } + }, + { + "ingredients": [ + 306, + 306 + ], + "result": { + "count": 1, + "id": 306, + "metadata": 0 + } + } + ], + "307": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + 265, + 265 + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 307, + "metadata": 0 + } + }, + { + "ingredients": [ + 307, + 307 + ], + "result": { + "count": 1, + "id": 307, + "metadata": 0 + } + } + ], + "308": [ + { + "inShape": [ + [ + 265, + 265, + 265 + ], + [ + 265, + null, + 265 + ], + [ + 265, + null, + 265 + ] + ], + "result": { + "count": 1, + "id": 308, + "metadata": 0 + } + }, + { + "ingredients": [ + 308, + 308 + ], + "result": { + "count": 1, + "id": 308, + "metadata": 0 + } + } + ], + "309": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + null, + 265 + ] + ], + "result": { + "count": 1, + "id": 309, + "metadata": 0 + } + }, + { + "ingredients": [ + 309, + 309 + ], + "result": { + "count": 1, + "id": 309, + "metadata": 0 + } + } + ], + "310": [ + { + "inShape": [ + [ + 264, + 264, + 264 + ], + [ + 264, + null, + 264 + ] + ], + "result": { + "count": 1, + "id": 310, + "metadata": 0 + } + }, + { + "ingredients": [ + 310, + 310 + ], + "result": { + "count": 1, + "id": 310, + "metadata": 0 + } + } + ], + "311": [ + { + "inShape": [ + [ + 264, + null, + 264 + ], + [ + 264, + 264, + 264 + ], + [ + 264, + 264, + 264 + ] + ], + "result": { + "count": 1, + "id": 311, + "metadata": 0 + } + }, + { + "ingredients": [ + 311, + 311 + ], + "result": { + "count": 1, + "id": 311, + "metadata": 0 + } + } + ], + "312": [ + { + "inShape": [ + [ + 264, + 264, + 264 + ], + [ + 264, + null, + 264 + ], + [ + 264, + null, + 264 + ] + ], + "result": { + "count": 1, + "id": 312, + "metadata": 0 + } + }, + { + "ingredients": [ + 312, + 312 + ], + "result": { + "count": 1, + "id": 312, + "metadata": 0 + } + } + ], + "313": [ + { + "inShape": [ + [ + 264, + null, + 264 + ], + [ + 264, + null, + 264 + ] + ], + "result": { + "count": 1, + "id": 313, + "metadata": 0 + } + }, + { + "ingredients": [ + 313, + 313 + ], + "result": { + "count": 1, + "id": 313, + "metadata": 0 + } + } + ], + "314": [ + { + "inShape": [ + [ + 266, + 266, + 266 + ], + [ + 266, + null, + 266 + ] + ], + "result": { + "count": 1, + "id": 314, + "metadata": 0 + } + }, + { + "ingredients": [ + 314, + 314 + ], + "result": { + "count": 1, + "id": 314, + "metadata": 0 + } + } + ], + "315": [ + { + "inShape": [ + [ + 266, + null, + 266 + ], + [ + 266, + 266, + 266 + ], + [ + 266, + 266, + 266 + ] + ], + "result": { + "count": 1, + "id": 315, + "metadata": 0 + } + }, + { + "ingredients": [ + 315, + 315 + ], + "result": { + "count": 1, + "id": 315, + "metadata": 0 + } + } + ], + "316": [ + { + "inShape": [ + [ + 266, + 266, + 266 + ], + [ + 266, + null, + 266 + ], + [ + 266, + null, + 266 + ] + ], + "result": { + "count": 1, + "id": 316, + "metadata": 0 + } + }, + { + "ingredients": [ + 316, + 316 + ], + "result": { + "count": 1, + "id": 316, + "metadata": 0 + } + } + ], + "317": [ + { + "inShape": [ + [ + 266, + null, + 266 + ], + [ + 266, + null, + 266 + ] + ], + "result": { + "count": 1, + "id": 317, + "metadata": 0 + } + }, + { + "ingredients": [ + 317, + 317 + ], + "result": { + "count": 1, + "id": 317, + "metadata": 0 + } + } + ], + "321": [ + { + "inShape": [ + [ + 280, + 280, + 280 + ], + [ + 280, + 35, + 280 + ], + [ + 280, + 280, + 280 + ] + ], + "result": { + "count": 1, + "id": 321, + "metadata": 0 + } + } + ], + "322": [ + { + "inShape": [ + [ + 266, + 266, + 266 + ], + [ + 266, + 260, + 266 + ], + [ + 266, + 266, + 266 + ] + ], + "result": { + "count": 1, + "id": 322, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 41, + 41, + 41 + ], + [ + 41, + 260, + 41 + ], + [ + 41, + 41, + 41 + ] + ], + "result": { + "count": 1, + "id": 322, + "metadata": 1 + } + } + ], + "323": [ + { + "inShape": [ + [ + 5, + 5, + 5 + ], + [ + 5, + 5, + 5 + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 3, + "id": 323, + "metadata": 0 + } + } + ], + "324": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ], + [ + { + "id": 5, + "metadata": 0 + }, + { + "id": 5, + "metadata": 0 + } + ] + ], + "result": { + "count": 3, + "id": 324, + "metadata": 0 + } + } + ], + "325": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + null, + 265, + null + ] + ], + "result": { + "count": 1, + "id": 325, + "metadata": 0 + } + } + ], + "328": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 328, + "metadata": 0 + } + } + ], + "330": [ + { + "inShape": [ + [ + 265, + 265 + ], + [ + 265, + 265 + ], + [ + 265, + 265 + ] + ], + "result": { + "count": 3, + "id": 330, + "metadata": 0 + } + } + ], + "331": [ + { + "inShape": [ + [ + 152 + ] + ], + "result": { + "count": 9, + "id": 331, + "metadata": 0 + } + } + ], + "333": [ + { + "inShape": [ + [ + 5, + null, + 5 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 333, + "metadata": 0 + } + } + ], + "334": [ + { + "inShape": [ + [ + 415, + 415 + ], + [ + 415, + 415 + ] + ], + "result": { + "count": 1, + "id": 334, + "metadata": 0 + } + } + ], + "339": [ + { + "inShape": [ + [ + 338, + 338, + 338 + ] + ], + "result": { + "count": 3, + "id": 339, + "metadata": 0 + } + } + ], + "340": [ + { + "ingredients": [ + 339, + 339, + 339, + 334 + ], + "result": { + "count": 1, + "id": 340, + "metadata": 0 + } + } + ], + "341": [ + { + "inShape": [ + [ + 165 + ] + ], + "result": { + "count": 9, + "id": 341, + "metadata": 0 + } + } + ], + "342": [ + { + "inShape": [ + [ + 54 + ], + [ + 328 + ] + ], + "result": { + "count": 1, + "id": 342, + "metadata": 0 + } + } + ], + "343": [ + { + "inShape": [ + [ + 61 + ], + [ + 328 + ] + ], + "result": { + "count": 1, + "id": 343, + "metadata": 0 + } + } + ], + "345": [ + { + "inShape": [ + [ + null, + 265, + null + ], + [ + 265, + 331, + 265 + ], + [ + null, + 265, + null + ] + ], + "result": { + "count": 1, + "id": 345, + "metadata": 0 + } + } + ], + "346": [ + { + "inShape": [ + [ + null, + null, + 280 + ], + [ + null, + 280, + 287 + ], + [ + 280, + null, + 287 + ] + ], + "result": { + "count": 1, + "id": 346, + "metadata": 0 + } + }, + { + "ingredients": [ + 346, + 346 + ], + "result": { + "count": 1, + "id": 346, + "metadata": 0 + } + } + ], + "347": [ + { + "inShape": [ + [ + null, + 266, + null + ], + [ + 266, + 331, + 266 + ], + [ + null, + 266, + null + ] + ], + "result": { + "count": 1, + "id": 347, + "metadata": 0 + } + } + ], + "351": [ + { + "ingredients": [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 8 + } + }, + { + "inShape": [ + [ + 37 + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 11 + } + }, + { + "inShape": [ + [ + { + "id": 175, + "metadata": 0 + } + ] + ], + "result": { + "count": 2, + "id": 351, + "metadata": 11 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 2 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 6 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 10 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 1 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 5 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 12 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 12 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 9 + } + }, + { + "inShape": [ + [ + { + "id": 175, + "metadata": 5 + } + ] + ], + "result": { + "count": 2, + "id": 351, + "metadata": 9 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 9 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 14 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 11 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 14 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 13 + } + }, + { + "inShape": [ + [ + { + "id": 175, + "metadata": 1 + } + ] + ], + "result": { + "count": 2, + "id": 351, + "metadata": 13 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 9 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 13 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + "result": { + "count": 4, + "id": 351, + "metadata": 13 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 4 + } + ], + "result": { + "count": 3, + "id": 351, + "metadata": 13 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 38, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 1 + } + }, + { + "inShape": [ + [ + { + "id": 175, + "metadata": 4 + } + ] + ], + "result": { + "count": 2, + "id": 351, + "metadata": 1 + } + }, + { + "inShape": [ + [ + 38 + ] + ], + "result": { + "count": 1, + "id": 351, + "metadata": 7 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 3, + "id": 351, + "metadata": 7 + } + }, + { + "ingredients": [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 15 + } + ], + "result": { + "count": 2, + "id": 351, + "metadata": 7 + } + }, + { + "inShape": [ + [ + 22 + ] + ], + "result": { + "count": 9, + "id": 351, + "metadata": 4 + } + }, + { + "inShape": [ + [ + 352 + ] + ], + "result": { + "count": 3, + "id": 351, + "metadata": 15 + } + } + ], + "353": [ + { + "inShape": [ + [ + 338 + ] + ], + "result": { + "count": 1, + "id": 353, + "metadata": 0 + } + } + ], + "354": [ + { + "inShape": [ + [ + 335, + 335, + 335 + ], + [ + 353, + 344, + 353 + ], + [ + 296, + 296, + 296 + ] + ], + "outShape": [ + [ + 325, + 325, + 325 + ], + [ + null, + null, + null + ], + [ + null, + null, + null + ] + ], + "result": { + "count": 1, + "id": 354, + "metadata": 0 + } + } + ], + "355": [ + { + "inShape": [ + [ + 35, + 35, + 35 + ], + [ + 5, + 5, + 5 + ] + ], + "result": { + "count": 1, + "id": 355, + "metadata": 0 + } + } + ], + "356": [ + { + "inShape": [ + [ + 75, + 331, + 75 + ], + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 356, + "metadata": 0 + } + } + ], + "357": [ + { + "inShape": [ + [ + 296, + { + "id": 351, + "metadata": 3 + }, + 296 + ] + ], + "result": { + "count": 8, + "id": 357, + "metadata": 0 + } + } + ], + "358": [ + { + "inShape": [ + [ + 339, + 339, + 339 + ], + [ + 339, + 358, + 339 + ], + [ + 339, + 339, + 339 + ] + ], + "result": { + "count": 1, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 358, + 395 + ], + "result": { + "count": 2, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 358, + 395, + 395 + ], + "result": { + "count": 3, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 358, + 395, + 395, + 395 + ], + "result": { + "count": 4, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 395, + 358, + 395, + 395, + 395 + ], + "result": { + "count": 5, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 395, + 395, + 358, + 395, + 395, + 395 + ], + "result": { + "count": 6, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 395, + 395, + 395, + 358, + 395, + 395, + 395 + ], + "result": { + "count": 7, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 395, + 395, + 395, + 358, + 395, + 395, + 395, + 395 + ], + "result": { + "count": 8, + "id": 358, + "metadata": 0 + } + }, + { + "ingredients": [ + 395, + 395, + 395, + 358, + 395, + 395, + 395, + 395, + 395 + ], + "result": { + "count": 9, + "id": 358, + "metadata": 0 + } + } + ], + "359": [ + { + "inShape": [ + [ + null, + 265 + ], + [ + 265, + null + ] + ], + "result": { + "count": 1, + "id": 359, + "metadata": 0 + } + }, + { + "ingredients": [ + 359, + 359 + ], + "result": { + "count": 1, + "id": 359, + "metadata": 0 + } + } + ], + "361": [ + { + "inShape": [ + [ + 86 + ] + ], + "result": { + "count": 4, + "id": 361, + "metadata": 0 + } + } + ], + "362": [ + { + "inShape": [ + [ + 360 + ] + ], + "result": { + "count": 1, + "id": 362, + "metadata": 0 + } + } + ], + "371": [ + { + "inShape": [ + [ + 266 + ] + ], + "result": { + "count": 9, + "id": 371, + "metadata": 0 + } + } + ], + "374": [ + { + "inShape": [ + [ + 20, + null, + 20 + ], + [ + null, + 20, + null + ] + ], + "result": { + "count": 3, + "id": 374, + "metadata": 0 + } + } + ], + "376": [ + { + "ingredients": [ + 39, + 353, + 375 + ], + "result": { + "count": 1, + "id": 376, + "metadata": 0 + } + } + ], + "377": [ + { + "inShape": [ + [ + 369 + ] + ], + "result": { + "count": 2, + "id": 377, + "metadata": 0 + } + } + ], + "378": [ + { + "ingredients": [ + 377, + 341 + ], + "result": { + "count": 1, + "id": 378, + "metadata": 0 + } + } + ], + "379": [ + { + "inShape": [ + [ + null, + 369, + null + ], + [ + 4, + 4, + 4 + ] + ], + "result": { + "count": 1, + "id": 379, + "metadata": 0 + } + } + ], + "380": [ + { + "inShape": [ + [ + 265, + null, + 265 + ], + [ + 265, + null, + 265 + ], + [ + 265, + 265, + 265 + ] + ], + "result": { + "count": 1, + "id": 380, + "metadata": 0 + } + } + ], + "381": [ + { + "ingredients": [ + 377, + 368 + ], + "result": { + "count": 1, + "id": 381, + "metadata": 0 + } + } + ], + "382": [ + { + "inShape": [ + [ + 371, + 371, + 371 + ], + [ + 371, + 360, + 371 + ], + [ + 371, + 371, + 371 + ] + ], + "result": { + "count": 1, + "id": 382, + "metadata": 0 + } + } + ], + "385": [ + { + "ingredients": [ + 377, + 263, + 289 + ], + "result": { + "count": 3, + "id": 385, + "metadata": 0 + } + } + ], + "386": [ + { + "ingredients": [ + 340, + { + "id": 351, + "metadata": 0 + }, + 288 + ], + "result": { + "count": 1, + "id": 386, + "metadata": 0 + } + } + ], + "387": [ + { + "ingredients": [ + 386, + 387 + ], + "result": { + "count": 1, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 387, + 386 + ], + "result": { + "count": 2, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 387, + 386, + 386 + ], + "result": { + "count": 3, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 386, + 387, + 386, + 386 + ], + "result": { + "count": 4, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 386, + 386, + 387, + 386, + 386 + ], + "result": { + "count": 5, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 386, + 386, + 386, + 387, + 386, + 386 + ], + "result": { + "count": 6, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 386, + 386, + 386, + 387, + 386, + 386, + 386 + ], + "result": { + "count": 7, + "id": 387, + "metadata": 0 + } + }, + { + "ingredients": [ + 386, + 386, + 386, + 386, + 387, + 386, + 386, + 386, + 386 + ], + "result": { + "count": 8, + "id": 387, + "metadata": 0 + } + } + ], + "388": [ + { + "inShape": [ + [ + 133 + ] + ], + "result": { + "count": 9, + "id": 388, + "metadata": 0 + } + } + ], + "389": [ + { + "inShape": [ + [ + 280, + 280, + 280 + ], + [ + 280, + 334, + 280 + ], + [ + 280, + 280, + 280 + ] + ], + "result": { + "count": 1, + "id": 389, + "metadata": 0 + } + } + ], + "390": [ + { + "inShape": [ + [ + 336, + null, + 336 + ], + [ + null, + 336, + null + ] + ], + "result": { + "count": 1, + "id": 390, + "metadata": 0 + } + } + ], + "395": [ + { + "inShape": [ + [ + 339, + 339, + 339 + ], + [ + 339, + 345, + 339 + ], + [ + 339, + 339, + 339 + ] + ], + "result": { + "count": 1, + "id": 395, + "metadata": 0 + } + } + ], + "396": [ + { + "inShape": [ + [ + 371, + 371, + 371 + ], + [ + 371, + 391, + 371 + ], + [ + 371, + 371, + 371 + ] + ], + "result": { + "count": 1, + "id": 396, + "metadata": 0 + } + } + ], + "398": [ + { + "inShape": [ + [ + 346, + null + ], + [ + null, + 391 + ] + ], + "result": { + "count": 1, + "id": 398, + "metadata": 0 + } + }, + { + "ingredients": [ + 398, + 398 + ], + "result": { + "count": 1, + "id": 398, + "metadata": 0 + } + } + ], + "400": [ + { + "ingredients": [ + 86, + 353, + 344 + ], + "result": { + "count": 1, + "id": 400, + "metadata": 0 + } + } + ], + "401": [ + { + "ingredients": [ + 339, + 289 + ], + "result": { + "count": 1, + "id": 401, + "metadata": 0 + } + }, + { + "ingredients": [ + 402, + 339, + 289 + ], + "result": { + "count": 1, + "id": 401, + "metadata": 0 + } + } + ], + "402": [ + { + "ingredients": [ + 289, + 351, + 264 + ], + "result": { + "count": 1, + "id": 402, + "metadata": 0 + } + }, + { + "ingredients": [ + 402, + 351 + ], + "result": { + "count": 1, + "id": 402, + "metadata": 0 + } + } + ], + "404": [ + { + "inShape": [ + [ + null, + 75, + null + ], + [ + 75, + 406, + 75 + ], + [ + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + }, + { + "id": 1, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 404, + "metadata": 0 + } + } + ], + "405": [ + { + "inShape": [ + [ + 405, + 405 + ], + [ + 405, + 405 + ] + ], + "result": { + "count": 1, + "id": 405, + "metadata": 0 + } + } + ], + "407": [ + { + "inShape": [ + [ + 46 + ], + [ + 328 + ] + ], + "result": { + "count": 1, + "id": 407, + "metadata": 0 + } + } + ], + "408": [ + { + "inShape": [ + [ + 154 + ], + [ + 328 + ] + ], + "result": { + "count": 1, + "id": 408, + "metadata": 0 + } + } + ], + "413": [ + { + "inShape": [ + [ + null, + 412, + null + ], + [ + 391, + 393, + 39 + ], + [ + null, + 281, + null + ] + ], + "result": { + "count": 1, + "id": 413, + "metadata": 0 + } + } + ], + "416": [ + { + "inShape": [ + [ + 280, + 280, + 280 + ], + [ + null, + 280, + null + ], + [ + 280, + { + "id": 44, + "metadata": 0 + }, + 280 + ] + ], + "result": { + "count": 1, + "id": 416, + "metadata": 0 + } + } + ], + "420": [ + { + "inShape": [ + [ + 287, + 287, + null + ], + [ + 287, + 341, + null + ], + [ + null, + null, + 287 + ] + ], + "result": { + "count": 2, + "id": 420, + "metadata": 0 + } + } + ], + "425": [ + { + "inShape": [ + [ + 35, + 35, + 35 + ], + [ + 35, + 35, + 35 + ], + [ + null, + 280, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 425, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + null, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null, + null + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + 425, + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + 425, + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + 425, + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + 425, + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + 425, + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + 425, + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + 425, + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + 425, + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + 425, + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + 425, + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + 425, + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + 425, + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + 425, + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + 425, + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + 425, + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + 425, + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425 + ], + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + null + ], + [ + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + 425, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + 425, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + 425, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + 425, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + 425, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + 425, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + 425, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + 425, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + 425, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + 425, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + 425, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + 425, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + 425, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + 425, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + 425, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + 425, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + 425, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + null + ], + [ + null, + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + null + ], + [ + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + null, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + null, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + null, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + null, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + null, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + null, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + null, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + null, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + null, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + null, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + null, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + null, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + null, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + null, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + null, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + null, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + 425, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + } + ], + [ + 425 + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ], + [ + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + }, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ], + [ + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + }, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ], + [ + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + }, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ], + [ + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + }, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ], + [ + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + }, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ], + [ + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + }, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ], + [ + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + }, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ], + [ + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ], + [ + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + }, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ], + [ + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + }, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ], + [ + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + }, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ], + [ + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ], + [ + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + }, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ], + [ + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + }, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ], + [ + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ], + [ + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + }, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 106, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + 45, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 15 + }, + null + ], + [ + { + "id": 351, + "metadata": 15 + }, + 425, + { + "id": 351, + "metadata": 15 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 14 + }, + null + ], + [ + { + "id": 351, + "metadata": 14 + }, + 425, + { + "id": 351, + "metadata": 14 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 13 + }, + null + ], + [ + { + "id": 351, + "metadata": 13 + }, + 425, + { + "id": 351, + "metadata": 13 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 12 + }, + null + ], + [ + { + "id": 351, + "metadata": 12 + }, + 425, + { + "id": 351, + "metadata": 12 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 11 + }, + null + ], + [ + { + "id": 351, + "metadata": 11 + }, + 425, + { + "id": 351, + "metadata": 11 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 10 + }, + null + ], + [ + { + "id": 351, + "metadata": 10 + }, + 425, + { + "id": 351, + "metadata": 10 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 9 + }, + null + ], + [ + { + "id": 351, + "metadata": 9 + }, + 425, + { + "id": 351, + "metadata": 9 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 8 + }, + null + ], + [ + { + "id": 351, + "metadata": 8 + }, + 425, + { + "id": 351, + "metadata": 8 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 7 + }, + null + ], + [ + { + "id": 351, + "metadata": 7 + }, + 425, + { + "id": 351, + "metadata": 7 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 6 + }, + null + ], + [ + { + "id": 351, + "metadata": 6 + }, + 425, + { + "id": 351, + "metadata": 6 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 5 + }, + null + ], + [ + { + "id": 351, + "metadata": 5 + }, + 425, + { + "id": 351, + "metadata": 5 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 4 + }, + null + ], + [ + { + "id": 351, + "metadata": 4 + }, + 425, + { + "id": 351, + "metadata": 4 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 3 + }, + null + ], + [ + { + "id": 351, + "metadata": 3 + }, + 425, + { + "id": 351, + "metadata": 3 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 2 + }, + null + ], + [ + { + "id": 351, + "metadata": 2 + }, + 425, + { + "id": 351, + "metadata": 2 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 1 + }, + null + ], + [ + { + "id": 351, + "metadata": 1 + }, + 425, + { + "id": 351, + "metadata": 1 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "inShape": [ + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + null, + { + "id": 351, + "metadata": 0 + }, + null + ], + [ + { + "id": 351, + "metadata": 0 + }, + 425, + { + "id": 351, + "metadata": 0 + } + ] + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 4 + }, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 397, + "metadata": 1 + }, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 38, + "metadata": 8 + }, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 15 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 14 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 13 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 12 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 11 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 10 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 9 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 8 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 7 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 6 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 5 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 4 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 3 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 2 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 1 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + }, + { + "ingredients": [ + { + "id": 322, + "metadata": 1 + }, + { + "id": 351, + "metadata": 0 + }, + 425 + ], + "result": { + "count": 1, + "id": 425, + "metadata": 0 + } + } + ], + "426": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ], + [ + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ], + [ + { + "id": 5, + "metadata": 1 + }, + { + "id": 5, + "metadata": 1 + } + ] + ], + "result": { + "count": 3, + "id": 426, + "metadata": 0 + } + } + ], + "427": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ], + [ + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ], + [ + { + "id": 5, + "metadata": 2 + }, + { + "id": 5, + "metadata": 2 + } + ] + ], + "result": { + "count": 3, + "id": 427, + "metadata": 0 + } + } + ], + "428": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ], + [ + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ], + [ + { + "id": 5, + "metadata": 3 + }, + { + "id": 5, + "metadata": 3 + } + ] + ], + "result": { + "count": 3, + "id": 428, + "metadata": 0 + } + } + ], + "429": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ], + [ + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ], + [ + { + "id": 5, + "metadata": 4 + }, + { + "id": 5, + "metadata": 4 + } + ] + ], + "result": { + "count": 3, + "id": 429, + "metadata": 0 + } + } + ], + "430": [ + { + "inShape": [ + [ + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ], + [ + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ], + [ + { + "id": 5, + "metadata": 5 + }, + { + "id": 5, + "metadata": 5 + } + ] + ], + "result": { + "count": 3, + "id": 430, + "metadata": 0 + } + } + ] +} diff --git a/mc/data/minecraft-data/pc/1.8/version.json b/mc/data/minecraft-data/pc/1.8/version.json new file mode 100644 index 0000000..49f15ae --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/version.json @@ -0,0 +1,5 @@ +{ + "version":47, + "minecraftVersion":"1.8.8", + "majorVersion":"1.8" +} \ No newline at end of file diff --git a/mc/data/minecraft-data/pc/1.8/windows.json b/mc/data/minecraft-data/pc/1.8/windows.json new file mode 100644 index 0000000..58dbe3f --- /dev/null +++ b/mc/data/minecraft-data/pc/1.8/windows.json @@ -0,0 +1,229 @@ +[ + { + "id": "", + "name": "Player", + "slots": [ + { + "name": "craft result", + "index": 0 + }, + { + "name": "craft grid", + "index": 1, + "size": 4 + }, + { + "name": "armor", + "index": 5, + "size": 4 + }, + { + "name": "helmet", + "index": 5 + }, + { + "name": "chestplate", + "index": 6 + }, + { + "name": "leggings", + "index": 7 + }, + { + "name": "boots", + "index": 8 + } + ] + }, + { + "id": "EntityHorse", + "name": "Horse", + "slots": [ + { + "name": "saddle", + "index": 0 + }, + { + "name": "armor", + "index": 1 + }, + { + "name": "storage", + "index": 2, + "size": 15 + } + ], + "openedWith": [ + { + "type": "entity", + "id": 100 + } + ] + }, + { + "id": "minecraft:anvil", + "name": "Anvil", + "slots": [ + { + "name": "tool", + "index": 0 + }, + { + "name": "combined", + "index": 1 + }, + { + "name": "result", + "index": 2 + } + ], + "properties": [ + "repair cost" + ] + }, + { + "id": "minecraft:beacon", + "name": "Beacon", + "slots": [ + { + "name": "input", + "index": 0 + } + ], + "properties": [ + "level", + "effect 1", + "effect 2" + ], + "openedWith": [ + { + "type": "block", + "id": 138 + } + ] + }, + { + "id": "minecraft:brewing_stand", + "name": "Brewing Stand", + "slots": [ + { + "name": "ingredient", + "index": 3 + }, + { + "name": "result", + "index": 0, + "size": 3 + } + ], + "properties": [ + "brew time" + ], + "openedWith": [ + { + "type": "block", + "id": 117 + } + ] + }, + { + "id": "minecraft:chest", + "name": "Chest" + }, + { + "id": "minecraft:container", + "name": "Container" + }, + { + "id": "minecraft:crafting_table", + "name": "Workbench", + "slots": [ + { + "name": "craft result", + "index": 0 + }, + { + "name": "craft grid", + "index": 1, + "size": 9 + } + ] + }, + { + "id": "minecraft:dispenser", + "name": "Dispenser" + }, + { + "id": "minecraft:dropper", + "name": "Dropper" + }, + { + "id": "minecraft:enchanting_table", + "name": "Enchantment Table", + "slots": [ + { + "name": "enchanted", + "index": 0 + }, + { + "name": "lapis", + "index": 1 + } + ], + "properties": [ + "xp 1", + "xp 2", + "xp 3", + "seed", + "tooltip 1", + "tooltip 2", + "tooltip 3" + ] + }, + { + "id": "minecraft:furnace", + "name": "Furnace", + "slots": [ + { + "name": "smelted", + "index": 0 + }, + { + "name": "fuel", + "index": 1 + }, + { + "name": "result", + "index": 2 + } + ], + "properties": [ + "fuel", + "fuel max", + "progress", + "progress max" + ] + }, + { + "id": "minecraft:hopper", + "name": "Hopper" + }, + { + "id": "minecraft:villager", + "name": "NPC Trade", + "slots": [ + { + "name": "give 1", + "index": 0 + }, + { + "name": "give 2", + "index": 1 + }, + { + "name": "take", + "index": 2 + } + ] + } +] diff --git a/mc/proto_generated/packet_info.go b/mc/proto_generated/packet_info.go index 64235d7..30082f0 100644 --- a/mc/proto_generated/packet_info.go +++ b/mc/proto_generated/packet_info.go @@ -2,12 +2,13 @@ package proto_generated import ( "github.com/admin-else/strom/mc/proto_base" - "github.com/admin-else/strom/mc/proto_generated/v1_21_11" + "github.com/admin-else/strom/mc/proto_generated/v1_8" "github.com/admin-else/strom/mc/proto_generated/v1_21_8" "github.com/admin-else/strom/mc/proto_generated/v1_21_9" + "github.com/admin-else/strom/mc/proto_generated/v1_21_11" "github.com/admin-else/strom/mc/proto_generated/v26_1" "github.com/admin-else/strom/mc/proto_generated/v26_2" ) -var SupportedVersions = []string{"1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"} -var Packets = []proto_base.PacketInfo{{Type: &v1_21_8.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 772}, {Type: &v1_21_8.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketDebugSampleSubscription{}, Name: "debug_sample_subscription", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_9.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 773}, {Type: &v1_21_9.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_11.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 774}, {Type: &v1_21_11.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 774}, {Type: &v26_1.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 775}, {Type: &v26_1.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 139, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameRuleValues{}, Name: "game_rule_values", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketLowDiskSpaceWarning{}, Name: "low_disk_space_warning", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 140, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAttack{}, Name: "attack", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 66, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketContainerButtonClick{}, Name: "container_button_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 68, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetGameRule{}, Name: "set_game_rule", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSpectateEntity{}, Name: "spectate_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTeleportToEntity{}, Name: "teleport_to_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 67, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_2.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 776}, {Type: &v26_2.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 139, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameRuleValues{}, Name: "game_rule_values", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketLowDiskSpaceWarning{}, Name: "low_disk_space_warning", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 140, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAttack{}, Name: "attack", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 66, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketContainerButtonClick{}, Name: "container_button_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 68, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetGameRule{}, Name: "set_game_rule", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSpectatorAction{}, Name: "spectator_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTeleportToEntity{}, Name: "teleport_to_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 67, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 776}} +var SupportedVersions = []string{"1.8", "1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"} +var Packets = []proto_base.PacketInfo{{Type: &v1_8.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 47}, {Type: &v1_8.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 47}, {Type: &v1_8.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 47}, {Type: &v1_8.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketBed{}, Name: "bed", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketChat{}, Name: "chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCombatEvent{}, Name: "combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntity{}, Name: "entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketMapChunkBulk{}, Name: "map_chunk_bulk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketNamedEntitySpawn{}, Name: "named_entity_spawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketNamedSoundEffect{}, Name: "named_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketResourcePackSend{}, Name: "resource_pack_send", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketScoreboardTeam{}, Name: "scoreboard_team", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSetCompression{}, Name: "set_compression", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnEntityExperienceOrb{}, Name: "spawn_entity_experience_orb", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnEntityLiving{}, Name: "spawn_entity_living", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnEntityPainting{}, Name: "spawn_entity_painting", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnEntityWeather{}, Name: "spawn_entity_weather", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketTitle{}, Name: "title", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketTransaction{}, Name: "transaction", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketUpdateAttributes{}, Name: "update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketUpdateEntityNbt{}, Name: "update_entity_nbt", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketWorldBorder{}, Name: "world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 47}, {Type: &v1_8.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketChat{}, Name: "chat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketSteerVehicle{}, Name: "steer_vehicle", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketTransaction{}, Name: "transaction", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 47}, {Type: &v1_8.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 47}, {Type: &v1_8.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_8.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 47}, {Type: &v1_8.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 47}, {Type: &v1_21_8.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 772}, {Type: &v1_21_8.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketDebugSampleSubscription{}, Name: "debug_sample_subscription", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 772}, {Type: &v1_21_8.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 772}, {Type: &v1_21_8.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 772}, {Type: &v1_21_9.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 773}, {Type: &v1_21_9.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 773}, {Type: &v1_21_9.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 773}, {Type: &v1_21_9.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 773}, {Type: &v1_21_11.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 774}, {Type: &v1_21_11.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEnchantItem{}, Name: "enchant_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSpectate{}, Name: "spectate", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 774}, {Type: &v1_21_11.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 774}, {Type: &v1_21_11.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 774}, {Type: &v26_1.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 775}, {Type: &v26_1.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 139, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameRuleValues{}, Name: "game_rule_values", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketLowDiskSpaceWarning{}, Name: "low_disk_space_warning", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 140, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 775}, {Type: &v26_1.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketAttack{}, Name: "attack", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 66, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketContainerButtonClick{}, Name: "container_button_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 68, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetGameRule{}, Name: "set_game_rule", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSpectateEntity{}, Name: "spectate_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTeleportToEntity{}, Name: "teleport_to_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 67, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 775}, {Type: &v26_1.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 775}, {Type: &v26_1.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_1.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 775}, {Type: &v26_1.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 775}, {Type: &v26_2.ConfigurationToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCodeOfConduct{}, Name: "code_of_conduct", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketFeatureFlags{}, Name: "feature_flags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketRegistryData{}, Name: "registry_data", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketResetChat{}, Name: "reset_chat", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Configuration, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketAcceptCodeOfConduct{}, Name: "accept_code_of_conduct", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketFinishConfiguration{}, Name: "finish_configuration", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonSelectKnownPacks{}, Name: "select_known_packs", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.ConfigurationToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Configuration, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.HandshakingToServerPacketLegacyServerListPing{}, Name: "legacy_server_list_ping", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 254, ProtocolVersion: 776}, {Type: &v26_2.HandshakingToServerPacketSetProtocol{}, Name: "set_protocol", Direction: proto_base.ToServer, State: proto_base.Handshaking, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketCompress{}, Name: "compress", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketDisconnect{}, Name: "disconnect", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketLoginPluginRequest{}, Name: "login_plugin_request", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.LoginToClientPacketSuccess{}, Name: "success", Direction: proto_base.ToClient, State: proto_base.Login, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketEncryptionBegin{}, Name: "encryption_begin", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginAcknowledged{}, Name: "login_acknowledged", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginPluginResponse{}, Name: "login_plugin_response", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.LoginToServerPacketLoginStart{}, Name: "login_start", Direction: proto_base.ToServer, State: proto_base.Login, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAbilities{}, Name: "abilities", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 64, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAcknowledgePlayerDigging{}, Name: "acknowledge_player_digging", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketActionBar{}, Name: "action_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 87, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonAddResourcePack{}, Name: "add_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 81, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAdvancements{}, Name: "advancements", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 130, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAnimation{}, Name: "animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketAttachEntity{}, Name: "attach_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 100, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockAction{}, Name: "block_action", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockBreakAnimation{}, Name: "block_break_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBlockChange{}, Name: "block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBossBar{}, Name: "boss_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketBundleDelimiter{}, Name: "bundle_delimiter", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCamera{}, Name: "camera", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 93, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChatSuggestions{}, Name: "chat_suggestions", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 23, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBatchFinished{}, Name: "chunk_batch_finished", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBatchStart{}, Name: "chunk_batch_start", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketChunkBiomes{}, Name: "chunk_biomes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonClearDialog{}, Name: "clear_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 139, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketClearTitles{}, Name: "clear_titles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCollect{}, Name: "collect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 124, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonCookieRequest{}, Name: "cookie_request", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 21, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCraftProgressBar{}, Name: "craft_progress_bar", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCraftRecipeResponse{}, Name: "craft_recipe_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 63, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 24, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonCustomReportDetails{}, Name: "custom_report_details", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 136, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDamageEvent{}, Name: "damage_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 25, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeathCombatEvent{}, Name: "death_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 68, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugBlockValue{}, Name: "debug_block_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 26, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugChunkValue{}, Name: "debug_chunk_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 27, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugEntityValue{}, Name: "debug_entity_value", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 28, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugEvent{}, Name: "debug_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 29, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDebugSample{}, Name: "debug_sample", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 30, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeclareCommands{}, Name: "declare_commands", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDeclareRecipes{}, Name: "declare_recipes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 133, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketDifficulty{}, Name: "difficulty", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEndCombatEvent{}, Name: "end_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 66, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEnterCombatEvent{}, Name: "enter_combat_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 67, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityDestroy{}, Name: "entity_destroy", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 77, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityEffect{}, Name: "entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 132, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityEquipment{}, Name: "entity_equipment", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 102, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityHeadRotation{}, Name: "entity_head_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 83, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityLook{}, Name: "entity_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 56, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityMetadata{}, Name: "entity_metadata", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 99, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityMoveLook{}, Name: "entity_move_look", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 54, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntitySoundEffect{}, Name: "entity_sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 116, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityStatus{}, Name: "entity_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 34, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityTeleport{}, Name: "entity_teleport", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 125, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityUpdateAttributes{}, Name: "entity_update_attributes", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 131, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketEntityVelocity{}, Name: "entity_velocity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 101, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketExperience{}, Name: "experience", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 103, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketExplosion{}, Name: "explosion", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 36, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketFacePlayer{}, Name: "face_player", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 71, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameRuleValues{}, Name: "game_rule_values", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 39, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameStateChange{}, Name: "game_state_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 38, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketGameTestHighlightPos{}, Name: "game_test_highlight_pos", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 40, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 105, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHideMessage{}, Name: "hide_message", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 31, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketHurtAnimation{}, Name: "hurt_animation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 42, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketInitializeWorldBorder{}, Name: "initialize_world_border", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 43, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 44, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketKickDisconnect{}, Name: "kick_disconnect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 32, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketLogin{}, Name: "login", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 49, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketLowDiskSpaceWarning{}, Name: "low_disk_space_warning", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 50, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMap{}, Name: "map", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 51, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMapChunk{}, Name: "map_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 45, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMoveMinecart{}, Name: "move_minecart", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 55, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketMultiBlockChange{}, Name: "multi_block_change", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 84, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketNbtQueryResponse{}, Name: "nbt_query_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 123, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenBook{}, Name: "open_book", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 58, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenHorseWindow{}, Name: "open_horse_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 41, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenSignEntity{}, Name: "open_sign_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 60, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketOpenWindow{}, Name: "open_window", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 59, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 61, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPingResponse{}, Name: "ping_response", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 62, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerChat{}, Name: "player_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 65, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerInfo{}, Name: "player_info", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 70, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerRemove{}, Name: "player_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 69, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerRotation{}, Name: "player_rotation", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 73, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPlayerlistHeader{}, Name: "playerlist_header", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 122, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketPosition{}, Name: "position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 72, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketProfilelessChat{}, Name: "profileless_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 33, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookAdd{}, Name: "recipe_book_add", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 74, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookRemove{}, Name: "recipe_book_remove", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 75, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRecipeBookSettings{}, Name: "recipe_book_settings", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 76, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRelEntityMove{}, Name: "rel_entity_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 53, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRemoveEntityEffect{}, Name: "remove_entity_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 78, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonRemoveResourcePack{}, Name: "remove_resource_pack", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 80, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketResetScore{}, Name: "reset_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 79, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketRespawn{}, Name: "respawn", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 82, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardDisplayObjective{}, Name: "scoreboard_display_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 98, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardObjective{}, Name: "scoreboard_objective", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 106, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketScoreboardScore{}, Name: "scoreboard_score", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 110, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSelectAdvancementTab{}, Name: "select_advancement_tab", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 85, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketServerData{}, Name: "server_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 86, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonServerLinks{}, Name: "server_links", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 137, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetCooldown{}, Name: "set_cooldown", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 22, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetCursorItem{}, Name: "set_cursor_item", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 96, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetPassengers{}, Name: "set_passengers", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 107, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetPlayerInventory{}, Name: "set_player_inventory", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 108, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetProjectilePower{}, Name: "set_projectile_power", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 135, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetSlot{}, Name: "set_slot", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 20, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTickingState{}, Name: "set_ticking_state", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 127, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleSubtitle{}, Name: "set_title_subtitle", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 112, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleText{}, Name: "set_title_text", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 114, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSetTitleTime{}, Name: "set_title_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 115, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketShowDialog{}, Name: "show_dialog", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 140, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSimulationDistance{}, Name: "simulation_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 111, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSoundEffect{}, Name: "sound_effect", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 117, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSpawnEntity{}, Name: "spawn_entity", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSpawnPosition{}, Name: "spawn_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 97, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStartConfiguration{}, Name: "start_configuration", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 118, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStatistics{}, Name: "statistics", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStepTick{}, Name: "step_tick", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 128, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketStopSound{}, Name: "stop_sound", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 119, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonStoreCookie{}, Name: "store_cookie", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 120, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSyncEntityPosition{}, Name: "sync_entity_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 35, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketSystemChat{}, Name: "system_chat", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 121, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTags{}, Name: "tags", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 134, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTeams{}, Name: "teams", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 109, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTestInstanceBlockStatus{}, Name: "test_instance_block_status", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 126, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTileEntityData{}, Name: "tile_entity_data", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTrackedWaypoint{}, Name: "tracked_waypoint", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 138, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketTradeList{}, Name: "trade_list", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 52, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketCommonTransfer{}, Name: "transfer", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 129, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUnloadChunk{}, Name: "unload_chunk", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 37, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateHealth{}, Name: "update_health", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 104, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateLight{}, Name: "update_light", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 48, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateTime{}, Name: "update_time", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 113, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateViewDistance{}, Name: "update_view_distance", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 95, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketUpdateViewPosition{}, Name: "update_view_position", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 94, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 57, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWindowItems{}, Name: "window_items", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderCenter{}, Name: "world_border_center", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 88, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderLerpSize{}, Name: "world_border_lerp_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 89, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderSize{}, Name: "world_border_size", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 90, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderWarningDelay{}, Name: "world_border_warning_delay", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 91, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldBorderWarningReach{}, Name: "world_border_warning_reach", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 92, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldEvent{}, Name: "world_event", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 46, ProtocolVersion: 776}, {Type: &v26_2.PlayToClientPacketWorldParticles{}, Name: "world_particles", Direction: proto_base.ToClient, State: proto_base.Play, PacketId: 47, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAbilities{}, Name: "abilities", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 40, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAdvancementTab{}, Name: "advancement_tab", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 50, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketArmAnimation{}, Name: "arm_animation", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 63, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketAttack{}, Name: "attack", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketBlockDig{}, Name: "block_dig", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 41, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketBlockPlace{}, Name: "block_place", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 66, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChangeGamemode{}, Name: "change_gamemode", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 5, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatCommand{}, Name: "chat_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 7, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatCommandSigned{}, Name: "chat_command_signed", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 8, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatMessage{}, Name: "chat_message", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 9, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChatSessionUpdate{}, Name: "chat_session_update", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 10, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketChunkBatchReceived{}, Name: "chunk_batch_received", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 11, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketClientCommand{}, Name: "client_command", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 12, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCloseWindow{}, Name: "close_window", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 19, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketConfigurationAcknowledged{}, Name: "configuration_acknowledged", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 16, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketContainerButtonClick{}, Name: "container_button_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 17, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonCookieResponse{}, Name: "cookie_response", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 21, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCraftRecipeRequest{}, Name: "craft_recipe_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 39, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonCustomClickAction{}, Name: "custom_click_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 68, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCustomPayload{}, Name: "custom_payload", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 22, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketDebugSubscriptionRequest{}, Name: "debug_subscription_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 23, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketDisplayedRecipe{}, Name: "displayed_recipe", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 47, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketEditBook{}, Name: "edit_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 24, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketEntityAction{}, Name: "entity_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 42, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketFlying{}, Name: "flying", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 33, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketGenerateStructure{}, Name: "generate_structure", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 27, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketHeldItemSlot{}, Name: "held_item_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 53, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketKeepAlive{}, Name: "keep_alive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 28, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketLockDifficulty{}, Name: "lock_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 29, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketLook{}, Name: "look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 32, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketMessageAcknowledgement{}, Name: "message_acknowledgement", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 6, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketNameItem{}, Name: "name_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 48, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPickItemFromBlock{}, Name: "pick_item_from_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 36, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPickItemFromEntity{}, Name: "pick_item_from_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 37, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPingRequest{}, Name: "ping_request", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 38, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPlayerInput{}, Name: "player_input", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 43, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPlayerLoaded{}, Name: "player_loaded", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 44, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPong{}, Name: "pong", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 45, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPosition{}, Name: "position", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 30, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketPositionLook{}, Name: "position_look", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 31, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketQueryBlockNbt{}, Name: "query_block_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 2, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketQueryEntityNbt{}, Name: "query_entity_nbt", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 25, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketRecipeBook{}, Name: "recipe_book", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 46, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketResourcePackReceive{}, Name: "resource_pack_receive", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 49, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSelectBundleItem{}, Name: "select_bundle_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 3, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSelectTrade{}, Name: "select_trade", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 51, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetBeaconEffect{}, Name: "set_beacon_effect", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 52, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetCreativeSlot{}, Name: "set_creative_slot", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 56, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetDifficulty{}, Name: "set_difficulty", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 4, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetGameRule{}, Name: "set_game_rule", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 57, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetSlotState{}, Name: "set_slot_state", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 20, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSetTestBlock{}, Name: "set_test_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 60, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketCommonSettings{}, Name: "settings", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 14, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSpectatorAction{}, Name: "spectator_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 62, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketSteerBoat{}, Name: "steer_boat", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 35, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTabComplete{}, Name: "tab_complete", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 15, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTeleportConfirm{}, Name: "teleport_confirm", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTeleportToEntity{}, Name: "teleport_to_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 64, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTestInstanceBlockAction{}, Name: "test_instance_block_action", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 65, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketTickEnd{}, Name: "tick_end", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 13, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateCommandBlock{}, Name: "update_command_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 54, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateCommandBlockMinecart{}, Name: "update_command_block_minecart", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 55, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateJigsawBlock{}, Name: "update_jigsaw_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 58, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateSign{}, Name: "update_sign", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 61, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUpdateStructureBlock{}, Name: "update_structure_block", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 59, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUseEntity{}, Name: "use_entity", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 26, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketUseItem{}, Name: "use_item", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 67, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketVehicleMove{}, Name: "vehicle_move", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 34, ProtocolVersion: 776}, {Type: &v26_2.PlayToServerPacketWindowClick{}, Name: "window_click", Direction: proto_base.ToServer, State: proto_base.Play, PacketId: 18, ProtocolVersion: 776}, {Type: &v26_2.StatusToClientPacketPing{}, Name: "ping", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.StatusToClientPacketServerInfo{}, Name: "server_info", Direction: proto_base.ToClient, State: proto_base.Status, PacketId: 0, ProtocolVersion: 776}, {Type: &v26_2.StatusToServerPacketPing{}, Name: "ping", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 1, ProtocolVersion: 776}, {Type: &v26_2.StatusToServerPacketPingStart{}, Name: "ping_start", Direction: proto_base.ToServer, State: proto_base.Status, PacketId: 0, ProtocolVersion: 776}} diff --git a/mc/proto_generated/v1_21_11/proto.go b/mc/proto_generated/v1_21_11/proto.go index a2e3dd1..c112d77 100644 --- a/mc/proto_generated/v1_21_11/proto.go +++ b/mc/proto_generated/v1_21_11/proto.go @@ -1,14 +1,14 @@ // Code generated by strom. DO NOT EDIT. // source: minecraft-data/pc/1.21.11/protocol.json (sha256:97d2726cce3a39cc967a954f27f4ebf029ec3f0f655bb21942aab8745d13cdab) -// version: v0.6.3-0.20260723203259-d84618c116b8+dirty (go1.26.5-X:nodwarf5) +// version: (devel) (go1.26.5-X:nodwarf5) package v1_21_11 import ( "encoding/binary" - "github.com/admin-else/strom/mc/nbt" - "github.com/admin-else/strom/mc/proto_base" - "github.com/google/uuid" "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" ) type ArmorTrimMaterial struct { diff --git a/mc/proto_generated/v1_21_8/proto.go b/mc/proto_generated/v1_21_8/proto.go index 016ad33..c021631 100644 --- a/mc/proto_generated/v1_21_8/proto.go +++ b/mc/proto_generated/v1_21_8/proto.go @@ -1,14 +1,14 @@ // Code generated by strom. DO NOT EDIT. // source: minecraft-data/pc/1.21.8/protocol.json (sha256:930fbb4c69fd2ecadddcee3c38d3f02908adc23b54b707cb21112e7ab1e9dba1) -// version: v0.6.3-0.20260723203259-d84618c116b8+dirty (go1.26.5-X:nodwarf5) +// version: (devel) (go1.26.5-X:nodwarf5) package v1_21_8 import ( "encoding/binary" - "github.com/admin-else/strom/mc/nbt" - "github.com/admin-else/strom/mc/proto_base" - "github.com/google/uuid" "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" ) type ArmorTrimMaterial struct { diff --git a/mc/proto_generated/v1_21_9/proto.go b/mc/proto_generated/v1_21_9/proto.go index d99496d..4d456a1 100644 --- a/mc/proto_generated/v1_21_9/proto.go +++ b/mc/proto_generated/v1_21_9/proto.go @@ -1,14 +1,14 @@ // Code generated by strom. DO NOT EDIT. // source: minecraft-data/pc/1.21.9/protocol.json (sha256:9861cee397931c678c3b1837dcdf82e3fc885442c6bd0e4a60522fbf26653e59) -// version: v0.6.3-0.20260723203259-d84618c116b8+dirty (go1.26.5-X:nodwarf5) +// version: (devel) (go1.26.5-X:nodwarf5) package v1_21_9 import ( "encoding/binary" - "github.com/admin-else/strom/mc/nbt" - "github.com/admin-else/strom/mc/proto_base" - "github.com/google/uuid" "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" ) type ArmorTrimMaterial struct { diff --git a/mc/proto_generated/v1_8/proto.go b/mc/proto_generated/v1_8/proto.go new file mode 100644 index 0000000..4e4cb70 --- /dev/null +++ b/mc/proto_generated/v1_8/proto.go @@ -0,0 +1,8690 @@ +// Code generated by strom. DO NOT EDIT. +// source: minecraft-data/pc/1.8/protocol.json (sha256:79fe774bfc255dd281899c004fbb9c7adc40fb107de9353da1dd0371ea4b53af) +// version: (devel) (go1.26.5-X:nodwarf5) +package v1_8 + +import ( + "encoding/binary" + "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" +) + +type ByteArray struct { + Val []byte +} + +func (ret *ByteArray) Decode(r io.ReadSeeker) (err error) { + var lByteArray int32 + lByteArray, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Val, err = io.ReadAll(io.LimitReader(r, int64(lByteArray))) + if err != nil { + return + } + return +} +func (ret *ByteArray) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, int32(len(ret.Val))) + if err != nil { + return + } + _, err = w.Write(ret.Val) + if err != nil { + return + } + return +} + +type EntityMetadata struct { + Val map[byte]struct { + Anon struct { + Type uint8 + Key uint8 + } + Value EntityMetadataItem + } +} + +func (ret *EntityMetadata) Decode(r io.ReadSeeker) (err error) { + ret.Val = make(map[uint8]struct { + Anon struct { + Type uint8 + Key uint8 + } + Value EntityMetadataItem + }) + var id uint8 + for { + err = binary.Read(r, binary.BigEndian, &id) + if err != nil { + return + } + if id == 127 { + break + } + _, err = r.Seek(-1, io.SeekCurrent) + if err != nil { + return + } + var entry struct { + Anon struct { + Type uint8 + Key uint8 + } + Value EntityMetadataItem + } + var EntityMetadataInnerAnonPacked uint8 + err = binary.Read(r, binary.BigEndian, &EntityMetadataInnerAnonPacked) + if err != nil { + return + } + entry.Anon.Type = EntityMetadataInnerAnonPacked << 0 >> 5 + entry.Anon.Key = EntityMetadataInnerAnonPacked << 3 >> 3 + err = entry.Value.Decode(r) + if err != nil { + return + } + ret.Val[id] = entry + } + return +} +func (ret *EntityMetadata) Encode(w io.Writer) (err error) { + for _, v := range ret.Val { + var EntityMetadataAnonPacked uint8 + EntityMetadataAnonPacked |= (uint8(v.Anon.Key) & 0x1F) << 0x0 + EntityMetadataAnonPacked |= (uint8(v.Anon.Type) & 0x7) << 0x5 + err = binary.Write(w, binary.BigEndian, EntityMetadataAnonPacked) + if err != nil { + return + } + err = v.Value.Encode(w) + if err != nil { + return + } + } + err = binary.Write(w, binary.BigEndian, uint8(127)) + if err != nil { + return + } + return +} + +type EntityMetadataItem struct { + Val any +} + +func (ret *EntityMetadataItem) Decode(r io.ReadSeeker) (err error) { + err = proto_base.ToDoError + return +} +func (ret *EntityMetadataItem) Encode(w io.Writer) (err error) { + err = proto_base.ToDoError + return +} + +type Position struct { + X int32 + Y int16 + Z int32 +} + +func (ret *Position) Decode(r io.ReadSeeker) (err error) { + var PositionPacked uint64 + err = binary.Read(r, binary.BigEndian, &PositionPacked) + if err != nil { + return + } + ret.X = int32(PositionPacked << 0 >> 38) + if ret.X >= 1<<25 { + ret.X -= 1 << 26 + } + ret.Y = int16(PositionPacked << 26 >> 52) + if ret.Y >= 1<<11 { + ret.Y -= 1 << 12 + } + ret.Z = int32(PositionPacked << 38 >> 38) + if ret.Z >= 1<<25 { + ret.Z -= 1 << 26 + } + return +} +func (ret *Position) Encode(w io.Writer) (err error) { + var PositionPacked uint64 + PositionPacked |= (uint64(ret.Z) & 0x3FFFFFF) << 0x0 + PositionPacked |= (uint64(ret.Y) & 0xFFF) << 0x1A + PositionPacked |= (uint64(ret.X) & 0x3FFFFFF) << 0x26 + err = binary.Write(w, binary.BigEndian, PositionPacked) + if err != nil { + return + } + return +} + +type Slot struct { + BlockId int16 + Anon any +} + +func (ret *Slot) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.BlockId) + if err != nil { + return + } + switch ret.BlockId { + case -1: + var SlotAnon1Tmp struct { + } + ret.Anon = SlotAnon1Tmp + default: + var SlotAnonTmp struct { + ItemCount int8 + ItemDamage int16 + NbtData nbt.Anon + } + err = binary.Read(r, binary.BigEndian, &SlotAnonTmp.ItemCount) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &SlotAnonTmp.ItemDamage) + if err != nil { + return + } + err = SlotAnonTmp.NbtData.Decode(r) + if err != nil { + return + } + ret.Anon = SlotAnonTmp + } + return +} +func (ret *Slot) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.BlockId) + if err != nil { + return + } + switch ret.BlockId { + case -1: + _, ok := ret.Anon.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Anon.(struct { + ItemCount int8 + ItemDamage int16 + NbtData nbt.Anon + }) + if !ok { + err = proto_base.BadTypeError + return + } + slotAnon := ret.Anon.(struct { + ItemCount int8 + ItemDamage int16 + NbtData nbt.Anon + }) + err = binary.Write(w, binary.BigEndian, slotAnon.ItemCount) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, slotAnon.ItemDamage) + if err != nil { + return + } + err = slotAnon.NbtData.Encode(w) + if err != nil { + return + } + } + return +} + +type Vec3i16 struct { + X int16 + Y int16 + Z int16 +} + +func (ret *Vec3i16) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + return +} +func (ret *Vec3i16) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + return +} + +type HandshakingToClientPacket struct { + Name string + Params any +} + +var HandshakingToClientPacketNameMap = map[int32]string{} + +func (ret *HandshakingToClientPacket) Decode(r io.ReadSeeker) (err error) { + var HandshakingToClientPacketNameKey int32 + HandshakingToClientPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(HandshakingToClientPacketNameMap, HandshakingToClientPacketNameKey) + if err != nil { + return + } + return +} + +var HandshakingToClientPacketNameReverseMap = map[string]int32{} + +func (ret *HandshakingToClientPacket) Encode(w io.Writer) (err error) { + var vHandshakingToClientPacketName int32 + vHandshakingToClientPacketName, err = proto_base.ErroringIndex(HandshakingToClientPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vHandshakingToClientPacketName) + if err != nil { + return + } + return +} + +type HandshakingToServerPacket struct { + Name string + Params any +} + +var HandshakingToServerPacketNameMap = map[int32]string{0x00: "set_protocol", 0xfe: "legacy_server_list_ping"} + +func (ret *HandshakingToServerPacket) Decode(r io.ReadSeeker) (err error) { + var HandshakingToServerPacketNameKey int32 + HandshakingToServerPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(HandshakingToServerPacketNameMap, HandshakingToServerPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "legacy_server_list_ping": + var HandshakingToServerPacketParamsLegacyServerListPingTmp HandshakingToServerPacketLegacyServerListPing + err = HandshakingToServerPacketParamsLegacyServerListPingTmp.Decode(r) + if err != nil { + return + } + ret.Params = HandshakingToServerPacketParamsLegacyServerListPingTmp + case "set_protocol": + var HandshakingToServerPacketParamsSetProtocolTmp HandshakingToServerPacketSetProtocol + err = HandshakingToServerPacketParamsSetProtocolTmp.Decode(r) + if err != nil { + return + } + ret.Params = HandshakingToServerPacketParamsSetProtocolTmp + } + return +} + +var HandshakingToServerPacketNameReverseMap = map[string]int32{"set_protocol": 0x00, "legacy_server_list_ping": 0xfe} + +func (ret *HandshakingToServerPacket) Encode(w io.Writer) (err error) { + var vHandshakingToServerPacketName int32 + vHandshakingToServerPacketName, err = proto_base.ErroringIndex(HandshakingToServerPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vHandshakingToServerPacketName) + if err != nil { + return + } + switch ret.Name { + case "legacy_server_list_ping": + HandshakingToServerPacketParams, ok := ret.Params.(HandshakingToServerPacketLegacyServerListPing) + if !ok { + err = proto_base.BadTypeError + return + } + err = HandshakingToServerPacketParams.Encode(w) + if err != nil { + return + } + case "set_protocol": + HandshakingToServerPacketParams, ok := ret.Params.(HandshakingToServerPacketSetProtocol) + if !ok { + err = proto_base.BadTypeError + return + } + err = HandshakingToServerPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type HandshakingToServerPacketLegacyServerListPing struct { + Payload uint8 +} + +func (ret *HandshakingToServerPacketLegacyServerListPing) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Payload) + if err != nil { + return + } + return +} +func (ret *HandshakingToServerPacketLegacyServerListPing) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Payload) + if err != nil { + return + } + return +} + +type HandshakingToServerPacketSetProtocol struct { + ProtocolVersion int32 + ServerHost string + ServerPort uint16 + NextState int32 +} + +func (ret *HandshakingToServerPacketSetProtocol) Decode(r io.ReadSeeker) (err error) { + ret.ProtocolVersion, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.ServerHost, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ServerPort) + if err != nil { + return + } + ret.NextState, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *HandshakingToServerPacketSetProtocol) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.ProtocolVersion) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.ServerHost) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ServerPort) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.NextState) + if err != nil { + return + } + return +} + +type LoginToClientPacket struct { + Name string + Params any +} + +var LoginToClientPacketNameMap = map[int32]string{0x00: "disconnect", 0x01: "encryption_begin", 0x02: "success", 0x03: "compress"} + +func (ret *LoginToClientPacket) Decode(r io.ReadSeeker) (err error) { + var LoginToClientPacketNameKey int32 + LoginToClientPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(LoginToClientPacketNameMap, LoginToClientPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "compress": + var LoginToClientPacketParamsCompressTmp LoginToClientPacketCompress + err = LoginToClientPacketParamsCompressTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToClientPacketParamsCompressTmp + case "disconnect": + var LoginToClientPacketParamsDisconnectTmp LoginToClientPacketDisconnect + err = LoginToClientPacketParamsDisconnectTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToClientPacketParamsDisconnectTmp + case "encryption_begin": + var LoginToClientPacketParamsEncryptionBeginTmp LoginToClientPacketEncryptionBegin + err = LoginToClientPacketParamsEncryptionBeginTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToClientPacketParamsEncryptionBeginTmp + case "success": + var LoginToClientPacketParamsSuccessTmp LoginToClientPacketSuccess + err = LoginToClientPacketParamsSuccessTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToClientPacketParamsSuccessTmp + } + return +} + +var LoginToClientPacketNameReverseMap = map[string]int32{"disconnect": 0x00, "encryption_begin": 0x01, "success": 0x02, "compress": 0x03} + +func (ret *LoginToClientPacket) Encode(w io.Writer) (err error) { + var vLoginToClientPacketName int32 + vLoginToClientPacketName, err = proto_base.ErroringIndex(LoginToClientPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vLoginToClientPacketName) + if err != nil { + return + } + switch ret.Name { + case "compress": + LoginToClientPacketParams, ok := ret.Params.(LoginToClientPacketCompress) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToClientPacketParams.Encode(w) + if err != nil { + return + } + case "disconnect": + LoginToClientPacketParams, ok := ret.Params.(LoginToClientPacketDisconnect) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToClientPacketParams.Encode(w) + if err != nil { + return + } + case "encryption_begin": + LoginToClientPacketParams, ok := ret.Params.(LoginToClientPacketEncryptionBegin) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToClientPacketParams.Encode(w) + if err != nil { + return + } + case "success": + LoginToClientPacketParams, ok := ret.Params.(LoginToClientPacketSuccess) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToClientPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type LoginToClientPacketCompress struct { + Threshold int32 +} + +func (ret *LoginToClientPacketCompress) Decode(r io.ReadSeeker) (err error) { + ret.Threshold, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *LoginToClientPacketCompress) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Threshold) + if err != nil { + return + } + return +} + +type LoginToClientPacketDisconnect struct { + Reason string +} + +func (ret *LoginToClientPacketDisconnect) Decode(r io.ReadSeeker) (err error) { + ret.Reason, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *LoginToClientPacketDisconnect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Reason) + if err != nil { + return + } + return +} + +type LoginToClientPacketEncryptionBegin struct { + ServerId string + PublicKey []byte + VerifyToken []byte +} + +func (ret *LoginToClientPacketEncryptionBegin) Decode(r io.ReadSeeker) (err error) { + ret.ServerId, err = proto_base.DecodeString(r) + if err != nil { + return + } + var lLoginToClientPacketEncryptionBeginPublicKey int32 + lLoginToClientPacketEncryptionBeginPublicKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.PublicKey, err = io.ReadAll(io.LimitReader(r, int64(lLoginToClientPacketEncryptionBeginPublicKey))) + if err != nil { + return + } + var lLoginToClientPacketEncryptionBeginVerifyToken int32 + lLoginToClientPacketEncryptionBeginVerifyToken, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.VerifyToken, err = io.ReadAll(io.LimitReader(r, int64(lLoginToClientPacketEncryptionBeginVerifyToken))) + if err != nil { + return + } + return +} +func (ret *LoginToClientPacketEncryptionBegin) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.ServerId) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.PublicKey))) + if err != nil { + return + } + _, err = w.Write(ret.PublicKey) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.VerifyToken))) + if err != nil { + return + } + _, err = w.Write(ret.VerifyToken) + if err != nil { + return + } + return +} + +type LoginToClientPacketSuccess struct { + Uuid string + Username string +} + +func (ret *LoginToClientPacketSuccess) Decode(r io.ReadSeeker) (err error) { + ret.Uuid, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Username, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *LoginToClientPacketSuccess) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Uuid) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Username) + if err != nil { + return + } + return +} + +type LoginToServerPacket struct { + Name string + Params any +} + +var LoginToServerPacketNameMap = map[int32]string{0x00: "login_start", 0x01: "encryption_begin"} + +func (ret *LoginToServerPacket) Decode(r io.ReadSeeker) (err error) { + var LoginToServerPacketNameKey int32 + LoginToServerPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(LoginToServerPacketNameMap, LoginToServerPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "encryption_begin": + var LoginToServerPacketParamsEncryptionBeginTmp LoginToServerPacketEncryptionBegin + err = LoginToServerPacketParamsEncryptionBeginTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToServerPacketParamsEncryptionBeginTmp + case "login_start": + var LoginToServerPacketParamsLoginStartTmp LoginToServerPacketLoginStart + err = LoginToServerPacketParamsLoginStartTmp.Decode(r) + if err != nil { + return + } + ret.Params = LoginToServerPacketParamsLoginStartTmp + } + return +} + +var LoginToServerPacketNameReverseMap = map[string]int32{"login_start": 0x00, "encryption_begin": 0x01} + +func (ret *LoginToServerPacket) Encode(w io.Writer) (err error) { + var vLoginToServerPacketName int32 + vLoginToServerPacketName, err = proto_base.ErroringIndex(LoginToServerPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vLoginToServerPacketName) + if err != nil { + return + } + switch ret.Name { + case "encryption_begin": + LoginToServerPacketParams, ok := ret.Params.(LoginToServerPacketEncryptionBegin) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToServerPacketParams.Encode(w) + if err != nil { + return + } + case "login_start": + LoginToServerPacketParams, ok := ret.Params.(LoginToServerPacketLoginStart) + if !ok { + err = proto_base.BadTypeError + return + } + err = LoginToServerPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type LoginToServerPacketEncryptionBegin struct { + SharedSecret []byte + VerifyToken []byte +} + +func (ret *LoginToServerPacketEncryptionBegin) Decode(r io.ReadSeeker) (err error) { + var lLoginToServerPacketEncryptionBeginSharedSecret int32 + lLoginToServerPacketEncryptionBeginSharedSecret, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.SharedSecret, err = io.ReadAll(io.LimitReader(r, int64(lLoginToServerPacketEncryptionBeginSharedSecret))) + if err != nil { + return + } + var lLoginToServerPacketEncryptionBeginVerifyToken int32 + lLoginToServerPacketEncryptionBeginVerifyToken, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.VerifyToken, err = io.ReadAll(io.LimitReader(r, int64(lLoginToServerPacketEncryptionBeginVerifyToken))) + if err != nil { + return + } + return +} +func (ret *LoginToServerPacketEncryptionBegin) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, int32(len(ret.SharedSecret))) + if err != nil { + return + } + _, err = w.Write(ret.SharedSecret) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.VerifyToken))) + if err != nil { + return + } + _, err = w.Write(ret.VerifyToken) + if err != nil { + return + } + return +} + +type LoginToServerPacketLoginStart struct { + Username string +} + +func (ret *LoginToServerPacketLoginStart) Decode(r io.ReadSeeker) (err error) { + ret.Username, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *LoginToServerPacketLoginStart) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Username) + if err != nil { + return + } + return +} + +type PlayToClientPacket struct { + Name string + Params any +} + +var PlayToClientPacketNameMap = map[int32]string{0x00: "keep_alive", 0x01: "login", 0x02: "chat", 0x03: "update_time", 0x04: "entity_equipment", 0x05: "spawn_position", 0x06: "update_health", 0x07: "respawn", 0x08: "position", 0x09: "held_item_slot", 0x0a: "bed", 0x0b: "animation", 0x0c: "named_entity_spawn", 0x0d: "collect", 0x0e: "spawn_entity", 0x0f: "spawn_entity_living", 0x10: "spawn_entity_painting", 0x11: "spawn_entity_experience_orb", 0x12: "entity_velocity", 0x13: "entity_destroy", 0x14: "entity", 0x15: "rel_entity_move", 0x16: "entity_look", 0x17: "entity_move_look", 0x18: "entity_teleport", 0x19: "entity_head_rotation", 0x1a: "entity_status", 0x1b: "attach_entity", 0x1c: "entity_metadata", 0x1d: "entity_effect", 0x1e: "remove_entity_effect", 0x1f: "experience", 0x20: "update_attributes", 0x21: "map_chunk", 0x22: "multi_block_change", 0x23: "block_change", 0x24: "block_action", 0x25: "block_break_animation", 0x26: "map_chunk_bulk", 0x27: "explosion", 0x28: "world_event", 0x29: "named_sound_effect", 0x2a: "world_particles", 0x2b: "game_state_change", 0x2c: "spawn_entity_weather", 0x2d: "open_window", 0x2e: "close_window", 0x2f: "set_slot", 0x30: "window_items", 0x31: "craft_progress_bar", 0x32: "transaction", 0x33: "update_sign", 0x34: "map", 0x35: "tile_entity_data", 0x36: "open_sign_entity", 0x37: "statistics", 0x38: "player_info", 0x39: "abilities", 0x3a: "tab_complete", 0x3b: "scoreboard_objective", 0x3c: "scoreboard_score", 0x3d: "scoreboard_display_objective", 0x3e: "scoreboard_team", 0x3f: "custom_payload", 0x40: "kick_disconnect", 0x41: "difficulty", 0x42: "combat_event", 0x43: "camera", 0x44: "world_border", 0x45: "title", 0x46: "set_compression", 0x47: "playerlist_header", 0x48: "resource_pack_send", 0x49: "update_entity_nbt"} + +func (ret *PlayToClientPacket) Decode(r io.ReadSeeker) (err error) { + var PlayToClientPacketNameKey int32 + PlayToClientPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(PlayToClientPacketNameMap, PlayToClientPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "abilities": + var PlayToClientPacketParamsAbilitiesTmp PlayToClientPacketAbilities + err = PlayToClientPacketParamsAbilitiesTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsAbilitiesTmp + case "animation": + var PlayToClientPacketParamsAnimationTmp PlayToClientPacketAnimation + err = PlayToClientPacketParamsAnimationTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsAnimationTmp + case "attach_entity": + var PlayToClientPacketParamsAttachEntityTmp PlayToClientPacketAttachEntity + err = PlayToClientPacketParamsAttachEntityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsAttachEntityTmp + case "bed": + var PlayToClientPacketParamsBedTmp PlayToClientPacketBed + err = PlayToClientPacketParamsBedTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsBedTmp + case "block_action": + var PlayToClientPacketParamsBlockActionTmp PlayToClientPacketBlockAction + err = PlayToClientPacketParamsBlockActionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsBlockActionTmp + case "block_break_animation": + var PlayToClientPacketParamsBlockBreakAnimationTmp PlayToClientPacketBlockBreakAnimation + err = PlayToClientPacketParamsBlockBreakAnimationTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsBlockBreakAnimationTmp + case "block_change": + var PlayToClientPacketParamsBlockChangeTmp PlayToClientPacketBlockChange + err = PlayToClientPacketParamsBlockChangeTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsBlockChangeTmp + case "camera": + var PlayToClientPacketParamsCameraTmp PlayToClientPacketCamera + err = PlayToClientPacketParamsCameraTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCameraTmp + case "chat": + var PlayToClientPacketParamsChatTmp PlayToClientPacketChat + err = PlayToClientPacketParamsChatTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsChatTmp + case "close_window": + var PlayToClientPacketParamsCloseWindowTmp PlayToClientPacketCloseWindow + err = PlayToClientPacketParamsCloseWindowTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCloseWindowTmp + case "collect": + var PlayToClientPacketParamsCollectTmp PlayToClientPacketCollect + err = PlayToClientPacketParamsCollectTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCollectTmp + case "combat_event": + var PlayToClientPacketParamsCombatEventTmp PlayToClientPacketCombatEvent + err = PlayToClientPacketParamsCombatEventTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCombatEventTmp + case "craft_progress_bar": + var PlayToClientPacketParamsCraftProgressBarTmp PlayToClientPacketCraftProgressBar + err = PlayToClientPacketParamsCraftProgressBarTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCraftProgressBarTmp + case "custom_payload": + var PlayToClientPacketParamsCustomPayloadTmp PlayToClientPacketCustomPayload + err = PlayToClientPacketParamsCustomPayloadTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsCustomPayloadTmp + case "difficulty": + var PlayToClientPacketParamsDifficultyTmp PlayToClientPacketDifficulty + err = PlayToClientPacketParamsDifficultyTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsDifficultyTmp + case "entity": + var PlayToClientPacketParamsEntityTmp PlayToClientPacketEntity + err = PlayToClientPacketParamsEntityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityTmp + case "entity_destroy": + var PlayToClientPacketParamsEntityDestroyTmp PlayToClientPacketEntityDestroy + err = PlayToClientPacketParamsEntityDestroyTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityDestroyTmp + case "entity_effect": + var PlayToClientPacketParamsEntityEffectTmp PlayToClientPacketEntityEffect + err = PlayToClientPacketParamsEntityEffectTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityEffectTmp + case "entity_equipment": + var PlayToClientPacketParamsEntityEquipmentTmp PlayToClientPacketEntityEquipment + err = PlayToClientPacketParamsEntityEquipmentTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityEquipmentTmp + case "entity_head_rotation": + var PlayToClientPacketParamsEntityHeadRotationTmp PlayToClientPacketEntityHeadRotation + err = PlayToClientPacketParamsEntityHeadRotationTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityHeadRotationTmp + case "entity_look": + var PlayToClientPacketParamsEntityLookTmp PlayToClientPacketEntityLook + err = PlayToClientPacketParamsEntityLookTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityLookTmp + case "entity_metadata": + var PlayToClientPacketParamsEntityMetadataTmp PlayToClientPacketEntityMetadata + err = PlayToClientPacketParamsEntityMetadataTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityMetadataTmp + case "entity_move_look": + var PlayToClientPacketParamsEntityMoveLookTmp PlayToClientPacketEntityMoveLook + err = PlayToClientPacketParamsEntityMoveLookTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityMoveLookTmp + case "entity_status": + var PlayToClientPacketParamsEntityStatusTmp PlayToClientPacketEntityStatus + err = PlayToClientPacketParamsEntityStatusTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityStatusTmp + case "entity_teleport": + var PlayToClientPacketParamsEntityTeleportTmp PlayToClientPacketEntityTeleport + err = PlayToClientPacketParamsEntityTeleportTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityTeleportTmp + case "entity_velocity": + var PlayToClientPacketParamsEntityVelocityTmp PlayToClientPacketEntityVelocity + err = PlayToClientPacketParamsEntityVelocityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsEntityVelocityTmp + case "experience": + var PlayToClientPacketParamsExperienceTmp PlayToClientPacketExperience + err = PlayToClientPacketParamsExperienceTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsExperienceTmp + case "explosion": + var PlayToClientPacketParamsExplosionTmp PlayToClientPacketExplosion + err = PlayToClientPacketParamsExplosionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsExplosionTmp + case "game_state_change": + var PlayToClientPacketParamsGameStateChangeTmp PlayToClientPacketGameStateChange + err = PlayToClientPacketParamsGameStateChangeTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsGameStateChangeTmp + case "held_item_slot": + var PlayToClientPacketParamsHeldItemSlotTmp PlayToClientPacketHeldItemSlot + err = PlayToClientPacketParamsHeldItemSlotTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsHeldItemSlotTmp + case "keep_alive": + var PlayToClientPacketParamsKeepAliveTmp PlayToClientPacketKeepAlive + err = PlayToClientPacketParamsKeepAliveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsKeepAliveTmp + case "kick_disconnect": + var PlayToClientPacketParamsKickDisconnectTmp PlayToClientPacketKickDisconnect + err = PlayToClientPacketParamsKickDisconnectTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsKickDisconnectTmp + case "login": + var PlayToClientPacketParamsLoginTmp PlayToClientPacketLogin + err = PlayToClientPacketParamsLoginTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsLoginTmp + case "map": + var PlayToClientPacketParamsMapTmp PlayToClientPacketMap + err = PlayToClientPacketParamsMapTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsMapTmp + case "map_chunk": + var PlayToClientPacketParamsMapChunkTmp PlayToClientPacketMapChunk + err = PlayToClientPacketParamsMapChunkTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsMapChunkTmp + case "map_chunk_bulk": + var PlayToClientPacketParamsMapChunkBulkTmp PlayToClientPacketMapChunkBulk + err = PlayToClientPacketParamsMapChunkBulkTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsMapChunkBulkTmp + case "multi_block_change": + var PlayToClientPacketParamsMultiBlockChangeTmp PlayToClientPacketMultiBlockChange + err = PlayToClientPacketParamsMultiBlockChangeTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsMultiBlockChangeTmp + case "named_entity_spawn": + var PlayToClientPacketParamsNamedEntitySpawnTmp PlayToClientPacketNamedEntitySpawn + err = PlayToClientPacketParamsNamedEntitySpawnTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsNamedEntitySpawnTmp + case "named_sound_effect": + var PlayToClientPacketParamsNamedSoundEffectTmp PlayToClientPacketNamedSoundEffect + err = PlayToClientPacketParamsNamedSoundEffectTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsNamedSoundEffectTmp + case "open_sign_entity": + var PlayToClientPacketParamsOpenSignEntityTmp PlayToClientPacketOpenSignEntity + err = PlayToClientPacketParamsOpenSignEntityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsOpenSignEntityTmp + case "open_window": + var PlayToClientPacketParamsOpenWindowTmp PlayToClientPacketOpenWindow + err = PlayToClientPacketParamsOpenWindowTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsOpenWindowTmp + case "player_info": + var PlayToClientPacketParamsPlayerInfoTmp PlayToClientPacketPlayerInfo + err = PlayToClientPacketParamsPlayerInfoTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsPlayerInfoTmp + case "playerlist_header": + var PlayToClientPacketParamsPlayerlistHeaderTmp PlayToClientPacketPlayerlistHeader + err = PlayToClientPacketParamsPlayerlistHeaderTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsPlayerlistHeaderTmp + case "position": + var PlayToClientPacketParamsPositionTmp PlayToClientPacketPosition + err = PlayToClientPacketParamsPositionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsPositionTmp + case "rel_entity_move": + var PlayToClientPacketParamsRelEntityMoveTmp PlayToClientPacketRelEntityMove + err = PlayToClientPacketParamsRelEntityMoveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsRelEntityMoveTmp + case "remove_entity_effect": + var PlayToClientPacketParamsRemoveEntityEffectTmp PlayToClientPacketRemoveEntityEffect + err = PlayToClientPacketParamsRemoveEntityEffectTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsRemoveEntityEffectTmp + case "resource_pack_send": + var PlayToClientPacketParamsResourcePackSendTmp PlayToClientPacketResourcePackSend + err = PlayToClientPacketParamsResourcePackSendTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsResourcePackSendTmp + case "respawn": + var PlayToClientPacketParamsRespawnTmp PlayToClientPacketRespawn + err = PlayToClientPacketParamsRespawnTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsRespawnTmp + case "scoreboard_display_objective": + var PlayToClientPacketParamsScoreboardDisplayObjectiveTmp PlayToClientPacketScoreboardDisplayObjective + err = PlayToClientPacketParamsScoreboardDisplayObjectiveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsScoreboardDisplayObjectiveTmp + case "scoreboard_objective": + var PlayToClientPacketParamsScoreboardObjectiveTmp PlayToClientPacketScoreboardObjective + err = PlayToClientPacketParamsScoreboardObjectiveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsScoreboardObjectiveTmp + case "scoreboard_score": + var PlayToClientPacketParamsScoreboardScoreTmp PlayToClientPacketScoreboardScore + err = PlayToClientPacketParamsScoreboardScoreTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsScoreboardScoreTmp + case "scoreboard_team": + var PlayToClientPacketParamsScoreboardTeamTmp PlayToClientPacketScoreboardTeam + err = PlayToClientPacketParamsScoreboardTeamTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsScoreboardTeamTmp + case "set_compression": + var PlayToClientPacketParamsSetCompressionTmp PlayToClientPacketSetCompression + err = PlayToClientPacketParamsSetCompressionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSetCompressionTmp + case "set_slot": + var PlayToClientPacketParamsSetSlotTmp PlayToClientPacketSetSlot + err = PlayToClientPacketParamsSetSlotTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSetSlotTmp + case "spawn_entity": + var PlayToClientPacketParamsSpawnEntityTmp PlayToClientPacketSpawnEntity + err = PlayToClientPacketParamsSpawnEntityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnEntityTmp + case "spawn_entity_experience_orb": + var PlayToClientPacketParamsSpawnEntityExperienceOrbTmp PlayToClientPacketSpawnEntityExperienceOrb + err = PlayToClientPacketParamsSpawnEntityExperienceOrbTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnEntityExperienceOrbTmp + case "spawn_entity_living": + var PlayToClientPacketParamsSpawnEntityLivingTmp PlayToClientPacketSpawnEntityLiving + err = PlayToClientPacketParamsSpawnEntityLivingTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnEntityLivingTmp + case "spawn_entity_painting": + var PlayToClientPacketParamsSpawnEntityPaintingTmp PlayToClientPacketSpawnEntityPainting + err = PlayToClientPacketParamsSpawnEntityPaintingTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnEntityPaintingTmp + case "spawn_entity_weather": + var PlayToClientPacketParamsSpawnEntityWeatherTmp PlayToClientPacketSpawnEntityWeather + err = PlayToClientPacketParamsSpawnEntityWeatherTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnEntityWeatherTmp + case "spawn_position": + var PlayToClientPacketParamsSpawnPositionTmp PlayToClientPacketSpawnPosition + err = PlayToClientPacketParamsSpawnPositionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsSpawnPositionTmp + case "statistics": + var PlayToClientPacketParamsStatisticsTmp PlayToClientPacketStatistics + err = PlayToClientPacketParamsStatisticsTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsStatisticsTmp + case "tab_complete": + var PlayToClientPacketParamsTabCompleteTmp PlayToClientPacketTabComplete + err = PlayToClientPacketParamsTabCompleteTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsTabCompleteTmp + case "tile_entity_data": + var PlayToClientPacketParamsTileEntityDataTmp PlayToClientPacketTileEntityData + err = PlayToClientPacketParamsTileEntityDataTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsTileEntityDataTmp + case "title": + var PlayToClientPacketParamsTitleTmp PlayToClientPacketTitle + err = PlayToClientPacketParamsTitleTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsTitleTmp + case "transaction": + var PlayToClientPacketParamsTransactionTmp PlayToClientPacketTransaction + err = PlayToClientPacketParamsTransactionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsTransactionTmp + case "update_attributes": + var PlayToClientPacketParamsUpdateAttributesTmp PlayToClientPacketUpdateAttributes + err = PlayToClientPacketParamsUpdateAttributesTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsUpdateAttributesTmp + case "update_entity_nbt": + var PlayToClientPacketParamsUpdateEntityNbtTmp PlayToClientPacketUpdateEntityNbt + err = PlayToClientPacketParamsUpdateEntityNbtTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsUpdateEntityNbtTmp + case "update_health": + var PlayToClientPacketParamsUpdateHealthTmp PlayToClientPacketUpdateHealth + err = PlayToClientPacketParamsUpdateHealthTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsUpdateHealthTmp + case "update_sign": + var PlayToClientPacketParamsUpdateSignTmp PlayToClientPacketUpdateSign + err = PlayToClientPacketParamsUpdateSignTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsUpdateSignTmp + case "update_time": + var PlayToClientPacketParamsUpdateTimeTmp PlayToClientPacketUpdateTime + err = PlayToClientPacketParamsUpdateTimeTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsUpdateTimeTmp + case "window_items": + var PlayToClientPacketParamsWindowItemsTmp PlayToClientPacketWindowItems + err = PlayToClientPacketParamsWindowItemsTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsWindowItemsTmp + case "world_border": + var PlayToClientPacketParamsWorldBorderTmp PlayToClientPacketWorldBorder + err = PlayToClientPacketParamsWorldBorderTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsWorldBorderTmp + case "world_event": + var PlayToClientPacketParamsWorldEventTmp PlayToClientPacketWorldEvent + err = PlayToClientPacketParamsWorldEventTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsWorldEventTmp + case "world_particles": + var PlayToClientPacketParamsWorldParticlesTmp PlayToClientPacketWorldParticles + err = PlayToClientPacketParamsWorldParticlesTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToClientPacketParamsWorldParticlesTmp + } + return +} + +var PlayToClientPacketNameReverseMap = map[string]int32{"keep_alive": 0x00, "login": 0x01, "chat": 0x02, "update_time": 0x03, "entity_equipment": 0x04, "spawn_position": 0x05, "update_health": 0x06, "respawn": 0x07, "position": 0x08, "held_item_slot": 0x09, "bed": 0x0a, "animation": 0x0b, "named_entity_spawn": 0x0c, "collect": 0x0d, "spawn_entity": 0x0e, "spawn_entity_living": 0x0f, "spawn_entity_painting": 0x10, "spawn_entity_experience_orb": 0x11, "entity_velocity": 0x12, "entity_destroy": 0x13, "entity": 0x14, "rel_entity_move": 0x15, "entity_look": 0x16, "entity_move_look": 0x17, "entity_teleport": 0x18, "entity_head_rotation": 0x19, "entity_status": 0x1a, "attach_entity": 0x1b, "entity_metadata": 0x1c, "entity_effect": 0x1d, "remove_entity_effect": 0x1e, "experience": 0x1f, "update_attributes": 0x20, "map_chunk": 0x21, "multi_block_change": 0x22, "block_change": 0x23, "block_action": 0x24, "block_break_animation": 0x25, "map_chunk_bulk": 0x26, "explosion": 0x27, "world_event": 0x28, "named_sound_effect": 0x29, "world_particles": 0x2a, "game_state_change": 0x2b, "spawn_entity_weather": 0x2c, "open_window": 0x2d, "close_window": 0x2e, "set_slot": 0x2f, "window_items": 0x30, "craft_progress_bar": 0x31, "transaction": 0x32, "update_sign": 0x33, "map": 0x34, "tile_entity_data": 0x35, "open_sign_entity": 0x36, "statistics": 0x37, "player_info": 0x38, "abilities": 0x39, "tab_complete": 0x3a, "scoreboard_objective": 0x3b, "scoreboard_score": 0x3c, "scoreboard_display_objective": 0x3d, "scoreboard_team": 0x3e, "custom_payload": 0x3f, "kick_disconnect": 0x40, "difficulty": 0x41, "combat_event": 0x42, "camera": 0x43, "world_border": 0x44, "title": 0x45, "set_compression": 0x46, "playerlist_header": 0x47, "resource_pack_send": 0x48, "update_entity_nbt": 0x49} + +func (ret *PlayToClientPacket) Encode(w io.Writer) (err error) { + var vPlayToClientPacketName int32 + vPlayToClientPacketName, err = proto_base.ErroringIndex(PlayToClientPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vPlayToClientPacketName) + if err != nil { + return + } + switch ret.Name { + case "abilities": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketAbilities) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "animation": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketAnimation) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "attach_entity": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketAttachEntity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "bed": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketBed) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "block_action": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketBlockAction) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "block_break_animation": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketBlockBreakAnimation) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "block_change": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketBlockChange) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "camera": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCamera) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "chat": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketChat) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "close_window": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCloseWindow) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "collect": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCollect) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "combat_event": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCombatEvent) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "craft_progress_bar": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCraftProgressBar) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "custom_payload": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketCustomPayload) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "difficulty": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketDifficulty) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_destroy": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityDestroy) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_effect": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityEffect) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_equipment": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityEquipment) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_head_rotation": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityHeadRotation) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_look": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityLook) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_metadata": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityMetadata) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_move_look": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityMoveLook) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_status": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityStatus) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_teleport": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityTeleport) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "entity_velocity": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketEntityVelocity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "experience": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketExperience) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "explosion": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketExplosion) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "game_state_change": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketGameStateChange) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "held_item_slot": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketHeldItemSlot) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "keep_alive": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketKeepAlive) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "kick_disconnect": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketKickDisconnect) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "login": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketLogin) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "map": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketMap) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "map_chunk": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketMapChunk) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "map_chunk_bulk": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketMapChunkBulk) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "multi_block_change": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketMultiBlockChange) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "named_entity_spawn": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketNamedEntitySpawn) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "named_sound_effect": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketNamedSoundEffect) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "open_sign_entity": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketOpenSignEntity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "open_window": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketOpenWindow) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "player_info": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketPlayerInfo) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "playerlist_header": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketPlayerlistHeader) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "position": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketPosition) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "rel_entity_move": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketRelEntityMove) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "remove_entity_effect": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketRemoveEntityEffect) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "resource_pack_send": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketResourcePackSend) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "respawn": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketRespawn) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "scoreboard_display_objective": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketScoreboardDisplayObjective) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "scoreboard_objective": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketScoreboardObjective) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "scoreboard_score": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketScoreboardScore) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "scoreboard_team": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketScoreboardTeam) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "set_compression": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSetCompression) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "set_slot": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSetSlot) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_entity": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnEntity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_entity_experience_orb": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnEntityExperienceOrb) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_entity_living": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnEntityLiving) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_entity_painting": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnEntityPainting) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_entity_weather": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnEntityWeather) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "spawn_position": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketSpawnPosition) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "statistics": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketStatistics) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "tab_complete": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketTabComplete) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "tile_entity_data": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketTileEntityData) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "title": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketTitle) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "transaction": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketTransaction) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "update_attributes": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketUpdateAttributes) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "update_entity_nbt": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketUpdateEntityNbt) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "update_health": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketUpdateHealth) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "update_sign": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketUpdateSign) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "update_time": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketUpdateTime) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "window_items": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketWindowItems) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "world_border": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketWorldBorder) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "world_event": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketWorldEvent) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + case "world_particles": + PlayToClientPacketParams, ok := ret.Params.(PlayToClientPacketWorldParticles) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToClientPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketAbilities struct { + Flags int8 + FlyingSpeed float32 + WalkingSpeed float32 +} + +func (ret *PlayToClientPacketAbilities) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Flags) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.FlyingSpeed) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.WalkingSpeed) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketAbilities) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Flags) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.FlyingSpeed) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.WalkingSpeed) + if err != nil { + return + } + return +} + +type PlayToClientPacketAnimation struct { + EntityId int32 + Animation uint8 +} + +func (ret *PlayToClientPacketAnimation) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Animation) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketAnimation) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Animation) + if err != nil { + return + } + return +} + +type PlayToClientPacketAttachEntity struct { + EntityId int32 + VehicleId int32 + Leash bool +} + +func (ret *PlayToClientPacketAttachEntity) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.EntityId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.VehicleId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Leash) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketAttachEntity) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.VehicleId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Leash) + if err != nil { + return + } + return +} + +type PlayToClientPacketBed struct { + EntityId int32 + Location Position +} + +func (ret *PlayToClientPacketBed) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Location.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketBed) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = ret.Location.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketBlockAction struct { + Location Position + Byte1 uint8 + Byte2 uint8 + BlockId int32 +} + +func (ret *PlayToClientPacketBlockAction) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Byte1) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Byte2) + if err != nil { + return + } + ret.BlockId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketBlockAction) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Byte1) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Byte2) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.BlockId) + if err != nil { + return + } + return +} + +type PlayToClientPacketBlockBreakAnimation struct { + EntityId int32 + Location Position + DestroyStage int8 +} + +func (ret *PlayToClientPacketBlockBreakAnimation) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DestroyStage) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketBlockBreakAnimation) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DestroyStage) + if err != nil { + return + } + return +} + +type PlayToClientPacketBlockChange struct { + Location Position + Type int32 +} + +func (ret *PlayToClientPacketBlockChange) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + ret.Type, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketBlockChange) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Type) + if err != nil { + return + } + return +} + +type PlayToClientPacketCamera struct { + CameraId int32 +} + +func (ret *PlayToClientPacketCamera) Decode(r io.ReadSeeker) (err error) { + ret.CameraId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketCamera) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.CameraId) + if err != nil { + return + } + return +} + +type PlayToClientPacketChat struct { + Message string + Position int8 +} + +func (ret *PlayToClientPacketChat) Decode(r io.ReadSeeker) (err error) { + ret.Message, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Position) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketChat) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Message) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Position) + if err != nil { + return + } + return +} + +type PlayToClientPacketCloseWindow struct { + WindowId uint8 +} + +func (ret *PlayToClientPacketCloseWindow) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketCloseWindow) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + return +} + +type PlayToClientPacketCollect struct { + CollectedEntityId int32 + CollectorEntityId int32 +} + +func (ret *PlayToClientPacketCollect) Decode(r io.ReadSeeker) (err error) { + ret.CollectedEntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.CollectorEntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketCollect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.CollectedEntityId) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.CollectorEntityId) + if err != nil { + return + } + return +} + +type PlayToClientPacketCombatEvent struct { + Event int32 + Duration any + PlayerId any + EntityId any + Message any +} + +func (ret *PlayToClientPacketCombatEvent) Decode(r io.ReadSeeker) (err error) { + ret.Event, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + switch ret.Event { + case 1: + var PlayToClientPacketCombatEventDuration1Tmp int32 + PlayToClientPacketCombatEventDuration1Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Duration = PlayToClientPacketCombatEventDuration1Tmp + default: + var PlayToClientPacketCombatEventDurationTmp struct { + } + ret.Duration = PlayToClientPacketCombatEventDurationTmp + } + switch ret.Event { + case 2: + var PlayToClientPacketCombatEventPlayerId2Tmp int32 + PlayToClientPacketCombatEventPlayerId2Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.PlayerId = PlayToClientPacketCombatEventPlayerId2Tmp + default: + var PlayToClientPacketCombatEventPlayerIdTmp struct { + } + ret.PlayerId = PlayToClientPacketCombatEventPlayerIdTmp + } + switch ret.Event { + case 1: + var PlayToClientPacketCombatEventEntityId1Tmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketCombatEventEntityId1Tmp) + if err != nil { + return + } + ret.EntityId = PlayToClientPacketCombatEventEntityId1Tmp + case 2: + var PlayToClientPacketCombatEventEntityId2Tmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketCombatEventEntityId2Tmp) + if err != nil { + return + } + ret.EntityId = PlayToClientPacketCombatEventEntityId2Tmp + default: + var PlayToClientPacketCombatEventEntityIdTmp struct { + } + ret.EntityId = PlayToClientPacketCombatEventEntityIdTmp + } + switch ret.Event { + case 2: + var PlayToClientPacketCombatEventMessage2Tmp string + PlayToClientPacketCombatEventMessage2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Message = PlayToClientPacketCombatEventMessage2Tmp + default: + var PlayToClientPacketCombatEventMessageTmp struct { + } + ret.Message = PlayToClientPacketCombatEventMessageTmp + } + return +} +func (ret *PlayToClientPacketCombatEvent) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Event) + if err != nil { + return + } + switch ret.Event { + case 1: + PlayToClientPacketCombatEventDuration, ok := ret.Duration.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketCombatEventDuration) + if err != nil { + return + } + default: + _, ok := ret.Duration.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Event { + case 2: + PlayToClientPacketCombatEventPlayerId, ok := ret.PlayerId.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketCombatEventPlayerId) + if err != nil { + return + } + default: + _, ok := ret.PlayerId.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Event { + case 1: + PlayToClientPacketCombatEventEntityId, ok := ret.EntityId.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketCombatEventEntityId) + if err != nil { + return + } + case 2: + PlayToClientPacketCombatEventEntityId, ok := ret.EntityId.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketCombatEventEntityId) + if err != nil { + return + } + default: + _, ok := ret.EntityId.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Event { + case 2: + PlayToClientPacketCombatEventMessage, ok := ret.Message.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketCombatEventMessage) + if err != nil { + return + } + default: + _, ok := ret.Message.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketCraftProgressBar struct { + WindowId uint8 + Property int16 + Value int16 +} + +func (ret *PlayToClientPacketCraftProgressBar) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Property) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Value) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketCraftProgressBar) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Property) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Value) + if err != nil { + return + } + return +} + +type PlayToClientPacketCustomPayload struct { + Channel string + Data proto_base.RestBuffer +} + +func (ret *PlayToClientPacketCustomPayload) Decode(r io.ReadSeeker) (err error) { + ret.Channel, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = ret.Data.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketCustomPayload) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Channel) + if err != nil { + return + } + err = ret.Data.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketDifficulty struct { + Difficulty uint8 +} + +func (ret *PlayToClientPacketDifficulty) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Difficulty) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketDifficulty) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Difficulty) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntity struct { + EntityId int32 +} + +func (ret *PlayToClientPacketEntity) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntity) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityDestroy struct { + EntityIds []int32 +} + +func (ret *PlayToClientPacketEntityDestroy) Decode(r io.ReadSeeker) (err error) { + var lPlayToClientPacketEntityDestroyEntityIds int32 + lPlayToClientPacketEntityDestroyEntityIds, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.EntityIds = []int32{} + for range lPlayToClientPacketEntityDestroyEntityIds { + var PlayToClientPacketEntityDestroyEntityIdsElement int32 + PlayToClientPacketEntityDestroyEntityIdsElement, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.EntityIds = append(ret.EntityIds, PlayToClientPacketEntityDestroyEntityIdsElement) + } + return +} +func (ret *PlayToClientPacketEntityDestroy) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, int32(len(ret.EntityIds))) + if err != nil { + return + } + for iPlayToClientPacketEntityDestroyEntityIds := range len(ret.EntityIds) { + err = proto_base.EncodeVarInt(w, ret.EntityIds[iPlayToClientPacketEntityDestroyEntityIds]) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketEntityEffect struct { + EntityId int32 + EffectId int8 + Amplifier int8 + Duration int32 + HideParticles bool +} + +func (ret *PlayToClientPacketEntityEffect) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.EffectId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Amplifier) + if err != nil { + return + } + ret.Duration, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.HideParticles) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityEffect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.EffectId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Amplifier) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Duration) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.HideParticles) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityEquipment struct { + EntityId int32 + Slot int16 + Item Slot +} + +func (ret *PlayToClientPacketEntityEquipment) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Slot) + if err != nil { + return + } + err = ret.Item.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityEquipment) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Slot) + if err != nil { + return + } + err = ret.Item.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityHeadRotation struct { + EntityId int32 + HeadYaw int8 +} + +func (ret *PlayToClientPacketEntityHeadRotation) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.HeadYaw) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityHeadRotation) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.HeadYaw) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityLook struct { + EntityId int32 + Yaw int8 + Pitch int8 + OnGround bool +} + +func (ret *PlayToClientPacketEntityLook) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityLook) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityMetadata struct { + EntityId int32 + Metadata EntityMetadata +} + +func (ret *PlayToClientPacketEntityMetadata) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Metadata.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityMetadata) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = ret.Metadata.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityMoveLook struct { + EntityId int32 + DX int8 + DY int8 + DZ int8 + Yaw int8 + Pitch int8 + OnGround bool +} + +func (ret *PlayToClientPacketEntityMoveLook) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DX) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DY) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DZ) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityMoveLook) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DX) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DY) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DZ) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityStatus struct { + EntityId int32 + EntityStatus int8 +} + +func (ret *PlayToClientPacketEntityStatus) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.EntityId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.EntityStatus) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityStatus) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.EntityStatus) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityTeleport struct { + EntityId int32 + X int32 + Y int32 + Z int32 + Yaw int8 + Pitch int8 + OnGround bool +} + +func (ret *PlayToClientPacketEntityTeleport) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityTeleport) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToClientPacketEntityVelocity struct { + EntityId int32 + Velocity Vec3i16 +} + +func (ret *PlayToClientPacketEntityVelocity) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Velocity.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketEntityVelocity) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = ret.Velocity.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketExperience struct { + ExperienceBar float32 + Level int32 + TotalExperience int32 +} + +func (ret *PlayToClientPacketExperience) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.ExperienceBar) + if err != nil { + return + } + ret.Level, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.TotalExperience, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketExperience) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.ExperienceBar) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Level) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.TotalExperience) + if err != nil { + return + } + return +} + +type PlayToClientPacketExplosion struct { + X float32 + Y float32 + Z float32 + Radius float32 + AffectedBlockOffsets []struct { + X int8 + Y int8 + Z int8 + } + PlayerMotionX float32 + PlayerMotionY float32 + PlayerMotionZ float32 +} + +func (ret *PlayToClientPacketExplosion) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Radius) + if err != nil { + return + } + var lPlayToClientPacketExplosionAffectedBlockOffsets int32 + err = binary.Read(r, binary.BigEndian, &lPlayToClientPacketExplosionAffectedBlockOffsets) + if err != nil { + return + } + ret.AffectedBlockOffsets = []struct { + X int8 + Y int8 + Z int8 + }{} + for range lPlayToClientPacketExplosionAffectedBlockOffsets { + var PlayToClientPacketExplosionAffectedBlockOffsetsElement struct { + X int8 + Y int8 + Z int8 + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketExplosionAffectedBlockOffsetsElement.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketExplosionAffectedBlockOffsetsElement.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketExplosionAffectedBlockOffsetsElement.Z) + if err != nil { + return + } + ret.AffectedBlockOffsets = append(ret.AffectedBlockOffsets, PlayToClientPacketExplosionAffectedBlockOffsetsElement) + } + err = binary.Read(r, binary.BigEndian, &ret.PlayerMotionX) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.PlayerMotionY) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.PlayerMotionZ) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketExplosion) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Radius) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, int32(len(ret.AffectedBlockOffsets))) + if err != nil { + return + } + for iPlayToClientPacketExplosionAffectedBlockOffsets := range len(ret.AffectedBlockOffsets) { + err = binary.Write(w, binary.BigEndian, ret.AffectedBlockOffsets[iPlayToClientPacketExplosionAffectedBlockOffsets].X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.AffectedBlockOffsets[iPlayToClientPacketExplosionAffectedBlockOffsets].Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.AffectedBlockOffsets[iPlayToClientPacketExplosionAffectedBlockOffsets].Z) + if err != nil { + return + } + } + err = binary.Write(w, binary.BigEndian, ret.PlayerMotionX) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.PlayerMotionY) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.PlayerMotionZ) + if err != nil { + return + } + return +} + +type PlayToClientPacketGameStateChange struct { + Reason uint8 + GameMode float32 +} + +func (ret *PlayToClientPacketGameStateChange) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Reason) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.GameMode) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketGameStateChange) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Reason) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.GameMode) + if err != nil { + return + } + return +} + +type PlayToClientPacketHeldItemSlot struct { + Slot int8 +} + +func (ret *PlayToClientPacketHeldItemSlot) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Slot) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketHeldItemSlot) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Slot) + if err != nil { + return + } + return +} + +type PlayToClientPacketKeepAlive struct { + KeepAliveId int32 +} + +func (ret *PlayToClientPacketKeepAlive) Decode(r io.ReadSeeker) (err error) { + ret.KeepAliveId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketKeepAlive) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.KeepAliveId) + if err != nil { + return + } + return +} + +type PlayToClientPacketKickDisconnect struct { + Reason string +} + +func (ret *PlayToClientPacketKickDisconnect) Decode(r io.ReadSeeker) (err error) { + ret.Reason, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketKickDisconnect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Reason) + if err != nil { + return + } + return +} + +type PlayToClientPacketLogin struct { + EntityId int32 + GameMode uint8 + Dimension int8 + Difficulty uint8 + MaxPlayers uint8 + LevelType string + ReducedDebugInfo bool +} + +func (ret *PlayToClientPacketLogin) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.EntityId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.GameMode) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Dimension) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Difficulty) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.MaxPlayers) + if err != nil { + return + } + ret.LevelType, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ReducedDebugInfo) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketLogin) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.GameMode) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Dimension) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Difficulty) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.MaxPlayers) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.LevelType) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ReducedDebugInfo) + if err != nil { + return + } + return +} + +type PlayToClientPacketMap struct { + ItemDamage int32 + Scale int8 + Icons []struct { + DirectionAndType int8 + X int8 + Z int8 + } + Columns int8 + Rows any + X any + Y any + Data any +} + +func (ret *PlayToClientPacketMap) Decode(r io.ReadSeeker) (err error) { + ret.ItemDamage, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Scale) + if err != nil { + return + } + var lPlayToClientPacketMapIcons int32 + lPlayToClientPacketMapIcons, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Icons = []struct { + DirectionAndType int8 + X int8 + Z int8 + }{} + for range lPlayToClientPacketMapIcons { + var PlayToClientPacketMapIconsElement struct { + DirectionAndType int8 + X int8 + Z int8 + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapIconsElement.DirectionAndType) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapIconsElement.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapIconsElement.Z) + if err != nil { + return + } + ret.Icons = append(ret.Icons, PlayToClientPacketMapIconsElement) + } + err = binary.Read(r, binary.BigEndian, &ret.Columns) + if err != nil { + return + } + switch ret.Columns { + case 0: + var PlayToClientPacketMapRows0Tmp struct { + } + ret.Rows = PlayToClientPacketMapRows0Tmp + default: + var PlayToClientPacketMapRowsTmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapRowsTmp) + if err != nil { + return + } + ret.Rows = PlayToClientPacketMapRowsTmp + } + switch ret.Columns { + case 0: + var PlayToClientPacketMapX0Tmp struct { + } + ret.X = PlayToClientPacketMapX0Tmp + default: + var PlayToClientPacketMapXTmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapXTmp) + if err != nil { + return + } + ret.X = PlayToClientPacketMapXTmp + } + switch ret.Columns { + case 0: + var PlayToClientPacketMapY0Tmp struct { + } + ret.Y = PlayToClientPacketMapY0Tmp + default: + var PlayToClientPacketMapYTmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapYTmp) + if err != nil { + return + } + ret.Y = PlayToClientPacketMapYTmp + } + switch ret.Columns { + case 0: + var PlayToClientPacketMapData0Tmp struct { + } + ret.Data = PlayToClientPacketMapData0Tmp + default: + var PlayToClientPacketMapDataTmp []byte + var lPlayToClientPacketMapData int32 + lPlayToClientPacketMapData, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketMapDataTmp, err = io.ReadAll(io.LimitReader(r, int64(lPlayToClientPacketMapData))) + if err != nil { + return + } + ret.Data = PlayToClientPacketMapDataTmp + } + return +} +func (ret *PlayToClientPacketMap) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.ItemDamage) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Scale) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Icons))) + if err != nil { + return + } + for iPlayToClientPacketMapIcons := range len(ret.Icons) { + err = binary.Write(w, binary.BigEndian, ret.Icons[iPlayToClientPacketMapIcons].DirectionAndType) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Icons[iPlayToClientPacketMapIcons].X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Icons[iPlayToClientPacketMapIcons].Z) + if err != nil { + return + } + } + err = binary.Write(w, binary.BigEndian, ret.Columns) + if err != nil { + return + } + switch ret.Columns { + case 0: + _, ok := ret.Rows.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Rows.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, ret.Rows.(int8)) + if err != nil { + return + } + } + switch ret.Columns { + case 0: + _, ok := ret.X.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.X.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, ret.X.(int8)) + if err != nil { + return + } + } + switch ret.Columns { + case 0: + _, ok := ret.Y.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Y.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, ret.Y.(int8)) + if err != nil { + return + } + } + switch ret.Columns { + case 0: + _, ok := ret.Data.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Data.([]byte) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Data.([]byte)))) + if err != nil { + return + } + _, err = w.Write(ret.Data.([]byte)) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketMapChunk struct { + X int32 + Z int32 + GroundUp bool + BitMap uint16 + ChunkData []byte +} + +func (ret *PlayToClientPacketMapChunk) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.GroundUp) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.BitMap) + if err != nil { + return + } + var lPlayToClientPacketMapChunkChunkData int32 + lPlayToClientPacketMapChunkChunkData, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.ChunkData, err = io.ReadAll(io.LimitReader(r, int64(lPlayToClientPacketMapChunkChunkData))) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketMapChunk) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.GroundUp) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.BitMap) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.ChunkData))) + if err != nil { + return + } + _, err = w.Write(ret.ChunkData) + if err != nil { + return + } + return +} + +type PlayToClientPacketMapChunkBulk struct { + SkyLightSent bool + Meta []struct { + X int32 + Z int32 + BitMap uint16 + } + Data proto_base.RestBuffer +} + +func (ret *PlayToClientPacketMapChunkBulk) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.SkyLightSent) + if err != nil { + return + } + var lPlayToClientPacketMapChunkBulkMeta int32 + lPlayToClientPacketMapChunkBulkMeta, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Meta = []struct { + X int32 + Z int32 + BitMap uint16 + }{} + for range lPlayToClientPacketMapChunkBulkMeta { + var PlayToClientPacketMapChunkBulkMetaElement struct { + X int32 + Z int32 + BitMap uint16 + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapChunkBulkMetaElement.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapChunkBulkMetaElement.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMapChunkBulkMetaElement.BitMap) + if err != nil { + return + } + ret.Meta = append(ret.Meta, PlayToClientPacketMapChunkBulkMetaElement) + } + err = ret.Data.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketMapChunkBulk) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.SkyLightSent) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Meta))) + if err != nil { + return + } + for iPlayToClientPacketMapChunkBulkMeta := range len(ret.Meta) { + err = binary.Write(w, binary.BigEndian, ret.Meta[iPlayToClientPacketMapChunkBulkMeta].X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Meta[iPlayToClientPacketMapChunkBulkMeta].Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Meta[iPlayToClientPacketMapChunkBulkMeta].BitMap) + if err != nil { + return + } + } + err = ret.Data.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketMultiBlockChange struct { + ChunkX int32 + ChunkZ int32 + Records []struct { + HorizontalPos uint8 + Y uint8 + BlockId int32 + } +} + +func (ret *PlayToClientPacketMultiBlockChange) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.ChunkX) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ChunkZ) + if err != nil { + return + } + var lPlayToClientPacketMultiBlockChangeRecords int32 + lPlayToClientPacketMultiBlockChangeRecords, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Records = []struct { + HorizontalPos uint8 + Y uint8 + BlockId int32 + }{} + for range lPlayToClientPacketMultiBlockChangeRecords { + var PlayToClientPacketMultiBlockChangeRecordsElement struct { + HorizontalPos uint8 + Y uint8 + BlockId int32 + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMultiBlockChangeRecordsElement.HorizontalPos) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketMultiBlockChangeRecordsElement.Y) + if err != nil { + return + } + PlayToClientPacketMultiBlockChangeRecordsElement.BlockId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Records = append(ret.Records, PlayToClientPacketMultiBlockChangeRecordsElement) + } + return +} +func (ret *PlayToClientPacketMultiBlockChange) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.ChunkX) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ChunkZ) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Records))) + if err != nil { + return + } + for iPlayToClientPacketMultiBlockChangeRecords := range len(ret.Records) { + err = binary.Write(w, binary.BigEndian, ret.Records[iPlayToClientPacketMultiBlockChangeRecords].HorizontalPos) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Records[iPlayToClientPacketMultiBlockChangeRecords].Y) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Records[iPlayToClientPacketMultiBlockChangeRecords].BlockId) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketNamedEntitySpawn struct { + EntityId int32 + PlayerUUID uuid.UUID + X int32 + Y int32 + Z int32 + Yaw int8 + Pitch int8 + CurrentItem int16 + Metadata EntityMetadata +} + +func (ret *PlayToClientPacketNamedEntitySpawn) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + _, err = io.ReadFull(r, ret.PlayerUUID[:]) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.CurrentItem) + if err != nil { + return + } + err = ret.Metadata.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketNamedEntitySpawn) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + _, err = w.Write(ret.PlayerUUID[:]) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.CurrentItem) + if err != nil { + return + } + err = ret.Metadata.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketNamedSoundEffect struct { + SoundName string + X int32 + Y int32 + Z int32 + Volume float32 + Pitch uint8 +} + +func (ret *PlayToClientPacketNamedSoundEffect) Decode(r io.ReadSeeker) (err error) { + ret.SoundName, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Volume) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketNamedSoundEffect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.SoundName) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Volume) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + return +} + +type PlayToClientPacketOpenSignEntity struct { + Location Position +} + +func (ret *PlayToClientPacketOpenSignEntity) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketOpenSignEntity) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketOpenWindow struct { + WindowId uint8 + InventoryType string + WindowTitle string + SlotCount uint8 + EntityId any +} + +func (ret *PlayToClientPacketOpenWindow) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + ret.InventoryType, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.WindowTitle, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.SlotCount) + if err != nil { + return + } + switch ret.InventoryType { + case "EntityHorse": + var PlayToClientPacketOpenWindowEntityIdEntityHorseTmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketOpenWindowEntityIdEntityHorseTmp) + if err != nil { + return + } + ret.EntityId = PlayToClientPacketOpenWindowEntityIdEntityHorseTmp + default: + var PlayToClientPacketOpenWindowEntityIdTmp struct { + } + ret.EntityId = PlayToClientPacketOpenWindowEntityIdTmp + } + return +} +func (ret *PlayToClientPacketOpenWindow) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.InventoryType) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.WindowTitle) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.SlotCount) + if err != nil { + return + } + switch ret.InventoryType { + case "EntityHorse": + PlayToClientPacketOpenWindowEntityId, ok := ret.EntityId.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketOpenWindowEntityId) + if err != nil { + return + } + default: + _, ok := ret.EntityId.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketPlayerInfo struct { + Action string + Data []struct { + Uuid uuid.UUID + Anon any + } +} + +var PlayToClientPacketPlayerInfoActionMap = map[int32]string{0: "add_player", 1: "update_game_mode", 2: "update_latency", 3: "update_display_name", 4: "remove_player"} + +func (ret *PlayToClientPacketPlayerInfo) Decode(r io.ReadSeeker) (err error) { + var PlayToClientPacketPlayerInfoActionKey int32 + PlayToClientPacketPlayerInfoActionKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Action, err = proto_base.ErroringIndex(PlayToClientPacketPlayerInfoActionMap, PlayToClientPacketPlayerInfoActionKey) + if err != nil { + return + } + var lPlayToClientPacketPlayerInfoData int32 + lPlayToClientPacketPlayerInfoData, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Data = []struct { + Uuid uuid.UUID + Anon any + }{} + for range lPlayToClientPacketPlayerInfoData { + var PlayToClientPacketPlayerInfoDataElement struct { + Uuid uuid.UUID + Anon any + } + _, err = io.ReadFull(r, PlayToClientPacketPlayerInfoDataElement.Uuid[:]) + if err != nil { + return + } + switch ret.Action { + case "add_player": + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp struct { + Name string + Properties []struct { + Name string + Value string + Signature *string + } + Gamemode int32 + Ping int32 + DisplayName *string + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Name, err = proto_base.DecodeString(r) + if err != nil { + return + } + var lPlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpProperties int32 + lPlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpProperties, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Properties = []struct { + Name string + Value string + Signature *string + }{} + for range lPlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpProperties { + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElement struct { + Name string + Value string + Signature *string + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElement.Name, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElement.Value, err = proto_base.DecodeString(r) + if err != nil { + return + } + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresent bool + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresent) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresent { + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresentValue string + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresentValue, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElement.Signature = &PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElementSignaturePresentValue + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Properties = append(PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Properties, PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpPropertiesElement) + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Gamemode, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.Ping, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresent bool + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresent) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresent { + var PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresentValue string + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresentValue, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp.DisplayName = &PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmpDisplayNamePresentValue + } + PlayToClientPacketPlayerInfoDataElement.Anon = PlayToClientPacketPlayerInfoDataElementAnonAddPlayerTmp + case "remove_player": + var PlayToClientPacketPlayerInfoDataElementAnonRemovePlayerTmp struct { + } + PlayToClientPacketPlayerInfoDataElement.Anon = PlayToClientPacketPlayerInfoDataElementAnonRemovePlayerTmp + case "update_display_name": + var PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmp struct { + DisplayName *string + } + var PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresent bool + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresent) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresent { + var PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresentValue string + PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresentValue, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmp.DisplayName = &PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmpDisplayNamePresentValue + } + PlayToClientPacketPlayerInfoDataElement.Anon = PlayToClientPacketPlayerInfoDataElementAnonUpdateDisplayNameTmp + case "update_game_mode": + var PlayToClientPacketPlayerInfoDataElementAnonUpdateGameModeTmp struct { + Gamemode int32 + } + PlayToClientPacketPlayerInfoDataElementAnonUpdateGameModeTmp.Gamemode, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElement.Anon = PlayToClientPacketPlayerInfoDataElementAnonUpdateGameModeTmp + case "update_latency": + var PlayToClientPacketPlayerInfoDataElementAnonUpdateLatencyTmp struct { + Ping int32 + } + PlayToClientPacketPlayerInfoDataElementAnonUpdateLatencyTmp.Ping, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketPlayerInfoDataElement.Anon = PlayToClientPacketPlayerInfoDataElementAnonUpdateLatencyTmp + } + ret.Data = append(ret.Data, PlayToClientPacketPlayerInfoDataElement) + } + return +} + +var PlayToClientPacketPlayerInfoActionReverseMap = map[string]int32{"add_player": 0, "update_game_mode": 1, "update_latency": 2, "update_display_name": 3, "remove_player": 4} + +func (ret *PlayToClientPacketPlayerInfo) Encode(w io.Writer) (err error) { + var vPlayToClientPacketPlayerInfoAction int32 + vPlayToClientPacketPlayerInfoAction, err = proto_base.ErroringIndex(PlayToClientPacketPlayerInfoActionReverseMap, ret.Action) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vPlayToClientPacketPlayerInfoAction) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Data))) + if err != nil { + return + } + for iPlayToClientPacketPlayerInfoData := range len(ret.Data) { + _, err = w.Write(ret.Data[iPlayToClientPacketPlayerInfoData].Uuid[:]) + if err != nil { + return + } + switch ret.Action { + case "add_player": + PlayToClientPacketPlayerInfoDataInnerAnon, ok := ret.Data[iPlayToClientPacketPlayerInfoData].Anon.(struct { + Name string + Properties []struct { + Name string + Value string + Signature *string + } + Gamemode int32 + Ping int32 + DisplayName *string + }) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketPlayerInfoDataInnerAnon.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(PlayToClientPacketPlayerInfoDataInnerAnon.Properties))) + if err != nil { + return + } + for iPlayToClientPacketPlayerInfoDataInnerAnonProperties := range len(PlayToClientPacketPlayerInfoDataInnerAnon.Properties) { + err = proto_base.EncodeString(w, PlayToClientPacketPlayerInfoDataInnerAnon.Properties[iPlayToClientPacketPlayerInfoDataInnerAnonProperties].Name) + if err != nil { + return + } + err = proto_base.EncodeString(w, PlayToClientPacketPlayerInfoDataInnerAnon.Properties[iPlayToClientPacketPlayerInfoDataInnerAnonProperties].Value) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketPlayerInfoDataInnerAnon.Properties[iPlayToClientPacketPlayerInfoDataInnerAnonProperties].Signature != nil) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataInnerAnon.Properties[iPlayToClientPacketPlayerInfoDataInnerAnonProperties].Signature != nil { + err = proto_base.EncodeString(w, *PlayToClientPacketPlayerInfoDataInnerAnon.Properties[iPlayToClientPacketPlayerInfoDataInnerAnonProperties].Signature) + if err != nil { + return + } + } + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketPlayerInfoDataInnerAnon.Gamemode) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketPlayerInfoDataInnerAnon.Ping) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName != nil) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName != nil { + err = proto_base.EncodeString(w, *PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName) + if err != nil { + return + } + } + case "remove_player": + _, ok := ret.Data[iPlayToClientPacketPlayerInfoData].Anon.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + case "update_display_name": + PlayToClientPacketPlayerInfoDataInnerAnon, ok := ret.Data[iPlayToClientPacketPlayerInfoData].Anon.(struct { + DisplayName *string + }) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName != nil) + if err != nil { + return + } + if PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName != nil { + err = proto_base.EncodeString(w, *PlayToClientPacketPlayerInfoDataInnerAnon.DisplayName) + if err != nil { + return + } + } + case "update_game_mode": + PlayToClientPacketPlayerInfoDataInnerAnon, ok := ret.Data[iPlayToClientPacketPlayerInfoData].Anon.(struct { + Gamemode int32 + }) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketPlayerInfoDataInnerAnon.Gamemode) + if err != nil { + return + } + case "update_latency": + PlayToClientPacketPlayerInfoDataInnerAnon, ok := ret.Data[iPlayToClientPacketPlayerInfoData].Anon.(struct { + Ping int32 + }) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketPlayerInfoDataInnerAnon.Ping) + if err != nil { + return + } + } + } + return +} + +type PlayToClientPacketPlayerlistHeader struct { + Header string + Footer string +} + +func (ret *PlayToClientPacketPlayerlistHeader) Decode(r io.ReadSeeker) (err error) { + ret.Header, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Footer, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketPlayerlistHeader) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Header) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Footer) + if err != nil { + return + } + return +} + +type PlayToClientPacketPosition struct { + X float64 + Y float64 + Z float64 + Yaw float32 + Pitch float32 + Flags int8 +} + +func (ret *PlayToClientPacketPosition) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Flags) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketPosition) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Flags) + if err != nil { + return + } + return +} + +type PlayToClientPacketRelEntityMove struct { + EntityId int32 + DX int8 + DY int8 + DZ int8 + OnGround bool +} + +func (ret *PlayToClientPacketRelEntityMove) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DX) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DY) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.DZ) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketRelEntityMove) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DX) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DY) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.DZ) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToClientPacketRemoveEntityEffect struct { + EntityId int32 + EffectId int8 +} + +func (ret *PlayToClientPacketRemoveEntityEffect) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.EffectId) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketRemoveEntityEffect) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.EffectId) + if err != nil { + return + } + return +} + +type PlayToClientPacketResourcePackSend struct { + Url string + Hash string +} + +func (ret *PlayToClientPacketResourcePackSend) Decode(r io.ReadSeeker) (err error) { + ret.Url, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Hash, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketResourcePackSend) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Url) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Hash) + if err != nil { + return + } + return +} + +type PlayToClientPacketRespawn struct { + Dimension int32 + Difficulty uint8 + Gamemode uint8 + LevelType string +} + +func (ret *PlayToClientPacketRespawn) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Dimension) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Difficulty) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Gamemode) + if err != nil { + return + } + ret.LevelType, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketRespawn) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Dimension) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Difficulty) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Gamemode) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.LevelType) + if err != nil { + return + } + return +} + +type PlayToClientPacketScoreboardDisplayObjective struct { + Position int8 + Name string +} + +func (ret *PlayToClientPacketScoreboardDisplayObjective) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Position) + if err != nil { + return + } + ret.Name, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketScoreboardDisplayObjective) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Position) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Name) + if err != nil { + return + } + return +} + +type PlayToClientPacketScoreboardObjective struct { + Name string + Action int8 + DisplayText any + Type any +} + +func (ret *PlayToClientPacketScoreboardObjective) Decode(r io.ReadSeeker) (err error) { + ret.Name, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Action) + if err != nil { + return + } + switch ret.Action { + case 0: + var PlayToClientPacketScoreboardObjectiveDisplayText0Tmp string + PlayToClientPacketScoreboardObjectiveDisplayText0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.DisplayText = PlayToClientPacketScoreboardObjectiveDisplayText0Tmp + case 2: + var PlayToClientPacketScoreboardObjectiveDisplayText2Tmp string + PlayToClientPacketScoreboardObjectiveDisplayText2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.DisplayText = PlayToClientPacketScoreboardObjectiveDisplayText2Tmp + default: + var PlayToClientPacketScoreboardObjectiveDisplayTextTmp struct { + } + ret.DisplayText = PlayToClientPacketScoreboardObjectiveDisplayTextTmp + } + switch ret.Action { + case 0: + var PlayToClientPacketScoreboardObjectiveType0Tmp string + PlayToClientPacketScoreboardObjectiveType0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Type = PlayToClientPacketScoreboardObjectiveType0Tmp + case 2: + var PlayToClientPacketScoreboardObjectiveType2Tmp string + PlayToClientPacketScoreboardObjectiveType2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Type = PlayToClientPacketScoreboardObjectiveType2Tmp + default: + var PlayToClientPacketScoreboardObjectiveTypeTmp struct { + } + ret.Type = PlayToClientPacketScoreboardObjectiveTypeTmp + } + return +} +func (ret *PlayToClientPacketScoreboardObjective) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Name) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Action) + if err != nil { + return + } + switch ret.Action { + case 0: + PlayToClientPacketScoreboardObjectiveDisplayText, ok := ret.DisplayText.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardObjectiveDisplayText) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardObjectiveDisplayText, ok := ret.DisplayText.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardObjectiveDisplayText) + if err != nil { + return + } + default: + _, ok := ret.DisplayText.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 0: + PlayToClientPacketScoreboardObjectiveType, ok := ret.Type.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardObjectiveType) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardObjectiveType, ok := ret.Type.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardObjectiveType) + if err != nil { + return + } + default: + _, ok := ret.Type.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketScoreboardScore struct { + ItemName string + Action int32 + ScoreName string + Value any +} + +func (ret *PlayToClientPacketScoreboardScore) Decode(r io.ReadSeeker) (err error) { + ret.ItemName, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Action, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.ScoreName, err = proto_base.DecodeString(r) + if err != nil { + return + } + switch ret.Action { + case 1: + var PlayToClientPacketScoreboardScoreValue1Tmp struct { + } + ret.Value = PlayToClientPacketScoreboardScoreValue1Tmp + default: + var PlayToClientPacketScoreboardScoreValueTmp int32 + PlayToClientPacketScoreboardScoreValueTmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Value = PlayToClientPacketScoreboardScoreValueTmp + } + return +} +func (ret *PlayToClientPacketScoreboardScore) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.ItemName) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Action) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.ScoreName) + if err != nil { + return + } + switch ret.Action { + case 1: + _, ok := ret.Value.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Value.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, ret.Value.(int32)) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketScoreboardTeam struct { + Team string + Mode int8 + Name any + Prefix any + Suffix any + FriendlyFire any + NameTagVisibility any + Color any + Players any +} + +func (ret *PlayToClientPacketScoreboardTeam) Decode(r io.ReadSeeker) (err error) { + ret.Team, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Mode) + if err != nil { + return + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamName0Tmp string + PlayToClientPacketScoreboardTeamName0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Name = PlayToClientPacketScoreboardTeamName0Tmp + case 2: + var PlayToClientPacketScoreboardTeamName2Tmp string + PlayToClientPacketScoreboardTeamName2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Name = PlayToClientPacketScoreboardTeamName2Tmp + default: + var PlayToClientPacketScoreboardTeamNameTmp struct { + } + ret.Name = PlayToClientPacketScoreboardTeamNameTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamPrefix0Tmp string + PlayToClientPacketScoreboardTeamPrefix0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Prefix = PlayToClientPacketScoreboardTeamPrefix0Tmp + case 2: + var PlayToClientPacketScoreboardTeamPrefix2Tmp string + PlayToClientPacketScoreboardTeamPrefix2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Prefix = PlayToClientPacketScoreboardTeamPrefix2Tmp + default: + var PlayToClientPacketScoreboardTeamPrefixTmp struct { + } + ret.Prefix = PlayToClientPacketScoreboardTeamPrefixTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamSuffix0Tmp string + PlayToClientPacketScoreboardTeamSuffix0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Suffix = PlayToClientPacketScoreboardTeamSuffix0Tmp + case 2: + var PlayToClientPacketScoreboardTeamSuffix2Tmp string + PlayToClientPacketScoreboardTeamSuffix2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Suffix = PlayToClientPacketScoreboardTeamSuffix2Tmp + default: + var PlayToClientPacketScoreboardTeamSuffixTmp struct { + } + ret.Suffix = PlayToClientPacketScoreboardTeamSuffixTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamFriendlyFire0Tmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketScoreboardTeamFriendlyFire0Tmp) + if err != nil { + return + } + ret.FriendlyFire = PlayToClientPacketScoreboardTeamFriendlyFire0Tmp + case 2: + var PlayToClientPacketScoreboardTeamFriendlyFire2Tmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketScoreboardTeamFriendlyFire2Tmp) + if err != nil { + return + } + ret.FriendlyFire = PlayToClientPacketScoreboardTeamFriendlyFire2Tmp + default: + var PlayToClientPacketScoreboardTeamFriendlyFireTmp struct { + } + ret.FriendlyFire = PlayToClientPacketScoreboardTeamFriendlyFireTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamNameTagVisibility0Tmp string + PlayToClientPacketScoreboardTeamNameTagVisibility0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.NameTagVisibility = PlayToClientPacketScoreboardTeamNameTagVisibility0Tmp + case 2: + var PlayToClientPacketScoreboardTeamNameTagVisibility2Tmp string + PlayToClientPacketScoreboardTeamNameTagVisibility2Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.NameTagVisibility = PlayToClientPacketScoreboardTeamNameTagVisibility2Tmp + default: + var PlayToClientPacketScoreboardTeamNameTagVisibilityTmp struct { + } + ret.NameTagVisibility = PlayToClientPacketScoreboardTeamNameTagVisibilityTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamColor0Tmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketScoreboardTeamColor0Tmp) + if err != nil { + return + } + ret.Color = PlayToClientPacketScoreboardTeamColor0Tmp + case 2: + var PlayToClientPacketScoreboardTeamColor2Tmp int8 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketScoreboardTeamColor2Tmp) + if err != nil { + return + } + ret.Color = PlayToClientPacketScoreboardTeamColor2Tmp + default: + var PlayToClientPacketScoreboardTeamColorTmp struct { + } + ret.Color = PlayToClientPacketScoreboardTeamColorTmp + } + switch ret.Mode { + case 0: + var PlayToClientPacketScoreboardTeamPlayers0Tmp []string + var lPlayToClientPacketScoreboardTeamPlayers0Tmp int32 + lPlayToClientPacketScoreboardTeamPlayers0Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers0Tmp = []string{} + for range lPlayToClientPacketScoreboardTeamPlayers0Tmp { + var PlayToClientPacketScoreboardTeamPlayers0TmpElement string + PlayToClientPacketScoreboardTeamPlayers0TmpElement, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers0Tmp = append(PlayToClientPacketScoreboardTeamPlayers0Tmp, PlayToClientPacketScoreboardTeamPlayers0TmpElement) + } + ret.Players = PlayToClientPacketScoreboardTeamPlayers0Tmp + case 3: + var PlayToClientPacketScoreboardTeamPlayers3Tmp []string + var lPlayToClientPacketScoreboardTeamPlayers3Tmp int32 + lPlayToClientPacketScoreboardTeamPlayers3Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers3Tmp = []string{} + for range lPlayToClientPacketScoreboardTeamPlayers3Tmp { + var PlayToClientPacketScoreboardTeamPlayers3TmpElement string + PlayToClientPacketScoreboardTeamPlayers3TmpElement, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers3Tmp = append(PlayToClientPacketScoreboardTeamPlayers3Tmp, PlayToClientPacketScoreboardTeamPlayers3TmpElement) + } + ret.Players = PlayToClientPacketScoreboardTeamPlayers3Tmp + case 4: + var PlayToClientPacketScoreboardTeamPlayers4Tmp []string + var lPlayToClientPacketScoreboardTeamPlayers4Tmp int32 + lPlayToClientPacketScoreboardTeamPlayers4Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers4Tmp = []string{} + for range lPlayToClientPacketScoreboardTeamPlayers4Tmp { + var PlayToClientPacketScoreboardTeamPlayers4TmpElement string + PlayToClientPacketScoreboardTeamPlayers4TmpElement, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketScoreboardTeamPlayers4Tmp = append(PlayToClientPacketScoreboardTeamPlayers4Tmp, PlayToClientPacketScoreboardTeamPlayers4TmpElement) + } + ret.Players = PlayToClientPacketScoreboardTeamPlayers4Tmp + default: + var PlayToClientPacketScoreboardTeamPlayersTmp struct { + } + ret.Players = PlayToClientPacketScoreboardTeamPlayersTmp + } + return +} +func (ret *PlayToClientPacketScoreboardTeam) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Team) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Mode) + if err != nil { + return + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamName, ok := ret.Name.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamName) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamName, ok := ret.Name.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamName) + if err != nil { + return + } + default: + _, ok := ret.Name.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamPrefix, ok := ret.Prefix.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamPrefix) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamPrefix, ok := ret.Prefix.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamPrefix) + if err != nil { + return + } + default: + _, ok := ret.Prefix.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamSuffix, ok := ret.Suffix.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamSuffix) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamSuffix, ok := ret.Suffix.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamSuffix) + if err != nil { + return + } + default: + _, ok := ret.Suffix.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamFriendlyFire, ok := ret.FriendlyFire.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketScoreboardTeamFriendlyFire) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamFriendlyFire, ok := ret.FriendlyFire.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketScoreboardTeamFriendlyFire) + if err != nil { + return + } + default: + _, ok := ret.FriendlyFire.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamNameTagVisibility, ok := ret.NameTagVisibility.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamNameTagVisibility) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamNameTagVisibility, ok := ret.NameTagVisibility.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamNameTagVisibility) + if err != nil { + return + } + default: + _, ok := ret.NameTagVisibility.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamColor, ok := ret.Color.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketScoreboardTeamColor) + if err != nil { + return + } + case 2: + PlayToClientPacketScoreboardTeamColor, ok := ret.Color.(int8) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketScoreboardTeamColor) + if err != nil { + return + } + default: + _, ok := ret.Color.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mode { + case 0: + PlayToClientPacketScoreboardTeamPlayers, ok := ret.Players.([]string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, int32(len(PlayToClientPacketScoreboardTeamPlayers))) + if err != nil { + return + } + for iPlayToClientPacketScoreboardTeamPlayers := range len(PlayToClientPacketScoreboardTeamPlayers) { + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamPlayers[iPlayToClientPacketScoreboardTeamPlayers]) + if err != nil { + return + } + } + case 3: + PlayToClientPacketScoreboardTeamPlayers, ok := ret.Players.([]string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, int32(len(PlayToClientPacketScoreboardTeamPlayers))) + if err != nil { + return + } + for iPlayToClientPacketScoreboardTeamPlayers := range len(PlayToClientPacketScoreboardTeamPlayers) { + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamPlayers[iPlayToClientPacketScoreboardTeamPlayers]) + if err != nil { + return + } + } + case 4: + PlayToClientPacketScoreboardTeamPlayers, ok := ret.Players.([]string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, int32(len(PlayToClientPacketScoreboardTeamPlayers))) + if err != nil { + return + } + for iPlayToClientPacketScoreboardTeamPlayers := range len(PlayToClientPacketScoreboardTeamPlayers) { + err = proto_base.EncodeString(w, PlayToClientPacketScoreboardTeamPlayers[iPlayToClientPacketScoreboardTeamPlayers]) + if err != nil { + return + } + } + default: + _, ok := ret.Players.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketSetCompression struct { + Threshold int32 +} + +func (ret *PlayToClientPacketSetCompression) Decode(r io.ReadSeeker) (err error) { + ret.Threshold, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSetCompression) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Threshold) + if err != nil { + return + } + return +} + +type PlayToClientPacketSetSlot struct { + WindowId int8 + Slot int16 + Item Slot +} + +func (ret *PlayToClientPacketSetSlot) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Slot) + if err != nil { + return + } + err = ret.Item.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSetSlot) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Slot) + if err != nil { + return + } + err = ret.Item.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketSpawnEntity struct { + EntityId int32 + Type int8 + X int32 + Y int32 + Z int32 + Pitch int8 + Yaw int8 + ObjectData int32 + Velocity any +} + +func (ret *PlayToClientPacketSpawnEntity) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Type) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ObjectData) + if err != nil { + return + } + switch ret.ObjectData { + case 0: + var PlayToClientPacketSpawnEntityVelocity0Tmp struct { + } + ret.Velocity = PlayToClientPacketSpawnEntityVelocity0Tmp + default: + var PlayToClientPacketSpawnEntityVelocityTmp Vec3i16 + err = PlayToClientPacketSpawnEntityVelocityTmp.Decode(r) + if err != nil { + return + } + ret.Velocity = PlayToClientPacketSpawnEntityVelocityTmp + } + return +} +func (ret *PlayToClientPacketSpawnEntity) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Type) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ObjectData) + if err != nil { + return + } + switch ret.ObjectData { + case 0: + _, ok := ret.Velocity.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + default: + _, ok := ret.Velocity.(Vec3i16) + if !ok { + err = proto_base.BadTypeError + return + } + v := ret.Velocity.(Vec3i16) + err = v.Encode(w) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketSpawnEntityExperienceOrb struct { + EntityId int32 + X int32 + Y int32 + Z int32 + Count int16 +} + +func (ret *PlayToClientPacketSpawnEntityExperienceOrb) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Count) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSpawnEntityExperienceOrb) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Count) + if err != nil { + return + } + return +} + +type PlayToClientPacketSpawnEntityLiving struct { + EntityId int32 + Type uint8 + X int32 + Y int32 + Z int32 + Yaw int8 + Pitch int8 + HeadPitch int8 + Velocity Vec3i16 + Metadata EntityMetadata +} + +func (ret *PlayToClientPacketSpawnEntityLiving) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Type) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.HeadPitch) + if err != nil { + return + } + err = ret.Velocity.Decode(r) + if err != nil { + return + } + err = ret.Metadata.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSpawnEntityLiving) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Type) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.HeadPitch) + if err != nil { + return + } + err = ret.Velocity.Encode(w) + if err != nil { + return + } + err = ret.Metadata.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketSpawnEntityPainting struct { + EntityId int32 + Title string + Location Position + Direction uint8 +} + +func (ret *PlayToClientPacketSpawnEntityPainting) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Title, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Direction) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSpawnEntityPainting) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Title) + if err != nil { + return + } + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Direction) + if err != nil { + return + } + return +} + +type PlayToClientPacketSpawnEntityWeather struct { + EntityId int32 + Type int8 + X int32 + Y int32 + Z int32 +} + +func (ret *PlayToClientPacketSpawnEntityWeather) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Type) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSpawnEntityWeather) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Type) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + return +} + +type PlayToClientPacketSpawnPosition struct { + Location Position +} + +func (ret *PlayToClientPacketSpawnPosition) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketSpawnPosition) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketStatistics struct { + Entries []struct { + Name string + Value int32 + } +} + +func (ret *PlayToClientPacketStatistics) Decode(r io.ReadSeeker) (err error) { + var lPlayToClientPacketStatisticsEntries int32 + lPlayToClientPacketStatisticsEntries, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Entries = []struct { + Name string + Value int32 + }{} + for range lPlayToClientPacketStatisticsEntries { + var PlayToClientPacketStatisticsEntriesElement struct { + Name string + Value int32 + } + PlayToClientPacketStatisticsEntriesElement.Name, err = proto_base.DecodeString(r) + if err != nil { + return + } + PlayToClientPacketStatisticsEntriesElement.Value, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Entries = append(ret.Entries, PlayToClientPacketStatisticsEntriesElement) + } + return +} +func (ret *PlayToClientPacketStatistics) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, int32(len(ret.Entries))) + if err != nil { + return + } + for iPlayToClientPacketStatisticsEntries := range len(ret.Entries) { + err = proto_base.EncodeString(w, ret.Entries[iPlayToClientPacketStatisticsEntries].Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Entries[iPlayToClientPacketStatisticsEntries].Value) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketTabComplete struct { + Matches []string +} + +func (ret *PlayToClientPacketTabComplete) Decode(r io.ReadSeeker) (err error) { + var lPlayToClientPacketTabCompleteMatches int32 + lPlayToClientPacketTabCompleteMatches, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Matches = []string{} + for range lPlayToClientPacketTabCompleteMatches { + var PlayToClientPacketTabCompleteMatchesElement string + PlayToClientPacketTabCompleteMatchesElement, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Matches = append(ret.Matches, PlayToClientPacketTabCompleteMatchesElement) + } + return +} +func (ret *PlayToClientPacketTabComplete) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, int32(len(ret.Matches))) + if err != nil { + return + } + for iPlayToClientPacketTabCompleteMatches := range len(ret.Matches) { + err = proto_base.EncodeString(w, ret.Matches[iPlayToClientPacketTabCompleteMatches]) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketTileEntityData struct { + Location Position + Action uint8 + NbtData nbt.Anon +} + +func (ret *PlayToClientPacketTileEntityData) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Action) + if err != nil { + return + } + err = ret.NbtData.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketTileEntityData) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Action) + if err != nil { + return + } + err = ret.NbtData.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketTitle struct { + Action int32 + Text any + FadeIn any + Stay any + FadeOut any +} + +func (ret *PlayToClientPacketTitle) Decode(r io.ReadSeeker) (err error) { + ret.Action, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + switch ret.Action { + case 0: + var PlayToClientPacketTitleText0Tmp string + PlayToClientPacketTitleText0Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text = PlayToClientPacketTitleText0Tmp + case 1: + var PlayToClientPacketTitleText1Tmp string + PlayToClientPacketTitleText1Tmp, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text = PlayToClientPacketTitleText1Tmp + default: + var PlayToClientPacketTitleTextTmp struct { + } + ret.Text = PlayToClientPacketTitleTextTmp + } + switch ret.Action { + case 2: + var PlayToClientPacketTitleFadeIn2Tmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketTitleFadeIn2Tmp) + if err != nil { + return + } + ret.FadeIn = PlayToClientPacketTitleFadeIn2Tmp + default: + var PlayToClientPacketTitleFadeInTmp struct { + } + ret.FadeIn = PlayToClientPacketTitleFadeInTmp + } + switch ret.Action { + case 2: + var PlayToClientPacketTitleStay2Tmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketTitleStay2Tmp) + if err != nil { + return + } + ret.Stay = PlayToClientPacketTitleStay2Tmp + default: + var PlayToClientPacketTitleStayTmp struct { + } + ret.Stay = PlayToClientPacketTitleStayTmp + } + switch ret.Action { + case 2: + var PlayToClientPacketTitleFadeOut2Tmp int32 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketTitleFadeOut2Tmp) + if err != nil { + return + } + ret.FadeOut = PlayToClientPacketTitleFadeOut2Tmp + default: + var PlayToClientPacketTitleFadeOutTmp struct { + } + ret.FadeOut = PlayToClientPacketTitleFadeOutTmp + } + return +} +func (ret *PlayToClientPacketTitle) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Action) + if err != nil { + return + } + switch ret.Action { + case 0: + PlayToClientPacketTitleText, ok := ret.Text.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketTitleText) + if err != nil { + return + } + case 1: + PlayToClientPacketTitleText, ok := ret.Text.(string) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeString(w, PlayToClientPacketTitleText) + if err != nil { + return + } + default: + _, ok := ret.Text.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 2: + PlayToClientPacketTitleFadeIn, ok := ret.FadeIn.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketTitleFadeIn) + if err != nil { + return + } + default: + _, ok := ret.FadeIn.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 2: + PlayToClientPacketTitleStay, ok := ret.Stay.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketTitleStay) + if err != nil { + return + } + default: + _, ok := ret.Stay.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 2: + PlayToClientPacketTitleFadeOut, ok := ret.FadeOut.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketTitleFadeOut) + if err != nil { + return + } + default: + _, ok := ret.FadeOut.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketTransaction struct { + WindowId int8 + Action int16 + Accepted bool +} + +func (ret *PlayToClientPacketTransaction) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Action) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Accepted) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketTransaction) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Action) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Accepted) + if err != nil { + return + } + return +} + +type PlayToClientPacketUpdateAttributes struct { + EntityId int32 + Properties []struct { + Key string + Value float64 + Modifiers []struct { + Uuid uuid.UUID + Amount float64 + Operation int8 + } + } +} + +func (ret *PlayToClientPacketUpdateAttributes) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + var lPlayToClientPacketUpdateAttributesProperties int32 + err = binary.Read(r, binary.BigEndian, &lPlayToClientPacketUpdateAttributesProperties) + if err != nil { + return + } + ret.Properties = []struct { + Key string + Value float64 + Modifiers []struct { + Uuid uuid.UUID + Amount float64 + Operation int8 + } + }{} + for range lPlayToClientPacketUpdateAttributesProperties { + var PlayToClientPacketUpdateAttributesPropertiesElement struct { + Key string + Value float64 + Modifiers []struct { + Uuid uuid.UUID + Amount float64 + Operation int8 + } + } + PlayToClientPacketUpdateAttributesPropertiesElement.Key, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketUpdateAttributesPropertiesElement.Value) + if err != nil { + return + } + var lPlayToClientPacketUpdateAttributesPropertiesElementModifiers int32 + lPlayToClientPacketUpdateAttributesPropertiesElementModifiers, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + PlayToClientPacketUpdateAttributesPropertiesElement.Modifiers = []struct { + Uuid uuid.UUID + Amount float64 + Operation int8 + }{} + for range lPlayToClientPacketUpdateAttributesPropertiesElementModifiers { + var PlayToClientPacketUpdateAttributesPropertiesElementModifiersElement struct { + Uuid uuid.UUID + Amount float64 + Operation int8 + } + _, err = io.ReadFull(r, PlayToClientPacketUpdateAttributesPropertiesElementModifiersElement.Uuid[:]) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketUpdateAttributesPropertiesElementModifiersElement.Amount) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketUpdateAttributesPropertiesElementModifiersElement.Operation) + if err != nil { + return + } + PlayToClientPacketUpdateAttributesPropertiesElement.Modifiers = append(PlayToClientPacketUpdateAttributesPropertiesElement.Modifiers, PlayToClientPacketUpdateAttributesPropertiesElementModifiersElement) + } + ret.Properties = append(ret.Properties, PlayToClientPacketUpdateAttributesPropertiesElement) + } + return +} +func (ret *PlayToClientPacketUpdateAttributes) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, int32(len(ret.Properties))) + if err != nil { + return + } + for iPlayToClientPacketUpdateAttributesProperties := range len(ret.Properties) { + err = proto_base.EncodeString(w, ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Key) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Value) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, int32(len(ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Modifiers))) + if err != nil { + return + } + for iPlayToClientPacketUpdateAttributesPropertiesInnerModifiers := range len(ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Modifiers) { + _, err = w.Write(ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Modifiers[iPlayToClientPacketUpdateAttributesPropertiesInnerModifiers].Uuid[:]) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Modifiers[iPlayToClientPacketUpdateAttributesPropertiesInnerModifiers].Amount) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Properties[iPlayToClientPacketUpdateAttributesProperties].Modifiers[iPlayToClientPacketUpdateAttributesPropertiesInnerModifiers].Operation) + if err != nil { + return + } + } + } + return +} + +type PlayToClientPacketUpdateEntityNbt struct { + EntityId int32 + Tag nbt.Anon +} + +func (ret *PlayToClientPacketUpdateEntityNbt) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Tag.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketUpdateEntityNbt) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = ret.Tag.Encode(w) + if err != nil { + return + } + return +} + +type PlayToClientPacketUpdateHealth struct { + Health float32 + Food int32 + FoodSaturation float32 +} + +func (ret *PlayToClientPacketUpdateHealth) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Health) + if err != nil { + return + } + ret.Food, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.FoodSaturation) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketUpdateHealth) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Health) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Food) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.FoodSaturation) + if err != nil { + return + } + return +} + +type PlayToClientPacketUpdateSign struct { + Location Position + Text1 string + Text2 string + Text3 string + Text4 string +} + +func (ret *PlayToClientPacketUpdateSign) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + ret.Text1, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text2, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text3, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text4, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketUpdateSign) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text1) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text2) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text3) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text4) + if err != nil { + return + } + return +} + +type PlayToClientPacketUpdateTime struct { + Age int64 + Time int64 +} + +func (ret *PlayToClientPacketUpdateTime) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Age) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Time) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketUpdateTime) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Age) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Time) + if err != nil { + return + } + return +} + +type PlayToClientPacketWindowItems struct { + WindowId uint8 + Items []Slot +} + +func (ret *PlayToClientPacketWindowItems) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + var lPlayToClientPacketWindowItemsItems int16 + err = binary.Read(r, binary.BigEndian, &lPlayToClientPacketWindowItemsItems) + if err != nil { + return + } + ret.Items = []Slot{} + for range lPlayToClientPacketWindowItemsItems { + var PlayToClientPacketWindowItemsItemsElement Slot + err = PlayToClientPacketWindowItemsItemsElement.Decode(r) + if err != nil { + return + } + ret.Items = append(ret.Items, PlayToClientPacketWindowItemsItemsElement) + } + return +} +func (ret *PlayToClientPacketWindowItems) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, int16(len(ret.Items))) + if err != nil { + return + } + for iPlayToClientPacketWindowItemsItems := range len(ret.Items) { + err = ret.Items[iPlayToClientPacketWindowItemsItems].Encode(w) + if err != nil { + return + } + } + return +} + +type PlayToClientPacketWorldBorder struct { + Action int32 + Radius any + X any + Z any + OldRadius any + NewRadius any + Speed any + PortalBoundary any + WarningTime any + WarningBlocks any +} + +func (ret *PlayToClientPacketWorldBorder) Decode(r io.ReadSeeker) (err error) { + ret.Action, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + switch ret.Action { + case 0: + var PlayToClientPacketWorldBorderRadius0Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderRadius0Tmp) + if err != nil { + return + } + ret.Radius = PlayToClientPacketWorldBorderRadius0Tmp + default: + var PlayToClientPacketWorldBorderRadiusTmp struct { + } + ret.Radius = PlayToClientPacketWorldBorderRadiusTmp + } + switch ret.Action { + case 2: + var PlayToClientPacketWorldBorderX2Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderX2Tmp) + if err != nil { + return + } + ret.X = PlayToClientPacketWorldBorderX2Tmp + case 3: + var PlayToClientPacketWorldBorderX3Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderX3Tmp) + if err != nil { + return + } + ret.X = PlayToClientPacketWorldBorderX3Tmp + default: + var PlayToClientPacketWorldBorderXTmp struct { + } + ret.X = PlayToClientPacketWorldBorderXTmp + } + switch ret.Action { + case 2: + var PlayToClientPacketWorldBorderZ2Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderZ2Tmp) + if err != nil { + return + } + ret.Z = PlayToClientPacketWorldBorderZ2Tmp + case 3: + var PlayToClientPacketWorldBorderZ3Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderZ3Tmp) + if err != nil { + return + } + ret.Z = PlayToClientPacketWorldBorderZ3Tmp + default: + var PlayToClientPacketWorldBorderZTmp struct { + } + ret.Z = PlayToClientPacketWorldBorderZTmp + } + switch ret.Action { + case 1: + var PlayToClientPacketWorldBorderOldRadius1Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderOldRadius1Tmp) + if err != nil { + return + } + ret.OldRadius = PlayToClientPacketWorldBorderOldRadius1Tmp + case 3: + var PlayToClientPacketWorldBorderOldRadius3Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderOldRadius3Tmp) + if err != nil { + return + } + ret.OldRadius = PlayToClientPacketWorldBorderOldRadius3Tmp + default: + var PlayToClientPacketWorldBorderOldRadiusTmp struct { + } + ret.OldRadius = PlayToClientPacketWorldBorderOldRadiusTmp + } + switch ret.Action { + case 1: + var PlayToClientPacketWorldBorderNewRadius1Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderNewRadius1Tmp) + if err != nil { + return + } + ret.NewRadius = PlayToClientPacketWorldBorderNewRadius1Tmp + case 3: + var PlayToClientPacketWorldBorderNewRadius3Tmp float64 + err = binary.Read(r, binary.BigEndian, &PlayToClientPacketWorldBorderNewRadius3Tmp) + if err != nil { + return + } + ret.NewRadius = PlayToClientPacketWorldBorderNewRadius3Tmp + default: + var PlayToClientPacketWorldBorderNewRadiusTmp struct { + } + ret.NewRadius = PlayToClientPacketWorldBorderNewRadiusTmp + } + switch ret.Action { + case 1: + var PlayToClientPacketWorldBorderSpeed1Tmp int64 + PlayToClientPacketWorldBorderSpeed1Tmp, err = proto_base.DecodeVarLong(r) + if err != nil { + return + } + ret.Speed = PlayToClientPacketWorldBorderSpeed1Tmp + case 3: + var PlayToClientPacketWorldBorderSpeed3Tmp int64 + PlayToClientPacketWorldBorderSpeed3Tmp, err = proto_base.DecodeVarLong(r) + if err != nil { + return + } + ret.Speed = PlayToClientPacketWorldBorderSpeed3Tmp + default: + var PlayToClientPacketWorldBorderSpeedTmp struct { + } + ret.Speed = PlayToClientPacketWorldBorderSpeedTmp + } + switch ret.Action { + case 3: + var PlayToClientPacketWorldBorderPortalBoundary3Tmp int32 + PlayToClientPacketWorldBorderPortalBoundary3Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.PortalBoundary = PlayToClientPacketWorldBorderPortalBoundary3Tmp + default: + var PlayToClientPacketWorldBorderPortalBoundaryTmp struct { + } + ret.PortalBoundary = PlayToClientPacketWorldBorderPortalBoundaryTmp + } + switch ret.Action { + case 3: + var PlayToClientPacketWorldBorderWarningTime3Tmp int32 + PlayToClientPacketWorldBorderWarningTime3Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.WarningTime = PlayToClientPacketWorldBorderWarningTime3Tmp + case 4: + var PlayToClientPacketWorldBorderWarningTime4Tmp int32 + PlayToClientPacketWorldBorderWarningTime4Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.WarningTime = PlayToClientPacketWorldBorderWarningTime4Tmp + default: + var PlayToClientPacketWorldBorderWarningTimeTmp struct { + } + ret.WarningTime = PlayToClientPacketWorldBorderWarningTimeTmp + } + switch ret.Action { + case 3: + var PlayToClientPacketWorldBorderWarningBlocks3Tmp int32 + PlayToClientPacketWorldBorderWarningBlocks3Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.WarningBlocks = PlayToClientPacketWorldBorderWarningBlocks3Tmp + case 5: + var PlayToClientPacketWorldBorderWarningBlocks5Tmp int32 + PlayToClientPacketWorldBorderWarningBlocks5Tmp, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.WarningBlocks = PlayToClientPacketWorldBorderWarningBlocks5Tmp + default: + var PlayToClientPacketWorldBorderWarningBlocksTmp struct { + } + ret.WarningBlocks = PlayToClientPacketWorldBorderWarningBlocksTmp + } + return +} +func (ret *PlayToClientPacketWorldBorder) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Action) + if err != nil { + return + } + switch ret.Action { + case 0: + PlayToClientPacketWorldBorderRadius, ok := ret.Radius.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderRadius) + if err != nil { + return + } + default: + _, ok := ret.Radius.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 2: + PlayToClientPacketWorldBorderX, ok := ret.X.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderX) + if err != nil { + return + } + case 3: + PlayToClientPacketWorldBorderX, ok := ret.X.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderX) + if err != nil { + return + } + default: + _, ok := ret.X.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 2: + PlayToClientPacketWorldBorderZ, ok := ret.Z.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderZ) + if err != nil { + return + } + case 3: + PlayToClientPacketWorldBorderZ, ok := ret.Z.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderZ) + if err != nil { + return + } + default: + _, ok := ret.Z.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 1: + PlayToClientPacketWorldBorderOldRadius, ok := ret.OldRadius.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderOldRadius) + if err != nil { + return + } + case 3: + PlayToClientPacketWorldBorderOldRadius, ok := ret.OldRadius.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderOldRadius) + if err != nil { + return + } + default: + _, ok := ret.OldRadius.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 1: + PlayToClientPacketWorldBorderNewRadius, ok := ret.NewRadius.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderNewRadius) + if err != nil { + return + } + case 3: + PlayToClientPacketWorldBorderNewRadius, ok := ret.NewRadius.(float64) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToClientPacketWorldBorderNewRadius) + if err != nil { + return + } + default: + _, ok := ret.NewRadius.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 1: + PlayToClientPacketWorldBorderSpeed, ok := ret.Speed.(int64) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarLong(w, PlayToClientPacketWorldBorderSpeed) + if err != nil { + return + } + case 3: + PlayToClientPacketWorldBorderSpeed, ok := ret.Speed.(int64) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarLong(w, PlayToClientPacketWorldBorderSpeed) + if err != nil { + return + } + default: + _, ok := ret.Speed.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 3: + PlayToClientPacketWorldBorderPortalBoundary, ok := ret.PortalBoundary.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketWorldBorderPortalBoundary) + if err != nil { + return + } + default: + _, ok := ret.PortalBoundary.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 3: + PlayToClientPacketWorldBorderWarningTime, ok := ret.WarningTime.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketWorldBorderWarningTime) + if err != nil { + return + } + case 4: + PlayToClientPacketWorldBorderWarningTime, ok := ret.WarningTime.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketWorldBorderWarningTime) + if err != nil { + return + } + default: + _, ok := ret.WarningTime.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Action { + case 3: + PlayToClientPacketWorldBorderWarningBlocks, ok := ret.WarningBlocks.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketWorldBorderWarningBlocks) + if err != nil { + return + } + case 5: + PlayToClientPacketWorldBorderWarningBlocks, ok := ret.WarningBlocks.(int32) + if !ok { + err = proto_base.BadTypeError + return + } + err = proto_base.EncodeVarInt(w, PlayToClientPacketWorldBorderWarningBlocks) + if err != nil { + return + } + default: + _, ok := ret.WarningBlocks.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToClientPacketWorldEvent struct { + EffectId int32 + Location Position + Data int32 + Global bool +} + +func (ret *PlayToClientPacketWorldEvent) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.EffectId) + if err != nil { + return + } + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Data) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Global) + if err != nil { + return + } + return +} +func (ret *PlayToClientPacketWorldEvent) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.EffectId) + if err != nil { + return + } + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Data) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Global) + if err != nil { + return + } + return +} + +type PlayToClientPacketWorldParticles struct { + ParticleId int32 + LongDistance bool + X float32 + Y float32 + Z float32 + OffsetX float32 + OffsetY float32 + OffsetZ float32 + ParticleData float32 + Particles int32 + Data any +} + +func (ret *PlayToClientPacketWorldParticles) Decode(r io.ReadSeeker) (err error) { + err = proto_base.ToDoError + return +} +func (ret *PlayToClientPacketWorldParticles) Encode(w io.Writer) (err error) { + err = proto_base.ToDoError + return +} + +type PlayToServerPacket struct { + Name string + Params any +} + +var PlayToServerPacketNameMap = map[int32]string{0x00: "keep_alive", 0x01: "chat", 0x02: "use_entity", 0x03: "flying", 0x04: "position", 0x05: "look", 0x06: "position_look", 0x07: "block_dig", 0x08: "block_place", 0x09: "held_item_slot", 0x0a: "arm_animation", 0x0b: "entity_action", 0x0c: "steer_vehicle", 0x0d: "close_window", 0x0e: "window_click", 0x0f: "transaction", 0x10: "set_creative_slot", 0x11: "enchant_item", 0x12: "update_sign", 0x13: "abilities", 0x14: "tab_complete", 0x15: "settings", 0x16: "client_command", 0x17: "custom_payload", 0x18: "spectate", 0x19: "resource_pack_receive"} + +func (ret *PlayToServerPacket) Decode(r io.ReadSeeker) (err error) { + var PlayToServerPacketNameKey int32 + PlayToServerPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(PlayToServerPacketNameMap, PlayToServerPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "abilities": + var PlayToServerPacketParamsAbilitiesTmp PlayToServerPacketAbilities + err = PlayToServerPacketParamsAbilitiesTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsAbilitiesTmp + case "arm_animation": + var PlayToServerPacketParamsArmAnimationTmp PlayToServerPacketArmAnimation + err = PlayToServerPacketParamsArmAnimationTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsArmAnimationTmp + case "block_dig": + var PlayToServerPacketParamsBlockDigTmp PlayToServerPacketBlockDig + err = PlayToServerPacketParamsBlockDigTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsBlockDigTmp + case "block_place": + var PlayToServerPacketParamsBlockPlaceTmp PlayToServerPacketBlockPlace + err = PlayToServerPacketParamsBlockPlaceTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsBlockPlaceTmp + case "chat": + var PlayToServerPacketParamsChatTmp PlayToServerPacketChat + err = PlayToServerPacketParamsChatTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsChatTmp + case "client_command": + var PlayToServerPacketParamsClientCommandTmp PlayToServerPacketClientCommand + err = PlayToServerPacketParamsClientCommandTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsClientCommandTmp + case "close_window": + var PlayToServerPacketParamsCloseWindowTmp PlayToServerPacketCloseWindow + err = PlayToServerPacketParamsCloseWindowTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsCloseWindowTmp + case "custom_payload": + var PlayToServerPacketParamsCustomPayloadTmp PlayToServerPacketCustomPayload + err = PlayToServerPacketParamsCustomPayloadTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsCustomPayloadTmp + case "enchant_item": + var PlayToServerPacketParamsEnchantItemTmp PlayToServerPacketEnchantItem + err = PlayToServerPacketParamsEnchantItemTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsEnchantItemTmp + case "entity_action": + var PlayToServerPacketParamsEntityActionTmp PlayToServerPacketEntityAction + err = PlayToServerPacketParamsEntityActionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsEntityActionTmp + case "flying": + var PlayToServerPacketParamsFlyingTmp PlayToServerPacketFlying + err = PlayToServerPacketParamsFlyingTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsFlyingTmp + case "held_item_slot": + var PlayToServerPacketParamsHeldItemSlotTmp PlayToServerPacketHeldItemSlot + err = PlayToServerPacketParamsHeldItemSlotTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsHeldItemSlotTmp + case "keep_alive": + var PlayToServerPacketParamsKeepAliveTmp PlayToServerPacketKeepAlive + err = PlayToServerPacketParamsKeepAliveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsKeepAliveTmp + case "look": + var PlayToServerPacketParamsLookTmp PlayToServerPacketLook + err = PlayToServerPacketParamsLookTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsLookTmp + case "position": + var PlayToServerPacketParamsPositionTmp PlayToServerPacketPosition + err = PlayToServerPacketParamsPositionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsPositionTmp + case "position_look": + var PlayToServerPacketParamsPositionLookTmp PlayToServerPacketPositionLook + err = PlayToServerPacketParamsPositionLookTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsPositionLookTmp + case "resource_pack_receive": + var PlayToServerPacketParamsResourcePackReceiveTmp PlayToServerPacketResourcePackReceive + err = PlayToServerPacketParamsResourcePackReceiveTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsResourcePackReceiveTmp + case "set_creative_slot": + var PlayToServerPacketParamsSetCreativeSlotTmp PlayToServerPacketSetCreativeSlot + err = PlayToServerPacketParamsSetCreativeSlotTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsSetCreativeSlotTmp + case "settings": + var PlayToServerPacketParamsSettingsTmp PlayToServerPacketSettings + err = PlayToServerPacketParamsSettingsTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsSettingsTmp + case "spectate": + var PlayToServerPacketParamsSpectateTmp PlayToServerPacketSpectate + err = PlayToServerPacketParamsSpectateTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsSpectateTmp + case "steer_vehicle": + var PlayToServerPacketParamsSteerVehicleTmp PlayToServerPacketSteerVehicle + err = PlayToServerPacketParamsSteerVehicleTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsSteerVehicleTmp + case "tab_complete": + var PlayToServerPacketParamsTabCompleteTmp PlayToServerPacketTabComplete + err = PlayToServerPacketParamsTabCompleteTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsTabCompleteTmp + case "transaction": + var PlayToServerPacketParamsTransactionTmp PlayToServerPacketTransaction + err = PlayToServerPacketParamsTransactionTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsTransactionTmp + case "update_sign": + var PlayToServerPacketParamsUpdateSignTmp PlayToServerPacketUpdateSign + err = PlayToServerPacketParamsUpdateSignTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsUpdateSignTmp + case "use_entity": + var PlayToServerPacketParamsUseEntityTmp PlayToServerPacketUseEntity + err = PlayToServerPacketParamsUseEntityTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsUseEntityTmp + case "window_click": + var PlayToServerPacketParamsWindowClickTmp PlayToServerPacketWindowClick + err = PlayToServerPacketParamsWindowClickTmp.Decode(r) + if err != nil { + return + } + ret.Params = PlayToServerPacketParamsWindowClickTmp + } + return +} + +var PlayToServerPacketNameReverseMap = map[string]int32{"keep_alive": 0x00, "chat": 0x01, "use_entity": 0x02, "flying": 0x03, "position": 0x04, "look": 0x05, "position_look": 0x06, "block_dig": 0x07, "block_place": 0x08, "held_item_slot": 0x09, "arm_animation": 0x0a, "entity_action": 0x0b, "steer_vehicle": 0x0c, "close_window": 0x0d, "window_click": 0x0e, "transaction": 0x0f, "set_creative_slot": 0x10, "enchant_item": 0x11, "update_sign": 0x12, "abilities": 0x13, "tab_complete": 0x14, "settings": 0x15, "client_command": 0x16, "custom_payload": 0x17, "spectate": 0x18, "resource_pack_receive": 0x19} + +func (ret *PlayToServerPacket) Encode(w io.Writer) (err error) { + var vPlayToServerPacketName int32 + vPlayToServerPacketName, err = proto_base.ErroringIndex(PlayToServerPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vPlayToServerPacketName) + if err != nil { + return + } + switch ret.Name { + case "abilities": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketAbilities) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "arm_animation": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketArmAnimation) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "block_dig": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketBlockDig) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "block_place": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketBlockPlace) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "chat": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketChat) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "client_command": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketClientCommand) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "close_window": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketCloseWindow) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "custom_payload": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketCustomPayload) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "enchant_item": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketEnchantItem) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "entity_action": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketEntityAction) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "flying": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketFlying) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "held_item_slot": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketHeldItemSlot) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "keep_alive": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketKeepAlive) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "look": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketLook) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "position": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketPosition) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "position_look": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketPositionLook) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "resource_pack_receive": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketResourcePackReceive) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "set_creative_slot": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketSetCreativeSlot) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "settings": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketSettings) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "spectate": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketSpectate) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "steer_vehicle": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketSteerVehicle) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "tab_complete": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketTabComplete) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "transaction": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketTransaction) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "update_sign": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketUpdateSign) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "use_entity": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketUseEntity) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + case "window_click": + PlayToServerPacketParams, ok := ret.Params.(PlayToServerPacketWindowClick) + if !ok { + err = proto_base.BadTypeError + return + } + err = PlayToServerPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type PlayToServerPacketAbilities struct { + Flags int8 + FlyingSpeed float32 + WalkingSpeed float32 +} + +func (ret *PlayToServerPacketAbilities) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Flags) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.FlyingSpeed) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.WalkingSpeed) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketAbilities) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Flags) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.FlyingSpeed) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.WalkingSpeed) + if err != nil { + return + } + return +} + +type PlayToServerPacketArmAnimation struct { +} + +func (ret *PlayToServerPacketArmAnimation) Decode(r io.ReadSeeker) (err error) { + return +} +func (ret *PlayToServerPacketArmAnimation) Encode(w io.Writer) (err error) { + return +} + +type PlayToServerPacketBlockDig struct { + Status int32 + Location Position + Face int8 +} + +func (ret *PlayToServerPacketBlockDig) Decode(r io.ReadSeeker) (err error) { + ret.Status, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Face) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketBlockDig) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Status) + if err != nil { + return + } + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Face) + if err != nil { + return + } + return +} + +type PlayToServerPacketBlockPlace struct { + Location Position + Direction int8 + HeldItem Slot + CursorX int8 + CursorY int8 + CursorZ int8 +} + +func (ret *PlayToServerPacketBlockPlace) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Direction) + if err != nil { + return + } + err = ret.HeldItem.Decode(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.CursorX) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.CursorY) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.CursorZ) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketBlockPlace) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Direction) + if err != nil { + return + } + err = ret.HeldItem.Encode(w) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.CursorX) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.CursorY) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.CursorZ) + if err != nil { + return + } + return +} + +type PlayToServerPacketChat struct { + Message string +} + +func (ret *PlayToServerPacketChat) Decode(r io.ReadSeeker) (err error) { + ret.Message, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketChat) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Message) + if err != nil { + return + } + return +} + +type PlayToServerPacketClientCommand struct { + Payload int32 +} + +func (ret *PlayToServerPacketClientCommand) Decode(r io.ReadSeeker) (err error) { + ret.Payload, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketClientCommand) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Payload) + if err != nil { + return + } + return +} + +type PlayToServerPacketCloseWindow struct { + WindowId uint8 +} + +func (ret *PlayToServerPacketCloseWindow) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketCloseWindow) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + return +} + +type PlayToServerPacketCustomPayload struct { + Channel string + Data proto_base.RestBuffer +} + +func (ret *PlayToServerPacketCustomPayload) Decode(r io.ReadSeeker) (err error) { + ret.Channel, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = ret.Data.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketCustomPayload) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Channel) + if err != nil { + return + } + err = ret.Data.Encode(w) + if err != nil { + return + } + return +} + +type PlayToServerPacketEnchantItem struct { + WindowId int8 + Enchantment int8 +} + +func (ret *PlayToServerPacketEnchantItem) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Enchantment) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketEnchantItem) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Enchantment) + if err != nil { + return + } + return +} + +type PlayToServerPacketEntityAction struct { + EntityId int32 + ActionId int32 + JumpBoost int32 +} + +func (ret *PlayToServerPacketEntityAction) Decode(r io.ReadSeeker) (err error) { + ret.EntityId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.ActionId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.JumpBoost, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketEntityAction) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.EntityId) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.ActionId) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.JumpBoost) + if err != nil { + return + } + return +} + +type PlayToServerPacketFlying struct { + OnGround bool +} + +func (ret *PlayToServerPacketFlying) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketFlying) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToServerPacketHeldItemSlot struct { + SlotId int16 +} + +func (ret *PlayToServerPacketHeldItemSlot) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.SlotId) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketHeldItemSlot) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.SlotId) + if err != nil { + return + } + return +} + +type PlayToServerPacketKeepAlive struct { + KeepAliveId int32 +} + +func (ret *PlayToServerPacketKeepAlive) Decode(r io.ReadSeeker) (err error) { + ret.KeepAliveId, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketKeepAlive) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.KeepAliveId) + if err != nil { + return + } + return +} + +type PlayToServerPacketLook struct { + Yaw float32 + Pitch float32 + OnGround bool +} + +func (ret *PlayToServerPacketLook) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketLook) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToServerPacketPosition struct { + X float64 + Y float64 + Z float64 + OnGround bool +} + +func (ret *PlayToServerPacketPosition) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketPosition) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToServerPacketPositionLook struct { + X float64 + Y float64 + Z float64 + Yaw float32 + Pitch float32 + OnGround bool +} + +func (ret *PlayToServerPacketPositionLook) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.X) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Y) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Z) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Yaw) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Pitch) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.OnGround) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketPositionLook) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.X) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Y) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Z) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Yaw) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Pitch) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.OnGround) + if err != nil { + return + } + return +} + +type PlayToServerPacketResourcePackReceive struct { + Hash string + Result int32 +} + +func (ret *PlayToServerPacketResourcePackReceive) Decode(r io.ReadSeeker) (err error) { + ret.Hash, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Result, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketResourcePackReceive) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Hash) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Result) + if err != nil { + return + } + return +} + +type PlayToServerPacketSetCreativeSlot struct { + Slot int16 + Item Slot +} + +func (ret *PlayToServerPacketSetCreativeSlot) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Slot) + if err != nil { + return + } + err = ret.Item.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketSetCreativeSlot) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Slot) + if err != nil { + return + } + err = ret.Item.Encode(w) + if err != nil { + return + } + return +} + +type PlayToServerPacketSettings struct { + Locale string + ViewDistance int8 + ChatFlags int8 + ChatColors bool + SkinParts uint8 +} + +func (ret *PlayToServerPacketSettings) Decode(r io.ReadSeeker) (err error) { + ret.Locale, err = proto_base.DecodeString(r) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ViewDistance) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ChatFlags) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.ChatColors) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.SkinParts) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketSettings) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Locale) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ViewDistance) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ChatFlags) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.ChatColors) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.SkinParts) + if err != nil { + return + } + return +} + +type PlayToServerPacketSpectate struct { + Target uuid.UUID +} + +func (ret *PlayToServerPacketSpectate) Decode(r io.ReadSeeker) (err error) { + _, err = io.ReadFull(r, ret.Target[:]) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketSpectate) Encode(w io.Writer) (err error) { + _, err = w.Write(ret.Target[:]) + if err != nil { + return + } + return +} + +type PlayToServerPacketSteerVehicle struct { + Sideways float32 + Forward float32 + Jump uint8 +} + +func (ret *PlayToServerPacketSteerVehicle) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Sideways) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Forward) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Jump) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketSteerVehicle) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Sideways) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Forward) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Jump) + if err != nil { + return + } + return +} + +type PlayToServerPacketTabComplete struct { + Text string + Block *Position +} + +func (ret *PlayToServerPacketTabComplete) Decode(r io.ReadSeeker) (err error) { + ret.Text, err = proto_base.DecodeString(r) + if err != nil { + return + } + var PlayToServerPacketTabCompleteBlockPresent bool + err = binary.Read(r, binary.BigEndian, &PlayToServerPacketTabCompleteBlockPresent) + if err != nil { + return + } + if PlayToServerPacketTabCompleteBlockPresent { + var PlayToServerPacketTabCompleteBlockPresentValue Position + err = PlayToServerPacketTabCompleteBlockPresentValue.Decode(r) + if err != nil { + return + } + ret.Block = &PlayToServerPacketTabCompleteBlockPresentValue + } + return +} +func (ret *PlayToServerPacketTabComplete) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Text) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Block != nil) + if err != nil { + return + } + if ret.Block != nil { + err = (*ret.Block).Encode(w) + if err != nil { + return + } + } + return +} + +type PlayToServerPacketTransaction struct { + WindowId int8 + Action int16 + Accepted bool +} + +func (ret *PlayToServerPacketTransaction) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Action) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Accepted) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketTransaction) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Action) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Accepted) + if err != nil { + return + } + return +} + +type PlayToServerPacketUpdateSign struct { + Location Position + Text1 string + Text2 string + Text3 string + Text4 string +} + +func (ret *PlayToServerPacketUpdateSign) Decode(r io.ReadSeeker) (err error) { + err = ret.Location.Decode(r) + if err != nil { + return + } + ret.Text1, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text2, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text3, err = proto_base.DecodeString(r) + if err != nil { + return + } + ret.Text4, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketUpdateSign) Encode(w io.Writer) (err error) { + err = ret.Location.Encode(w) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text1) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text2) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text3) + if err != nil { + return + } + err = proto_base.EncodeString(w, ret.Text4) + if err != nil { + return + } + return +} + +type PlayToServerPacketUseEntity struct { + Target int32 + Mouse int32 + X any + Y any + Z any +} + +func (ret *PlayToServerPacketUseEntity) Decode(r io.ReadSeeker) (err error) { + ret.Target, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Mouse, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + switch ret.Mouse { + case 2: + var PlayToServerPacketUseEntityX2Tmp float32 + err = binary.Read(r, binary.BigEndian, &PlayToServerPacketUseEntityX2Tmp) + if err != nil { + return + } + ret.X = PlayToServerPacketUseEntityX2Tmp + default: + var PlayToServerPacketUseEntityXTmp struct { + } + ret.X = PlayToServerPacketUseEntityXTmp + } + switch ret.Mouse { + case 2: + var PlayToServerPacketUseEntityY2Tmp float32 + err = binary.Read(r, binary.BigEndian, &PlayToServerPacketUseEntityY2Tmp) + if err != nil { + return + } + ret.Y = PlayToServerPacketUseEntityY2Tmp + default: + var PlayToServerPacketUseEntityYTmp struct { + } + ret.Y = PlayToServerPacketUseEntityYTmp + } + switch ret.Mouse { + case 2: + var PlayToServerPacketUseEntityZ2Tmp float32 + err = binary.Read(r, binary.BigEndian, &PlayToServerPacketUseEntityZ2Tmp) + if err != nil { + return + } + ret.Z = PlayToServerPacketUseEntityZ2Tmp + default: + var PlayToServerPacketUseEntityZTmp struct { + } + ret.Z = PlayToServerPacketUseEntityZTmp + } + return +} +func (ret *PlayToServerPacketUseEntity) Encode(w io.Writer) (err error) { + err = proto_base.EncodeVarInt(w, ret.Target) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, ret.Mouse) + if err != nil { + return + } + switch ret.Mouse { + case 2: + PlayToServerPacketUseEntityX, ok := ret.X.(float32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToServerPacketUseEntityX) + if err != nil { + return + } + default: + _, ok := ret.X.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mouse { + case 2: + PlayToServerPacketUseEntityY, ok := ret.Y.(float32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToServerPacketUseEntityY) + if err != nil { + return + } + default: + _, ok := ret.Y.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + switch ret.Mouse { + case 2: + PlayToServerPacketUseEntityZ, ok := ret.Z.(float32) + if !ok { + err = proto_base.BadTypeError + return + } + err = binary.Write(w, binary.BigEndian, PlayToServerPacketUseEntityZ) + if err != nil { + return + } + default: + _, ok := ret.Z.(struct { + }) + if !ok { + err = proto_base.BadTypeError + return + } + } + return +} + +type PlayToServerPacketWindowClick struct { + WindowId uint8 + Slot int16 + MouseButton int8 + Action int16 + Mode int8 + Item Slot +} + +func (ret *PlayToServerPacketWindowClick) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.WindowId) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Slot) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.MouseButton) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Action) + if err != nil { + return + } + err = binary.Read(r, binary.BigEndian, &ret.Mode) + if err != nil { + return + } + err = ret.Item.Decode(r) + if err != nil { + return + } + return +} +func (ret *PlayToServerPacketWindowClick) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.WindowId) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Slot) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.MouseButton) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Action) + if err != nil { + return + } + err = binary.Write(w, binary.BigEndian, ret.Mode) + if err != nil { + return + } + err = ret.Item.Encode(w) + if err != nil { + return + } + return +} + +type StatusToClientPacket struct { + Name string + Params any +} + +var StatusToClientPacketNameMap = map[int32]string{0x00: "server_info", 0x01: "ping"} + +func (ret *StatusToClientPacket) Decode(r io.ReadSeeker) (err error) { + var StatusToClientPacketNameKey int32 + StatusToClientPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(StatusToClientPacketNameMap, StatusToClientPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "ping": + var StatusToClientPacketParamsPingTmp StatusToClientPacketPing + err = StatusToClientPacketParamsPingTmp.Decode(r) + if err != nil { + return + } + ret.Params = StatusToClientPacketParamsPingTmp + case "server_info": + var StatusToClientPacketParamsServerInfoTmp StatusToClientPacketServerInfo + err = StatusToClientPacketParamsServerInfoTmp.Decode(r) + if err != nil { + return + } + ret.Params = StatusToClientPacketParamsServerInfoTmp + } + return +} + +var StatusToClientPacketNameReverseMap = map[string]int32{"server_info": 0x00, "ping": 0x01} + +func (ret *StatusToClientPacket) Encode(w io.Writer) (err error) { + var vStatusToClientPacketName int32 + vStatusToClientPacketName, err = proto_base.ErroringIndex(StatusToClientPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vStatusToClientPacketName) + if err != nil { + return + } + switch ret.Name { + case "ping": + StatusToClientPacketParams, ok := ret.Params.(StatusToClientPacketPing) + if !ok { + err = proto_base.BadTypeError + return + } + err = StatusToClientPacketParams.Encode(w) + if err != nil { + return + } + case "server_info": + StatusToClientPacketParams, ok := ret.Params.(StatusToClientPacketServerInfo) + if !ok { + err = proto_base.BadTypeError + return + } + err = StatusToClientPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type StatusToClientPacketPing struct { + Time int64 +} + +func (ret *StatusToClientPacketPing) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Time) + if err != nil { + return + } + return +} +func (ret *StatusToClientPacketPing) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Time) + if err != nil { + return + } + return +} + +type StatusToClientPacketServerInfo struct { + Response string +} + +func (ret *StatusToClientPacketServerInfo) Decode(r io.ReadSeeker) (err error) { + ret.Response, err = proto_base.DecodeString(r) + if err != nil { + return + } + return +} +func (ret *StatusToClientPacketServerInfo) Encode(w io.Writer) (err error) { + err = proto_base.EncodeString(w, ret.Response) + if err != nil { + return + } + return +} + +type StatusToServerPacket struct { + Name string + Params any +} + +var StatusToServerPacketNameMap = map[int32]string{0x00: "ping_start", 0x01: "ping"} + +func (ret *StatusToServerPacket) Decode(r io.ReadSeeker) (err error) { + var StatusToServerPacketNameKey int32 + StatusToServerPacketNameKey, err = proto_base.DecodeVarInt(r) + if err != nil { + return + } + ret.Name, err = proto_base.ErroringIndex(StatusToServerPacketNameMap, StatusToServerPacketNameKey) + if err != nil { + return + } + switch ret.Name { + case "ping": + var StatusToServerPacketParamsPingTmp StatusToServerPacketPing + err = StatusToServerPacketParamsPingTmp.Decode(r) + if err != nil { + return + } + ret.Params = StatusToServerPacketParamsPingTmp + case "ping_start": + var StatusToServerPacketParamsPingStartTmp StatusToServerPacketPingStart + err = StatusToServerPacketParamsPingStartTmp.Decode(r) + if err != nil { + return + } + ret.Params = StatusToServerPacketParamsPingStartTmp + } + return +} + +var StatusToServerPacketNameReverseMap = map[string]int32{"ping_start": 0x00, "ping": 0x01} + +func (ret *StatusToServerPacket) Encode(w io.Writer) (err error) { + var vStatusToServerPacketName int32 + vStatusToServerPacketName, err = proto_base.ErroringIndex(StatusToServerPacketNameReverseMap, ret.Name) + if err != nil { + return + } + err = proto_base.EncodeVarInt(w, vStatusToServerPacketName) + if err != nil { + return + } + switch ret.Name { + case "ping": + StatusToServerPacketParams, ok := ret.Params.(StatusToServerPacketPing) + if !ok { + err = proto_base.BadTypeError + return + } + err = StatusToServerPacketParams.Encode(w) + if err != nil { + return + } + case "ping_start": + StatusToServerPacketParams, ok := ret.Params.(StatusToServerPacketPingStart) + if !ok { + err = proto_base.BadTypeError + return + } + err = StatusToServerPacketParams.Encode(w) + if err != nil { + return + } + } + return +} + +type StatusToServerPacketPing struct { + Time int64 +} + +func (ret *StatusToServerPacketPing) Decode(r io.ReadSeeker) (err error) { + err = binary.Read(r, binary.BigEndian, &ret.Time) + if err != nil { + return + } + return +} +func (ret *StatusToServerPacketPing) Encode(w io.Writer) (err error) { + err = binary.Write(w, binary.BigEndian, ret.Time) + if err != nil { + return + } + return +} + +type StatusToServerPacketPingStart struct { +} + +func (ret *StatusToServerPacketPingStart) Decode(r io.ReadSeeker) (err error) { + return +} +func (ret *StatusToServerPacketPingStart) Encode(w io.Writer) (err error) { + return +} diff --git a/mc/proto_generated/v26_1/proto.go b/mc/proto_generated/v26_1/proto.go index 6ca23fe..61866b0 100644 --- a/mc/proto_generated/v26_1/proto.go +++ b/mc/proto_generated/v26_1/proto.go @@ -1,14 +1,14 @@ // Code generated by strom. DO NOT EDIT. // source: minecraft-data/pc/26.1/protocol.json (sha256:dfb6318886cd3ceab617f75ac05e24f9836a64501d60551071289b904ebfc389) -// version: v0.6.3-0.20260723203259-d84618c116b8+dirty (go1.26.5-X:nodwarf5) +// version: (devel) (go1.26.5-X:nodwarf5) package v26_1 import ( "encoding/binary" - "github.com/admin-else/strom/mc/nbt" - "github.com/admin-else/strom/mc/proto_base" - "github.com/google/uuid" "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" ) type ArmorTrimMaterial struct { diff --git a/mc/proto_generated/v26_2/proto.go b/mc/proto_generated/v26_2/proto.go index 0cfe5f5..da863f3 100644 --- a/mc/proto_generated/v26_2/proto.go +++ b/mc/proto_generated/v26_2/proto.go @@ -1,14 +1,14 @@ // Code generated by strom. DO NOT EDIT. // source: minecraft-data/pc/26.2/protocol.json (sha256:7ba66411adcc68a668f38211e1b00eeb386a345d5eb16fadd6dc1c7f94bb175f) -// version: v0.6.3-0.20260723203259-d84618c116b8+dirty (go1.26.5-X:nodwarf5) +// version: (devel) (go1.26.5-X:nodwarf5) package v26_2 import ( "encoding/binary" - "github.com/admin-else/strom/mc/nbt" - "github.com/admin-else/strom/mc/proto_base" - "github.com/google/uuid" "io" + "github.com/admin-else/strom/mc/proto_base" + "github.com/admin-else/strom/mc/nbt" + "github.com/google/uuid" ) type ArmorTrimMaterial struct { diff --git a/mc/proto_generator/main.go b/mc/proto_generator/main.go index f335a81..e7acee2 100644 --- a/mc/proto_generator/main.go +++ b/mc/proto_generator/main.go @@ -429,7 +429,7 @@ func GenerateVersions(versions []string) (err error) { } func main() { - err := GenerateVersions([]string{"1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"}) + err := GenerateVersions([]string{"1.8", "1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"}) if err != nil { panic(err) } diff --git a/mc/proto_generator/native_compare_to.go b/mc/proto_generator/native_compare_to.go index 98e5447..eeacf16 100644 --- a/mc/proto_generator/native_compare_to.go +++ b/mc/proto_generator/native_compare_to.go @@ -12,6 +12,10 @@ import ( ) func (g *Generator) ParseCompareTo(compareTo string) (e ast.Expr, cet CaseExprType, err error) { + if strings.HasPrefix(compareTo, "$") { + err = fmt.Errorf("parameterized type placeholder: %s", compareTo) + return + } parts := strings.Split(compareTo, "/") downPrefixCount := 0 for _, part := range parts { @@ -124,6 +128,12 @@ func (g *Generator) RegisterCompareToNatives() { "bitfield": BitfieldCompareTo, "u8": ReturnInputCompareTo, "i8": ReturnInputCompareTo, + "i16": ReturnInputCompareTo, + "i32": ReturnInputCompareTo, + "i64": ReturnInputCompareTo, + "u16": ReturnInputCompareTo, + "u32": ReturnInputCompareTo, + "string": ReturnInputCompareTo, "bitflags": BitflagsCompareTo, "switch": ReturnInputCompareTo, "varlong": ReturnInputCompareTo, diff --git a/mc/proto_generator/native_decoder.go b/mc/proto_generator/native_decoder.go index 119f2f4..97f5fd7 100644 --- a/mc/proto_generator/native_decoder.go +++ b/mc/proto_generator/native_decoder.go @@ -634,6 +634,8 @@ func (g *Generator) RegisterDecoderNatives() { "varlong": VarLongDecoder, "anonymousNbt": DefaultDecoder, "anonOptionalNbt": DefaultDecoder, // I have no idea what the difference is between these two + "optionalNbt": DefaultDecoder, + "nbt": DefaultDecoder, "lpVec3": DefaultDecoder, "UUID": UUIDDecoder, "restBuffer": DefaultDecoder, diff --git a/mc/proto_generator/native_encoder.go b/mc/proto_generator/native_encoder.go index 53f9218..1640c4f 100644 --- a/mc/proto_generator/native_encoder.go +++ b/mc/proto_generator/native_encoder.go @@ -402,6 +402,8 @@ func (g *Generator) RegisterEncoderNatives() { "varlong": VarLongEncoder, "anonymousNbt": DefaultEncoder, "anonOptionalNbt": DefaultEncoder, // I have no idea what the difference is between these two + "optionalNbt": DefaultEncoder, + "nbt": DefaultEncoder, "UUID": UUIDEncoder, "restBuffer": DefaultEncoder, "lpVec3": DefaultEncoder, diff --git a/mc/proto_generator/native_type.go b/mc/proto_generator/native_type.go index de3fe3f..8e1afe2 100644 --- a/mc/proto_generator/native_type.go +++ b/mc/proto_generator/native_type.go @@ -200,6 +200,8 @@ func (g *Generator) RegisterNatives() { "native": VisitDontGenerateType, "anonymousNbt": MakeSelectorVisitor("nbt", "Anon"), "anonOptionalNbt": MakeSelectorVisitor("nbt", "Anon"), // I have no idea what the difference is between these two + "optionalNbt": MakeSelectorVisitor("nbt", "Anon"), + "nbt": MakeSelectorVisitor("nbt", "Anon"), "void": VoidType, "bool": MakeIdentVisitor("bool"), "u8": MakeIdentVisitor("uint8"),