Merge remote-tracking branch 'gitlab/master'
Go / build (push) Successful in 1m9s

This commit is contained in:
adman
2026-08-17 18:12:52 +02:00
117 changed files with 293 additions and 309 deletions
-6
View File
@@ -1,6 +0,0 @@
**/*_test.go export-ignore
**/testdata export-ignore
*.zip filter=lfs diff=lfs merge=lfs -text
*.tmcpr filter=lfs diff=lfs merge=lfs -text
*.mcpr filter=lfs diff=lfs merge=lfs -text
*.mca filter=lfs diff=lfs merge=lfs -text
+28
View File
@@ -0,0 +1,28 @@
name: Go
on:
push:
branches: ["master"]
pull_request:
branches: ["master"]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.26.2"
- name: Build
run: go build -v ./...
- name: Vet
run: go vet -v ./...
- name: Test
run: go test -v ./...
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"log/slog" "log/slog"
"os" "os"
"github.com/admin-else/strom/mc/api" "git.anygate.cloud/anygatecloud/strom/mc/api"
) )
var cmd = flag.NewFlagSet("api", flag.ContinueOnError) var cmd = flag.NewFlagSet("api", flag.ContinueOnError)
+1 -1
View File
@@ -1,6 +1,6 @@
package cmd_util package cmd_util
import "github.com/admin-else/strom/mc/api" import "git.anygate.cloud/anygatecloud/strom/mc/api"
func Account(s string) (a *api.Account, err error) { func Account(s string) (a *api.Account, err error) {
if len(s) > 16 { if len(s) > 16 {
+3 -3
View File
@@ -7,9 +7,9 @@ import (
"os" "os"
"slices" "slices"
mcdata "github.com/admin-else/strom/mc/data" mcdata "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
// strom data 1.21.11 blocks id 0 name => air // strom data 1.21.11 blocks id 0 name => air
+2 -2
View File
@@ -6,8 +6,8 @@ import (
"log/slog" "log/slog"
"os" "os"
"github.com/admin-else/strom/mc/level/anvil" "git.anygate.cloud/anygatecloud/strom/mc/level/anvil"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
) )
var ( var (
+15 -15
View File
@@ -9,21 +9,21 @@ import (
"runtime/debug" "runtime/debug"
"slices" "slices"
"github.com/admin-else/strom/cmd/strom/api" "git.anygate.cloud/anygatecloud/strom/cmd/strom/api"
"github.com/admin-else/strom/cmd/strom/data" "git.anygate.cloud/anygatecloud/strom/cmd/strom/data"
"github.com/admin-else/strom/cmd/strom/extract_mca" "git.anygate.cloud/anygatecloud/strom/cmd/strom/extract_mca"
"github.com/admin-else/strom/cmd/strom/mca_to_tmcpr" "git.anygate.cloud/anygatecloud/strom/cmd/strom/mca_to_tmcpr"
"github.com/admin-else/strom/cmd/strom/messenger" "git.anygate.cloud/anygatecloud/strom/cmd/strom/messenger"
"github.com/admin-else/strom/cmd/strom/offline_uuid" "git.anygate.cloud/anygatecloud/strom/cmd/strom/offline_uuid"
"github.com/admin-else/strom/cmd/strom/packet_info" "git.anygate.cloud/anygatecloud/strom/cmd/strom/packet_info"
"github.com/admin-else/strom/cmd/strom/packet_inspector" "git.anygate.cloud/anygatecloud/strom/cmd/strom/packet_inspector"
"github.com/admin-else/strom/cmd/strom/print_nbt" "git.anygate.cloud/anygatecloud/strom/cmd/strom/print_nbt"
"github.com/admin-else/strom/cmd/strom/print_replay" "git.anygate.cloud/anygatecloud/strom/cmd/strom/print_replay"
// "github.com/admin-else/strom/cmd/strom/raw_capture" // removed: use tcpflow instead for raw TCP capture // "git.anygate.cloud/anygatecloud/strom/cmd/strom/raw_capture" // removed: use tcpflow instead for raw TCP capture
"github.com/admin-else/strom/cmd/strom/raw_to_tmcpr" "git.anygate.cloud/anygatecloud/strom/cmd/strom/raw_to_tmcpr"
"github.com/admin-else/strom/cmd/strom/serve_tmcpr" "git.anygate.cloud/anygatecloud/strom/cmd/strom/serve_tmcpr"
"github.com/admin-else/strom/cmd/strom/serve_world" "git.anygate.cloud/anygatecloud/strom/cmd/strom/serve_world"
"github.com/admin-else/strom/cmd/strom/status" "git.anygate.cloud/anygatecloud/strom/cmd/strom/status"
) )
var ExpectedASubcommandErr = errors.New("expected a subcommand") var ExpectedASubcommandErr = errors.New("expected a subcommand")
+6 -6
View File
@@ -8,12 +8,12 @@ import (
"os" "os"
"path/filepath" "path/filepath"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
"github.com/admin-else/strom/mc/level/anvil" "git.anygate.cloud/anygatecloud/strom/mc/level/anvil"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/admin-else/strom/mc/proto/replay" "git.anygate.cloud/anygatecloud/strom/mc/proto/replay"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
var ( var (
+10 -10
View File
@@ -7,16 +7,16 @@ import (
"strconv" "strconv"
"strings" "strings"
"github.com/admin-else/strom/cmd/strom/cmd_util" "git.anygate.cloud/anygatecloud/strom/cmd/strom/cmd_util"
"github.com/admin-else/strom/mc/bot/chat" "git.anygate.cloud/anygatecloud/strom/mc/bot/chat"
"github.com/admin-else/strom/mc/bot/keepalive" "git.anygate.cloud/anygatecloud/strom/mc/bot/keepalive"
"github.com/admin-else/strom/mc/bot/world" "git.anygate.cloud/anygatecloud/strom/mc/bot/world"
"github.com/admin-else/strom/mc/client" "git.anygate.cloud/anygatecloud/strom/mc/client"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/proto_generated/v1_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
) )
func stror(a, b string) string { func stror(a, b string) string {
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"flag" "flag"
"fmt" "fmt"
"github.com/admin-else/strom/mc/crypto" "git.anygate.cloud/anygatecloud/strom/mc/crypto"
) )
var cmd = flag.NewFlagSet("offline-uuid", flag.ContinueOnError) var cmd = flag.NewFlagSet("offline-uuid", flag.ContinueOnError)
+4 -4
View File
@@ -5,10 +5,10 @@ import (
"fmt" "fmt"
"strconv" "strconv"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
) )
var cmd = flag.NewFlagSet("packet-info", flag.ContinueOnError) var cmd = flag.NewFlagSet("packet-info", flag.ContinueOnError)
+9 -9
View File
@@ -7,15 +7,15 @@ import (
"os" "os"
"time" "time"
"github.com/admin-else/strom/mc/api" "git.anygate.cloud/anygatecloud/strom/mc/api"
"github.com/admin-else/strom/mc/client" "git.anygate.cloud/anygatecloud/strom/mc/client"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/server" "git.anygate.cloud/anygatecloud/strom/mc/server"
"github.com/admin-else/strom/mc/text" "git.anygate.cloud/anygatecloud/strom/mc/text"
) )
var Cmd = flag.NewFlagSet("packet-inspector", flag.ContinueOnError) var Cmd = flag.NewFlagSet("packet-inspector", flag.ContinueOnError)
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"fmt" "fmt"
"os" "os"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
) )
var ( var (
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/%v" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/%v"
) )
// Error: %v // Error: %v
+2 -4
View File
@@ -15,8 +15,8 @@ import (
"reflect" "reflect"
"strings" "strings"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
) )
var ( var (
@@ -28,8 +28,6 @@ var (
DirectionFlag = cmd.String("direction", "clientbound", "Packet direction: clientbound (ToClient) or serverbound (ToServer)") DirectionFlag = cmd.String("direction", "clientbound", "Packet direction: clientbound (ToClient) or serverbound (ToServer)")
) )
// TODO: maybe use the proto replay api
//go:embed failed_packet.go.tmpl //go:embed failed_packet.go.tmpl
var TestSrcF string var TestSrcF string
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: index not found // Error: index not found
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Error: unexpected EOF // Error: unexpected EOF
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Decode regression: recipe_book_add (26.2) - SlotDisplay type fix // Decode regression: recipe_book_add (26.2) - SlotDisplay type fix
@@ -3,7 +3,7 @@ package failed_packets_test
import ( import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Decode regression: declare_commands (26.2) - bitfield + extraNodeData fix // Decode regression: declare_commands (26.2) - bitfield + extraNodeData fix
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v1_8" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
) )
// Decode regression: spawn_entity_living (1.8) - entityMetadata mergeCompareTo // Decode regression: spawn_entity_living (1.8) - entityMetadata mergeCompareTo
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v1_8" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
) )
// Decode regression: entity_equipment (1.8) - nbt TAG_End fix // Decode regression: entity_equipment (1.8) - nbt TAG_End fix
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v1_8" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
) )
// Decode regression: entity_metadata (1.8) - entityMetadataLoop mergeCompareTo // Decode regression: entity_metadata (1.8) - entityMetadataLoop mergeCompareTo
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
generated "github.com/admin-else/strom/mc/proto_generated/v26_2" generated "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
// Decode regression: entity_equipment (26.2) - topBitSetTerminatedArray // Decode regression: entity_equipment (26.2) - topBitSetTerminatedArray
+2 -2
View File
@@ -10,8 +10,8 @@ import (
"os" "os"
"time" "time"
"github.com/admin-else/strom/mc/proto/replay" "git.anygate.cloud/anygatecloud/strom/mc/proto/replay"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
) )
var Cmd = flag.NewFlagSet("raw-to-tmcpr", flag.ContinueOnError) var Cmd = flag.NewFlagSet("raw-to-tmcpr", flag.ContinueOnError)
+5 -5
View File
@@ -9,11 +9,11 @@ import (
"os" "os"
"time" "time"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto/replay" "git.anygate.cloud/anygatecloud/strom/mc/proto/replay"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/server" "git.anygate.cloud/anygatecloud/strom/mc/server"
) )
type Server struct { type Server struct {
+8 -8
View File
@@ -8,14 +8,14 @@ import (
"os" "os"
"time" "time"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
"github.com/admin-else/strom/mc/level/anvil" "git.anygate.cloud/anygatecloud/strom/mc/level/anvil"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/server" "git.anygate.cloud/anygatecloud/strom/mc/server"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
type Server struct { type Server struct {
+5 -5
View File
@@ -6,11 +6,11 @@ import (
"log/slog" "log/slog"
"time" "time"
"github.com/admin-else/strom/mc/client" "git.anygate.cloud/anygatecloud/strom/mc/client"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
) )
var cmd = flag.NewFlagSet("status", flag.ContinueOnError) var cmd = flag.NewFlagSet("status", flag.ContinueOnError)
+1 -1
View File
@@ -1,4 +1,4 @@
module github.com/admin-else/strom module git.anygate.cloud/anygatecloud/strom
go 1.26.2 go 1.26.2
+1 -1
View File
@@ -1,7 +1,7 @@
package api package api
import ( import (
"github.com/admin-else/strom/mc/crypto" "git.anygate.cloud/anygatecloud/strom/mc/crypto"
) )
// NewOfflineAccount creates an offline-mode Account with a UUID derived from the // NewOfflineAccount creates an offline-mode Account with a UUID derived from the
+4 -4
View File
@@ -12,10 +12,10 @@ import (
"fmt" "fmt"
"time" "time"
"github.com/admin-else/strom/mc/api" "git.anygate.cloud/anygatecloud/strom/mc/api"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/proto_generated/v1_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -1,8 +1,8 @@
package keepalive package keepalive
import ( import (
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
) )
type mod struct { type mod struct {
+3 -3
View File
@@ -5,9 +5,9 @@ import (
"errors" "errors"
"sync" "sync"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
) )
var ( var (
+4 -4
View File
@@ -5,10 +5,10 @@ import (
"errors" "errors"
"net" "net"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/server" "git.anygate.cloud/anygatecloud/strom/mc/server"
) )
// Connect connects to the given address note that it does not resolve the SRV records it's just a raw net.Dial // Connect connects to the given address note that it does not resolve the SRV records it's just a raw net.Dial
+4 -4
View File
@@ -4,10 +4,10 @@ import (
"errors" "errors"
"fmt" "fmt"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
) )
type ConfigIgnorer struct { type ConfigIgnorer struct {
+3 -3
View File
@@ -4,9 +4,9 @@ import (
"net" "net"
"strconv" "strconv"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
) )
// MakeHandshakePacket creates a handshake packet using the connection's remote address as the server host. // MakeHandshakePacket creates a handshake packet using the connection's remote address as the server host.
+10 -10
View File
@@ -9,16 +9,16 @@ import (
"errors" "errors"
"net" "net"
"github.com/admin-else/strom/mc/api" "git.anygate.cloud/anygatecloud/strom/mc/api"
"github.com/admin-else/strom/mc/crypto" "git.anygate.cloud/anygatecloud/strom/mc/crypto"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_16_5" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_16_5"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/proto_generated/v1_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
"github.com/admin-else/strom/mc/proto_generated/v26_2" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
"github.com/admin-else/strom/mc/text" "git.anygate.cloud/anygatecloud/strom/mc/text"
"github.com/google/uuid" "github.com/google/uuid"
) )
+4 -4
View File
@@ -4,10 +4,10 @@ import (
"reflect" "reflect"
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
) )
func assertClientSendConvertible(t *testing.T, srcType reflect.Type, name string, state proto_base.State, direction proto_base.Direction, targetVersion int32) { func assertClientSendConvertible(t *testing.T, srcType reflect.Type, name string, state proto_base.State, direction proto_base.Direction, targetVersion int32) {
+6 -6
View File
@@ -5,12 +5,12 @@ import (
"encoding/json" "encoding/json"
"time" "time"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/proto_generated/v1_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
"github.com/admin-else/strom/mc/server" "git.anygate.cloud/anygatecloud/strom/mc/server"
) )
type StatusClient struct { type StatusClient struct {
+1 -1
View File
@@ -3,7 +3,7 @@ package data_test
import ( import (
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
) )
func TestLookupBiomeById(t *testing.T) { func TestLookupBiomeById(t *testing.T) {
+1 -1
View File
@@ -5,7 +5,7 @@ import (
"slices" "slices"
"strconv" "strconv"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
// { // {
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"fmt" "fmt"
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
) )
func TestLookupBlockByStateId(t *testing.T) { func TestLookupBlockByStateId(t *testing.T) {
+1 -1
View File
@@ -3,7 +3,7 @@ package data_test
import ( import (
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
) )
func TestLookUpProtocolVersion(t *testing.T) { func TestLookUpProtocolVersion(t *testing.T) {
+1 -1
View File
@@ -3,7 +3,7 @@ package data
import ( import (
"embed" "embed"
nbt2 "github.com/admin-else/strom/mc/nbt" nbt2 "git.anygate.cloud/anygatecloud/strom/mc/nbt"
) )
// TODO: this is stupid loginPacket.json exists next version migrate to that // TODO: this is stupid loginPacket.json exists next version migrate to that
+1 -1
View File
@@ -3,7 +3,7 @@ package gen
import ( import (
"math" "math"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
) )
type NoiseParam int type NoiseParam int
+1 -1
View File
@@ -3,7 +3,7 @@ package gen
import ( import (
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
) )
func TestBiomeNoise_SampleBiome(t *testing.T) { func TestBiomeNoise_SampleBiome(t *testing.T) {
+2 -2
View File
@@ -1,8 +1,8 @@
package anvil_test package anvil_test
import ( import (
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
) )
// in seperate file not to lag my ide // in seperate file not to lag my ide
+3 -3
View File
@@ -4,9 +4,9 @@ import (
"strings" "strings"
"unsafe" "unsafe"
data2 "github.com/admin-else/strom/mc/data" data2 "git.anygate.cloud/anygatecloud/strom/mc/data"
level2 "github.com/admin-else/strom/mc/level" level2 "git.anygate.cloud/anygatecloud/strom/mc/level"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
type Chunk struct { type Chunk struct {
+1 -1
View File
@@ -3,7 +3,7 @@ package anvil
import ( import (
"io" "io"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
) )
type Level struct { type Level struct {
+3 -3
View File
@@ -7,9 +7,9 @@ import (
"os" "os"
"testing" "testing"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
anvil2 "github.com/admin-else/strom/mc/level/anvil" anvil2 "git.anygate.cloud/anygatecloud/strom/mc/level/anvil"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
func TestLevel(t *testing.T) { func TestLevel(t *testing.T) {
+1 -1
View File
@@ -8,7 +8,7 @@ import (
"io" "io"
"os" "os"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
) )
type CompressionStrategy uint8 type CompressionStrategy uint8
+4 -4
View File
@@ -7,10 +7,10 @@ import (
"strings" "strings"
"unsafe" "unsafe"
data2 "github.com/admin-else/strom/mc/data" data2 "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
"github.com/go-viper/mapstructure/v2" "github.com/go-viper/mapstructure/v2"
) )
+2 -2
View File
@@ -4,8 +4,8 @@ import (
"embed" "embed"
"testing" "testing"
data2 "github.com/admin-else/strom/mc/data" data2 "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/level/litematic" "git.anygate.cloud/anygatecloud/strom/mc/level/litematic"
) )
//go:embed testdata //go:embed testdata
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"bytes" "bytes"
"testing" "testing"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
) )
func FuzzReadChunkFromChunkPacketData(f *testing.F) { func FuzzReadChunkFromChunkPacketData(f *testing.F) {
+3 -3
View File
@@ -7,9 +7,9 @@ import (
"log/slog" "log/slog"
"math" "math"
data2 "github.com/admin-else/strom/mc/data" data2 "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
type BlockState struct { type BlockState struct {
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"math" "math"
"slices" "slices"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
type StorageFormat struct { type StorageFormat struct {
+1 -1
View File
@@ -3,7 +3,7 @@ package level_test
import ( import (
"testing" "testing"
"github.com/admin-else/strom/mc/level" "git.anygate.cloud/anygatecloud/strom/mc/level"
) )
func heightmapFormat() level.StorageFormat { func heightmapFormat() level.StorageFormat {
+1 -1
View File
@@ -1,7 +1,7 @@
package structure package structure
import ( import (
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/go-viper/mapstructure/v2" "github.com/go-viper/mapstructure/v2"
) )
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x000\x000")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00A")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x000\b0000000000000000000000000000000000000000000000000000000012789ABC")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x000\b000000000\x9d0000000000000000000000000000000000000000000000012789AB")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x00\x00\x000")
File diff suppressed because one or more lines are too long
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x020000000000000000000\x0200000000000000000\x0200000000000000000")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("000\xcf\xff\xff\xe88")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00A\x00")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00\x000")
+1 -1
View File
@@ -4,7 +4,7 @@ import (
"fmt" "fmt"
"reflect" "reflect"
"github.com/admin-else/strom/mc/util" "git.anygate.cloud/anygatecloud/strom/mc/util"
) )
func (f *Format) decode(m map[string]any, target reflect.Value) error { func (f *Format) decode(m map[string]any, target reflect.Value) error {
+1 -1
View File
@@ -5,7 +5,7 @@ import (
"io" "io"
"os" "os"
"github.com/admin-else/strom/mc/mapstructure" "git.anygate.cloud/anygatecloud/strom/mc/mapstructure"
) )
var Format = mapstructure.NewFormat("nbt", mapstructure.WithRequireAll(), mapstructure.WithTrySnakeCase(), mapstructure.WithTryLowCase()) var Format = mapstructure.NewFormat("nbt", mapstructure.WithRequireAll(), mapstructure.WithTrySnakeCase(), mapstructure.WithTryLowCase())
+4 -4
View File
@@ -12,10 +12,10 @@ import (
"strings" "strings"
"sync" "sync"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
) )
const ( const (
+3 -3
View File
@@ -5,9 +5,9 @@ import (
"math" "math"
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/google/go-cmp/cmp" "github.com/google/go-cmp/cmp"
"github.com/google/go-cmp/cmp/cmpopts" "github.com/google/go-cmp/cmp/cmpopts"
) )
+4 -4
View File
@@ -6,10 +6,10 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/proto" "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
) )
func TestPacketRoundTripAllVersions(t *testing.T) { func TestPacketRoundTripAllVersions(t *testing.T) {
+2 -2
View File
@@ -3,8 +3,8 @@ package proto
import ( import (
"reflect" "reflect"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
) )
type PidEtc struct { type PidEtc struct {
+2 -2
View File
@@ -10,8 +10,8 @@ import (
"net" "net"
"sync" "sync"
"github.com/admin-else/strom/mc/crypto" "git.anygate.cloud/anygatecloud/strom/mc/crypto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
) )
type RawConn struct { type RawConn struct {
+2 -2
View File
@@ -6,8 +6,8 @@ import (
"io" "io"
"reflect" "reflect"
proto2 "github.com/admin-else/strom/mc/proto" proto2 "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
) )
type Reader struct { type Reader struct {
+2 -2
View File
@@ -5,8 +5,8 @@ import (
"encoding/binary" "encoding/binary"
"io" "io"
proto2 "github.com/admin-else/strom/mc/proto" proto2 "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
) )
type Writer struct { type Writer struct {
+4 -4
View File
@@ -5,10 +5,10 @@ import (
"reflect" "reflect"
"slices" "slices"
"github.com/admin-else/strom/mc/data" "git.anygate.cloud/anygatecloud/strom/mc/data"
"github.com/admin-else/strom/mc/event" "git.anygate.cloud/anygatecloud/strom/mc/event"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated"
) )
// SmartConvertibleTo reports whether a value of type from can be recursively converted to type to. // SmartConvertibleTo reports whether a value of type from can be recursively converted to type to.
+5 -5
View File
@@ -4,11 +4,11 @@ import (
"reflect" "reflect"
"testing" "testing"
proto2 "github.com/admin-else/strom/mc/proto" proto2 "git.anygate.cloud/anygatecloud/strom/mc/proto"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/proto_generated/v1_21_9" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_9"
"github.com/admin-else/strom/mc/proto_generated/v26_2" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
func TestCanSmartConvert(t *testing.T) { func TestCanSmartConvert(t *testing.T) {
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("\x05\x000000")
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("0")
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("00")
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("\x040000")
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("\x0400000")
-2
View File
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("\x86\x00000000")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("")
@@ -1,2 +0,0 @@
go test fuzz v1
[]byte("80\x00\x01\x05\x01\x010\x01\x00")
+10 -10
View File
@@ -1,16 +1,16 @@
package proto_generated package proto_generated
import ( import (
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/proto_generated/v1_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_8"
"github.com/admin-else/strom/mc/proto_generated/v1_12_2" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_12_2"
"github.com/admin-else/strom/mc/proto_generated/v1_14_4" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_14_4"
"github.com/admin-else/strom/mc/proto_generated/v1_16_5" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_16_5"
"github.com/admin-else/strom/mc/proto_generated/v1_21_8" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_8"
"github.com/admin-else/strom/mc/proto_generated/v1_21_9" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_9"
"github.com/admin-else/strom/mc/proto_generated/v1_21_11" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v1_21_11"
"github.com/admin-else/strom/mc/proto_generated/v26_1" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_1"
"github.com/admin-else/strom/mc/proto_generated/v26_2" "git.anygate.cloud/anygatecloud/strom/mc/proto_generated/v26_2"
) )
var SupportedVersions = []string{"1.8", "1.12.2", "1.14.4", "1.16.5", "1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"} var SupportedVersions = []string{"1.8", "1.12.2", "1.14.4", "1.16.5", "1.21.8", "1.21.9", "1.21.11", "26.1", "26.2"}
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_12_2
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_14_4
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_16_5
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_21_11
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_21_8
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_21_9
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )
+2 -2
View File
@@ -6,8 +6,8 @@ package v1_8
import ( import (
"encoding/binary" "encoding/binary"
"io" "io"
"github.com/admin-else/strom/mc/proto_base" "git.anygate.cloud/anygatecloud/strom/mc/proto_base"
"github.com/admin-else/strom/mc/nbt" "git.anygate.cloud/anygatecloud/strom/mc/nbt"
"github.com/google/uuid" "github.com/google/uuid"
) )

Some files were not shown because too many files have changed in this diff Show More