Hello folks, a month or two ago I tried playing minecraft at my daughters behest.. now I am running two minecraft PE servers (both docker images), one is pmmp and the other is nukkit. Near as I can tell, Nukkit uses Anvil by default and PMMP uses PMAnvil. I thought I'd try some mapping software to allow us to see what our changes look like in the scope of the whole worlds. After much testing I settled on mapcrafter, and it works great on the Nukit Anvil stuff.. but the PMAnvil stuff is not so luckly.. thereby meaning PMMP worlds won't map. they also can't be correctly run by nukkit as I spent ages looking for my buildings only to discover that the created world with the name of my pmmp would was actually identical to the default nukkit world so nukkit clearly doesn't understand pmanvil. So I thought, no worries, i'll convert the PMAnvil to straight Anvil and use that converted copy to map the world.. but it turns out there is no PMAnvil to Anvil converter. I understand that the changes are minor so it's possible I could knock something up.. but I have a steep learning curve ahead if that is what I end up doing so I thought i'd better check to see what the experts think. Basically I want a way to map worlds from both pmmp and Nukkit and also occasionally swap worlds from one to the other (Anvil to PMAnvil is covered pretty well, it's just the other way around that that isn't covered at all.) Can you good folks offer any thoughts and/or suggestions regarding this? I don't even know enough to be dangerous yet, but it seems sad that nobody created a server that looked at whatever world(s) it was being asked to start, figured out what format it was, pulled in a backend for that world and just run it. (idk maybe with block substitutions for missing bits) that way you could just grab worlds from any other version of minecraft and go to town.. no doubt they would all run at different speeds, but it'd still be cool if the end result was still playable.
PocketMine does have support for several formats: mcregion, anvil, pmanvil, and even experimental support for leveldb although it's still a WIP I think. Although PocketMine does use PMAnvil by default, but there was nothing to stop you using Anvil instead by changing the level format in pocketmine.yml, which might have been your best option if you'd known that before you started. There are performance issues with Anvil and PocketMine, but that can be solved with dktapps' PHP extension https://github.com/dktapps/PocketMine-C-ChunkUtils. As for converting pmanvil to anvil to keep PocketMine compatible with Nukkit... considering that Nukkit is essentially PocketMine ported to JAVA, I think it would make more sense to ask Nukkit to add support for the pmanvil format.
One of the members of the staff team intended to write a converter for PMAnvil some time ago, but he hasn't shown himself for a couple months already now.
With the extension the performance different is so small it's not worth fussing about. I would recommend using Anvil worlds IF you have the extension available, and only use PMAnvil if you can't get the extension for some reason. PMAnvil is less portable. It was originally intended as a solution to the performance problems brought about by chunk conversion at MCPE 1.0, however it's now rendered obsolete by the extension.