Jump to content

Recommended Posts

Posted

Greetings people from... somewhere.

 

I am currently facing an issue that I have given up on how to address it and I am unable to find the information I really want, so I ended up here.

 

For simplicity and to better allow understanding on the issue, I will break it up on parts; however, it is all regarding the edition of blocks that are already on the game, like dirt.

 

  1. Make blocks fall

 

I remember trying this long ago. Back then I could simply change the line for the block and make it say extend BlockFalling instead of Block. However, in this new version I am not allowed to touch the vanilla code. The question would be, how can I do such thing?

I could create a custom event to make them fall on update I suppose, but for something of this scale (every measly block) I don't think this would be the best approach, so I haven't really tried this approach. If it is, then I guess this is problem solved...

 

  2. Changing the drops

 

I have added custom blocks and I am able to make them drop what I want, yet again, I can't figure out how to edit those that are already on the game. I have yet to exhaust all my options here yet, but I am asking in case none of them works. Also because a different approach could help me see things in a different way.

 

  3. Adding a custom function and extra variable

 

This one is a bit unusual, yes. It is tied with the first point in regards that I want to use a function to make the block fall under certain circumstances using a new variable.

Here is the big issue. Using metadata would not work apparently. I have been looking around and it seems this only have 16 bits of information, making it only able to store an integer of up to 16. I want to store an integer that could go to up 30, not to mention that existing block are probably making use of some of this already very limited space. Also, I have read somewhere (can't remember where) that using an NBT tag is not recommendable at all for common blocks since it could make a world's save file to just shoot to astronomical sizes.

 

  Request

 

Although information directly about any of the three point above would be appreciated and very helpful, general information on how to edit, twinkle, mess with, touch,  ;), or modify with existing blocks would work as well. I think I could work my way around with it.

 

 

 

In case it is of any help on how to help me or point me in a direction, I do have some programming experience; although not much in Java, I can hold my own. However, dealing with code that not only I have not written, but I can't edit is giving me problems. I learn a lot more by trial and error, so breaking things up is my way to go... my specialty? ... my dream?... I really would need to think in a way to properly put that. HAIL ENGLISH!

I have also done this on an earlier version (1.6) and it did work, all of these issues were not issues (I had to deal with storing the extra info though), but since I can't touch the vanilla code anymore, I am at a loss and I can't find a good source of information, tutorial or guide for this.

QUACK!

Posted

1) http://www.minecraftforge.net/forum/index.php/topic,29341.0.html

 

2) Subscript to the LivingDropsEvent or the BlockHarvestEvent

 

3) Yeah, no.  You're not going to manage that in anything less than a mess.

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.

Posted

My guess is that he wants that data to track his collapse physics, that is, how far away a given block is from downward support.  Which is functionally equivalent to turning the whole world into redstone.

 

It's not the space-efficiency that's the issue, its the management.

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.

Posted
  On 4/9/2015 at 12:27 PM, Draco18s said:

1) http://www.minecraftforge.net/forum/index.php/topic,29341.0.html

 

2) Subscript to the LivingDropsEvent or the BlockHarvestEvent

 

3) Yeah, no.  You're not going to manage that in anything less than a mess.

 

 

Thanks a lot for the info. I will see those 2 events you mentioned. I saw that post earlier. I will have to read it in more detail. It was awfully similar to what I want to accomplish.

 

 

  Quote

  Quote

3) Yeah, no.  You're not going to manage that in anything less than a mess.

Not all that true, really. You can do pretty space-efficient things using a ChunkDataEvent.

 

 

So, saving extra data in blocks can be done with that event? I will have to check that one as well. Thanks for the info.

 

 

  Quote

My guess is that he wants that data to track his collapse physics, that is, how far away a given block is from downward support.  Which is functionally equivalent to turning the whole world into redstone.

 

It's not the space-efficiency that's the issue, its the management.

 

 

Half true. The extra variable I want to add is to actually avoid keeping track of the supports.

QUACK!

Posted
  On 4/9/2015 at 3:39 PM, Quack Man said:
So, saving extra data in blocks can be done with that event? I will have to check that one as well. Thanks for the info.

 

A few things I've learned having to deal with these events:

  • There's four events you need to be concerned with.

  1. Chunk generation.  There's a thousand different events here, you'll need to figure out which one you need, if any
  2. ChunkSave.  Save the data, duh
  3. ChunkLoad.  Read the data
  4. ChunkUnload.  Cleaning up your data so you don't have a memory leak.

[*]#4 there is not strait forward.  ChunkSave will run after ChunkUnload, so you should either a) keep a Weak reference to the chunk object itself for mapping your data in a HashMap<Chunk, MySpecialData> or b) use the event to note which chunk has been unloaded, and then when ChunkSave happens, also remove the data from memory.

[*]Chunk NBT is just like any other NBT, you can read and write to it very easily, you just have to translate your data structure into primitive types.

 

  Quote

Half true. The extra variable I want to add is to actually avoid keeping track of the supports.

 

You can actually cheat and just look at the world when the block updates.  Examining the world doesn't take that much CPU time (I've clocked it: examining an entire chunk takes about 0.6 milliseconds even when using world.getBlock instead of directly accessing the chunk block arrays).  You'll lose a small portion of realism by taking shortcuts, but it'll be easier to code.  e.g. searching NSEW in straight lines will be easier to write (but less accurate) than trying to A* to bedrock.

 

This is based on my own code and using Time.getNano().

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.

Posted

Whenever you want to change vanilla stuff, I recommend looking for solutions in this order:

 

1) Check if the vanilla classes have public fields or methods you can access directly. It is very inconsistent, but there are lots of public stuff -- for example, entity AI is contained in a public task list that you can fully edit.

 

2) Look for events. Forge and FML have provided a lot of events that intercept vanilla functionality that is interesting to modders. Furthermore, many events are cancelable, meaning that you can fully replace the vanilla behavior.

 

3) Use Java reflection to access private/protected fields and methods. You can't change the code itself with reflection, but can often affect it's execution or monitor for a field to hit a certain value.

 

4) Consider replacing the vanilla classes entirely with your own. This doesn't always work, but for example you can change the crafting recipes to output your stuff instead of the vanilla, or you can intercept all entity spawns (with an event) and replace it with your own version.  The main problem with this is that in several places in the Minecraft code they compare against specific instance instead of using instanceof. In other words, even if you extend BlockLadder there are places in the code where it looks for Blocks.ladder which will be false for your extended class. If they were more consistent with using instanceof, this would actually be one of the most powerful techniques...

 

5) Advanced techniques like ASM.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

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
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
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.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Temu Coupon Code $100 Off [acu639380] For The USA This Month  Temu has become a go-to platform for online shopping in recent years, offering a vast selection of trendy items at unbeatable prices. With amazing discounts like the  Temu coupon code (acu639380) offering up to $100 Off for new users and exclusive offers for existing customers,  Temu is quickly cementing itself as a favorite among online shoppers. Whether you're looking for stylish fashion pieces, home essentials, or the latest gadgets, using  Temu 's promotional codes can help you save big on your purchases. In this blog, we’ll dive into all the incredible savings available this month, including details on the  Temu coupon codes (acu639380), which provide discounts like $100 Off for new and existing users, an additional 40% off, and even free gifts for first-time users. No matter where you’re located—whether in the United States, Canada, the UK, or beyond— Temu offers something for everyone. If you're looking to save money on your next shopping spree, keep reading to learn about all the best deals, discounts, and coupon codes you can use in June 2025. What is  Temu ? Before we dive into the details of the amazing  Temu coupon codes (acu639380), let’s first explore what  Temu is all about.  Temu is an online shopping platform that offers a massive range of products, from fashion and beauty items to home goods and electronics. With unbeatable prices, fast delivery, and free shipping to over 67 countries,  Temu is revolutionizing the way we shop online.  Temu is known for offering up to 90% off on certain items, which makes it an attractive option for budget-conscious shoppers. Whether you’re in the mood for trendy apparel, kitchen gadgets, or tech accessories,  Temu has something that fits your style and budget. Plus, with its regular sales events and exclusive coupon codes, there’s always an opportunity to save more. One of the biggest perks is the ability to combine discounts with promo codes like the  Temu coupon code (acu639380), which gives you a $100 discount for new users and additional savings for existing customers. Benefits of Using  Temu Coupon Codes  Temu coupon codes can offer significant discounts, and knowing how to take full advantage of these offers can lead to huge savings. The  Temu coupon code (acu639380) comes with a variety of benefits, such as: $100 Off for new users: This is a great way for new customers to enjoy  Temu ’s products at a fraction of the price. $100 Off for existing users: Loyal customers can still get a fantastic discount. 40% off: This discount code provides a solid extra savings on selected items. $100 coupon bundle: This is an exclusive offer for both new and existing users that lets you save on multiple purchases. Free gifts for new users: A welcome treat for first-time customers.  Temu Coupon Codes for June 2025 Now, let’s look at the  Temu coupon codes for June 2025 and how you can maximize your savings. These codes are designed to provide discounts based on your user status and location. Make sure to apply the  Temu coupon code (acu639380) when you check out to get the best deal possible! Here’s a breakdown of the  Temu coupon codes (acu639380) available:  Temu Coupon Code (acu639380) $100 Off for New Users Enjoy an instant $100 discount when you sign up for  Temu as a new user.  Temu Coupon Code (acu639380) $100 Off for Existing Users Loyal customers can also use this code to score a $100 discount on their next purchase.  Temu Coupon Code (acu639380) 40% Off Get up to 40% off on select items and categories—perfect for budget-savvy shoppers.  Temu $100 Coupon Bundle This bundle lets you apply a $100 discount on your shopping cart for both new and returning users.  Temu First Time User Coupon First-time buyers get an exclusive gift with this coupon code, alongside additional savings.  Temu Promo Code (acu639380) for June 2025 Use this code to unlock all of the June offers, including huge discounts on a wide variety of items. How  Temu Coupon Codes Help You Save More By using the  Temu coupon code (acu639380), you can access not only great discounts but also enjoy perks like free shipping and exclusive offers. The platform’s unbeatable prices, combined with these additional promo codes, create a shopping experience like no other. Let’s take a closer look at how each of these discounts can benefit you. $100 Off for new users: As a new user, you can score $100 Off on your first order with the  Temu coupon code (acu639380) for June 2025. This means you can shop for high-quality products like electronics, fashion, and home goods while spending less. $100 Off for existing users: Existing users also benefit from this promo code, which means even long-time shoppers can save big. The  Temu coupon code (acu639380) ensures that both new and loyal customers get an opportunity to save. 40% extra off: Certain categories are eligible for up to 40% off with this code. Whether you’re eyeing the latest tech gadget or refreshing your wardrobe, this extra discount can make a real difference to your total. Free gifts for new users: If you’re signing up for the first time,  Temu wants to welcome you with extra surprises. Use the  Temu first-time user coupon code to receive free gifts that’ll make your shopping experience even more enjoyable. $100 coupon bundle:  Temu has also created a special bundle that gives users—new and existing—a $100 discount on their orders. This bundle is perfect for those who love shopping in bulk and want to get the most value from their purchases. Where to Use  Temu Coupon Codes (acu639380)  Temu ships to over 67 countries, so no matter where you are, there’s a great deal waiting for you. Here’s a country-specific breakdown of how you can use the  Temu coupon code (acu639380) and enjoy incredible savings:  Temu Coupon Code $100 Off for USA: Residents of the United States can enjoy $100 Off their purchase using the  Temu coupon code (acu639380), which works for both new and existing users.  Temu Coupon Code $100 Off for Canada: Shoppers in Canada can save $100 on their orders when they apply the  Temu coupon code (acu639380), making it an excellent option for our neighbors to the north.  Temu Coupon Code $100 Off for UK: UK shoppers can also benefit from this amazing coupon code, ensuring they get $100 Off their next  Temu order.  Temu Coupon Code 40% Off for Mexico: Mexico-based shoppers can enjoy up to 40% off select items by using the  Temu coupon code (acu639380), which is ideal for those looking for exclusive savings.  Temu Coupon Code 40% Off for Brazil: Brazilian shoppers will be thrilled to know that they can apply the  Temu coupon code (acu639380) for up to 40% off on select items from the website.  Temu Coupon Code $100 Off for Japan: Shoppers in Japan can also take advantage of the  Temu coupon code (acu639380) and get $100 Off their purchases, which works for a wide range of products. Tips to Maximize Your Savings Stack Coupon Codes:  Temu allows users to stack certain discounts, so be sure to combine the  Temu coupon code (acu639380) with other promotional offers to get the best deal possible. Shop During Sales Events: Take advantage of major sales events like Black Friday, Cyber Monday, and holiday sales, when you can use  Temu coupon codes for even bigger discounts. Sign Up for Alerts: By signing up for  Temu ’s newsletter, you’ll be the first to know about new coupon codes, flash sales, and other special offers. Follow  Temu on Social Media:  Temu often shares exclusive discounts and codes on its social media platforms. Follow them to stay updated on the latest deals. Conclusion Whether you’re a first-time shopper or a loyal  Temu customer, using the  Temu coupon code (acu639380) is a smart way to save money on your favorite items. With discounts like $100 Off, up to 40% off, and exclusive coupon bundles,  Temu ensures that you never have to pay full price. With free shipping to over 67 countries, it’s easier than ever to shop for high-quality, affordable products that fit your budget. Don’t miss out on these amazing savings—apply the  Temu coupon code (acu639380) today and enjoy huge discounts on your next purchase.  
    • Make tests with different builds of these mods
    • it worked now. but is therre n outer way to use essential and forggematica?
    • Maybe a conflict with essential - make a test without it
    • ---- Minecraft Crash Report ---- // I let you down. Sorry Time: 6/21/25 5:53 PM Description: Initializing game 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.0.9.jar:8.0.9+86+master.3cf110c] {}     at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {re:classloading,re:classloading,re:classloading}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {re:classloading,re:classloading,re:classloading}     at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_51] {}     at gg.essential.network.connectionmanager.ConnectionManager.<init>(ConnectionManager.java:212) ~[?:?] {re:mixin,re:classloading}     at gg.essential.Essential.<init>(Essential.java:139) ~[?:?] {re:mixin,re:classloading}     at gg.essential.Essential.getInstance(Essential.java:168) ~[?:?] {re:mixin,re:classloading}     at gg.essential.mixins.impl.client.MinecraftHook.preinit(MinecraftHook.java:39) ~[?:?] {re:mixin,re:classloading}     at net.minecraft.client.Minecraft.handler$zgd000$preinit(Minecraft.java:4603) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:forgematica.mixins.json:MixinMinecraftClient,pl:mixin:APP:mafglib.mixins.json:MixinMinecraftClient,pl:mixin:APP:mixins.essential.json:client.Mixin_IncreaseMenuFpsLimit,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_AddSPSTitle,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_DisplayScreen,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_LoadWorld,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent_Final,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:kubejs-common.mixins.json:MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.<init>(Minecraft.java:408) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:forgematica.mixins.json:MixinMinecraftClient,pl:mixin:APP:mafglib.mixins.json:MixinMinecraftClient,pl:mixin:APP:mixins.essential.json:client.Mixin_IncreaseMenuFpsLimit,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_AddSPSTitle,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_DisplayScreen,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_LoadWorld,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent_Final,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:kubejs-common.mixins.json:MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:149) [?:?] {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:51) [forge-1.16.5-36.2.20.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$531/1174000532.call(Unknown Source) [forge-1.16.5-36.2.20.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {} Caused by: org.spongepowered.asm.mixin.throwables.MixinApplyError: Mixin [mixins.essential.json:server.integrated.MixinIntegratedServer] from phase [DEFAULT] in config [mixins.essential.json] FAILED during APPLY     at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinError(MixinProcessor.java:636) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinApplyError(MixinProcessor.java:588) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:379) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     ... 28 more Caused by: org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException: Conflicting type cast at offset 4 in synthetic bridge method func_212871_a_(Ljava/lang/Object;)V     at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachUniqueMethod(MixinPreProcessorStandard.java:570) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachMethods(MixinPreProcessorStandard.java:354) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:302) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.createContextFor(MixinPreProcessorStandard.java:280) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     at org.spongepowered.asm.mixin.transformer.MixinInfo.createContextFor(MixinInfo.java:1288) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {re:classloading}     at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:292) ~[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] {re:classloading}     at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:365) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {re:classloading}     at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}     ... 28 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.0.9.jar:8.0.9+86+master.3cf110c] {}     at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {re:classloading,re:classloading,re:classloading,re:classloading}     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {re:classloading,re:classloading,re:classloading,re:classloading}     at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_51] {}     at gg.essential.network.connectionmanager.ConnectionManager.<init>(ConnectionManager.java:212) ~[?:?] {re:mixin,re:classloading}     at gg.essential.Essential.<init>(Essential.java:139) ~[?:?] {re:mixin,re:classloading}     at gg.essential.Essential.getInstance(Essential.java:168) ~[?:?] {re:mixin,re:classloading}     at gg.essential.mixins.impl.client.MinecraftHook.preinit(MinecraftHook.java:39) ~[?:?] {re:mixin,re:classloading}     at net.minecraft.client.Minecraft.handler$zgd000$preinit(Minecraft.java:4603) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:forgematica.mixins.json:MixinMinecraftClient,pl:mixin:APP:mafglib.mixins.json:MixinMinecraftClient,pl:mixin:APP:mixins.essential.json:client.Mixin_IncreaseMenuFpsLimit,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_AddSPSTitle,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_DisplayScreen,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_LoadWorld,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent_Final,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:kubejs-common.mixins.json:MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.<init>(Minecraft.java:408) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:forgematica.mixins.json:MixinMinecraftClient,pl:mixin:APP:mafglib.mixins.json:MixinMinecraftClient,pl:mixin:APP:mixins.essential.json:client.Mixin_IncreaseMenuFpsLimit,pl:mixin:APP:mixins.essential.json:client.Mixin_RunEssentialTasks,pl:mixin:APP:mixins.essential.json:client.MixinMinecraft,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_FixKeybindUnpressedInEmoteWheel,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_RecalculateMenuScale,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_AddSPSTitle,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_DisplayScreen,pl:mixin:APP:mixins.essential.json:client.gui.Mixin_UpdateWindowTitle_LoadWorld,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixInternalByteBufAccess,pl:mixin:APP:mixins.essential.json:compatibility.forge.Mixin_FixPrematureByteBufFree,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent,pl:mixin:APP:mixins.essential.json:events.Mixin_RenderTickEvent_Final,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:kubejs-common.mixins.json:MinecraftMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A} -- Initialization -- Details: Stacktrace:     at net.minecraft.client.main.Main.main(Main.java:149) [?:?] {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:51) [forge-1.16.5-36.2.20.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$531/1174000532.call(Unknown Source) [forge-1.16.5-36.2.20.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.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: 1117332648 bytes (1065 MB) / 3684696064 bytes (3514 MB) up to 9335996416 bytes (8903 MB)     CPUs: 16     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx10016m -Xms256m     Launched Version: forge-36.2.20     Backend library: LWJGL version 3.2.2 build 10     Backend API: NO CONTEXT     GL Caps:      Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'     Type: Client (map_client.txt)     CPU: <unknown>
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.