pmmp / PocketMine-MP

A server software for Minecraft: Bedrock Edition in PHP
https://pmmp.io
GNU Lesser General Public License v3.0
3.25k stars 1.53k forks source link

Server crashed when loading Java world #2653

Open xNayte opened 5 years ago

xNayte commented 5 years ago

Link to crashdump: https://crash.pmmp.io/view/2087406

Crash occurs with and without plugins, and it only occurs when i try to load a Java Edition world. I start the server, and it immediately crashes.

Help would be GREATLY appreciated.

ghost commented 5 years ago

hub.zip

ZizzyZizzy commented 5 years ago

The world was GENERATED in which version of Java Edition?

ZizzyZizzy commented 5 years ago

Oh, also try this on the world: https://github.com/Fenixin/Minecraft-Region-Fixer

Might have a corruption problem with the world, or it may simply be too new for PMMP to know what to do with all the new entities, mobs, etc...

ZizzyZizzy commented 5 years ago

I scanned it with the older version of Region Fixer (0.2.1) and it complained similarly to your crash. Probably the world is too new:

`** Exception while scanning: Temple_index.dat


Printing the child's traceback: Exception:<type 'exceptions.ValueError'>Unrecognised tag type


File /home/multicraft/jar/region-fixer.0.2.1/regionfixer_core/scan.py, line 638, in scan_data _ = nbt.NBTFile(filename=s.path)** File /home/multicraft/jar/region-fixer.0.2.1/nbt/nbt.py, line 517, in init self.parse_file()** File /home/multicraft/jar/region-fixer.0.2.1/nbt/nbt.py, line 544, in parse_file self._parse_buffer(self.file)** File /home/multicraft/jar/region-fixer.0.2.1/nbt/nbt.py, line 391, in _parse_buffer tag = TAGLISTtype.value** File /home/multicraft/jar/region-fixer.0.2.1/nbt/nbt.py, line 379, in init self._parse_buffer(buffer)** File /home/multicraft/jar/region-fixer.0.2.1/nbt/nbt.py, line 395, in _parse_buffer raise ValueError("Unrecognised tag type")


`

dktapps commented 5 years ago

Worlds newer than 1.12 are not currently supported and are unlikely to be for the foreseeable future.

xNayte commented 5 years ago

Ah ok. I will try generating in 1.12. Thanks for your help, everyone!

edwinyoo44 commented 5 years ago

Please use Minecraft Java 1.11 to generat.

dktapps commented 5 years ago

Part of the issue here stems from the Java devs' poor version management. We don't encounter a checkable version number until trying to actually load chunks. Ideally an incompatible world should not load at all. There's nothing in level.dat that can be used to address this problem to the best of my knowledge.

diamond-gold commented 5 years ago

https://minecraft.gamepedia.com/Level_format There is a Version Compound tag that stores the Minecraft version the world was saved in

dktapps commented 5 years ago

Not ideal, because it will mean either we have to set an upper limit based on what we know works (and get people complaining that compatible worlds won't load) or wait for problems like this to appear and then cap the upper bound when that happens. Neither approach is good.

I was talking about a world-specific format version, because the format does not change with every game version. Sadly, the version tag was not updated to address the 1.13 changes.