MCEdit-Unified icon indicating copy to clipboard operation
MCEdit-Unified copied to clipboard

"corrupted compressed block contents" when opening Bedrock world

Open ahigerd opened this issue 6 years ago • 9 comments

Description of Issue:

Loading my Bedrock world fails with the error "corrupted compressed block contents".

MCEdit Version:

git 568c01d0 (1.6.0.0)

Minecraft Version the world was last opened in:

Bedrock beta 1.8.0.14

Operating System:

macOS 10.13.6

A screenshot or full text of the error from the console:

(master) MacBook-Pro:MCEdit-Unified coda$ python mcedit.py --debug-pe --debug-pe
Running in fixed mode. Support files are in your App Support Folder (Available from the main menu of MCEdit)
pygame 1.9.4
Hello from the pygame community. https://www.pygame.org/contribute.html
Splash load...
[ ****** ] ~~~~~~~~~~ Starting MCEdit-Unified v1.6.0.0
[   ERROR][          pymclevel.nbt.py:703]:Failed to import Cythonized nbt file. Running on (very slow) pure-python nbt fallback.
[   ERROR][          pymclevel.nbt.py:704]:(Did you forget to run 'setup.py build_ext --inplace'?)
[   ERROR][          pymclevel.nbt.py:705]:cannot import name TAG_Long_Array
Game Version: Unknown : Unknown
/var/folders/9c/qz7q1_lj73qbd9c9vbmk_xl00000gn/T
[ WARNING][            mcplatform.py:1260]:Initializing window management...
Minecraft_Server.jar storage initialized.
Each server is stored in a subdirectory of /Users/coda/Library/Application Support/pymclevel/ServerJarStorage named with the server's version number
Cached servers:  []
/Users/coda/MCEdit-Unified/toolicons/session_good.png
*** MCEDIT DEBUG: file_dialog: /Users/coda/MCEdit-Unified/albow/file_dialogs.pyc
*** MCEDIT DEBUG: directory: /Users/coda/MCEdit-Unified/albow
*** MCEDIT DEBUG: current directory: /Users/coda/MCEdit-Unified
[   ERROR][                  root.py:1332]:Wasn't able to open a file {file => /var/folders/9c/qz7q1_lj73qbd9c9vbmk_xl00000gn/T/mcworld_jmsXSX/level.dat}
Traceback (most recent call last):
  File "/Users/coda/MCEdit-Unified/leveleditor.py", line 1329, in loadFile
    level = pymclevel.fromFile(filename)
  File "/Users/coda/MCEdit-Unified/pymclevel/mclevel.py", line 226, in fromFile
    return PocketLeveldbWorld(filename)
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldbpocket.py", line 886, in __init__
    self.worldFile = PocketLeveldbDatabase(filename, self, create=create, world_version=self.world_version, dat_world_version=self.dat_world_version)
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldbpocket.py", line 303, in __init__
    it.SeekToFirst()
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldb.py", line 327, in SeekToFirst
    self._impl.SeekToFirst()
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldb.py", line 971, in SeekToFirst
    self._checkError()
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldb.py", line 988, in _checkError
    _checkError(error)
  File "/Users/coda/MCEdit-Unified/pymclevel/leveldb.py", line 935, in _checkError
    raise _err(message)
ZipCompressionError: Corruption: corrupted compressed block contents

Contents of dump_pe.txt:

Binary world version: '\x08'; compressor: (4, 2)
Binary world version: '\x08'; compressor: (4,)
Binary world version: '\x08'; compressor: (2,)

How to reproduce:

I installed MCEdit-Unified from source and followed the instructions to copy the _nbt.so into place from the last binary distribution.

I exported my world from the Windows 10 version of Minecraft, copied the .mcworld file over to my Mac (since that's where my development stuff is), and attempted to load the file.

I don't mind uploading the world somewhere if needed, but it's 86MB.

ahigerd avatar Nov 12 '18 03:11 ahigerd

See if you can reproduce this on a smaller world and send that. It might just be that we need to update the leveldb.dll

gentlegiantJGC avatar Dec 30 '18 12:12 gentlegiantJGC

Same error here.

MCEdit Unified for Java 1.12 and Bedrock v1.5.6.0

Running in fixed mode. Support files are in your Documents folder.
Splash load...
[ ****** ] ~~~~~~~~~~ Starting MCEdit-Unified v1.5.6.0
ERROR: The system was unable to find the specified registry key or value.
[ WARNING][            mcplatform.py:1276]:Initializing window management...
Minecraft_Server.jar storage initialized.
Each server is stored in a subdirectory of C:\Users\...\OneDrive\Documents\MCEdit\ServerJarStorage named with the server's version number
Cached servers:  []
[   ERROR][pymclevel.leveldbpocket.py:194]:Error while opening world database from C:\Users\...\Downloads\... (Corruption: corrupted compressed block contents)
[   ERROR][                  root.py:1190]:Wasn't able to open a file {file => C:\Users\...\Downloads\...\level.dat}
Traceback (most recent call last):
  File "leveleditor.py", line 1187, in loadFile
  File "pymclevel\mclevel.py", line 226, in fromFile
    return PocketLeveldbWorld(filename)
  File "pymclevel\leveldbpocket.py", line 447, in __init__
    self.worldFile = PocketLeveldbDatabase(filename, create=create)
  File "pymclevel\leveldbpocket.py", line 200, in __init__
    leveldb_mcpe.RepairWrapper(os.path.join(path, 'db'))
ArgumentError: Python argument types in
    RepairWrapper.__init__(RepairWrapper, unicode)
did not match C++ signature:
    __init__(struct _object * __ptr64, struct _object * __ptr64, struct _object * __ptr64)

servel333 avatar Jul 02 '19 04:07 servel333

MCEdit 1.5 is not compatible with Bedrock worlds. This is a different issue

gentlegiantJGC avatar Jul 02 '19 06:07 gentlegiantJGC

I thought the whole thing with unified was that it was compatible... Am I missing something?

servel333 avatar Jul 02 '19 13:07 servel333

MCEdit 1.6 is but 1.5 was released before Bedrock existed

gentlegiantJGC avatar Jul 02 '19 13:07 gentlegiantJGC

I see on the website that 1.5 is the latest. Is there a release for 1.6 somewhere else, or is it unreleased?

servel333 avatar Jul 02 '19 13:07 servel333

It is a beta on the website. Bottom right of the top box

gentlegiantJGC avatar Jul 02 '19 13:07 gentlegiantJGC

It took a minute, but I see the download for MCEdit-Unified 1.6.0.53-testing.

Thanks for the help!

servel333 avatar Jul 02 '19 13:07 servel333

That worked. It looks like it doesn't support some of the new blocks, but it is working and that's what I needed. Thanks again.

servel333 avatar Jul 02 '19 13:07 servel333