Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

IDE Setup


KaedenCraft
 Share

Recommended Posts

Going to take the plunge and get into modding myself. Never done Java, but I have some coding experience in other similar languages. I want to develop for 1.15.2. But upon following an (admittedly outdated) 1.12.2 setup video for Eclipse, things aren't quite working right. Is there a link somebody could provide to a good setup guide for Eclipse and the Forge gradle script? I'm 95% sure the issue was with my gradle execution, as it's the one bit that I was 0% familiar with, and the videos mostly say "do this, do this" and never explain why, so no context to know where I went wrong. Please and thank you.

Link to comment
Share on other sites

5 minutes ago, KaedenCraft said:

I ran the eclipse task, but it doesn't seem to like the Mod() bit in the Main class of my mod, it's not sure which package to import. Again, this may simply be a difference between 1.15.2 and 1.12.2, but I wouldn't know.

net.minecraftforge.fml.common.Mod;

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Nothing adds imports automatically, unless you're copying code from a place where it's already imported.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

I apologize for being imprecise. In the tutorial video I watched, when the Main class didn't have the Mod package, it had a right click saying: "Do you want to import package net.minecraftforge.fml.common.Mod?" Mine never gave that option. It just asks to create a new package.

 

Here's what I see:

 

errors.png

 

Says it doesn't recognize the package "net".

Edited by KaedenCraft
Link to comment
Share on other sites

Well the @Mod annotation changed and no longer takes all those parameters.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

44 minutes ago, KaedenCraft said:

How did you guys figure out the parameters for Mod changed?

We use our IDE and read the source code regarding the Mod annotation.

Some tips:

Spoiler

Modder Support:

Spoiler

1. Do not follow tutorials on YouTube, especially TechnoVision (previously called Loremaster) and HarryTalks, due to their promotion of bad practice and usage of outdated code.

2. Always post your code.

3. Never copy and paste code. You won't learn anything from doing that.

4. 

Quote

Programming via Eclipse's hotfixes will get you nowhere

5. Learn to use your IDE, especially the debugger.

6.

Quote

The "picture that's worth 1000 words" only works if there's an obvious problem or a freehand red circle around it.

Support & Bug Reports:

Spoiler

1. Read the EAQ before asking for help. Remember to provide the appropriate log(s).

2. Versions below 1.11 are no longer supported due to their age. Update to a modern version of Minecraft to receive support.

 

 

Link to comment
Share on other sites

33 minutes ago, KaedenCraft said:

As somebody brand new to [...] Java generally,


Don't use modding to learn Java.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

3 hours ago, KaedenCraft said:

Okay, so back to my original question: Is there any link anywhere to something more up-to-date? Text? Video? How did you guys figure out the parameters for Mod changed?

There are videos for 1.15.2 setup. I've tried it a few days with no prior Java experience and things seem working fine. Just go on youtube and search for "minecraft modding tutorial 1.15", you can't miss em. Knowing Eclipse from working with it some ~10 years ago I elected to try IntelliJ and I like it, for now. 

 

1 hour ago, Draco18s said:


Don't use modding to learn Java.

Oof ? Maybe development as a whole, but Java as a language? Why not?

 

1 hour ago, KaedenCraft said:

As somebody brand new to Forge specifically and Java generally, could you expand on that a little bit?

The videos essentially get you through the Getting Started in the documentation. You can also get more information in the README.txt indluded in the mdk.

Such as :

Quote

If you prefer to use IntelliJ:
1. Open IDEA, and import project.
2. Select your build.gradle file and have it import.
3. Run the following command: "gradlew genIntellijRuns" (./gradlew genIntellijRuns if you are on Mac/Linux)
4. Refresh the Gradle Project in IDEA if required.

Admittedly, following those instructions were more natural to me than following the videos.

Link to comment
Share on other sites

3 hours ago, Drumline18 said:

Oof ? Maybe development as a whole, but Java as a language? Why not?

Forge is a rather complicated API and will be unnecessarily confusing for people who are not familiar with Java. Learning Java through making a mod might be slower than the combined time of learning Java properly + making a mod.

 

5 hours ago, KaedenCraft said:

As somebody brand new to Forge specifically and Java generally, could you expand on that a little bit?

On my setup, I can view the source code of a class by pressing cmd and left click on the class name. Hotkeys like this varies depending on your setup, so it is recommended to get familiar with your specific IDE (i.e. read its manual).

Some tips:

Spoiler

Modder Support:

Spoiler

1. Do not follow tutorials on YouTube, especially TechnoVision (previously called Loremaster) and HarryTalks, due to their promotion of bad practice and usage of outdated code.

2. Always post your code.

3. Never copy and paste code. You won't learn anything from doing that.

4. 

Quote

Programming via Eclipse's hotfixes will get you nowhere

5. Learn to use your IDE, especially the debugger.

6.

Quote

The "picture that's worth 1000 words" only works if there's an obvious problem or a freehand red circle around it.

Support & Bug Reports:

Spoiler

1. Read the EAQ before asking for help. Remember to provide the appropriate log(s).

2. Versions below 1.11 are no longer supported due to their age. Update to a modern version of Minecraft to receive support.

 

 

Link to comment
Share on other sites

16 hours ago, KaedenCraft said:

Going to take the plunge and get into modding myself. Never done Java, but I have some coding experience in other similar languages. I want to develop for 1.15.2. But upon following an (admittedly outdated) 1.12.2 setup video for Eclipse, things aren't quite working right. Is there a link somebody could provide to a good setup guide for Eclipse and the Forge gradle script? I'm 95% sure the issue was with my gradle execution, as it's the one bit that I was 0% familiar with, and the videos mostly say "do this, do this" and never explain why, so no context to know where I went wrong. Please and thank you.

https://cadiboo.github.io/tutorials/1.15.1/forge/1.0-gradle-configuration/

https://cadiboo.github.io/tutorials/1.15.1/forge/1.1-importing-project/

New in Modding? == Still learning!

Link to comment
Share on other sites

THANK YOU to those above who actually read my opening post and helped guide me in the right direction. Those who didn't read it, didn't post anything helpful, and basically said "git gud," you all must really be bored during the lockdown.

 

I will check out that documentation on cadiboo. Even a cursory glance at it shows it will likely be very helpful.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • https://github.com/ImpactDevelopment/ImpactIssues/issues/new?assignees=&labels=Bug&template=bug_report.md&title=Minecraft+crash+when+clicking+on+alts+button Here - make an issue on Impact Client's issue form. That area is where the developers of impact can see your post
    • ---- Minecraft Crash Report ---- // Hi. I'm Minecraft, and I'm a crashaholic. Time: 5/23/22 7:22 AM Description: mouseClicked event handler java.lang.NullPointerException: mouseClicked event handler     at net.impactclient.34V.2(34V.java:15)     at net.impactclient.34P.b(34P.java:24)     at dot.b(SourceFile:325)     at djz.a(SourceFile:922)     at net.impactclient.2T.8(2T.java:46)     at net.impactclient.2T$$Lambda$3632/1642244192.onPress(Unknown Source)     at dlj.b(SourceFile:33)     at dld.a(SourceFile:16)     at dlh.a(SourceFile:149)     at dmh.a(SourceFile:27)     at dka.b(SourceFile:92)     at dka$$Lambda$3621/25741263.run(Unknown Source)     at dot.a(SourceFile:435)     at dka.a(SourceFile:92)     at dka.c(SourceFile:162)     at dka$$Lambda$3620/764692091.run(Unknown Source)     at aob.execute(ThreadTaskExecutor.java:104)     at dka.b(SourceFile:162)     at dka$$Lambda$2354/1214025054.invoke(Unknown Source)     at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:36)     at org.lwjgl.system.JNI.invokeV(Native Method)     at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3174)     at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(SourceFile:127)     at djz.e(SourceFile:1071)     at djz.e(SourceFile:681)     at net.minecraft.client.main.Main.main(SourceFile:215)     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:497)     at net.minecraft.launchwrapper.Launch.launch(Launch.java:159)     at net.minecraft.launchwrapper.Launch.main(Launch.java:30) A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at net.impactclient.34V.2(34V.java:15)     at net.impactclient.34P.b(34P.java:24)     at dot.b(SourceFile:325)     at djz.a(SourceFile:922)     at net.impactclient.2T.8(2T.java:46)     at net.impactclient.2T$$Lambda$3632/1642244192.onPress(Unknown Source)     at dlj.b(SourceFile:33)     at dld.a(SourceFile:16)     at dlh.a(SourceFile:149)     at dmh.a(SourceFile:27)     at dka.b(SourceFile:92)     at dka$$Lambda$3621/25741263.run(Unknown Source) -- Affected screen -- Details:     Screen name: net.impactclient.2T Stacktrace:     at dot.a(SourceFile:435)     at dka.a(SourceFile:92)     at dka.c(SourceFile:162)     at dka$$Lambda$3620/764692091.run(Unknown Source)     at aob.execute(ThreadTaskExecutor.java:104)     at dka.b(SourceFile:162)     at dka$$Lambda$2354/1214025054.invoke(Unknown Source)     at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:36)     at org.lwjgl.system.JNI.invokeV(Native Method)     at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3174)     at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(SourceFile:127)     at djz.e(SourceFile:1071)     at djz.e(SourceFile:681)     at net.minecraft.client.main.Main.main(SourceFile:215)     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:497)     at net.minecraft.launchwrapper.Launch.launch(Launch.java:159)     at net.minecraft.launchwrapper.Launch.main(Launch.java:30) -- System Details -- Details:     Minecraft Version: 1.16.5     Minecraft Version ID: 1.16.5     Operating System: Windows 8 (amd64) version 6.2     Java Version: 1.8.0_51, Oracle Corporation     Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation     Memory: 2105089736 bytes (2007 MB) / 3892314112 bytes (3712 MB) up to 4294967296 bytes (4096 MB)     CPUs: 4     JVM Flags: 9 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx4G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M     Launched Version: 1.16.5-Impact_4.9.1-OptiFine_HD_U_G6     Backend library: LWJGL version 3.2.2 build 10     Backend API: Intel(R) HD Graphics 2000 GL version 3.1.0 - Build 9.17.10.4459, Intel     GL Caps: Using framebuffer using OpenGL 3.0     Using VBOs: Yes     Is Modded: Very likely; Jar signature invalidated     Type: Client (map_client.txt)     Graphics mode: fancy     Resource Packs:      Current Language: English (US)     CPU: 4x Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz     OptiFine Version: OptiFine_1.16.5_HD_U_G6     OptiFine Build: 20210117-013236     Render Distance Chunks: 16     Mipmaps: 4     Anisotropic Filtering: 1     Antialiasing: 0     Multitexture: false     Shaders: null     OpenGlVersion: 3.1.0 - Build 9.17.10.4459     OpenGlRenderer: Intel(R) HD Graphics 2000     OpenGlVendor: Intel     CpuCount: 4     The exit code i got: The game crashed whilst mouseclicked event handler Error: java.lang.NullPointerException: mouseClicked event handler Exit Code: -1  
    • i cant run forge on my computer it crashes every time...i have contacted Minecraft themselves and they haven't helped forge the website doesn't seem to have contact info and i have indulged in watching a large number of videos and read many articles on what to do to fix these problems and none whatsoever have done anything at all...i would really appreaciate a call so i can give a better rundown  my phone number is 8102800545
    • ---- Minecraft Crash Report ---- // Shall we play a game? Time: 5/22/22 7:23 PM Description: Unexpected error org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered     at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:154) ~[modlauncher-8.1.3.jar:8.1.3+8.1.3+main-8.1.x.c94d18ec] {}     at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.1.3.jar:?] {re:classloading}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.1.3.jar:?] {re:classloading}     at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_51] {}     at me.jellysquid.mods.sodium.client.render.chunk.ChunkRenderManager.<init>(ChunkRenderManager.java:102) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:options.MixinChunkRenderManager,pl:mixin:APP:mixins.oculus.compat.sodium.json:shader_overrides.MixinChunkRenderManager,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinChunkRenderManager,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.initRenderer(SodiumWorldRenderer.java:272) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.loadWorld(SodiumWorldRenderer.java:114) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setWorld(SodiumWorldRenderer.java:105) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at net.minecraft.client.renderer.WorldRenderer.handler$zbo000$onWorldChanged(WorldRenderer.java:5710) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.renderer.WorldRenderer.func_72732_a(WorldRenderer.java:661) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_213257_b(Minecraft.java:1955) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_71403_a(Minecraft.java:1881) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.network.play.ClientPlayNetHandler.func_147282_a(ClientPlayNetHandler.java:376) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:betternether.mixins.json:ClientPlayNetHandlerMixin,pl:mixin:APP:journeymap.mixins.json:client.ClientPacketListenerMixin,pl:mixin:APP:starlight.mixins.json:client.multiplayer.ClientPlayNetHandlerMixin,pl:mixin:APP:betterendforge.mixins.json:ClientPlayNetHandlerMixin,pl:mixin:APP:cavesandcliffs.mixins.json:core.ClientPlayNetHandlerMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.network.play.server.SJoinGamePacket.func_148833_a(SourceFile:110) ~[?:?] {re:classloading,re:mixin}     at net.minecraft.network.play.server.SJoinGamePacket.func_148833_a(SourceFile:18) ~[?:?] {re:classloading,re:mixin}     at net.minecraft.network.PacketThreadUtil.func_225383_a(SourceFile:21) ~[?:?] {re:mixin,re:classloading}     at net.minecraft.network.PacketThreadUtil$$Lambda$14805/382736892.run(Unknown Source) ~[?:?] {}     at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(SourceFile:144) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?] {re:mixin,re:computing_frames,re:classloading}     at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(SourceFile:118) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213160_bf(SourceFile:103) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:948) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:37) [forge-1.16.5-36.2.35.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$502/886343183.call(Unknown Source) [forge-1.16.5-36.2.35.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?] {} Caused by: org.spongepowered.asm.mixin.injection.throwables.InjectionError: Critical injection failure: Redirector iris$wrapGetFluidLayer(Lnet/minecraft/fluid/FluidState;Lme/jellysquid/mods/sodium/client/render/pipeline/context/ChunkRenderCacheLocal;Lme/jellysquid/mods/sodium/client/render/chunk/compile/ChunkBuildBuffers;Lme/jellysquid/mods/sodium/client/util/task/CancellationSource;)Lnet/minecraft/client/renderer/RenderType; in mixins.oculus.compat.sodium.json:block_id.MixinChunkRenderRebuildTask failed injection check, (0/1) succeeded. Scanned 1 target(s). Using refmap oculus-refmap.json     at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.postInject(InjectionInfo.java:468) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1362) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1051) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:400) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:325) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:383) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:365) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     ... 41 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:154) ~[modlauncher-8.1.3.jar:8.1.3+8.1.3+main-8.1.x.c94d18ec] {}     at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.1.3.jar:?] {re:classloading}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.1.3.jar:?] {re:classloading}     at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_51] {}     at me.jellysquid.mods.sodium.client.render.chunk.ChunkRenderManager.<init>(ChunkRenderManager.java:102) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:options.MixinChunkRenderManager,pl:mixin:APP:mixins.oculus.compat.sodium.json:shader_overrides.MixinChunkRenderManager,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinChunkRenderManager,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.initRenderer(SodiumWorldRenderer.java:272) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.loadWorld(SodiumWorldRenderer.java:114) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.setWorld(SodiumWorldRenderer.java:105) ~[?:?] {re:mixin,re:classloading,pl:mixin:APP:mixins.oculus.compat.sodium.json:shadow_map.MixinSodiumWorldRenderer,pl:mixin:APP:mixins.oculus.compat.sodium.json:vertex_format.MixinSodiumWorldRenderer,pl:mixin:A}     at net.minecraft.client.renderer.WorldRenderer.handler$zbo000$onWorldChanged(WorldRenderer.java:5710) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.renderer.WorldRenderer.func_72732_a(WorldRenderer.java:661) ~[?:?] {re:mixin,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:twilightforest:render,xf:fml:journeymap:WorldRenderer.setSectionDirty,xf:fml:sereneseasons:temperature_transformer,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_213257_b(Minecraft.java:1955) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_71403_a(Minecraft.java:1881) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.network.play.ClientPlayNetHandler.func_147282_a(ClientPlayNetHandler.java:376) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:betternether.mixins.json:ClientPlayNetHandlerMixin,pl:mixin:APP:journeymap.mixins.json:client.ClientPacketListenerMixin,pl:mixin:APP:starlight.mixins.json:client.multiplayer.ClientPlayNetHandlerMixin,pl:mixin:APP:betterendforge.mixins.json:ClientPlayNetHandlerMixin,pl:mixin:APP:cavesandcliffs.mixins.json:core.ClientPlayNetHandlerMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.network.play.server.SJoinGamePacket.func_148833_a(SourceFile:110) ~[?:?] {re:classloading,re:mixin}     at net.minecraft.network.play.server.SJoinGamePacket.func_148833_a(SourceFile:18) ~[?:?] {re:classloading,re:mixin}     at net.minecraft.network.PacketThreadUtil.func_225383_a(SourceFile:21) ~[?:?] {re:mixin,re:classloading}     at net.minecraft.network.PacketThreadUtil$$Lambda$14805/382736892.run(Unknown Source) ~[?:?] {}     at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(SourceFile:144) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?] {re:mixin,re:computing_frames,re:classloading}     at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(SourceFile:118) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B} -- Affected level -- Details:     All players: 0 total; []     Chunk stats: Client Chunk Cache: 1024, 0     Level dimension: minecraft:overworld     Level spawn location: World: (8,64,8), Chunk: (at 8,4,8 in 0,0; contains blocks 0,0,0 to 15,255,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511)     Level time: 0 game time, 0 day time     Server brand: ~~ERROR~~ NullPointerException: null     Server type: Integrated singleplayer server Stacktrace:     at net.minecraft.client.world.ClientWorld.func_72914_a(ClientWorld.java:447) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:ClientWorldMixin,pl:mixin:APP:rubidium.mixins.json:features.chunk_rendering.MixinClientWorld,pl:mixin:APP:rubidium.mixins.json:features.world_ticking.MixinClientWorld,pl:mixin:APP:starlight.mixins.json:client.world.ClientWorldMixin,pl:mixin:APP:mixins.sndctrl.json:MixinClientWorld,pl:mixin:APP:mixins.oculus.vertexformat.json:block_rendering.MixinClientLevel,pl:mixin:APP:architectury.mixins.json:MixinClientLevel,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2031) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:628) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:dynamiclightsreforged.mixins.json:MinecraftClientMixin,pl:mixin:APP:rubidium.mixins.json:features.gui.fast_fps_pie.MixinMinecraftClient,pl:mixin:APP:rubidium.mixins.json:features.options.MixinMinecraftClient,pl:mixin:APP:magnesium.mixins.json:features.gui.MixinMinecraftAccessor,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:37) [forge-1.16.5-36.2.35.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$502/886343183.call(Unknown Source) [forge-1.16.5-36.2.35.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?] {} -- System Details -- Details:     Minecraft Version: 1.16.5     Minecraft Version ID: 1.16.5     Operating System: Windows 10 (amd64) version 10.0     Java Version: 1.8.0_51, Oracle Corporation     Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation     Memory: 303463320 bytes (289 MB) / 2414870528 bytes (2303 MB) up to 3817865216 bytes (3641 MB)     CPUs: 8     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx4096m -Xms256m     ModLauncher: 8.1.3+8.1.3+main-8.1.x.c94d18ec     ModLauncher launch target: fmlclient     ModLauncher naming: srg     ModLauncher services:          /mixin-0.8.4.jar mixin PLUGINSERVICE          /eventbus-4.0.0.jar eventbus PLUGINSERVICE          /forge-1.16.5-36.2.35.jar object_holder_definalize PLUGINSERVICE          /forge-1.16.5-36.2.35.jar runtime_enum_extender PLUGINSERVICE          /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE          /forge-1.16.5-36.2.35.jar capability_inject_definalize PLUGINSERVICE          /forge-1.16.5-36.2.35.jar runtimedistcleaner PLUGINSERVICE          /mixin-0.8.4.jar mixin TRANSFORMATIONSERVICE          /forge-1.16.5-36.2.35.jar fml TRANSFORMATIONSERVICE      FML: 36.2     Forge: net.minecraftforge:36.2.35     FML Language Providers:          javafml@36.2         minecraft@1         kotlinforforge@1.17.0     Mod List:          dynamiclightsreforged-mc1.16.5_v1.0.1.jar         |Dynamic Lights Reforged       |dynamiclightsreforged         |mc1.16.5_v1.0.1     |DONE      |Manifest: NOSIGNATURE         mowziesmobs-1.5.25.jar                            |Mowzie's Mobs                 |mowziesmobs                   |1.5.25              |DONE      |Manifest: NOSIGNATURE         BetterDungeons-1.16.4-1.2.1.jar                   |YUNG's Better Dungeons        |betterdungeons                |1.16.4-1.2.1        |DONE      |Manifest: NOSIGNATURE         TrashSlot_1.16.3-12.2.1.jar                       |TrashSlot                     |trashslot                     |12.2.1              |DONE      |Manifest: NOSIGNATURE         platforms-1.16-1.7.15.jar                         |Platforms                     |platforms                     |1.7.15              |DONE      |Manifest: NOSIGNATURE         jei-1.16.5-7.7.1.152.jar                          |Just Enough Items             |jei                           |7.7.1.152           |DONE      |Manifest: NOSIGNATURE         AttributeFix-1.16.5-10.1.4.jar                    |AttributeFix                  |attributefix                  |10.1.4              |DONE      |Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5         betternether_reforged-1.2.jar                     |Better Nether Reforged        |betternether                  |1.2                 |DONE      |Manifest: NOSIGNATURE         rubidium-0.2.6.jar                                |Rubidium                      |rubidium                      |0.2.6               |DONE      |Manifest: NOSIGNATURE         BetterCaves-Forge-1.16.4-1.1.2.jar                |YUNG's Better Caves           |bettercaves                   |1.16.4-1.1.2        |DONE      |Manifest: NOSIGNATURE         Waystones_1.16.5-7.6.4.jar                        |Waystones                     |waystones                     |7.6.4               |DONE      |Manifest: NOSIGNATURE         Clumps-6.0.0.28.jar                               |Clumps                        |clumps                        |6.0.0.28            |DONE      |Manifest: NOSIGNATURE         journeymap-1.16.5-5.8.5.jar                       |Journeymap                    |journeymap                    |5.8.5               |DONE      |Manifest: NOSIGNATURE         citadel-1.8.1-1.16.5.jar                          |Citadel                       |citadel                       |1.8.1               |DONE      |Manifest: NOSIGNATURE         alexsmobs-1.12.1.jar                              |Alex's Mobs                   |alexsmobs                     |1.12.1              |DONE      |Manifest: NOSIGNATURE         NaturesCompass-1.16.5-1.9.1-forge.jar             |Nature's Compass              |naturescompass                |1.16.5-1.9.1-forge  |DONE      |Manifest: NOSIGNATURE         SereneSeasons-1.16.5-4.0.1.125-universal.jar      |Serene Seasons                |sereneseasons                 |1.16.5-4.0.1.125    |DONE      |Manifest: NOSIGNATURE         YungsApi-1.16.4-Forge-13.jar                      |YUNG's API                    |yungsapi                      |1.16.4-Forge-13     |DONE      |Manifest: NOSIGNATURE         decorative_blocks-1.16.4-1.7.2.jar                |Decorative Blocks             |decorative_blocks             |1.7.2               |DONE      |Manifest: NOSIGNATURE         deepdark_4.2.jar                                  |Dead Guy's Untitled Deep Dark |dead_guys_untitled_deep_dark_ |Frist Version!      |DONE      |Manifest: NOSIGNATURE         magnesium-1.5.jar                                 |Magnesium                     |magnesium                     |1.5                 |DONE      |Manifest: NOSIGNATURE         starlight-1.2.jar                                 |Starlight                     |starlight                     |1.0.0-RC2           |DONE      |Manifest: NOSIGNATURE         ForgivingVoid_1.16.5-5.2.1.jar                    |Forgiving Void                |forgivingvoid                 |5.2.1               |DONE      |Manifest: NOSIGNATURE         Morpheus-1.16.5-4.2.70.jar                        |Morpheus                      |morpheus                      |4.2.70              |DONE      |Manifest: NOSIGNATURE         3dSkinLayers-forge-1.1.0.jar                      |3dSkinLayers                  |skinlayers3d                  |1.1.0               |DONE      |Manifest: NOSIGNATURE         forge-1.16.5-36.2.35-universal.jar                |Forge                         |forge                         |36.2.35             |DONE      |Manifest: 22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90         shetiphiancore-1.16-3.8.14.jar                    |ShetiPhian-Core               |shetiphiancore                |3.8.14              |DONE      |Manifest: NOSIGNATURE         twilightforest-1.16.5-4.0.870-universal.jar       |The Twilight Forest           |twilightforest                |NONE                |DONE      |Manifest: NOSIGNATURE         konkrete_forge_1.3.3_MC_1.16.2-1.16.5.jar         |Konkrete                      |konkrete                      |1.3.3               |DONE      |Manifest: NOSIGNATURE         betterendforge-1.16.5-2.5.jar                     |BetterEnd Forge               |betterendforge                |1.16.5-2.5          |DONE      |Manifest: NOSIGNATURE         DynamicSurroundings-1.16.5-4.0.5.0.jar            |§3Dynamic Surroundings        |dsurround                     |4.0.5.0             |DONE      |Manifest: NOSIGNATURE         DungeonsArise-1.16.5-2.1.49-beta.jar              |When Dungeons Arise           |dungeons_arise                |2.1.49              |DONE      |Manifest: NOSIGNATURE         forge-1.16.5-36.2.35-client.jar                   |Minecraft                     |minecraft                     |1.16.5              |DONE      |Manifest: NOSIGNATURE         TConstruct-1.16.5-3.3.4.335.jar                   |Tinkers' Construct            |tconstruct                    |3.3.4.335           |DONE      |Manifest: NOSIGNATURE         Jade-1.16.4-2.8.1.jar                             |Jade                          |jade                          |2.8.1               |DONE      |Manifest: NOSIGNATURE         cavesandcliffs-1.16.5-7.2.0.jar                   |Caves and Cliffs Backport     |cavesandcliffs                |1.16.5-7.2.0        |DONE      |Manifest: NOSIGNATURE         CavesCliffsBackportAdditions_3.0.jar              |CavesandCliffsbackportaddition|cavesandcliffsbackportaddition|2.59                |DONE      |Manifest: NOSIGNATURE         curios-forge-1.16.5-4.0.8.2.jar                   |Curios API                    |curios                        |1.16.5-4.0.8.2      |DONE      |Manifest: NOSIGNATURE         Atum-1.16.5-2.2.11.jar                            |Atum 2                        |atum                          |1.16.5-2.2.11       |DONE      |Manifest: NOSIGNATURE         relics-1.16.5-0.3.4.3.jar                         |Relics                        |relics                        |0.3.4.3             |DONE      |Manifest: NOSIGNATURE         Mantle-1.16.5-1.6.157.jar                         |Mantle                        |mantle                        |1.6.157             |DONE      |Manifest: NOSIGNATURE         oculus-1.16.5-1.2.2.jar                           |Oculus                        |oculus                        |1.2.2               |DONE      |Manifest: NOSIGNATURE         AutoRegLib-1.6-49.jar                             |AutoRegLib                    |autoreglib                    |1.6-49              |DONE      |Manifest: NOSIGNATURE         Quark-r2.4-322.jar                                |Quark                         |quark                         |r2.4-322            |DONE      |Manifest: NOSIGNATURE         OreExcavation-1.8.157.jar                         |Ore Excavation                |oreexcavation                 |1.8.157             |DONE      |Manifest: e7:68:1c:0d:b9:7e:cf:f8:f3:40:9c:84:c5:39:d7:a4:59:78:b0:6b:c3:fd:b7:4f:69:18:a3:88:e3:76:8c:3f         BetterThirdPerson-Forge-1.16.4-1.7.2.jar          |Better Third Person           |betterthirdperson             |1.7.2               |DONE      |Manifest: NOSIGNATURE         BetterStrongholds-1.16.4-1.2.1.jar                |YUNG's Better Strongholds     |betterstrongholds             |1.16.4-1.2.1        |DONE      |Manifest: NOSIGNATURE         fancymenu_forge_2.7.2_MC_1.16.2-1.16.5.jar        |FancyMenu                     |fancymenu                     |2.7.2               |DONE      |Manifest: NOSIGNATURE         cavebiomeapi-1.16.5-1.4.2.jar                     |CaveBiomeAPI                  |cavebiomeapi                  |1.16.5-1.4.2        |DONE      |Manifest: NOSIGNATURE         architectury-1.32.63.jar                          |Architectury                  |architectury                  |1.32.63             |DONE      |Manifest: NOSIGNATURE         ftb-library-forge-1605.3.4-build.90.jar           |FTB Library                   |ftblibrary                    |1605.3.4-build.90   |DONE      |Manifest: NOSIGNATURE         item-filters-forge-1605.2.5-build.9.jar           |Item Filters                  |itemfilters                   |1605.2.5-build.9    |DONE      |Manifest: NOSIGNATURE         ftb-teams-forge-1605.2.3-build.40.jar             |FTB Teams                     |ftbteams                      |1605.2.3-build.40   |DONE      |Manifest: NOSIGNATURE         ftb-quests-forge-1605.3.6-build.98.jar            |FTB Quests                    |ftbquests                     |1605.3.6-build.98   |DONE      |Manifest: NOSIGNATURE         ferritecore-2.1.0-forge.jar                       |Ferrite Core                  |ferritecore                   |2.1.0               |DONE      |Manifest: 41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a         Adorn-1.14.3+1.16.5-forge.jar                     |Adorn                         |adorn                         |1.14.3+1.16.5-forge |DONE      |Manifest: NOSIGNATURE         charm-forge-1.16.5-2.3.2.jar                      |Charm                         |charm                         |2.3.2               |DONE      |Manifest: NOSIGNATURE         FastLeafDecay-v25.2.jar                           |FastLeafDecay                 |fastleafdecay                 |v25.2               |DONE      |Manifest: NOSIGNATURE         BetterMineshafts-Forge-1.16.4-2.0.4.jar           |YUNG's Better Mineshafts      |bettermineshafts              |1.16.4-2.0.4        |DONE      |Manifest: NOSIGNATURE         geckolib-forge-1.16.5-3.0.71.jar                  |GeckoLib                      |geckolib3                     |3.0.71              |DONE      |Manifest: NOSIGNATURE     Crash Report UUID: ab78d46d-92da-4d9a-8ae3-c0deb5893c7e     Launched Version: forge-36.2.35     Backend library: LWJGL version 3.2.2 build 10     Backend API: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 497.29, NVIDIA Corporation     GL Caps: Using framebuffer using OpenGL 3.0     Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'     Type: Client (map_client.txt)     Graphics mode: fancy     Resource Packs:      Current Language: English (US)     CPU: 8x Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz
    • ok, there is no elegant way to do that. and i/we can't give you a detailed recommendation because i/we don't know details (for example is the list of these stages fixed and known at runtime, etc.). but it's very important to review the idea of having objects in config file. difficulty level? super-easy. serialize our object into a string, deserialize from it, no problem. "StringOption" = "{ 'field1': 'value1', 'field2': [listt], 'field3': {object inside the big object} }" when should you do it? never. ever. user will load the game with a newer version of your mod than last time (they are expected to, occasionally) and if the class you store is different, deserialization will crash the game (or you will catch that but you don't know how to load data). and sometimes, user will load the game with an older version of your mod than last time (they're not supposed to, but it can happen) - and crash - you don't know how to load data. also - and this is just as important - configs exist for the sake of users/players. but whey they see a bunch of serialized objects (which to many look like some programming), they'll say "umm, nope!" and close the editor. anyway, just hardcode your structure and don't feel bad. and if you can't fit your config structure into the usual system (too dynamic?), just write it into a file yourself. that is okay too, if you need to. but see that editable parts are all simple data types.  
  • Topics

  • Who's Online (See full list)

    • There are no registered users currently online
×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.