Question

Minecraft Writer Internal Error failed to create valid block index

  • 30 March 2020
  • 4 replies
  • 7 views

I've just recently gotten started with FME, and have been converting point cloud xyz files to Mojang Minecraft format. My converter works for a couple files, but yields a cryptic error message for most of the files I've tried:

MINECRAFT writer: Internal Error: Failed to create a valid block index in regionX: '-1', regionZ: '-1', chunkX: '30', chunkZ: '30'

Since I've already scaled and shifted heights (z-coordinates in the point cloud, y-coordinates in Minecraft) well within the limits of Minecraft, and this is a chunk error, I feel I can safely assume this has nothing to do with height. I wasn't able to find any documentation of width and depth limits to the Minecraft writer, and the point cloud is scaled to a 64x64 area, so I'm not sure what's going on here.

Any help is greatly appreciated! I can't find much information on the Minecraft writer.


4 replies

Hi @matt_crow, sorry to hear you are getting an error with the Minecraft writer. Would it be possible for you to share your dataset and workspace with us, so we could take a closer look at it? Thank you.

Hi @matt_crow, sorry to hear you are getting an error with the Minecraft writer. Would it be possible for you to share your dataset and workspace with us, so we could take a closer look at it? Thank you.

Sorry it took me so long to get back to you @alyssaatsafe. It took me a while, but I eventually figured out that using a PointCloudComponentTypeCoercer to cast coordinates to integers was causing the problem, but a PointCloudExpressionEvaluator works just fine. Attached is a workspace with the issue, having the problematic Transformer located at the top of the "perform shifting" bookmark, named "thisCausedTheProblem". convertererror.zip revittest.csv . One of the data sets that caused the problem is attached as well, but many data sets had this issue. You can resolve the error by simply switching out the "thisCausedTheProblem" with "castXYToInt", located above the "perform shifting" bookmark. I've solved the problem, I just want to know what I was doing wrong originally.

Sorry it took me so long to get back to you @alyssaatsafe. It took me a while, but I eventually figured out that using a PointCloudComponentTypeCoercer to cast coordinates to integers was causing the problem, but a PointCloudExpressionEvaluator works just fine. Attached is a workspace with the issue, having the problematic Transformer located at the top of the "perform shifting" bookmark, named "thisCausedTheProblem". convertererror.zip revittest.csv . One of the data sets that caused the problem is attached as well, but many data sets had this issue. You can resolve the error by simply switching out the "thisCausedTheProblem" with "castXYToInt", located above the "perform shifting" bookmark. I've solved the problem, I just want to know what I was doing wrong originally.

Thank you @matt_crow for uploading the data and the workspace! We will take a look and let you know.

Hi @matt_crow, thanks again for sharing your workspace and dataset. My colleague from the development team looked further into it and figured the PointCloudComponentTypeCoercer wasn't updating the bounds of the point cloud, so the extent was out of sync for the point cloud after the "thisCausedTheProblem" transformer. He also provided with another workaround: for the recalculateMinZ transformer, set the Calculate and Update Extents parameter to Yes. This will recalculate the bounds of the point cloud, so they are accurate for the downstream process.

Hope this clarifies your question a bit. We have filed this PointCloudComponentTypeCoercer issue internally (FMEENGINE-63930). Thank you for bringing this to our attention!

Reply