gophertunnel
gophertunnel copied to clipboard
Can't use rockets or place shulkers
My connected clients are unable to use rockets, whether launched from the ground, or for flying.
True in both creative and survival. You are also unable to interact with the item slot that has rockets in it at all - can't remove them from the slot, pick block while on the slot, or drop them with Q
Shulkers also cannot be placed, although this only happens in Survival.
I've tried looking at the packets sent when a shulker is placed, and they different between the two, I'm just not sure why. I would assume these packets should just be passed through like all the other packets, but something must be getting in the way.
client packets when placing shulker in Creative:
Packet: &packet.InventoryTransaction{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction{}, TransactionData:(*protocol.UseItemTransactionData)(0xc00002a270)}
TransactionData: &protocol.UseItemTransactionData{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction(nil), ActionType:0x0, BlockPosition:protocol.BlockPos{100, 64, 84}, BlockFace:1, HotBarSlot:6, HeldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:218, MetadataValue:0x0}, BlockRuntimeID:6830, Count:0x1, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, Position:mgl32.Vec3{101.43313, 66.62001, 85.712845}, ClickedPosition:mgl32.Vec3{0.34401703, 1, 0.25343323}, BlockRuntimeID:0xe3c}
Packet: &packet.InventoryTransaction{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction{}, TransactionData:(*protocol.UseItemTransactionData)(0xc00002a410)}
TransactionData: &protocol.UseItemTransactionData{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction(nil), ActionType:0x1, BlockPosition:protocol.BlockPos{0, 0, 0}, BlockFace:255, HotBarSlot:6, HeldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:218, MetadataValue:0x0}, BlockRuntimeID:6830, Count:0x1, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, Position:mgl32.Vec3{101.43313, 66.62001, 85.712845}, ClickedPosition:mgl32.Vec3{0, 0, 0}, BlockRuntimeID:0x0}
client packets from Survival
Packet: &packet.InventoryTransaction{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction{protocol.InventoryAction{SourceType:0x0, WindowID:0, SourceFlags:0x0, InventorySlot:0x5, OldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:205, MetadataValue:0x0}, BlockRuntimeID:7462, Count:0x1, NBTData:map[string]interface {}{"Items":[]interface {}{}}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, NewItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:0, MetadataValue:0x0}, BlockRuntimeID:0, Count:0x0, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string(nil), CanBreak:[]string(nil), HasNetworkID:false}}}}, TransactionData:(*protocol.UseItemTransactionData)(0xc0002224e0)}
TransactionData: &protocol.UseItemTransactionData{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction(nil), ActionType:0x0, BlockPosition:protocol.BlockPos{63, 12, -354}, BlockFace:1, HotBarSlot:5, HeldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:205, MetadataValue:0x0}, BlockRuntimeID:7462, Count:0x1, NBTData:map[string]interface {}{"Items":[]interface {}{}}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, Position:mgl32.Vec3{63.5, 14.62001, -354.5}, ClickedPosition:mgl32.Vec3{0.80924225, 1, 0.49331665}, BlockRuntimeID:0x1b00}
Packet: *packet.Interact
Packet: *packet.MobEquipment
Oddly, if you change you gamemode to Survival in a Creative world, you can still place shulkers:
Client packets for Survival mode in Creative world:
Packet: &packet.InventoryTransaction{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction{protocol.InventoryAction{SourceType:0x0, WindowID:0, SourceFlags:0x0, InventorySlot:0x6, OldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:218, MetadataValue:0x0}, BlockRuntimeID:6830, Count:0x1, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, NewItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:0, MetadataValue:0x0}, BlockRuntimeID:0, Count:0x0, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string(nil), CanBreak:[]string(nil), HasNetworkID:false}}}}, TransactionData:(*protocol.UseItemTransactionData)(0xc000e8c0d0)}
TransactionData: &protocol.UseItemTransactionData{LegacyRequestID:0, LegacySetItemSlots:[]protocol.LegacySetItemSlot(nil), Actions:[]protocol.InventoryAction(nil), ActionType:0x0, BlockPosition:protocol.BlockPos{101, 64, 83}, BlockFace:1, HotBarSlot:6, HeldItem:protocol.ItemInstance{StackNetworkID:0, Stack:protocol.ItemStack{ItemType:protocol.ItemType{NetworkID:218, MetadataValue:0x0}, BlockRuntimeID:6830, Count:0x1, NBTData:map[string]interface {}{}, CanBePlacedOn:[]string{}, CanBreak:[]string{}, HasNetworkID:false}}, Position:mgl32.Vec3{103.23795, 66.62001, 83.8564}, ClickedPosition:mgl32.Vec3{0.4778061, 1, 0.31988525}, BlockRuntimeID:0xe3c}
Packet: *packet.Interact
Packet: *packet.MobEquipment
What server software are you using?
Latest official BDS software (1.18.1.02)
Is this issue still present in the current version of gophertunnel?
Closing this because I expect this to have been fixed since.
This is still an issue in 1.27.2
Can confirm. I still can't place shulker boxes in BDS. Tested in gophertunnel 1.30.0.