CD4017BE / VerticallyStackedDimensions

MIT License
5 stars 2 forks source link

Breaks with Not Enough IDs and JEIDs #15

Closed NihilEntropy closed 5 years ago

NihilEntropy commented 5 years ago

What happened

When these two mods are installed, separately (I don't know about together), some key mechanics break. The bottom transition portal becomes unbreakable unless you go into creative mode and break them, bedrock is also unable to be removed via VSD (I used a separate mod to circumvent this). It would seem that it is a loading issue?

What I did

Config for Vertically Stacked Dimensions (Sorry for some redundancy, I really had to try to get rid of that bedrock): https://pastebin.com/VpJPjafP

Used versions

Minecraft-1.12.2 VerticallyStackedDimensions-1.12.2-0.1.4 CD4017BE_lib-1.12.2-6.4.5 Forge-1.12.2-14.23.5.2838 The+Beneath-1.12.2-1.5.0 (Dimension directly below the overworld, but it happens in all dimensions regardless, I will not list all of the dimension mods I have, as they are not all relevant) NotEnoughIDs-1.5.4.4 JustEnoughIDs-1.0.2-26 BedrockReplacer-Forge-7.0.2. (in case you want to see why that manages to get rid of the bedrock)

If you need anything else, I can provide more information.

CD4017BE commented 5 years ago

I assume the not enough IDs mod allows having more than different 4096 Blocks * 16 meta state. That means it probably hacks into a lot of MC code including the ChunkPrimer that my mod is hacking as well to prevent generation of Bedrock. Probably not enough IDs makes the world generation use a different ChunkPrimer implementation that circumvents my bedrock removal feature.

And the Portal unbreakability is then caused by bedrock blocks on the other side that weren't removed.

Not sure however why the block replacement strategy for bedrock removal didn't work at least because that one should be independent of Blocks IDs.

Could you please post the log as well so I can see whether my mod posted any class transformer errors during startup or terrain generator errors later on.

NihilEntropy commented 5 years ago

Hopefully this works, I had to dig around since after 22 days the log file was deleted and I found one from one of my servers I hosted that contained most of the information from around the 14th. I see in the log something about CD4017BE and a chunk primer, so hopefully this has what you need.

Sorry if there is a lot of junk in the log, https://pastebin.com/MwMKjcHM

CD4017BE commented 5 years ago

There it is, as I already assumed neid is patching ChunkPrimer in a way that makes my bedrock removal patch not work anymore:

[20:01:43] [Server thread/INFO] [dimstack]: Testing ClassTransformer result of class cd4017be.dimstack.asm.ChunkPrimerTransformer for correct functionality ...
[20:01:43] [Server thread/INFO] [neid]: Patching class: "net.minecraft.world.chunk.ChunkPrimer" with Transformer Group: "TransformerGroupChunkPrimer"
[20:01:43] [Server thread/INFO] [neid]: Patching class: "ru.fewizz.neid.asm.Hooks" with Transformer Group: "TransformerGroupChunkPrimer"
[20:01:43] [Server thread/INFO] [dimstack]: dryTest passed!
[20:01:43] [Server thread/FATAL] [dimstack]: mainTest failed! Please report this to the mod author!
java.lang.Exception: Blacklisted block was placed: expected minecraft:stone@0 but got minecraft:obsidian@0.

Now the question is how could i fix this ...

NihilEntropy commented 5 years ago

I saw that you fixed it, amazing! By extension this should be fixed for JEID I'm guessing. When should we expect an update? It's in master but not release.

NihilEntropy commented 5 years ago

@CD4017BE , I built a version of this with fix #15 commit 029101b (took several hours to figure out how to do this, and I'm not sure if it is possible that I did it wrong, as in somehow built the same version even though the files had the changes), and tested it. The issue seems to still be present.

I called the jar x.1 at the end do identify the build, here is part of the log, I'll save the rest if you need more (this seems to be the relevant part). https://pastebin.com/ay0jA5a2

CD4017BE commented 5 years ago

Did you do the test against NEID or against JEID? Because with NEID the fix was definitely working but as I later also tested it with JEID, that one doesn't work and still produces that log entry similar to yours.

I waited with the release to first fix it for JEID as well. But now it turned out to more complicated because that mod completely replaces the entire class and also uses a different class transformation tool than the one provided by forge.

I'll then release now so you can at least use it with NEID and for JEID probably gonna ask the mod developer for a fix on his side since it already has a special integration add-on for incompatible mods anyway.

NihilEntropy commented 5 years ago

k, I used JEID the second time, I'll see what I can do. Until then I'll look into switching back to NEID.