Jump to content

blockFalling


Stroam

Recommended Posts

I found the class that gravel and sand both extend called the BlockFalling. I was wondering how to make all blocks able to fall. I've seen a few mods that a add gravity to all blocks in minecraft and wonder how you would go about doing that short of remaking every block in minecraft and adding the BlockFall class to it.

You don't need to point out what's wrong with the programmer. I already know. Now what's wrong with the code?

Link to comment
Share on other sites

Easy way:

There isn't one.

 

Clean way:

Make your own block, which extends BlockFalling, and recreate every vanilla block you want to fall.

 

Hard way:

ASM into the Block class's updateTick function to add a static function call to your code.  Your code then replicates the effects of BlockFalling.

 

Best way:

Don't.  You would need to think long and hard about how you'd go about making a ceiling so the entire world doesn't collapse out of hand as soon as you load it.  Which blocks should fall, which ones shouldn't, what classes are they, and so on.  I've looked at this myself and went, "ok, if I modify [this block] that means I'd have to modify [block, block, and block].  If I do that, then [another list] needs to be modified."  It was a cascade failure on how many alterations I'd have to make and determined it wasn't worth it and kept it at just stone (which I did via "clean" then ASM'd BlockFalling to have a little extra tidbit so it doesn't make towers, but instead pyramids).

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

Very informative. I too see each point you've listed. I was thinking of not every block falling like sand but to check supporting blocks around it. Just simple checks like cobblestone would check left, right, front back and then down one from each of those locations.  so that arches would still work and have different rules for each material because I don't want trees instantly falling. Bedrock of course would not fall. If I remake all the blocks then cross mod support would be more effort than people would be willing to put in. So ASM does sound like it would be the best way to go. But that is a lot of checks to do without using multithreading. I have not used ASM in two years, and never have done it for minecraft or multithreading. Is it possible to setup multithreading in ASM for minecraft? I am researching this question but any input would be helpful.

You don't need to point out what's wrong with the programmer. I already know. Now what's wrong with the code?

Link to comment
Share on other sites

ASM carefully.  Use new blocks whenever possible (you can use the various worldgen events to examine and replace blocks as needed as well as remove and replace crafting recipes).  Write a static class with helper functions, taking world, blockpos, and any relevant properties so that the code only has to be written once and all support-required blocks use it (support distance can be passed as a paramter based on the block, so if you ASM the call into Blocks.stone, it passes 5, whereas Blocks.wood_plans passes 3, and so on).

 

You will have to figure out how non-same blocks support each other.  Can jungle planks support oak?  Can smooth stone support cobble?  Can monster egg support smooth stone?

 

And the biggest hint:

You will need to always check that support exists 1 layer below.  If cobblestone only checks that it's north neighbor is cobble, then two floating cobble will support each other.  This last block needs to merely have a solid top surface (as it is supporting the block above, and the block above is supporting the adjacent block).

 

Lastly:

You'll need to take shortcuts somewhere.  I'll leave you to figure out which shortcuts you should take, so that you understand them.  But at some point you will have to sacrifice better physics for better performance or ease of coding.

 

And oh yeah:

Avoid try...catch in any code called from onUpdate / updateTick.  You can cheat the compiler by letting the ASM-inserted function throw exceptions.  The compiler never sees that it's being called and so never enforces the try...catch, and as long as the code cannot throw the exception, it can't crash.  That is: "throws" does not exist as part of a function signature.

 

(I had to do this in one spot, because I had to Reflect in a class definition.  But the try...catch around the reflection code slowed the game down massively, but as I had defined the class and its constructor, it could never cause an exception, so I told the class I was ASMing into to handle it....except that it doesn't and the compiler doesn't give a damn).

 

This video is kind of bunk, but it shows off what I did.

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

upon further consideration for each block to have a different set of rules and still be compatible with other mods I would have to modify the class of every vanilla block and with no native multithreading support that I know in the minecraft code this would take a considerable amount of work, would not be easy to maintain, and most likely would be riddled with bugs and performance impacts. And as you pointed out you can do this with just a few block which would drastically cut down on the size of the project but would defeat the purpose I was intending. I wanted digging caves larger than 2x2  to require supports so collapses didn't happen, and building large houses with big roofs to again require support structures or certain designs to stop from falling in, and  have floating islands be impossible.

 

As for checks it would be check the 4 paths(N,S,W,E) and as long as one of the paths passed (check out one AND down one, for cobblestone) block would not fall. Each block would have an associated check tree that would return true as long as you reach the end of one of the branches, and if it fell would trigger the checks for all blocks with 1 radius around it which would mean a large island built on one pillar would crash any system if the pillar was destroyed. Also I would not code it to check very far. If you built a tall pillar of cobblestone and put one on the side it would go through the same check as earlier mentioned and would not need to check down the entire pillar.

 

The clean way would be to add boolean isSupport, and method isSupported(), to every block you didn't want to float. I would not want to undertake a project like this without help.

You don't need to point out what's wrong with the programmer. I already know. Now what's wrong with the code?

Link to comment
Share on other sites

You can pull it off.  You just have to decide which battles are worth fighting.

 

Planks and Logs have their own classes (BlockWood and BlockOldLog/BlockLog) as does dirt, stone, grass.  Cobblestone does not.

 

I completely replaced stone and made it drop my own cobblestone block (circumventing the need to ASM cobblestone) and left everything else alone (trees aren't constructed in a manner that is easy to run support rules for, and planks are primarily a player construction block and I was mostly dealing with the "dig out a room" aspect).

 

What blocks are either too expensive or too weird for the player to decide to build the house out of it?  What's too hard to modify and is an allowable loss in realism?  Even at partial support, you'll find people who go "this is awesome" and won't subvert the rules too much because they like the mechanic and getting around it feels like cheating ("pfft, roof of furnaces, lol").

 

This class will also help in your endeavors:

https://github.com/shieldbug1/S1Library/blob/master/src/main/java/com/shieldbug1/lib/asm/ASMHelper.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

I have seen it was pulled off in the past, and with enough time I could pull it off, it is the time I'm lacking. 90% of my week is taken up with working 40+ hrs on top of college classes. which only gives me 8 to 16 scattered hours during the week to work on it. I would love to see it in action and still work with mods like carpenter's blocks, mariculture, and tinkerConstruct but that's more work than I can devote at this time. Thanks for the class though. I will bookmark it in case I get more time in the future.

You don't need to point out what's wrong with the programmer. I already know. Now what's wrong with the code?

Link to comment
Share on other sites

[me=Draco18s]salute[/me]

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

One thing to be aware of is that some vanilla code compares against the instance of the block (e.g. Blocks.ladder) instead of checking for instanceof (e.g. instanceof BlockLadder). This means that extending a class and replacing the vanilla blocks may not work fully as expected. I suspect that many mods are also coded that way.

 

If you want to really do a wholesale change to most blocks and have them work correctly, you need to actually make the built-in Blocks instance take on the value of your block. Since Blocks instances are static and final, you'll need to use techniques like reflection or ASM.

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

Link to comment
Share on other sites

I think this way would work, but it could be inappropriate.

1. Subscribe to PopulateChunkEvent.Post and BlockEvent.BreakEvent, PlaceEvent and MultiPlaceEvent.

2. When a chunk/block is populated/changed, remove the block or nearby block and spawn falling entity under some condition. You would have to create your own falling entity.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

I think this way would work, but it could be inappropriate.

1. Subscribe to PopulateChunkEvent.Post and BlockEvent.BreakEvent, PlaceEvent and MultiPlaceEvent.

2. When a chunk/block is populated/changed, remove the block or nearby block and spawn falling entity under some condition. You would have to create your own falling entity.

 

I am trying to accomplish something similar. I think I can see what you mean. What kind of performance impact would this have? Would this be viable to replace every block on the game with custom ones?

QUACK!

Link to comment
Share on other sites

Performance would not be a problem, since you just have to check nearby blocks and make them fall when some changes were made.

What I cannot guarantee is whether the way could cover every circumstances or not.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

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
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

    • just saw new patch news and this is the most important thing to fix/change for me. its mostly gone in retold which uses an upgraded version of the aoe3 de engine. if getting the fix back ported causes the patch to be delayed I’m fine with that. better than going another 6 month or more with current performance degrading and stability issues. retold QOL, lobby browser and attack move improvements are a plus.
    • The internet can feel like the wild west, full of danger and hidden traps, and I learned that lesson the hard way when I lost access to my Bitcoin wallet thanks to some sneaky malware. Picture this: I was just minding my own business, innocently clicking on what I thought was a harmless ad, maybe something about a new “must-have” kitchen gadget, when suddenly I found myself staring in horror at my computer screen, realizing I had just compromised my wallet containing a whopping $480,000. Talk about a facepalm moment! It felt like I’d just walked into a bar in a cowboy movie, only to find out the saloon was full of outlaws. In the midst of my panic, I turned to Cyber Constable Intelligence, hoping they could pull off a miracle. I can’t emphasize enough how much they felt like my personal posse in that moment. Their team was not just professional; they were genuinely empathetic, treating my case with the urgency it absolutely deserved. It felt like I was surrounded by a group of tech-savvy superheroes, ready to tackle the villain that was my lost fortune. After a few days of nail-biting suspense, I received the call that changed everything. They had not only recovered my funds but had done it faster than I could say “malware disaster.” It was like winning the lottery, only this time, I wasn’t just rich; I was also educated! They took the time to provide me with invaluable advice on safeguarding my wallet in the future, transforming my panic into peace of mind. I walked away from this experience not only with my $480,000 intact but also with a newfound respect for the importance of digital security. I mean, who knew that clicking on an ad could lead to such chaos? It’s like finding out that your favorite cowboy is actually a bandit in disguise. Thanks to Cyber Constable Intelligence, I can finally take a breath without feeling like my funds are riding off into the sunset. So, here’s to you, Cyber Constable Intelligence! You’ve not only saved my wallet but have also given me the tools to navigate this wild digital frontier with a sense of humor and a lot more caution. I can’t thank you enough for turning my panic into peace of mind. Next time I see a “too good to be true” ad, you can bet I’ll be remembering this lesson and staying far away Reach Their info with the info below What Sapp Info: 1. (2. 5.  2.  ) 3.  7.  8.  (7. 6. 1. 1.) Email Info : support (@) cyber constable intelligence   com Website info: www cyber constable itelligence. com
    • When trying to load my singleplayer server, l get the Minercaft error code [Exit code -805306369]. I'm running Forge version 1.20.1-47.3.0 I have my logs here: Crash-report log https://pastebin.com/AJihg1wP debug.log https://paste.ee/p/HPTMe latest.log https://paste.ee/p/1smWY
    • ---- Minecraft Crash Report ---- // You're mean. Time: 2024-10-18 02:06:05 Description: Exception in server tick loop java.lang.RuntimeException: java.lang.NullPointerException: Cannot invoke "net.minecraft.world.level.ItemLike.m_5456_()" because "p_41604_" is null     at org.violetmoon.zetaimplforge.event.ForgeEventsRemapper.lambda$createForgeConsumer$2(ForgeEventsRemapper.java:125) ~[Zeta-1.0-24.jar%23357!/:1.0-24] {re:classloading}     at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:260) ~[eventbus-6.0.5.jar%2387!/:?] {}     at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:252) ~[eventbus-6.0.5.jar%2387!/:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:315) ~[eventbus-6.0.5.jar%2387!/:?] {}     at net.minecraftforge.eventbus.EventBus.post(EventBus.java:296) ~[eventbus-6.0.5.jar%2387!/:?] {}     at net.minecraftforge.event.ForgeEventFactory.onPreServerTick(ForgeEventFactory.java:945) ~[forge-1.20.1-47.3.10-universal.jar%23363!/:?] {re:classloading}     at net.minecraft.server.MinecraftServer.m_5705_(MinecraftServer.java:812) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:citadel.mixins.json:MinecraftServerMixin,pl:mixin:APP:mixins.essential.json:feature.sps.Mixin_IntegratedServerResourcePack,pl:mixin:APP:mixins.essential.json:server.MinecraftServerMixin_PvPGameRule,pl:mixin:APP:mixins.essential.json:server.Mixin_PublishServerStatusResponse,pl:mixin:A}     at net.minecraft.client.server.IntegratedServer.m_5705_(IntegratedServer.java:89) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:mixins.essential.json:server.integrated.Mixin_FixDefaultOpPermissionLevel,pl:mixin:APP:mixins.essential.json:server.integrated.MixinIntegratedServer,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.server.MinecraftServer.m_130011_(MinecraftServer.java:661) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:citadel.mixins.json:MinecraftServerMixin,pl:mixin:APP:mixins.essential.json:feature.sps.Mixin_IntegratedServerResourcePack,pl:mixin:APP:mixins.essential.json:server.MinecraftServerMixin_PvPGameRule,pl:mixin:APP:mixins.essential.json:server.Mixin_PublishServerStatusResponse,pl:mixin:A}     at net.minecraft.server.MinecraftServer.m_206580_(MinecraftServer.java:251) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:citadel.mixins.json:MinecraftServerMixin,pl:mixin:APP:mixins.essential.json:feature.sps.Mixin_IntegratedServerResourcePack,pl:mixin:APP:mixins.essential.json:server.MinecraftServerMixin_PvPGameRule,pl:mixin:APP:mixins.essential.json:server.Mixin_PublishServerStatusResponse,pl:mixin:A}     at java.lang.Thread.run(Thread.java:833) ~[?:?] {re:mixin} Caused by: java.lang.NullPointerException: Cannot invoke "net.minecraft.world.level.ItemLike.m_5456_()" because "p_41604_" is null     at net.minecraft.world.item.ItemStack.<init>(ItemStack.java:147) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,xf:fml:forge:itemstack,re:classloading,xf:fml:forge:itemstack,pl:mixin:APP:mixins.deeperdarker.json:ItemStackMixin,pl:mixin:APP:quark.mixins.json:ItemStackMixin,pl:mixin:A}     at net.minecraft.world.item.ItemStack.<init>(ItemStack.java:143) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,xf:fml:forge:itemstack,re:classloading,xf:fml:forge:itemstack,pl:mixin:APP:mixins.deeperdarker.json:ItemStackMixin,pl:mixin:APP:quark.mixins.json:ItemStackMixin,pl:mixin:A}     at net.minecraft.world.item.ItemStack.<init>(ItemStack.java:127) ~[client-1.20.1-20230612.114412-srg.jar%23358!/:?] {re:mixin,xf:fml:forge:itemstack,re:classloading,xf:fml:forge:itemstack,pl:mixin:APP:mixins.deeperdarker.json:ItemStackMixin,pl:mixin:APP:quark.mixins.json:ItemStackMixin,pl:mixin:A}     at uwu.lopyluna.create_dd.content.items.equipment.gilded_rose_tools.GRHoeItem.getCraftingRemainingItem(GRHoeItem.java:103) ~[Create-DnDesire-1.20.1-0.1b.Release-Early-Dev.jar%23286!/:0.1b.Release-Early-Dev] {re:classloading}     at net.minecraftforge.common.extensions.IForgeItemStack.getCraftingRemainingItem(IForgeItemStack.java:62) ~[forge-1.20.1-47.3.10-universal.jar%23363!/:?] {re:computing_frames,re:mixin,re:classloading}     at org.violetmoon.zeta.util.handler.RecipeCrawlHandler.digest(RecipeCrawlHandler.java:159) ~[Zeta-1.0-24.jar%23357!/:1.0-24] {re:classloading}     at org.violetmoon.zeta.util.handler.RecipeCrawlHandler.onTick(RecipeCrawlHandler.java:142) ~[Zeta-1.0-24.jar%23357!/:1.0-24] {re:classloading}     at org.violetmoon.zetaimplforge.event.ForgeEventsRemapper.lambda$createForgeConsumer$2(ForgeEventsRemapper.java:123) ~[Zeta-1.0-24.jar%23357!/:1.0-24] {re:classloading}     ... 10 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details:     Minecraft Version: 1.20.1     Minecraft Version ID: 1.20.1     Operating System: Windows 10 (amd64) version 10.0     Java Version: 17.0.8, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 1344270024 bytes (1281 MiB) / 5125439488 bytes (4888 MiB) up to 9529458688 bytes (9088 MiB)     CPUs: 8     Processor Vendor: GenuineIntel     Processor Name: Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz     Identifier: Intel64 Family 6 Model 158 Stepping 9     Microarchitecture: Kaby Lake     Frequency (GHz): 3.60     Number of physical packages: 1     Number of physical CPUs: 4     Number of logical CPUs: 8     Graphics card #0 name: NVIDIA GeForce RTX 3070     Graphics card #0 vendor: NVIDIA (0x10de)     Graphics card #0 VRAM (MB): 4095.00     Graphics card #0 deviceId: 0x2484     Graphics card #0 versionInfo: DriverVersion=32.0.15.6590     Memory slot #0 capacity (MB): 16384.00     Memory slot #0 clockSpeed (GHz): 2.13     Memory slot #0 type: DDR4     Memory slot #1 capacity (MB): 16384.00     Memory slot #1 clockSpeed (GHz): 2.13     Memory slot #1 type: DDR4     Virtual memory max (MB): 65504.05     Virtual memory used (MB): 40239.47     Swap memory total (MB): 32768.00     Swap memory used (MB): 1470.56     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx9088m -Xms256m     Server Running: true     Player Count: 0 / 8; []     Data Packs: vanilla, mod:supermartijn642configlib (incompatible), mod:geckolib, mod:scena (incompatible), mod:botarium (incompatible), mod:aquaculturedelight, mod:citadel (incompatible), mod:alexsmobs (incompatible), mod:yungsapi, mod:mixinextras (incompatible), mod:bettercopper (incompatible), mod:mcwdoors, mod:immersive_armors (incompatible), mod:melody (incompatible), mod:chat_heads (incompatible), mod:interiors (incompatible), mod:cloth_config (incompatible), mod:dummmmmmy (incompatible), mod:konkrete (incompatible), mod:embeddium, mod:morearmor, mod:corpse, mod:farmersdelight, mod:amethyst_tools_and_armour, mod:ironfurnaces, mod:mcwtrpdoors, mod:supermartijn642corelib, mod:yungsbridges, mod:samurai_dynasty (incompatible), mod:curios (incompatible), mod:rightclickharvest (incompatible), mod:cerbons_api, mod:oreexcavation (incompatible), mod:elevatorid, mod:toolsofobsidian (incompatible), mod:resourcefullib (incompatible), mod:spartanweaponry, mod:deeperdarker, mod:architectury (incompatible), mod:refurbished_furniture, mod:trashcans (incompatible), mod:framework, mod:fallingtree (incompatible), mod:quarkdelight, mod:mcwlights, mod:crafting_on_a_stick (incompatible), mod:essential (incompatible), mod:extraarmor, mod:cucumber, mod:ftblibrary (incompatible), mod:ftbteams (incompatible), mod:rechiseled (incompatible), mod:jei, mod:fallingleaves, mod:journeymap (incompatible), mod:travelersbackpack, mod:artifacts, mod:libx, mod:dungeoncrawl, mod:rechiseledcreate, mod:mtr (incompatible), mod:inventorypets (incompatible), mod:fusion, mod:morevanillashields, mod:azurelib, mod:watut, mod:forge, mod:mysticalagriculture, mod:ironchest, mod:dungeons_arise, mod:rpgsmw, mod:mores, mod:vanillaplustools (incompatible), mod:voicechat (incompatible), mod:railways, mod:simplyswords (incompatible), mod:moonlight (incompatible), mod:mixinsquared (incompatible), mod:another_furniture (incompatible), mod:new_ores_1_20_1, mod:nethersdelight, mod:car, mod:kotlinforforge (incompatible), mod:flywheel, mod:amendments (incompatible), mod:create, mod:create_dd (incompatible), mod:extendedgears (incompatible), mod:spartanshields, mod:easy_emerald, mod:zeta (incompatible), mod:quark (incompatible), mod:supplementaries, mod:fancymenu (incompatible), mod:coroutil (incompatible), mod:oceansdelight (incompatible), mod:appleskin (incompatible), mod:aquaculture, mod:immersive_melodies (incompatible), mod:expandability (incompatible), mod:chiselsandbits (incompatible), mod:armortoolsores, mod:createaddition (incompatible), Supplementaries Generated Pack     Enabled Feature Flags: minecraft:vanilla     World Generation: Experimental     Type: Integrated Server (map_client.txt)     Is Modded: Definitely; Client brand changed to 'forge'; Server brand changed to 'forge'     Launched Version: forge-47.3.10     ModLauncher: 10.0.9+10.0.9+main.dcd20f30     ModLauncher launch target: forgeclient     ModLauncher naming: srg     ModLauncher services:          mixin-0.8.5.jar mixin PLUGINSERVICE          eventbus-6.0.5.jar eventbus PLUGINSERVICE          fmlloader-1.20.1-47.3.10.jar slf4jfixer PLUGINSERVICE          fmlloader-1.20.1-47.3.10.jar object_holder_definalize PLUGINSERVICE          fmlloader-1.20.1-47.3.10.jar runtime_enum_extender PLUGINSERVICE          fmlloader-1.20.1-47.3.10.jar capability_token_subclass PLUGINSERVICE          accesstransformers-8.0.4.jar accesstransformer PLUGINSERVICE          fmlloader-1.20.1-47.3.10.jar runtimedistcleaner PLUGINSERVICE          modlauncher-10.0.9.jar mixin TRANSFORMATIONSERVICE          modlauncher-10.0.9.jar essential-loader TRANSFORMATIONSERVICE          modlauncher-10.0.9.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          [email protected]         [email protected]         javafml@null         lowcodefml@null     Mod List:          supermartijn642configlib-1.1.8-forge-mc1.20.jar   |SuperMartijn642's Config Libra|supermartijn642configlib      |1.1.8               |DONE      |Manifest: NOSIGNATURE         geckolib-forge-1.20.1-4.4.9.jar                   |GeckoLib 4                    |geckolib                      |4.4.9               |DONE      |Manifest: NOSIGNATURE         scena-forge-1.0.103.jar                           |Scena                         |scena                         |1.0.103             |DONE      |Manifest: NOSIGNATURE         botarium-forge-1.20.1-2.3.4.jar                   |Botarium                      |botarium                      |2.3.4               |DONE      |Manifest: NOSIGNATURE         aquaculture_delight_1.0.0_forge_1.20.1.jar        |Aquaculture Delight           |aquaculturedelight            |1.0.0               |DONE      |Manifest: NOSIGNATURE         citadel-2.6.0-1.20.1.jar                          |Citadel                       |citadel                       |2.6.0               |DONE      |Manifest: NOSIGNATURE         alexsmobs-1.22.9.jar                              |Alex's Mobs                   |alexsmobs                     |1.22.9              |DONE      |Manifest: NOSIGNATURE         YungsApi-1.20-Forge-4.0.6.jar                     |YUNG's API                    |yungsapi                      |1.20-Forge-4.0.6    |DONE      |Manifest: NOSIGNATURE         mixinextras-forge-0.4.1.jar                       |MixinExtras                   |mixinextras                   |0.4.1               |DONE      |Manifest: NOSIGNATURE         BetterCopper 1.20.1 -1.2.jar                      |Better Copper                 |bettercopper                  |1.2                 |DONE      |Manifest: NOSIGNATURE         mcw-doors-1.1.1forge-mc1.20.1.jar                 |Macaw's Doors                 |mcwdoors                      |1.1.1               |DONE      |Manifest: NOSIGNATURE         immersive_armors-1.6.1+1.20.1-forge.jar           |Immersive Armors              |immersive_armors              |1.6.1+1.20.1        |DONE      |Manifest: NOSIGNATURE         melody_forge_1.0.3_MC_1.20.1-1.20.4.jar           |Melody                        |melody                        |1.0.2               |DONE      |Manifest: NOSIGNATURE         chat_heads-0.13.3-forge-1.20.jar                  |Chat Heads                    |chat_heads                    |0.13.3              |DONE      |Manifest: NOSIGNATURE         interiors-0.5.6+forge-mc1.20.1-build.104.jar      |Create: Interiors             |interiors                     |0.5.6               |DONE      |Manifest: NOSIGNATURE         cloth-config-11.1.136-forge.jar                   |Cloth Config v10 API          |cloth_config                  |11.1.136            |DONE      |Manifest: NOSIGNATURE         dummmmmmy-1.20-2.0.2.jar                          |MmmMmmMmmmmm                  |dummmmmmy                     |1.20-2.0.2          |DONE      |Manifest: NOSIGNATURE         konkrete_forge_1.8.0_MC_1.20-1.20.1.jar           |Konkrete                      |konkrete                      |1.8.0               |DONE      |Manifest: NOSIGNATURE         embeddium-0.3.31+mc1.20.1.jar                     |Embeddium                     |embeddium                     |0.3.31+mc1.20.1     |DONE      |Manifest: NOSIGNATURE         morearmor-1.20.1-1.4.6.jar                        |More Armor                    |morearmor                     |1.4.6               |DONE      |Manifest: NOSIGNATURE         corpse-forge-1.20.1-1.0.17.jar                    |Corpse                        |corpse                        |1.20.1-1.0.17       |DONE      |Manifest: NOSIGNATURE         FarmersDelight-1.20.1-1.2.4.jar                   |Farmer's Delight              |farmersdelight                |1.20.1-1.2.4        |DONE      |Manifest: NOSIGNATURE         amethyst tools  armour 1.20.1.jar                 |Amethyst tools and armour     |amethyst_tools_and_armour     |1.0.0               |DONE      |Manifest: NOSIGNATURE         ironfurnaces-1.20.1-4.1.6.jar                     |Iron Furnaces                 |ironfurnaces                  |4.1.6               |DONE      |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.3-mc1.20.1forge.jar             |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.3               |DONE      |Manifest: NOSIGNATURE         supermartijn642corelib-1.1.17a-forge-mc1.20.1.jar |SuperMartijn642's Core Lib    |supermartijn642corelib        |1.1.17+a            |DONE      |Manifest: NOSIGNATURE         YungsBridges-1.20-Forge-4.0.3.jar                 |YUNG's Bridges                |yungsbridges                  |1.20-Forge-4.0.3    |DONE      |Manifest: NOSIGNATURE         samurai_dynasty-0.0.48-1.20.1-neo.jar             |Samurai Dynasty               |samurai_dynasty               |0.0.48-1.20.1-neo   |DONE      |Manifest: NOSIGNATURE         curios-forge-5.10.0+1.20.1.jar                    |Curios API                    |curios                        |5.10.0+1.20.1       |DONE      |Manifest: NOSIGNATURE         right-click-harvest-3.2.3+1.20.1-forge.jar        |Right Click Harvest           |rightclickharvest             |3.2.3+1.20.1-forge  |DONE      |Manifest: NOSIGNATURE         CerbonsApi-Forge-1.20.1-1.0.0.jar                 |CerbonsApi                    |cerbons_api                   |1.0.0               |DONE      |Manifest: NOSIGNATURE         oreexcavation-1.13.174.jar                        |OreExcavation                 |oreexcavation                 |1.13.174            |DONE      |Manifest: NOSIGNATURE         elevatorid-1.20.1-lex-1.9.jar                     |Elevator Mod                  |elevatorid                    |1.20.1-lex-1.9      |DONE      |Manifest: NOSIGNATURE         ToolsOfObsidian-1.20.1-1.6.8-[FORGE].jar          |Tools Of Obsidian             |toolsofobsidian               |1.6.8-[FORGE]       |DONE      |Manifest: NOSIGNATURE         resourcefullib-forge-1.20.1-2.1.29.jar            |Resourceful Lib               |resourcefullib                |2.1.29              |DONE      |Manifest: NOSIGNATURE         SpartanWeaponry-1.20.1-forge-3.1.3-all.jar        |Spartan Weaponry              |spartanweaponry               |3.1.3               |DONE      |Manifest: NOSIGNATURE         deeperdarker-forge-1.20.1-1.3.2.jar               |Deeper and Darker             |deeperdarker                  |1.3.2               |DONE      |Manifest: NOSIGNATURE         architectury-9.2.14-forge.jar                     |Architectury                  |architectury                  |9.2.14              |DONE      |Manifest: NOSIGNATURE         refurbished_furniture-forge-1.20.1-1.0.6.jar      |MrCrayfish's Furniture Mod: Re|refurbished_furniture         |1.0.6               |DONE      |Manifest: 0d:78:5f:44:c0:47:0c:8c:e2:63:a3:04:43:d4:12:7d:b0:7c:35:37:dc:40:b1:c1:98:ec:51:eb:3b:3c:45:99         trashcans-1.0.18b-forge-mc1.20.jar                |Trash Cans                    |trashcans                     |1.0.18b             |DONE      |Manifest: NOSIGNATURE         framework-forge-1.20.1-0.7.11.jar                 |Framework                     |framework                     |0.7.11              |DONE      |Manifest: 0d:78:5f:44:c0:47:0c:8c:e2:63:a3:04:43:d4:12:7d:b0:7c:35:37:dc:40:b1:c1:98:ec:51:eb:3b:3c:45:99         FallingTree-1.20.1-4.3.4.jar                      |FallingTree                   |fallingtree                   |4.3.4               |DONE      |Manifest: 3c:8e:df:6c:df:a6:2a:9f:af:64:ea:04:9a:cf:65:92:3b:54:93:0e:96:50:b4:52:e1:13:42:18:2b:ae:40:29         quark_delight_1.0.0_forge_1.20.1.jar              |Quark Delight                 |quarkdelight                  |1.0.0               |DONE      |Manifest: NOSIGNATURE         mcw-lights-1.1.0-mc1.20.1forge.jar                |Macaw's Lights and Lamps      |mcwlights                     |1.1.0               |DONE      |Manifest: NOSIGNATURE         crafting-on-a-stick-1.20.1-1.1.5.jar              |Crafting On A Stick           |crafting_on_a_stick           |1.1.5               |DONE      |Manifest: NOSIGNATURE         Essential (forge_1.20.1).jar                      |Essential                     |essential                     |1.3.4.1             |DONE      |Manifest: NOSIGNATURE         ExtraArmor-1.20.1-1.17.4.jar                      |Extra Armor                   |extraarmor                    |1.17.3              |DONE      |Manifest: NOSIGNATURE         Cucumber-1.20.1-7.0.12.jar                        |Cucumber Library              |cucumber                      |7.0.12              |DONE      |Manifest: NOSIGNATURE         ftb-library-forge-2001.2.4.jar                    |FTB Library                   |ftblibrary                    |2001.2.4            |DONE      |Manifest: NOSIGNATURE         ftb-teams-forge-2001.3.0.jar                      |FTB Teams                     |ftbteams                      |2001.3.0            |DONE      |Manifest: NOSIGNATURE         rechiseled-1.1.6-forge-mc1.20.jar                 |Rechiseled                    |rechiseled                    |1.1.6               |DONE      |Manifest: NOSIGNATURE         jei-1.20.1-forge-15.12.2.51.jar                   |Just Enough Items             |jei                           |15.12.2.51          |DONE      |Manifest: NOSIGNATURE         Fallingleaves-1.20.1-2.1.0.jar                    |Falling Leaves                |fallingleaves                 |2.1.0               |DONE      |Manifest: NOSIGNATURE         journeymap-1.20.1-5.10.3-forge.jar                |Journeymap                    |journeymap                    |5.10.3              |DONE      |Manifest: NOSIGNATURE         travelersbackpack-forge-1.20.1-9.1.16.jar         |Traveler's Backpack           |travelersbackpack             |9.1.16              |DONE      |Manifest: NOSIGNATURE         artifacts-forge-9.5.13.jar                        |Artifacts                     |artifacts                     |9.5.13              |DONE      |Manifest: NOSIGNATURE         LibX-1.20.1-5.0.12.jar                            |LibX                          |libx                          |1.20.1-5.0.12       |DONE      |Manifest: NOSIGNATURE         Dungeon Crawl-1.20.1-2.3.14.jar                   |Dungeon Crawl                 |dungeoncrawl                  |2.3.14              |DONE      |Manifest: NOSIGNATURE         rechiseledcreate-1.0.2-forge-mc1.20.jar           |Rechiseled: Create            |rechiseledcreate              |1.0.2               |DONE      |Manifest: NOSIGNATURE         MTR-forge-1.20.1-3.2.2-hotfix-2.jar               |Minecraft Transit Railway     |mtr                           |1.20.1-3.2.2-hotfix-|DONE      |Manifest: NOSIGNATURE         inventorypets-1.20.1-2.1.3.jar                    |Inventory Pets                |inventorypets                 |2.1.3               |DONE      |Manifest: NOSIGNATURE         fusion-1.1.1-forge-mc1.20.1.jar                   |Fusion                        |fusion                        |1.1.1               |DONE      |Manifest: NOSIGNATURE         morevanillashields-1.1.2-1.20.1.jar               |More Vanilla Shields          |morevanillashields            |1.1.2-1.20.1        |DONE      |Manifest: NOSIGNATURE         azurelib-neo-1.20.1-2.0.39.jar                    |AzureLib                      |azurelib                      |2.0.39              |DONE      |Manifest: NOSIGNATURE         watut-forge-1.20.1-1.1.3.jar                      |What Are They Up To           |watut                         |1.20.1-1.1.3        |DONE      |Manifest: NOSIGNATURE         forge-1.20.1-47.3.10-universal.jar                |Forge                         |forge                         |47.3.10             |DONE      |Manifest: 84:ce:76:e8:45:35:e4:0e:63:86:df:47:59:80:0f:67:6c:c1:5f:6e:5f:4d:b3:54:47:1a:9f:7f:ed:5e:f2:90         MysticalAgriculture-1.20.1-7.0.14.jar             |Mystical Agriculture          |mysticalagriculture           |7.0.14              |DONE      |Manifest: NOSIGNATURE         ironchest-1.20.1-14.4.4.jar                       |Iron Chests                   |ironchest                     |1.20.1-14.4.4       |DONE      |Manifest: NOSIGNATURE         DungeonsArise-1.20.x-2.1.58-release.jar           |When Dungeons Arise           |dungeons_arise                |2.1.58-1.20.x       |DONE      |Manifest: NOSIGNATURE         client-1.20.1-20230612.114412-srg.jar             |Minecraft                     |minecraft                     |1.20.1              |DONE      |Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f         RPG_Style_more_Weapons_9.0_1.20.1.jar             |RPG_style_More_Weapons        |rpgsmw                        |9.01.20.1           |DONE      |Manifest: NOSIGNATURE         mOres-5.3.6-mc1.20.1.jar                          |mOres                         |mores                         |5.3.6-mc1.20.1      |DONE      |Manifest: NOSIGNATURE         vanillaplustools-1.20-1.0.jar                     |Vanilla+ Tools                |vanillaplustools              |1.20-1.0            |DONE      |Manifest: NOSIGNATURE         voicechat-forge-1.20.1-2.5.24.jar                 |Simple Voice Chat             |voicechat                     |1.20.1-2.5.24       |DONE      |Manifest: NOSIGNATURE         Steam_Rails-1.6.6+forge-mc1.20.1.jar              |Create: Steam 'n' Rails       |railways                      |1.6.6+forge-mc1.20.1|DONE      |Manifest: NOSIGNATURE         simplyswords-forge-1.56.0-1.20.1.jar              |Simply Swords                 |simplyswords                  |1.56.0-1.20.1       |DONE      |Manifest: NOSIGNATURE         moonlight-1.20-2.13.10-forge.jar                  |Moonlight Library             |moonlight                     |1.20-2.13.10        |DONE      |Manifest: NOSIGNATURE         mixinsquared-forge-0.1.1.jar                      |MixinSquared                  |mixinsquared                  |0.1.1               |DONE      |Manifest: NOSIGNATURE         another_furniture-forge-1.20.1-3.0.1.jar          |Another Furniture             |another_furniture             |1.20.1-3.0.1        |DONE      |Manifest: NOSIGNATURE         NewOresAndArmors_v.6(1.20.1).jar                  |New ores 1.20.1               |new_ores_1_20_1               |4.0.0               |DONE      |Manifest: NOSIGNATURE         nethersdelight-1.20.1-4.0.jar                     |Nether's Delight              |nethersdelight                |1.20.1-4.0          |DONE      |Manifest: NOSIGNATURE         car-forge-1.20.1-1.0.32.jar                       |Ultimate Car Mod              |car                           |1.20.1-1.0.32       |DONE      |Manifest: NOSIGNATURE         kffmod-4.11.0.jar                                 |Kotlin For Forge              |kotlinforforge                |4.11.0              |DONE      |Manifest: NOSIGNATURE         flywheel-forge-1.20.1-0.6.11-13.jar               |Flywheel                      |flywheel                      |0.6.11-13           |DONE      |Manifest: NOSIGNATURE         amendments-1.20-1.2.12.jar                        |Amendments                    |amendments                    |1.20-1.2.12         |DONE      |Manifest: NOSIGNATURE         create-1.20.1-0.5.1.i.jar                         |Create                        |create                        |0.5.1.i             |DONE      |Manifest: NOSIGNATURE         Create-DnDesire-1.20.1-0.1b.Release-Early-Dev.jar |Create: Dreams & Desires      |create_dd                     |0.1b.Release-Early-D|DONE      |Manifest: NOSIGNATURE         extendedgears-2.1.1-1.20.1-0.5.1.f-forge.jar      |Extended Cogwheels            |extendedgears                 |2.1.1-1.20.1-0.5.1.f|DONE      |Manifest: NOSIGNATURE         SpartanShields-1.20.1-forge-3.1.1.jar             |Spartan Shields               |spartanshields                |3.1.1               |DONE      |Manifest: NOSIGNATURE         EasyEmerald-Forge-1.20.1-1.5.8.jar                |Easy Emerald                  |easy_emerald                  |1.5.8               |DONE      |Manifest: NOSIGNATURE         Zeta-1.0-24.jar                                   |Zeta                          |zeta                          |1.0-24              |DONE      |Manifest: NOSIGNATURE         Quark-4.0-460.jar                                 |Quark                         |quark                         |4.0-460             |DONE      |Manifest: NOSIGNATURE         supplementaries-1.20-2.8.17.jar                   |Supplementaries               |supplementaries               |1.20-2.8.17         |DONE      |Manifest: NOSIGNATURE         fancymenu_forge_3.3.1_MC_1.20.1.jar               |FancyMenu                     |fancymenu                     |3.3.1               |DONE      |Manifest: NOSIGNATURE         coroutil-forge-1.20.1-1.3.7.jar                   |CoroUtil                      |coroutil                      |1.20.1-1.3.7        |DONE      |Manifest: NOSIGNATURE         oceansdelight-1.0.2-1.20.jar                      |Ocean's Delight               |oceansdelight                 |1.0.2-1.20          |DONE      |Manifest: NOSIGNATURE         appleskin-forge-mc1.20.1-2.5.1.jar                |AppleSkin                     |appleskin                     |2.5.1+mc1.20.1      |DONE      |Manifest: NOSIGNATURE         Aquaculture-1.20.1-2.5.2.jar                      |Aquaculture 2                 |aquaculture                   |2.5.2               |DONE      |Manifest: NOSIGNATURE         immersive_melodies-0.3.0+1.20.1-forge.jar         |Immersive Melodies            |immersive_melodies            |0.3.0+1.20.1        |DONE      |Manifest: NOSIGNATURE         expandability-forge-9.0.4.jar                     |ExpandAbility                 |expandability                 |9.0.4               |DONE      |Manifest: NOSIGNATURE         chisels-and-bits-forge-1.4.148.jar                |chisels-and-bits              |chiselsandbits                |1.4.148             |DONE      |Manifest: NOSIGNATURE         1.8-1.20.1ATOp.jar                                |Armor, Tools & Ores+          |armortoolsores                |1.8                 |DONE      |Manifest: NOSIGNATURE         createaddition-1.20.1-1.2.4e.jar                  |Create Crafts & Additions     |createaddition                |1.20.1-1.2.4e       |DONE      |Manifest: NOSIGNATURE     Crash Report UUID: e6857e6d-0ee3-4b8f-9c85-7f29c55aae63     FML: 47.3     Forge: net.minecraftforge:47.3.10     Flywheel Backend: GL33 Instanced Arrays
    • Does anyone know how to do this? I want to have a custom container block that I can right-click on to open up an inventory like a chest, furnace, etc. I found this tutorial, but it doesn't work for 1.21. This page in the docs shows that opening a menu is way different, but it only has 2 parameters when the constructor in the tutorial needs 3, so I'm not sure what to do to get this to work in 1.21.
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

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