Plethora777 / mcpe_viz

Minecraft Pocket Edition (MCPE) World Visualization & Reporting Tool with Web App
GNU General Public License v2.0
167 stars 39 forks source link

Working with Kelp and Bubble Columns #62

Closed picotazo closed 5 years ago

picotazo commented 6 years ago

Ok I'm not sure what I have done here but right now I have bubble columns showing up on my maps by adding:

and remarking out:

However now Packed Ice is being identified on my maps as Bubble columns and Kelp is being identified as Shulker boxes of varying colors.

The odd thing is other Shulker boxes still identify properly mcpe_viz.txt

I attached my mcpe_viz.xml file changed the extension to .txt

any help in debugging what I screwed up would be awesome.

zetoken commented 6 years ago

Valid Bedrock Edition IDs can be found here: https://minecraft.gamepedia.com/Bedrock_Edition_data_values . New aquatic update block IDs are mostly > 0xFF but mcpe_viz code only manage IDs up to 256, that's why we can't see new blocks. I'll may try to setup a dev environment to check that and propose a quick fix (done)

EDIT: Finally it's a bit trickier than I hoped and that "256" value in the code involves more than just the capacity of the ID. I think I don't have enough knowledge of Minecraft format nor time to really fix it (no more "findBlockByUname" errors but some strange behaviors).

picotazo commented 6 years ago

thanks for working on it Zetoken.. you know a lot more than me on this stuff. All I have been able to do to is add a few entries to the XML file for the new items and enchants and stuff, and create a few more of the item images most worked great but once I started trying to get add the blocks they get funny. I notice some of the new items decimal ID's are negative numbers there is a clip from one of my recent log files

WARNING: getItemName failed to find id=-157 extradata=0 WARNING: getItemName failed to find id=-11 extradata=0 WARNING: getItemName failed to find id=-157 extradata=0 WARNING: getItemName failed to find id=-11 extradata=0 WARNING: getItemName failed to find id=-139 extradata=0 WARNING: getItemName failed to find id=-139 extradata=0 WARNING: getItemName failed to find id=-9 extradata=0 WARNING: getItemName failed to find id=-147 extradata=0 WARNING: getItemName failed to find id=-9 extradata=0 WARNING: getItemName failed to find id=-147 extradata=0 WARNING: getItemName failed to find id=-155 extradata=2 WARNING: getItemName failed to find id=-155 extradata=2 WARNING: getItemName failed to find id=-10 extradata=0 WARNING: getItemName failed to find id=-11 extradata=0 WARNING: getItemName failed to find id=-10 extradata=0 WARNING: getItemName failed to find id=-11 extradata=0 WARNING: getItemName failed to find id=-7 extradata=0 WARNING: getItemName failed to find id=-7 extradata=0 WARNING: getItemName failed to find id=-7 extradata=0 WARNING: getItemName failed to find id=-7 extradata=0 WARNING: getItemName failed to find id=-5 extradata=0 WARNING: getItemName failed to find id=-149 extradata=0 WARNING: getItemName failed to find id=-5 extradata=0 WARNING: getItemName failed to find id=-149 extradata=0

So I figured I would make a testing world and place one each of all the new blocks and see if I can find more data from the logs here is some of that one.

WARNING: getBlockByUname failed to find uname=minecraft:spruce_trapdoor WARNING: getBlockByUname failed to find uname=minecraft:birch_trapdoor WARNING: getBlockByUname failed to find uname=minecraft:jungle_trapdoor WARNING: getBlockByUname failed to find uname=minecraft:acacia_trapdoor WARNING: getBlockByUname failed to find uname=minecraft:dark_oak_trapdoor WARNING: getBlockByUname failed to find uname=minecraft:purpur_stairs WARNING: getBlockByUname failed to find uname=minecraft:prismarine_stairs WARNING: getBlockByUname failed to find uname=minecraft:dark_prismarine_stairs WARNING: getBlockByUname failed to find uname=minecraft:prismarine_bricks_stairs WARNING: getBlockByUname failed to find uname=minecraft:carved_pumpkin WARNING: getBlockByUname failed to find uname=minecraft:dried_kelp_block WARNING: getBlockByUname failed to find uname=minecraft:stripped_oak_log WARNING: getBlockByUname failed to find uname=minecraft:stripped_birch_log WARNING: getBlockByUname failed to find uname=minecraft:stripped_jungle_log WARNING: getBlockByUname failed to find uname=minecraft:stripped_acacia_log WARNING: getBlockByUname failed to find uname=minecraft:stripped_dark_oak_log WARNING: Did not find block variant for block(Red Sandstone Slab) with blockdata=4 (0x4) MSG3 WARNING: Did not find block variant for block(Red Sandstone Slab) with blockdata=3 (0x3) MSG3 WARNING: Did not find block variant for block(Red Sandstone Slab) with blockdata=2 (0x2) MSG3 WARNING: getBlockByUname failed to find uname=minecraft:coral WARNING: getBlockByUname failed to find uname=minecraft:coral WARNING: getBlockByUname failed to find uname=minecraft:coral WARNING: getBlockByUname failed to find uname=minecraft:coral WARNING: getBlockByUname failed to find uname=minecraft:coral WARNING: getBlockByUname failed to find uname=minecraft:coral_fan WARNING: getBlockByUname failed to find uname=minecraft:coral_fan WARNING: getBlockByUname failed to find uname=minecraft:coral_fan WARNING: getBlockByUname failed to find uname=minecraft:coral_fan WARNING: getBlockByUname failed to find uname=minecraft:coral_fan WARNING: getBlockByUname failed to find uname=minecraft:coral_fan_dead WARNING: getBlockByUname failed to find uname=minecraft:coral_fan_dead WARNING: getBlockByUname failed to find uname=minecraft:coral_fan_dead WARNING: getBlockByUname failed to find uname=minecraft:coral_fan_dead WARNING: getBlockByUname failed to find uname=minecraft:coral_fan_dead WARNING: getBlockByUname failed to find uname=minecraft:turtle_egg WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:sea_pickle WARNING: getBlockByUname failed to find uname=minecraft:blue_ice WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:coral_block WARNING: getBlockByUname failed to find uname=minecraft:spruce_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:birch_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:jungle_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:acacia_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:dark_oak_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:dark_oak_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:acacia_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:jungle_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:birch_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:spruce_pressure_plate WARNING: getBlockByUname failed to find uname=minecraft:conduit WARNING: getBlockByUname failed to find uname=minecraft:spruce_button WARNING: getBlockByUname failed to find uname=minecraft:birch_button WARNING: getBlockByUname failed to find uname=minecraft:jungle_button WARNING: getBlockByUname failed to find uname=minecraft:acacia_button WARNING: getBlockByUname failed to find uname=minecraft:dark_oak_button

I think the red sandstone errors are actually the different prismarine slabs.

But I hope this info can help.. please let me know how you fixed the errors and if I can help at all

ynleborg commented 6 years ago

@Plethora777 any chance for version handling IDs > 0xFF?

Plethora777 commented 5 years ago

Just pushed an update - give it a try

zetoken commented 5 years ago

I ran it on my 236Mo world… 30 minutes later the map was ready (full html). Logs are showing several warnings: WARNING: getItemName failed to find variant id=-155 (0xffffff65) extradata=3 (0x3) WARNING: getItemName failed to find variant id=441 (0x1b9) extradata=36 (0x24) WARNING: getItemName failed to find variant id=-132 (0xffffff7c) extradata=3 (0x3) WARNING: getItemName failed to find variant id=-132 (0xffffff7c) extradata=10 (0xa) WARNING: getItemName failed to find variant id=351 (0x15f) extradata=19 (0x13) WARNING: Did not find block variant for block(Stairs, Spruce Wood) with blockdata=12 (0xc) MSG1 WARNING: Did not find block variant for block(Mob Head) with blockdata=11 (0xb) MSG1 WARNING: Did not find block variant for block(Red Sandstone Slab) with blockdata=12 (0xc) MSG1 WARNING: Did not find block variant for block(Stairs, Birch Wood) with blockdata=9 (0x9) MSG3 WARNING: Did not find block variant for block(Stairs, Spruce Wood) with blockdata=12 (0xc) MSG3 WARNING: Did not find block variant for block(Stairs, Spruce Wood) with blockdata=8 (0x8) MSG3 WARNING: Did not find block variant for block(Stairs, Jungle Wood) with blockdata=9 (0x9) MSG3 (… almost all wood stairs in fact with many different blockdata value ...)

Good job!

Plethora777 commented 5 years ago

@zetoken yep lots of missing items to fill in the XML file. I'll do an update to reduce the volume of those messages

Plethora777 commented 5 years ago

I think this may be fixed by the new versions lately. I'm going to close this. Please feel free to open a new one if it's still a problem.