Terrestria

Terrestria

2M Downloads

Terrestria v1.2.1 incompatable with Optifine 1.15.2 Preview or Optifabric 1.0.0-beta4

A-Fitz opened this issue ยท 17 comments

commented

This is most likely the fault of Optifine (being a preview version and all), but I wanted to make the devs aware.

Optifine Version: OptiFine_1.15.2_HD_U_G1_pre7 (20200221-181745)
Optifabric Version: Optifabric 1.0.0-beta4

Crash Log:

net.fabricmc.loader.api.EntrypointException: Could not look up entries for entrypoint client!
	at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:153)
	at net.fabricmc.loader.FabricLoader.getEntrypoints(FabricLoader.java:220)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:41)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke(EntrypointUtils.java:34)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointClient.start(EntrypointClient.java:33)
	at net.minecraft.class_310.<init>(class_310.java:392)
	at net.minecraft.client.main.Main.main(Main.java:166)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193)
	at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)
	Suppressed: java.lang.ExceptionInInitializerError
		at com.terraformersmc.terrestria.TerrestriaClient.<clinit>(TerrestriaClient.java:30)
		at java.base/java.lang.Class.forName0(Native Method)
		at java.base/java.lang.Class.forName(Class.java:416)
		at net.fabricmc.loader.util.DefaultLanguageAdapter.create(DefaultLanguageAdapter.java:45)
		at net.fabricmc.loader.EntrypointStorage$NewEntry.create(EntrypointStorage.java:100)
		at net.fabricmc.loader.EntrypointStorage$NewEntry.getOrCreate(EntrypointStorage.java:92)
		at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:143)
		... 21 more
	Caused by: java.lang.NullPointerException
		at net.optifine.Config.isRandomEntities(Config.java:1861)
		at net.minecraft.class_1921.method_24293(class_1921.java:138)
		at net.minecraft.class_1921.method_23578(class_1921.java:155)
		at net.minecraft.class_4722.<clinit>(class_4722.java:32)
		... 28 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
	at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:153)
	at net.fabricmc.loader.FabricLoader.getEntrypoints(FabricLoader.java:220)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:41)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke(EntrypointUtils.java:34)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointClient.start(EntrypointClient.java:33)
	at net.minecraft.class_310.<init>(class_310.java:392)

-- Initialization --
Details:
Stacktrace:
	at net.minecraft.client.main.Main.main(Main.java:166)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193)
	at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)
commented

This instead is likely an issue with Optifabric. See this issue for a similar situation.

commented

There may be a workaround but this probably isn't our fault. I'll leave this open in case other people run into it.

commented

The error seems to exist both in Terrestria and Traverse, because after testing removing both of them fixed it, but removing either one individually (leaving the other one in) doesn't seem to fix it. I'm assuming it probably has to do something with a rendering method used in both Traverse and Terrestria that break OptiFabric/OptiFine (although I don't know the inner workings of either mod, so I don't know if they do anything fancy with rendering)

commented

Running into the same issue, Optifine 1.15.2 pre9 and optifabric 1.0.0 beta 4 with mods listed in crash report

// Surprise! Haha. Well, this is awkward.

Time: 2/27/20 5:01 PM
Description: Initializing game

net.fabricmc.loader.api.EntrypointException: Could not look up entries for entrypoint client!
	at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:153)
	at net.fabricmc.loader.FabricLoader.getEntrypoints(FabricLoader.java:220)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:41)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke(EntrypointUtils.java:34)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointClient.start(EntrypointClient.java:33)
	at net.minecraft.class_310.<init>(class_310.java:392)
	at net.minecraft.client.main.Main.main(Main.java:166)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193)
	at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)
	Suppressed: java.lang.ExceptionInInitializerError
		at com.terraformersmc.terrestria.TerrestriaClient.<clinit>(TerrestriaClient.java:30)
		at java.lang.Class.forName0(Native Method)
		at java.lang.Class.forName(Class.java:348)
		at net.fabricmc.loader.util.DefaultLanguageAdapter.create(DefaultLanguageAdapter.java:45)
		at net.fabricmc.loader.EntrypointStorage$NewEntry.create(EntrypointStorage.java:100)
		at net.fabricmc.loader.EntrypointStorage$NewEntry.getOrCreate(EntrypointStorage.java:92)
		at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:143)
		... 13 more
	Caused by: java.lang.NullPointerException
		at net.optifine.Config.isRandomEntities(Config.java:1861)
		at net.minecraft.class_1921.method_24293(class_1921.java:138)
		at net.minecraft.class_1921.method_23578(class_1921.java:155)
		at net.minecraft.class_4722.<clinit>(class_4722.java:32)
		... 20 more


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
	at net.fabricmc.loader.EntrypointStorage.getEntrypoints(EntrypointStorage.java:153)
	at net.fabricmc.loader.FabricLoader.getEntrypoints(FabricLoader.java:220)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:41)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke(EntrypointUtils.java:34)
	at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointClient.start(EntrypointClient.java:33)
	at net.minecraft.class_310.<init>(class_310.java:392)

-- Initialization --
Details:
Stacktrace:
	at net.minecraft.client.main.Main.main(Main.java:166)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193)
	at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)

-- System Details --
Details:
	Minecraft Version: 1.15.2
	Minecraft Version ID: 1.15.2
	Operating System: Linux (amd64) version 5.3.18-1-MANJARO
	Java Version: 1.8.0_242, Oracle Corporation
	Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
	Memory: 4657654136 bytes (4441 MB) / 5905580032 bytes (5632 MB) up to 6442450944 bytes (6144 MB)
	CPUs: 4
	JVM Flags: 8 total; -Xss1M -Xmx6G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M
	Fabric Mods: 
		adorn: Adorn 1.8.0+1.15.2
		ash_clay: AshClay 1.0.0
		autoconfig1u: Auto Config v1 Updated 1.2.4
		beebetter: Bee Better 1.6.0
		beenfo: Beenfo 1.15-fabric0.4.23-1.0.3
		bettersleeping: Better Sleeping 0.3.0
		blockus: Blockus 1.3.2
		cloth: Cloth Events 1.2.0
		cloth-config2: Cloth Config v2 2.10
		coloredfire: Colored Flames 1.1.9r1+1.15.2
		conveyance: Conveyance 0.3.3+1.15.2
		cotton-client-commands: Cotton Client Commands 0.4.2+1.14.3-SNAPSHOT
		couplings: Couplings 1.3.1
		csb: Custom Selection Box Fabric 4.1.0
		demeter: Demeter 1.1.3
		extradoors: ExtraDoors 1.6.0-1.15
		fabriblocks: FabriBlocks 1.1.7
		fabric: Fabric API 0.4.32+build.292-1.15
		fabric-api-base: Fabric API Base 0.1.2+b7f9825d0c
		fabric-biomes-v1: Fabric Biomes (v1) 0.1.5+3b05f68e0c
		fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.4+c6a8ea890c
		fabric-commands-v0: Fabric Commands (v0) 0.1.2+b7f9825d0c
		fabric-containers-v0: Fabric Containers (v0) 0.1.3+b7f9825d0c
		fabric-content-registries-v0: Fabric Content Registries (v0) 0.1.3+b7f9825d0c
		fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.2+b7f9825d0c
		fabric-dimensions-v1: fabric-dimensions-v1 0.2.4+203491ea0c
		fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.2.7+a1bd31180c
		fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.1.2+b7f9825d0c
		fabric-item-groups-v0: Fabric Item Groups (v0) 0.1.6+ec40b2e10c
		fabric-keybindings-v0: Fabric Key Bindings (v0) 0.1.1+dfdb52d60c
		fabric-language-kotlin: Fabric Language Kotlin 1.3.61+build.1
		fabric-loot-tables-v1: Fabric Loot Tables (v1) 0.1.5+e08a73050c
		fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.1+b7f9825d0c
		fabric-models-v0: Fabric Models (v0) 0.1.0+dfdb52d60c
		fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.3+e08a73050c
		fabric-networking-v0: Fabric Networking (v0) 0.1.7+12515ed90c
		fabric-object-builders-v0: Fabric Object Builders (v0) 0.1.3+e4c9a9c30c
		fabric-particles-v1: fabric-particles-v1 0.1.1+dfdb52d60c
		fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.2.6+f3d8141b0c
		fabric-renderer-api-v1: Fabric Renderer API (v1) 0.2.10+f08b61330c
		fabric-renderer-indigo: Fabric Renderer - Indigo 0.2.23+9290e2ed0c
		fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 2.0.1+5a0f9a600c
		fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.3+b7f9825d0c
		fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.6+12515ed90c
		fabric-rendering-v0: Fabric Rendering (v0) 1.1.0+534104900c
		fabric-rendering-v1: Fabric Rendering (v1) 0.1.0+534104900c
		fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.1.10+06c939b30c
		fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 0.1.3+abd915800c
		fabric-textures-v0: Fabric Textures (v0) 1.0.4+821cdba70c
		fabricloader: Fabric Loader 0.7.8+build.184
		fermion-modkeys: Fermion Modifier Keys 1.5.148
		grid: Grid 1.15-fabric0.4.23-1.5.1
		hollowlogs: Hollow Logs 1.0.0
		illuminations: Illuminations 0.4.0
		immersive_portals: Immersive Portals 0.12
		jankson: Jankson 2.0.1+j1.2.0
		kirin: Kirin UI 1.5-1.15
		libblockattributes_core: LibBlockAttributes (Core) 0.6.3
		libblockattributes_items: LibBlockAttributes (Items) 0.6.3
		libcd: LibCapableData 1.6.3+1.15
		libgui: LibGui 1.5.1
		me_shedaniel_cloth_basic-math: basic-math 0.3.0
		minecraft: Minecraft 1.15.2
		mm: Manningham Mills 2.0
		modmenu: Mod Menu 1.10.1+build.30
		optifabric: Optifabric 1.0.0-beta4
		orderly: Orderly 1.2.1+build.4-1.15
		org_jetbrains_annotations: annotations 18.0.0
		org_jetbrains_kotlin_kotlin-reflect: kotlin-reflect 1.3.61
		org_jetbrains_kotlin_kotlin-stdlib: kotlin-stdlib 1.3.61
		org_jetbrains_kotlin_kotlin-stdlib-jdk7: kotlin-stdlib-jdk7 1.3.61
		org_jetbrains_kotlin_kotlin-stdlib-jdk8: kotlin-stdlib-jdk8 1.3.61
		org_jetbrains_kotlinx_kotlinx-coroutines-core: kotlinx-coroutines-core 1.3.3
		org_jetbrains_kotlinx_kotlinx-coroutines-jdk8: kotlinx-coroutines-jdk8 1.3.3
		org_slf4j_slf4j-api: slf4j-api 1.7.30
		org_slf4j_slf4j-simple: slf4j-simple 1.7.30
		org_zeroturnaround_zt-zip: zt-zip 1.14
		phosphor: Phosphor 0.3.6
		presencefootsteps: Presence Footsteps r21+1.15
		programmerartinjector: Programmer Art Injector 1.1.0
		reborncore: Reborn Core 4.2.3+build.99
		roughlyenoughitems: Roughly Enough Items 3.5.4
		satin: Satin 1.4.0-nightly.19w46b+build.1
		sifter: Sifter & Friends 1.1.0
		snm: Secrets No More 1.1.0
		statement: Statement 2.0.0+1.15.2
		team_reborn_energy: Energy 0.0.8
		techreborn: Tech Reborn 3.3.4+build.189
		terraform: Terraform 1.4.2+build.26
		terrestria: Terrestria 1.2.1+build.29
		tinyconfig: TinyConfig 1.1.2
		towelette: Towelette 3.1.0+1.15.2
		traverse: Traverse 2.1.9+build.17
		trees-do-not-float: Trees Do Not Float 1.8.69
		voxelmap: VoxelMap 1.9.14
		waila: Hwyla 1.9.20
		wrenchable: Wrenchable 0.2.2+1.15.2
	Launched Version: fabric-loader-0.7.8+build.184-1.15.2
	Backend library: LWJGL version 3.2.2 build 10
	Backend API: NO CONTEXT
	GL Caps: 
	Using VBOs: Yes
	Is Modded: Definitely; Client brand changed to 'fabric'
	Type: Client (map_client.txt)
	CPU: <unknown>
	OptiFine Version: OptiFine_1.15.2_HD_U_G1_pre9
	OptiFine Build: 20200223-095745
	Shaders: null
	OpenGlVersion: null
	OpenGlRenderer: null
	OpenGlVendor: null
	CpuCount: 0```
commented

Nothing in the stack trace has anything to do with terrestria, does the issue happen without terrestria? and if it does, does it happen when there is only Terrestria and optifine installed?

commented

Oh I see, it might have to do with the leaves thing we do for large trees.

commented

Strangely enough, it doesn't appear that we even use that layer. I could be wrong @coderbot16 may have to confirm.

private static final RenderLayer LEAVES_ITEM_LAYER = TexturedRenderLayers.getEntityCutout();

commented

hey! I'm running into the exact same proble, does anyone know if it's optifabric or optifine's fault?

crash-2020-02-28_00.11.51-client.txt

commented

@NeusFear Removing LEAVES_ITEM_LAYER fixed the error we had but causes another error with signs. (LEAVES_ITEM_LAYER isn't referenced anywhere in the code so I'm assuming it's useless). This current error probably has to do with SIGNS_ATLAS_TEXTURE in here:

SpriteIdentifierRegistry.INSTANCE.addIdentifier(new SpriteIdentifier(TexturedRenderLayers.SIGNS_ATLAS_TEXTURE, texture));

The signs error in here is probably the same error that Traverse has with OptiFabric/OptiFine, so if we can figure this out, we can probably fix both mods. I'm pretty sure at this point it's an issue with the OptiFine previews though, and not with the way Terrestria/Traverse handles rendering.

I cut out most of the crash report and left in the only important part (suppressed)

	Suppressed: java.lang.ExceptionInInitializerError
		at com.terraformersmc.terrestria.TerrestriaClient.addSign(TerrestriaClient.java:162)
		at com.terraformersmc.terrestria.TerrestriaClient.addSigns(TerrestriaClient.java:155)
		at com.terraformersmc.terrestria.TerrestriaClient.onInitializeClient(TerrestriaClient.java:114)
		at net.fabricmc.loader.entrypoint.minecraft.hooks.EntrypointUtils.invoke0(EntrypointUtils.java:48)
		... 11 more
	Caused by: java.lang.NullPointerException
		at net.optifine.Config.isRandomEntities(Config.java:1861)
		at net.minecraft.class_1921.method_24293(class_1921.java:138)
		at net.minecraft.class_1921.method_23578(class_1921.java:155)
		at net.minecraft.class_4722.<clinit>(class_4722.java:32)
		... 15 more
commented

Not sure if additional logs will help anyone looking at it but I can confirm either Terrestria or Traverse with OptiFabric and Optifine preview will cause it.
crash-2020-03-01_17.58.08-client.txt
crash-2020-03-01_18.12.46-client.txt

commented

We will see what we can do, but since optifabric isn't super stable anyways it's not going to be a super high priority. Our goal is to get the Dry Update out, then after that start cleaning out the issue tracker, so we'll revisit this. In the mean time if someone else wants to dig into the issue and submit a PR that fixes it, we're always open to that.

commented

Update: This is currently being investigated by sp614x, as it appears to be an issue in OptiFine itself, and not Traverse or Terrestria.

commented

This definitely seems like Optifine has wrong assumptions about class load order.

commented

This is happening as fabric mods are loaded before the options are loaded. I will fix this optifabric.

commented

Fixed, will be in the next optifabric update, this issue can be closed.

commented

way to go modmuss you have made my day twice

commented

The latest version of OptiFabric resolves the issue.

Thanks, modmuss50!