Overworld Two

Overworld Two

133k Downloads

[1.16.5] Possible JVM EXCEPTION_ACCESS_VIOLATION crash changing dimensions from overworld to another

Kaleidio opened this issue ยท 14 comments

commented

uncommon. only occurs when world is of type overworld_two.

pastebin moderation rejected the text. here is a salvaged important line:

Current CompileTask:
C2:1052208 60556 4 net.minecraft.world.gen.NoiseChunkGenerator::func_236087_a_ (332 bytes)

commented

update:

happens quite specifically due to portal placement. here's a world seed, you will need Kaleidio's Battle Pack 5.0.0-pre5 to open it. when you do, locate betterstrongholds:stronghold, then try opening the end portal with the end remastered eyes (find it with spectator mode). the crash is consistent. don't use a newer JVM than v8_u51 as that fixes it

seed:
297899522108449731
no cities active

commented

That's horrifying, what minecraft version are you on?

commented

version is in the title. forge 36.2.34

commented

crash can also occur with lost cities but I still cannot find a pattern in bed portal placement. I have said portal disabled in my pack however so it will need tested in other ways.

commented

all messages edited as necessary, nothing else to explain. any thoughts?

commented

Seems like Overworld two doesn't change that line. In 1.16, Overworld Two is written entirely without bytecode generation so there would be nothing going on out of the ordinary to cause that crash consistently- it may be a JVM issue. Unfortunately I'm not quite sure how to help here because this looks like something going wrong with the internals of the JVM itself.

commented

It certainly smells like a JVM bug. something like mixin resulted methods giving stuff at the wrong time in the wrong address because the JVM's JIT ordering was unexpectedly out of order. Considering upgrading to a newer version of Java 8 quashes it that seems to be the case. however it's extremely bothersome because that means I cannot use your mod in my modpack.

Maybe it's a mod conflict. Maybe it's an issue with Roadrunner. I have no clue at this point but all I know is it only occurs on your world type. At least as long as I'm somehow lucky enough to get away with it

commented

I'm going to run a conflict test to see if it's caused by other mods in conjunction

commented

Yeah, I'm not quite sure what's going on either. I've looked into the JIT internals a bit but that was more recently and only in a limited fashion. For what it's worth, J8's c2 is rather old and only has the most critical of bugfixes- you'll likely get better results on more modern java but I'm not sure if Forge supports that on 1.16. Regardless, the mod will be ported to 1.19+ soon, when I get some free time; so it'll be easier to use modern java there.

commented

Even if it's not invalid I have no idea how to fix this, I'm just interested to see what this is caused by lmao

commented

I cannot update my modpack to 1.18.2+ as of yet due to several mod update issues and crashes. I don't deem it worth it to update minecraft until almost a year down the line alongside all my other projects. let me see if this is a mod collision first or not, then we can decide if this issue is invalid

commented

fun. as expected, removing roadrunner fixed the crash. seems this is a roadrunner issue then. I should be able to disable their mixin for that specific thing manually.

strange how it only happens when the world type is of a type mixined a ton like overworld two.

commented

Fun, thanks for looking into it

commented

fixed by disabling mixin.gen in roadrunner rules. seems that it's a mixin collision after all