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

Tools and Chests, among other things...


atrain99
 Share

Recommended Posts

I have several questions about how to use Forge:

1. How do I acess the Ore Dictionary to add my ores to it?

2. I need to make a tool somewhat like the RedPower handsaw in that it takes damage when used in the crafting of various items.

3. How do I make a block have a thin profile like the EE trans tablet?

4. How do I make said block above have an inventory (like a chest)?

Thanks in advance to anyone who helps!

So, what would happen if I did push that shiny red button over there? ... Really? ... Can I try it? ... Damn.

Link to comment
Share on other sites

I have several questions about how to use Forge:

1. How do I acess the Ore Dictionary to add my ores to it?

Look in ForgeHooks.java (I think it was called).  And considering all the requests lately, a tutorial might pop up soon.

 

2. I need to make a tool somewhat like the RedPower handsaw in that it takes damage when used in the crafting of various items.

Unsure about this, wait for another to answer, I have not yet made an item that needs this.

 

 

3. How do I make a block have a thin profile like the EE trans tablet?

That is vanilla Block stuff.  Look at the methods about the collision size and so forth.  For the visible part, look at shorter Block rendering, like the half-slab.

 

 

4. How do I make said block above have an inventory (like a chest)?

 

Look at the chest java files, it is the de-facto example for that, basically a copy and change.  :)

Link to comment
Share on other sites

I do know... Guess I just have to spend another hour in front of the tube...  xD

I also don't really get what file does what:

GuiChest: Does the GUI (duh)

TileEntityChest: ?

BlockChest: Textures and stuff

InventoryChest: The stuff in the inventory

Please correct me if I'm wrong.

So, what would happen if I did push that shiny red button over there? ... Really? ... Can I try it? ... Damn.

Link to comment
Share on other sites

To be honest you don't really need java experience to make mods but it helps a lot. Also be best if you go to minecraft forum's modding section and read some of the tutorials. but i'll answer some questions really quick. TileEntity is an entity that acts in the same space as a block, its mainly used to do simple tasks and save data to the block location.

 

as for you question #2 what you need to do is make a crafting recipe that will get the items current damage, outputs the item  with 1 less use, and  leave it in the crafting window. I actual don't have or know the code for this but if you search the minecraft code, parts of it will be there. If you need code for something else just think what already does this and go find it's code.

Link to comment
Share on other sites

To be honest you don't really need java experience to make mods but it helps a lot. Also be best if you go to minecraft forum's modding section and read some of the tutorials. but i'll answer some questions really quick. TileEntity is an entity that acts in the same space as a block, its mainly used to do simple tasks and save data to the block location.

 

as for you question #2 what you need to do is make a crafting recipe that will get the items current damage, outputs the item  with 1 less use, and  leave it in the crafting window. I actual don't have or know the code for this but if you search the minecraft code, parts of it will be there. If you need code for something else just think what already does this and go find it's code.

Thanks! Do you know of any open source mods that do these kinds of things?

So, what would happen if I did push that shiny red button over there? ... Really? ... Can I try it? ... Damn.

Link to comment
Share on other sites

For your item that gets damaged when using it in a crafting recipe, you could use this in your item file:

 

public void onCreated(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
{
     mod_****.ItemBeingDamaged.damageItem(how many uses, par3EntityPlayer);
}

 

Not 100% sure if it will work since I didn't test the code before giving it to you but it seems like it would work.

 

Edit: Nevermind, this won't work since the item will be used up in the recipe. Doh!

 

But, still using the onCreate method, you COULD instantiate a private variable that keeps track of the ItemBeingDamaged current damage, and when the new item is created, give the player a 'new' ItemBeingDamaged, then call damageItem(current damage + amount, par3EntityPlayer); on the 'new' ItemBeingDamaged ItemStack

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.