Anon
e744ff206b
hypixel book fixes
2026-06-10 17:16:30 +02:00
Anon
c6ca3dc13d
Formatted the code and removed logs from Auto Attack
2026-06-04 11:42:41 +02:00
Anon
d55fd75520
Fixed shulker crashing on 26.1 (Structured Components)
2026-05-07 19:57:23 +02:00
Anon
05741da9f1
Rename 26.1 structured component folder
2026-04-30 16:22:43 +02:00
Anon
5ad0d55705
Fix 26.1 structured component decoding
2026-04-30 16:18:59 +02:00
Anon
2f40cc1538
More component updates and fixes for 1.21.5, 1.21.11 and 26.1
2026-03-25 12:46:43 +01:00
Anon
c43b157b55
More fixed for 1.21.5, 1.21.9, 1.21.11, stress tested against everything from 1.20.6 - 1.21.11
2026-03-25 02:08:59 +01:00
Anon
17808bb652
Fixed the component system from 1.20.6 - 1.21.11
2026-03-25 01:08:27 +01:00
BruceChen
d4014f7c87
feat: add 26.1 packet palette, structured components registry, and version routing
...
Add PacketPalette261 with new packet types (GameRuleValues, LowDiskSpaceWarning,
Attack, SetGameRule). Create StructuredComponentsRegistry261 with 6 new components
(additional_trade_cost, dye, pig/cow/chicken/cat sound_variant). Update version
routing in PacketType18Handler, EntityMetadataPalette, StructuredComponentsHandler,
and Program.cs to support protocol 775 (26.1).
Made-with: Cursor
2026-03-22 20:04:08 +08:00
BruceChen
c0c4c078c0
fix: use HashedStack for container_click and fix enchantments parsing for 1.21.5+
...
Two bugs fixed:
1. EnchantmentsComponent was reading a trailing ShowTooltip boolean that
was removed from the wire format in MC 1.21.5. Created
EnchantmentsComponent1215 and StoredEnchantmentsComponent1215 that
omit the boolean. Used by StructuredComponentsRegistry1215 and 12111.
2. MC 1.21.5+ changed ServerboundContainerClickPacket to use HashedStack
(item holder id + count + hashed component patch map) instead of full
ItemStack for changed slots and carried item. Added GetHashedItemSlot()
in DataTypes.cs and gated SendWindowAction in Protocol18.cs to use it
for 1.21.5+. Since MCC doesn't track component hashes, an empty
HashedPatchMap is sent; the server detects stateId mismatch and resyncs.
Tested: AutoFishing bot successfully catches fish on MC 1.21.11 with
enchanted fishing rods (Lure III + Luck of the Sea III).
Made-with: Cursor
2026-03-22 02:18:01 +08:00
BruceChen
6c36dc341a
feat: add version routing, structured components, and metadata for MC 1.21.11
...
- Add MC_1_21_11_Version constant (protocol 774)
- Create StructuredComponentsRegistry12111 with 104 components (8 new:
use_effects, minimum_attack_charge, damage_type, attack_range,
piercing_weapon, kinetic_weapon, swing_animation, zombie_nautilus/variant)
- Add 6 new component classes for 1.21.11 wire formats
- Add RegistryEitherHolderComponent for holderRegistry-backed EitherHolder
- Add ZombieNautilusVariant and HumanoidArm cases in DataTypes.ReadNextMetadata
- Update all version routing in Protocol18, PacketType18Handler,
EntityMetadataPalette, StructuredComponentsHandler, and ProtocolHandler
- Bump MCHighestVersion to 1.21.11
Made-with: Cursor
2026-03-22 00:56:04 +08:00
BruceChen
8df39ba74a
feat: add MC 1.21.5 (protocol 770) support
...
Full protocol adaptation for Minecraft 1.21.5:
- Protocol version mapping: 770 -> 1.21.5
- Packet palette: AddExperienceOrb removed (S2C), TestInstanceBlockStatus
added (S2C), SetTestBlock and TestInstanceBlockAction added (C2S)
- Entity metadata palette: 5 new serializer types (OptionalLivingEntityReference,
CowVariant, WolfSoundVariant, PigVariant, ChickenVariant), OPTIONAL_UUID
replaced by OPTIONAL_LIVING_ENTITY_REFERENCE
- Item palette: 11 new items (Bush, FireflyBush, DryShortGrass, DryTallGrass,
Wildflowers, LeafLitter, CactusFlower, TestBlock, TestInstanceBlock,
BlueEgg, BrownEgg)
- Entity palette: Potion split into SplashPotion and LingeringPotion
- Block palette: 9 new blocks (bush, cactus_flower, firefly_bush, leaf_litter,
short_dry_grass, tall_dry_grass, test_block, test_instance_block, wildflowers)
- Structured components: 31 new components including tooltip_display, weapon,
blocks_attacks, potion_duration_scale, provides_trim_material,
provides_banner_patterns, break_sound, and 25 entity variant components;
unbreakable changed from Bool to Unit; instrument changed to EitherHolder
Made-with: Cursor
2026-03-21 00:48:27 +08:00
BruceChen
57a0dedb33
feat: add packet palette, data components, and protocol fixes for MC 1.21.2
...
Packet Palette (Phase 2.1):
- Create PacketPalette1212.cs with complete ID mapping for protocol 768
(131 clientbound + 60 serverbound play packets, plus config packets)
- Add new PacketTypesIn enum values: EntityPositionSync, MoveMinecartAlongTrack,
PlayerRotation, RecipeBookAdd/Remove/Settings, SetCursorItem, SetHeldSlot,
SetPlayerInventory
- Add new PacketTypesOut enum values: BundleItemSelected, ClientTickEnd
- Update PacketType18Handler routing for 1.21.2
Data Components (Phase 1.4):
- Create StructuredComponentsRegistry1212 with 67 components (was 57 in 1.21)
reflecting the new 1.21.2 DataComponents ordering
- Implement 11 new component parsers: ConsumableComponent, UseRemainderComponent,
UseCooldownComponent, DamageResistantComponent, EnchantableComponent,
EquippableComponent, RepairableComponent, GliderComponent, TooltipStyleComponent,
DeathProtectionComponent, ItemModelComponent
- Create FoodComponent1212 (simplified: nutrition/saturation/canAlwaysEat only;
eatSeconds/effects/usingConvertsTo moved to consumable/use_remainder)
- Create SubComponentRegistry1212 and route in StructuredComponentsHandler
Protocol Fixes:
- Fix PlayerPositionAndLook packet for 1.21.2 (new format: teleportId first,
added deltaMovement Vec3, flags as Int instead of Byte)
- Fix login success packet (remove strictErrorHandling read for >= 1.21.2)
- Fix ClientSettings/ClientInformation packet (add particleStatus VarInt)
- Add SetHeldSlot as alias for HeldItemChange in packet handler
Verified: MCC connects to 1.21.2 vanilla server, stays connected, chat works.
Made-with: Cursor
2026-03-20 03:25:20 +08:00
BruceChen
c23c229eb2
feat: protocol 767 (1.21) packet handling and AttributeSubComponent update
...
- Add AttributeSubComponent121 that uses ResourceLocation(string) instead
of UUID+Name, matching the 1.21 attribute modifier wire format change.
Register it in SubComponentRegistry121 via new ReplaceSubComponent method.
- Add ProjectilePower packet handler: reads 1 double (accelerationPower)
for 1.21+, or 3 doubles (xPower/yPower/zPower) for 1.20.6.
- Add CustomReportDetails and ServerLinks packet handlers in both Play
and Configuration phases, consuming all fields to prevent byte offset
errors on 1.21 servers.
Made-with: Cursor
2026-03-20 01:22:25 +08:00
Anon
f83e7c5707
Preliminary 1.21 Support
2024-12-06 16:45:48 +01:00
Anon
0da4a718cb
Implemented all structured components, renamed them all to a better format
2024-10-05 13:37:52 +02:00
Anon
4dea688ca2
Added more structured components
2024-09-11 20:58:24 +02:00
Anon
49319fe781
Added more components + added item palette reference
2024-09-11 20:35:23 +02:00
Anon
76e873ed54
WIP: Added some strctured components
2024-09-11 19:12:31 +02:00
Anon
63b027d84a
First Version of Structured Components
2024-09-01 20:42:39 +02:00