Commit Graph
14 Commits
Author SHA1 Message Date
OpenCode 53d366ae53 fix: implement IDSet (registryEntryHolderSet) decoder/encoder
- Replace old broken RegistryEntryHolderSetDecoder with correct varint
  discriminator: id != 0 returns raw ID, id == 0 decodes string base
- Add RegistryEntryHolderSetEncoder using type switch (string/int32)
- Add NonErroringIndex to proto_base (zero-fallback index lookup)
- DeclareRecipes now fails with index not found (mapper) instead of to do
2026-08-05 19:53:46 +02:00
OpenCode ac1b298989 fix: implement topBitSetTerminatedArray, fix nbt TAG_End, fix entity_equipment
- Implement topBitSetTerminatedArray decoder/encoder with MSB continuation
- Fix nbt.Tag.Decode to handle TAG_End at root level (fixes 1.8 slot NBT)
- Remove 228 now-passing decode failure tests, keep 10 still failing
- EntityEquipment now works correctly across all versions
2026-08-05 19:30:18 +02:00
OpenCode eb83786f9a fix: resolve parameterized $compareTo types and fix array count type
- VisitNameAndData: return any instead of named struct when mergeCompareTo
  resolves $compareTo, fixing field type mismatches for switch/container types
- ContainerCompareTo: traverse anon/bitfield fields for compareTo resolution,
  fixes entityMetadata 'field not found' errors
- Array.Count: change from string to any to handle numeric count values
- ArrayEncoder: fix nil check to correctly write length prefix for arrays
- ArrayDecoder: use fmt.Sprint for safe Count conversion
2026-08-05 18:33:39 +02:00
OpenCode 4b278b7ee3 fix: multiple bugfixes
- Fix data race: use atomic.Bool for running in server.go
- Fix busy loop in timer.go: use time.After when idle
- Fix division by zero in print_replay
- Fix silently swallowed errors in proto_generator
- Fix suppressed error in native_encoder
- Delete unused registry_data_hunter
2026-08-05 14:50:10 +02:00
OpenCode 0ed96837bd feat: add 1.16.5 protocol support
- Add 1.16.5 minecraft-data
- Add v1_16_5 proto_generated code
- Add OnSuccess1_16_5 handler in client/login.go
- Update proto_generator to include 1.16.5
- Update download_minecraft_data.sh
2026-08-05 11:13:58 +02:00
Admin Else c911f95665 strom: add 1.14.4 protocol support, extend legacy range to 1.14.4
- Add minecraft-data for 1.14.4 (protocol 498)
- Generate proto_generated/v1_14_4
- Extend legacy RegisterUntil range from 1.12.2 to 1.14.4
- Update download_minecraft_data.sh to use admin-else fork
  and include all supported versions
2026-08-05 10:29:07 +02:00
Admin Else 1e6ce06fb0 strom: add 1.12.2 protocol support and legacy login/status handlers
- Add minecraft-data for 1.12.2 (protocol 340)
- Generate proto_generated/v1_12_2
- Add v1_12_2 legacy handlers to client.Login (OnDisconnect,
  OnCompress, OnSuccess) and client.Status (OnStatus, OnPong)
- Same pattern as v1_8: RegisterUntilLatest only registers
  upward, so legacy versions need explicit RegisterCritical handlers
2026-08-04 22:01:06 +02:00
Admin Else d9bca7e517 strom: fix generator for pointer-receiver Encode, use nbt.Tag for named NBT
- Delete raw_capture subcommand (use tcpflow + raw-to-tmcpr instead)
- Fix DefaultEncoder to use temp variable for non-addressable value encoding,
  eliminating manual post-generation patches
- Map nbt and optionalNbt types to nbt.Tag (named NBT) instead of nbt.Anon
  (anonymous NBT) — 1.8 uses named NBT with root tag names
2026-08-04 16:40:47 +02:00
Admin Else b162d0d401 strom: add 1.8 protocol support, raw-to-tmcpr, disable raw-capture
- Add minecraft-data for version 1.8 (protocol 47)
- Generate proto_generated/v1_8 from 1.8 protocol.json
- Fix generator compatibility: missing CompareTo natives (i16, i32, u16, u32,
  i64, string, nbt, optionalNbt), parameterized type placeholder handling ()
- Add raw-to-tmcpr subcommand: converts raw tcpflow captures to TMCPR
  with zlib decompression and state-aware compression threshold tracking
- Extend print-replay: 1.8 state transitions (success->Play, login_start->Play,
  handshake/status initial states, set_protocol NextState detection)
- Comment out broken raw-capture subcommand (use tcpflow instead)
- Fix nbt.Anon Encode/Decode on value receivers
2026-08-04 16:10:15 +02:00
adman 5a55520126 migrate proto_generated to be runable from repo root 2026-07-23 22:26:23 +02:00
adman 45151add64 Remove proto_base.Void 2026-07-23 22:11:29 +02:00
adman 94301a4a50 Add 26.2 protocol support to strom 2026-07-23 15:06:49 +02:00
adman d388e2c350 add 26.1 support, raw-capture subcommand, and local minecraft-data copy script 2026-07-22 23:22:14 +02:00
adman 666f250b3e mc root source folder cleanup 2026-06-27 13:54:54 +02:00