Add compatibility with EndlessIds to redo server cache command - #84
Conversation
Algent
left a comment
There was a problem hiding this comment.
Was just added into the org so I guess I'll try a review.
I'll first say that it work well in game.
Someone in discord shared the sources last night and it may be useful files for you:
https://github.com/GTMEGA/EndlessIDs/blob/master/src/main/java/com/falsepattern/endlessids/managers/BlockIDManager.java
https://github.com/GTMEGA/EndlessIDs/blob/master/src/main/java/com/falsepattern/endlessids/managers/BlockMetaManager.java
One thing of note is Block IDs side got a potential extra key "BlocksB3". Probably won't be reached anytime soon but would you mind adding it ? Not necessary to merge but would be nice.
More importantly the NotEnoughIds have a bunch of data corruption check, is it possible to add some similar guards in this new code ?
|
I'll merge and take a look at it. I had been trying to improve rescan on my side but this PR is severely needed first, right now we just get zero hit on rescan on converted data |
Some (newly?) generated worlds do not have TileEntity ores, but also do not have NotEnoughIds installed, only EndlessIds.
For this worlds, current redo server cache implementation do not find any ores, as
PartiallyLoadedChunk::loadmisidentifies them as only containing TileEntity ores, which is not true. So, no ores are actually added to cache and saved.Implemented EndlessIds path to extract block ids and metadata, tested on the world with described behaviour.