Jump to content

Recommended Posts

Posted

So in my mod there is a cost to utilize items. The cost is a formula that take the Current XP level of a player and divides it by a set number, then to keep things nice and tidy, rounds it so we don't have any annoying decimals floating around and such.

 

Now a number of people have offered me feedback and asked that I make these formula's configurable. Which is fine, as I don't see any problems with setting the numbers in a configuration file as opposed to hard-coded in. However, this has presented me with a this problem. If this mod is used on a server and the Server Admin has set the formula numbers to one number and the client has their configs set to another number, which takes precedent? Would the Server Config files automatically take priority since it is calculating numbers and making changes to the player's experience level?

 

Here is an example of the code that uses the formula used in one of my entity classes.

private int aquariusSummonCost = 3;

public void onUpdate()
{
	super.onUpdate();
	/////////////////Cost Handler\\\\\\\\\\\\\\\\\\\\\
	aquariusCounter += 1;
	if (aquariusCounter == 80)
	{
		EntityLivingBase owner = this.getOwner();
		aquariusCounter = 0;
		if (owner instanceof EntityPlayer) 
		{
			EntityPlayer player = (EntityPlayer) owner;
			player.addExperienceLevel(-aquariusSummonCost);
			if (player.experienceTotal < aquariusSummonCost)
			{
				ExtendedPlayer instance = ExtendedPlayer.get(player);
				instance.setSummoned(AQUARIUS_ID, false);
				this.worldObj.removeEntity(this);
			}
		}
	}

 

And that is perfect, it works exactly as it should. If however I want to make that private int aquariusSummonCost a configurable value and the server config files have a different value then the client config files what could potentially happen? Or would nothing happen, and since this calculation is all server-side anyway the server config files will overrule whatever the client has set?

 

The same question also applies to my item class which has a formula that reaches into an array of numbers to make the calculations:

public static int SpiritCostBase[] = new int[]{8, 14, 11, 13, 12, 9, 6, 8, 10, 7, 9, 12};
public static int SpiritCostFormula[] = new int[]{7, 9, 9, 12, 10, 3, 12, 6, 8, 12, 6, 5};

 

The code will reach into the position in both arrays appropriate to what item is being used and then use those value to calculate a cost to utilize the item. Could i make each of those numbers in the array configurable and would Server Configs override Client Configs?

 

In summary what I am really hoping for is that I don't have to dabble in packet handling (yes I know eventually this is inevitable lol) because despite all of the seriously awesome tutorials out there from Debian, and CoolAlias, and such I can't for the life of me figure out how to utilize packets to make sure a client's configs values (like DimensionIDs) are in sync with the server's configs. And I know in some cases like DimensionIDs they HAVE to be in Sync or you will crash but I wasn't sure if this is the same principle with formula calculations.

  • Replies 62
  • Created
  • Last Reply

Top Posters In This Topic

Posted

Yeah I know it is something I will inevitably have to work with. The tutorials are great that is true but it is one of those situations where I guess if I can avoid it, I want to lol.

 

However, with respect to the original question, would that data need to be synced? Since the calculations are performed by the server anyway and are dynamic? Yes the values used in the formula are not dynamic but the result is, and ultimately the result is what the server reads. So would I still need to sync the server values into the client config values? Or would the mod just read the values in the server config file and calculate them disregarding whatever the client has set since once again all of this is done on the server anyway. (Using the item, spawning the entity, calculating the cost of the entity, etc. etc.)

Posted

it looks like you are using the onUpdate of an item, I'm not sure since I haven't done config on items yet, but I think that would cause a desync between client and server. For many things like that the client is allowed to process things on its own for a short amount of time with periodic updates from the server. It shouldn't cause any lasting or major problems, it would just be a stuttering effect as the client thinks it is so far along and then the server says nope your are here.

 

Again not sure if that is true for items.

Current Project: Armerger 

Planned mods: Light Drafter  | Ore Swords

Looking for help getting a mod off the ground? Coding  | Textures

Posted

There is client and there is server. You either run client connected to integrated server (SP) or you connect to others (MP/LAN).

 

Client has nothing to say (aside from player commands/movements) when it comes to data computing/saving/loading.

When you have data loaded by config - you will load different on server and client - again - while client might be using his own data, it will simply display wrong things if server does something differently.

 

Solutions are mainly:

* Sync client config using packet from server to client on connection (send config values). As of now - both sides make same computations, thus - they will be mostly correct. (mind that sometimes you need to correct client by sending additional packet).

* Sync on change - just send packet whenever server does something.

How and what really depends on situation.

 

Other problems:

Note: if(!world.isRemote) makes code run only on server. You should use it almost always if client doesn't need mirrored computing (following servers acts, which might or not be correct).

So back to problem: In snippet you gave you are modifying experience and try to remove entity from world on BOTH sides. THIS IS BAD. Both exp and entitie's death is synced and should be made on server.

Expression "this.worldObj.removeEntity(this);" is quite bad. Use this.setDead().

1.7.10 is no longer supported by forge, you are on your own.

Posted

Alright that does make sense. So I guess now the answer is painfully obvious. I am going to need a packet to hold that data in the server configs and have it sent to the client configs. Ideally I would only need to send this packet once when the player logs in, correct? Since those values don't actually change (the values that the formula uses.) Kinda like how EnderIo sends its configs on login (I always see the message on my server ederio.configmanger.sendconfigs once a player logs in)?

 

So forgive my noobishness, as now I have to make it a point to dabble in packets. Would each value need its own packet?

Posted

You can put as many values in a packet as you want, but I would only do so if you don't anticipate needing to send any of them individually. E.g. if you need to be able to sync just one xp type (e.g. when that type is gained), then you should have a packet for just that type.

 

Nothing is stopping you from having both, though - one packet containing all the values to be used in the 'sync everything' situations, and one packet per xp type for times when you just want to sync that specific type.

Posted

Alright so I can essentially store each of these arrays in its own packet:

public static int SpiritCostBase[] = new int[]{8, 14, 11, 13, 12, 9, 6, 8, 10, 7, 9, 12};
public static int SpiritCostFormula[] = new int[]{7, 9, 9, 12, 10, 3, 12, 6, 8, 12, 6, 5};

 

And then when the player logs in have that array sent to them and have it alter their configurations? And I can populate that array with values being pulled from my config handler like: new int[]{config.getInt1, config.getInt2, . . .

Posted

almost, you can't send a packet to the client during any of the init events (seeing as the player/client doesn't exist yet either). You could probably hook into the world load event and send the packet from there, you will just need to have getter/setter methods for those arrays.

Current Project: Armerger 

Planned mods: Light Drafter  | Ore Swords

Looking for help getting a mod off the ground? Coding  | Textures

Posted

This is exactly the type of situation that PlayerLoggedInEvent was made for - send the packet from there.

 

Do keep in mind that the client-side values are for display purposes only - any time you use them that will have a real effect, such as casting a spell or crafting something, you should only use the values on the server side.

Posted

By the way, you won't want to overwrite the values from the client's config.  If they connect to a server (receiving the server's values), then disconnect, and load their own single player game, the config values should be used at that point.

 

Otherwise you'll have a disparity between logging into the server first, then playing single player, than playing single player directly.

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

Thanks to everyone. I am starting to grasp this and it is making sense now. I am going to create a handler I think (rather than use the simple wrapper). And @Draco18s, yes I wouldn't want to overwrite the values. So I think the last hurdle that I have to clear is this in "non-code" terms.

 

Server Config File -> Has the Values I Want -> Store them in Packet? -> Do I just need to send that packet to the players once?

 

How to I make sure that the packet is storing the "Server's Values?" Is it just as simple as doing a server side check when the player logs in? I don't know if I was being clear on that or not. If I am not please just let me know and I will try to clarify.

Posted

You will want the data in two places.

 

Place 1 is where it gets read from the config file and stored.  I would store this in my ServerProxy (or CommonProxy, whatever you want to name it).  These values will still exist when the player logs into a server, but won't be used unless the player starts a local server.

 

Place 2 is where the client would store the values it receives from the server and uses for display.  I would store this in my ClientProxy.  Note: this is a separate field that is public in the ClientProxy along side the public field in the ServerProxy.

 

These client-side values would be overwritten every time the client receives the info packet the server sends on login (sent in the PlayerLoggedInEvent from the sever).

 

The cool thing is, you don't have to do anything special for this setup to work for a singleplayer game: the single player instance would send a packet to the single player client and the values would be updated correctly.

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

Okay, that actually makes sense to me. I can kinda envision how it would look also. However, one thing I noticed mentioned quite a few times in this topic is "display." Now I know that when dealing with Particles, GUIs, Custom Mana Bars, etc. these all play into account and packets are needed. However, with me all of these calculations the server does are directly added and subtracted from the players experience bar. My whole system utilizes the player's experience as power. And the experience is added and subtracted from directly, which is actually why I questioned packets to begin with because I thought all Experience gains and losses are handled strictly server side and automatically kept in sync, which in turn led me to beleive that all calculations pertaining to these adjustments to experience are only handled server side right out the gate. Does that make any difference with respect to syncing and potential desyncing issues? Or can this be classified as more of a "use the packets to be safe" situation. Granted, whatever the answer is, I still plan on using these packets as they are something I need to learn and this thread has provided a wealth of information regardless.

Posted

If vanilla XP is kept in sync by vanilla Minecraft, then no, you don't need any additional packets for that particular aspect of your code, but if you are displaying the cost of spells or whatever like it seems you are doing with your arrays, and those values are configurable, then you will most definitely need to send that data to the clients when they connect or they will likely have incorrect values displayed to them in the GUI.

 

Same goes for any other data that is not kept in sync for you by Minecraft, so pretty much everything you add via your mod and a hefty portion of vanilla fields if you want to use them client side.

Posted

vanilla exp is automatically synced, provided that you are only adding and removing exp using existing methods. For example if you look at what the CommandXP.class they use entityplayer.addExperienceLevel(<int>);  but that is working with levels directly not with the amount of exp.

 

If you want to work with exp but not on a level basis, then you would want to look for how exp orbs do it and see if the method they use will handle syncing for you.

Current Project: Armerger 

Planned mods: Light Drafter  | Ore Swords

Looking for help getting a mod off the ground? Coding  | Textures

Posted

All calculations are done via built in methods of adding, subtracting, multiplying, and dividing the player XP level with math.

 

Here is actually the itemOnUse code: http://pastebin.com/aAdV3RSJ

 

The two arrays at the top are what will be configurable. So no displays are actually shown. So if I follow what you guys are saying correctly packets won't be needed. (As no information is being displayed, just being calculated)

 

Also the snippet at the top in the OP is part of the entity onUpdate class which also uses standard XP calculations which merely subtracts the EXP level from the player based on the formula which is set at the top (which will be configurable).

 

 

If however, I want to display spell costs (which sounds like an awesome idea coolAlias, thank you for that) then I will need packets. (Granted I know I can just test and see and I plan to but the more knowledge I gather and learn the better)

Posted

yay! I made my first packet handler! But I screwed something up and have no idea what i did. Anyone tell me exactly where I screwed up?

 

PacketHandler: http://pastebin.com/jPN9Z1zR

AbstractPacket: http://pastebin.com/RNHeqCXP

ClientProxy Snippet: http://pastebin.com/ZbAU2spi

KeyHandler: http://pastebin.com/gd2m7JUQ

OpenGUIPacket: http://pastebin.com/LQzj1YzW

 

And lastly the Main where it is being registered: (I only posted the relevant parts since it is quite large)

 

 

@SidedProxy(clientSide = RefStrings.CLIENTSIDE , serverSide = RefStrings.SERVERSIDE)
public static ServerProxy proxy;
public static final PacketPipeline packetPipeline = new PacketPipeline();

@EventHandler
public static void Load(FMLInitializationEvent event) 
{
packetPipeline.initialize();	
}

@EventHandler
public static void PostLoad(FMLPostInitializationEvent PostEvent) {
packetPipeline.postInitialized();
}

 

 

 

So this loads up fine on the SinglePlayer but the packet doesn't actually work. When I press "Y" the message does not display at all.

However the even more serious issue is that if trying to start up a Server it crashes the server entirely and I have no idea why. Here is the crash report from the server: http://pastebin.com/W2wZuNFS

 

So forgive me if it is starting me in the face. But this is my first swing at packets. I specifically chose not to do the SimpleNetwork wrapper way because I want to get more control over the packets and I feel like this way does that.

Posted

Well, it is likely because I am a fool and over-complicate things especially when I am trying to learn them lol (backwards logic). However this method was part of a YouTube tutorial and was explained in detail, so I managed to get an understanding of what each piece did. I actually looked at your SimpleNetwork handler first and quite honestly want to try both lol. I am not sure if you can have two network handlers though. But as it stands now, I only have the one I posted above.

 

Although in reading through your tutorial I see you make a notation stating:

"Let's take a quick look at the Proxy class method used above; remember this is necessary to prevent FML from attempting to load EntityClientPlayerMP on the server, even though that section of code should not even have been accessed during startup - somehow it is, and it crashes unless you do the following:"

 

Which if I am correct, is exactly what is happening in my code.

 

 

EDIT: Alright I bite - i followed your tutorial coolAlias as they have and this community has basically been my guiding light to learning modding lol and edited my handler and packets to fit your tutorial. And it works fine. I start my world up and when I press the Y key it outputs the message indicating that it works correctly and the packet was indeed sent and received. However, I run into this issue when I try to launch a server test: http://pastebin.com/6yJniY81

 

In trying to parse and understand this error code it appears that on server load we are attempted to load a client side only function which does make sense. As keybindings are strictly ClientSide. Here is the KeyHandler.class: http://pastebin.com/gd2m7JUQ

 

Do I simply need to add a server side check so that it ignores that when the Server is starting up? And if so, how could I go about doing that? I imagine it isn't as simple as isRemote. Or am I totally wrong and it is something much different.

Posted

you need to register you keybindings in your clientproxy preinit, it seems like you are trying to register them serverside which would cause a crash.

 

if you aren't registering stuff in your proxies (which I recommend doing, it helps me keep things separated) then you can do if(proxy instanceof ClientProxy)

Current Project: Armerger 

Planned mods: Light Drafter  | Ore Swords

Looking for help getting a mod off the ground? Coding  | Textures

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

    • https://privatebin.net/?2a9b1a4d5463d329#9dD7p6S8gGsRgaKYugj4QC6XqkmHxBU1m1GjnM8fm6s2
    • id love some help understanding on how to fix my modpack so im able to use it, it loads but crashes roughly midway through, it says "The game crashed: rendering overlay Error: java.lang.RuntimeException: net.minecraft.server.ChainedJsonException: Invalid shaders/core/particle.json: File not found" Exit Code -1   ---- Minecraft Crash Report ---- // Ouch. That hurt Time: 2025-08-31 16:00:52 Description: Rendering overlay java.lang.RuntimeException: net.minecraft.server.ChainedJsonException: Invalid shaders/core/particle.json: File not found     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.handler$cco000$watut$onLoadShaders(GameRenderer.java:3279) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.reloadShaders(GameRenderer.java:731) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer$1.apply(GameRenderer.java:386) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer$1.apply(GameRenderer.java:361) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.SimplePreparableReloadListener.lambda$reload$1(SimplePreparableReloadListener.java:19) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,re:computing_frames,re:classloading,pl:mixin:APP:moonlight.mixins.json:ConditionHackMixin from mod moonlight,pl:mixin:A}     at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:718) ~[?:?] {}     at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) ~[?:?] {}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.SimpleReloadInstance.lambda$new$3(SimpleReloadInstance.java:69) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:148) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,re:computing_frames,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:111) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1155) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:subtle_effects.mixins.json:client.MinecraftMixin from mod subtle_effects,pl:mixin:APP:xaeroworldmap.mixins.json:MixinMinecraftClient from mod xaeroworldmap,pl:mixin:APP:xaeroworldmap.neoforge.mixins.json:MixinForgeMinecraftClient from mod xaeroworldmap,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:pickupnotifier.common.mixins.json:client.MinecraftMixin from mod pickupnotifier,pl:mixin:APP:balm.neoforge.mixins.json:MinecraftMixin from mod balm,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:transition.mixins.json:EntityRenderStateMixin from mod transition,pl:mixin:APP:transition.mixins.json:EntityRendererMixin from mod transition,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:mixins.underlay.json:MinecraftMixin from mod underlay,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:xaerohud.mixins.json:MixinMinecraftClient from mod xaerominimap,pl:mixin:APP:vampirism.mixins.json:client.MinecraftMixin from mod vampirism,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:euphoria_patcher.mixins.json:ReloadShadersOnDimensionChangeMixin from mod euphoria_patcher,pl:mixin:APP:euphoria_patcher.mixins.json:ClientTickMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.run(Minecraft.java:807) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:subtle_effects.mixins.json:client.MinecraftMixin from mod subtle_effects,pl:mixin:APP:xaeroworldmap.mixins.json:MixinMinecraftClient from mod xaeroworldmap,pl:mixin:APP:xaeroworldmap.neoforge.mixins.json:MixinForgeMinecraftClient from mod xaeroworldmap,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:pickupnotifier.common.mixins.json:client.MinecraftMixin from mod pickupnotifier,pl:mixin:APP:balm.neoforge.mixins.json:MinecraftMixin from mod balm,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:transition.mixins.json:EntityRenderStateMixin from mod transition,pl:mixin:APP:transition.mixins.json:EntityRendererMixin from mod transition,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:mixins.underlay.json:MinecraftMixin from mod underlay,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:xaerohud.mixins.json:MixinMinecraftClient from mod xaerominimap,pl:mixin:APP:vampirism.mixins.json:client.MinecraftMixin from mod vampirism,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:euphoria_patcher.mixins.json:ReloadShadersOnDimensionChangeMixin from mod euphoria_patcher,pl:mixin:APP:euphoria_patcher.mixins.json:ClientTickMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.main.Main.main(Main.java:230) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:euphoria_patcher.mixins.json:EuphoriaPatcherMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {re:mixin}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23112!/:?] {}     at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {}     at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} Caused by: net.minecraft.server.ChainedJsonException: Invalid shaders/core/particle.json: File not found     at TRANSFORMER/[email protected]/net.minecraft.server.ChainedJsonException.forException(ChainedJsonException.java:48) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:157) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramAccessor from mod owo,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:99) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramAccessor from mod owo,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/com.corosus.watut.ShaderInstanceBlur.<init>(ShaderInstanceBlur.java:27) ~[watut-neoforge-1.21.0-1.2.7.jar%23472!/:?] {re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.handler$cco000$watut$onLoadShaders(GameRenderer.java:3265) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     ... 29 more Caused by: java.io.FileNotFoundException: minecraft:shaders/core/particle.json     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.ResourceProvider.lambda$getResourceOrThrow$1(ResourceProvider.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading,re:mixin}     at java.base/java.util.Optional.orElseThrow(Optional.java:403) ~[?:?] {re:mixin}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.ResourceProvider.getResourceOrThrow(ResourceProvider.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading,re:mixin}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.ResourceProvider.openAsReader(ResourceProvider.java:31) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading,re:mixin}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:106) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramAccessor from mod owo,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.ShaderInstance.<init>(ShaderInstance.java:99) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramAccessor from mod owo,pl:mixin:APP:owo.mixins.json:shader.ShaderProgramMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/com.corosus.watut.ShaderInstanceBlur.<init>(ShaderInstanceBlur.java:27) ~[watut-neoforge-1.21.0-1.2.7.jar%23472!/:?] {re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.handler$cco000$watut$onLoadShaders(GameRenderer.java:3265) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     ... 29 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.handler$cco000$watut$onLoadShaders(GameRenderer.java:3279) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.reloadShaders(GameRenderer.java:731) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer$1.apply(GameRenderer.java:386) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer$1.apply(GameRenderer.java:361) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.SimplePreparableReloadListener.lambda$reload$1(SimplePreparableReloadListener.java:19) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,re:computing_frames,re:classloading,pl:mixin:APP:moonlight.mixins.json:ConditionHackMixin from mod moonlight,pl:mixin:A}     at java.base/java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:718) ~[?:?] {}     at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) ~[?:?] {}     at TRANSFORMER/[email protected]/net.minecraft.server.packs.resources.SimpleReloadInstance.lambda$new$3(SimpleReloadInstance.java:69) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:148) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:23) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,re:computing_frames,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:122) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B} -- Overlay render details -- Details:     Overlay name: net.neoforged.neoforge.client.loading.NeoForgeLoadingOverlay Stacktrace:     at TRANSFORMER/[email protected]/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1084) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1195) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:subtle_effects.mixins.json:client.MinecraftMixin from mod subtle_effects,pl:mixin:APP:xaeroworldmap.mixins.json:MixinMinecraftClient from mod xaeroworldmap,pl:mixin:APP:xaeroworldmap.neoforge.mixins.json:MixinForgeMinecraftClient from mod xaeroworldmap,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:pickupnotifier.common.mixins.json:client.MinecraftMixin from mod pickupnotifier,pl:mixin:APP:balm.neoforge.mixins.json:MinecraftMixin from mod balm,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:transition.mixins.json:EntityRenderStateMixin from mod transition,pl:mixin:APP:transition.mixins.json:EntityRendererMixin from mod transition,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:mixins.underlay.json:MinecraftMixin from mod underlay,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:xaerohud.mixins.json:MixinMinecraftClient from mod xaerominimap,pl:mixin:APP:vampirism.mixins.json:client.MinecraftMixin from mod vampirism,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:euphoria_patcher.mixins.json:ReloadShadersOnDimensionChangeMixin from mod euphoria_patcher,pl:mixin:APP:euphoria_patcher.mixins.json:ClientTickMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.run(Minecraft.java:807) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:subtle_effects.mixins.json:client.MinecraftMixin from mod subtle_effects,pl:mixin:APP:xaeroworldmap.mixins.json:MixinMinecraftClient from mod xaeroworldmap,pl:mixin:APP:xaeroworldmap.neoforge.mixins.json:MixinForgeMinecraftClient from mod xaeroworldmap,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:pickupnotifier.common.mixins.json:client.MinecraftMixin from mod pickupnotifier,pl:mixin:APP:balm.neoforge.mixins.json:MinecraftMixin from mod balm,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:transition.mixins.json:EntityRenderStateMixin from mod transition,pl:mixin:APP:transition.mixins.json:EntityRendererMixin from mod transition,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:mixins.underlay.json:MinecraftMixin from mod underlay,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:xaerohud.mixins.json:MixinMinecraftClient from mod xaerominimap,pl:mixin:APP:vampirism.mixins.json:client.MinecraftMixin from mod vampirism,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:euphoria_patcher.mixins.json:ReloadShadersOnDimensionChangeMixin from mod euphoria_patcher,pl:mixin:APP:euphoria_patcher.mixins.json:ClientTickMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.main.Main.main(Main.java:230) ~[client-1.21.1-20240808.144430-srg.jar%23332!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:euphoria_patcher.mixins.json:EuphoriaPatcherMixin from mod euphoria_patcher,pl:mixin:A,pl:runtimedistcleaner:A}     at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {re:mixin}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.41.jar%23107!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23112!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23112!/:?] {}     at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {}     at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} -- Uptime -- Details:     JVM uptime: 68.541s     Wall uptime: 8.165s     High-res time: 65.345s     Client ticks: 45 ticks / 2.250s -- Last reload -- Details:     Reload number: 1     Reload reason: initial     Finished: No     Packs: vanilla -- System Details -- Details:     Minecraft Version: 1.21.1     Minecraft Version ID: 1.21.1     Operating System: Windows 11 (amd64) version 10.0     Java Version: 21.0.7, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 333080240 bytes (317 MiB) / 1207959552 bytes (1152 MiB) up to 25467813888 bytes (24288 MiB)     CPUs: 6     Processor Vendor: GenuineIntel     Processor Name: Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz     Identifier: Intel64 Family 6 Model 158 Stepping 10     Microarchitecture: Coffee Lake     Frequency (GHz): 2.90     Number of physical packages: 1     Number of physical CPUs: 6     Number of logical CPUs: 6     Graphics card #0 name: NVIDIA GeForce RTX 2060     Graphics card #0 vendor: NVIDIA     Graphics card #0 VRAM (MiB): 6144.00     Graphics card #0 deviceId: VideoController1     Graphics card #0 versionInfo: 32.0.15.8115     Memory slot #0 capacity (MiB): 16384.00     Memory slot #0 clockSpeed (GHz): 2.67     Memory slot #0 type: DDR4     Memory slot #1 capacity (MiB): 16384.00     Memory slot #1 clockSpeed (GHz): 2.67     Memory slot #1 type: DDR4     Virtual memory max (MiB): 34689.63     Virtual memory used (MiB): 16736.30     Swap memory total (MiB): 2048.00     Swap memory used (MiB): 115.00     Space in storage for jna.tmpdir (MiB): available: 112516.42, total: 953868.00     Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): available: 112516.42, total: 953868.00     Space in storage for io.netty.native.workdir (MiB): available: 112516.42, total: 953868.00     Space in storage for java.io.tmpdir (MiB): available: 8152.79, total: 242709.16     Space in storage for workdir (MiB): available: 112516.42, total: 953868.00     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx24288m -Xms256m     Launched Version: neoforge-21.1.205     Launcher name: minecraft-launcher     Backend library: LWJGL version 3.3.3+5     Backend API: NVIDIA GeForce RTX 2060/PCIe/SSE2 GL version 4.6.0 NVIDIA 581.15, NVIDIA Corporation     Window size: 1024x768     GFLW Platform: win32     GL Caps: Using framebuffer using OpenGL 3.2     GL debug messages:      Is Modded: Definitely; Client brand changed to 'neoforge'     Universe: 400921fb54442d18     Type: Client (map_client.txt)     Graphics mode: fancy     Render Distance: 12/12 chunks     Resource Packs: vanilla     Current Language: en_us     Locale: en_US     System encoding: Cp1252     File encoding: UTF-8     CPU: 6x Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz     ModLauncher: 11.0.5+main.901c6ea8     ModLauncher launch target: forgeclient     ModLauncher services:          sponge-mixin-0.15.2+mixin.0.8.7.jar mixin PLUGINSERVICE          loader-4.0.41.jar slf4jfixer PLUGINSERVICE          loader-4.0.41.jar runtime_enum_extender PLUGINSERVICE          at-modlauncher-10.0.1.jar accesstransformer PLUGINSERVICE          loader-4.0.41.jar runtimedistcleaner PLUGINSERVICE          modlauncher-11.0.5.jar mixin TRANSFORMATIONSERVICE          modlauncher-11.0.5.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          [email protected]         [email protected]         [email protected]         [email protected]         [email protected]     Mod List:          skinlayers3d-neoforge-1.9.0-mc1.21.jar            |3d-Skin-Layers                |skinlayers3d                  |1.9.0               |Manifest: NOSIGNATURE         letsdo-brewery-neoforge-2.1.1.jar                 |[Let's Do] Brewery            |brewery                       |2.1.1               |Manifest: NOSIGNATURE         letsdo-candlelight-neoforge-2.1.0.jar             |[Let's Do] Candlelight        |candlelight                   |2.1.0               |Manifest: NOSIGNATURE         letsdo-farm_and_charm-neoforge-1.1.2.jar          |[Let's Do] Farm & Charm       |farm_and_charm                |1.1.2               |Manifest: NOSIGNATURE         letsdo-furniture-neoforge-1.1.0.jar               |[Let's Do] Furniture          |furniture                     |1.1.0               |Manifest: NOSIGNATURE         letsdo-herbalbrews-neoforge-1.1.0.jar             |[Let's Do] HerbalBrews        |herbalbrews                   |1.1.0               |Manifest: NOSIGNATURE         accessories-neoforge-1.1.0-beta.49+1.21.1.jar     |Accessories                   |accessories                   |1.1.0-beta.49+1.21.1|Manifest: NOSIGNATURE         additionallanterns-1.1.2-neoforge-mc1.21.jar      |Additional Lanterns           |additionallanterns            |1.1.2               |Manifest: NOSIGNATURE         amendments-1.21-2.0.5-neoforge.jar                |Amendments                    |amendments                    |1.21-2.0.5          |Manifest: NOSIGNATURE         another_furniture-neoforge-4.0.0.jar              |Another Furniture             |another_furniture             |4.0.0               |Manifest: NOSIGNATURE         Aquaculture-1.21.1-2.7.14.jar                     |Aquaculture 2                 |aquaculture                   |2.7.14              |Manifest: NOSIGNATURE         aquaculturedelight-1.2.0-neoforge-1.21.1.jar      |Aquaculture Delight           |aquaculturedelight            |1.2.0               |Manifest: NOSIGNATURE         architectury-13.0.8-neoforge.jar                  |Architectury                  |architectury                  |13.0.8              |Manifest: NOSIGNATURE         ArmorTrimItemFix-neoforge-1.21.1-1.2.0.jar        |Armor Trim Item Fix           |armortrimitemfix              |1.2.0               |Manifest: NOSIGNATURE         athena-neoforge-1.21-4.0.2.jar                    |Athena                        |athena                        |4.0.2               |Manifest: NOSIGNATURE         balm-neoforge-1.21.1-21.0.49.jar                  |Balm                          |balm                          |21.0.49             |Manifest: NOSIGNATURE         beautify-neoforge-1.21.1-2.0.2.jar                |Beautify                      |beautify                      |2.0.2               |Manifest: NOSIGNATURE         benssharks-1.2.6-neoforge-1.21.1.jar              |Ben's Sharks                  |benssharks                    |1.2.6               |Manifest: NOSIGNATURE         BetterAdvancements-NeoForge-1.21.1-0.4.3.21.jar   |Better Advancements           |betteradvancements            |0.4.3.21            |Manifest: NOSIGNATURE         blahaj-neoforge-1.21.1-2.0.2.jar                  |Blåhaj                        |blahaj                        |2.0.0               |Manifest: NOSIGNATURE         bookshelf-neoforge-1.21.1-21.1.68.jar             |Bookshelf                     |bookshelf                     |21.1.68             |Manifest: NOSIGNATURE         caelus-neoforge-7.0.1+1.21.1.jar                  |Caelus API                    |caelus                        |7.0.1+1.21.1        |Manifest: NOSIGNATURE         Chimes-v2.0.3-1.21.1-NeoForge.jar                 |Chimes                        |chimes                        |2.0.3               |Manifest: NOSIGNATURE         chipped-neoforge-1.21.1-4.0.2.jar                 |Chipped                       |chipped                       |4.0.2               |Manifest: NOSIGNATURE         cleanswing-1.9.jar                                |Clean Swing                   |cleanswing                    |1.9                 |Manifest: NOSIGNATURE         comforts-neoforge-9.0.4+1.21.1.jar                |Comforts                      |comforts                      |9.0.4+1.21.1        |Manifest: NOSIGNATURE         cgl-1.21-neoforge-0.5.1.jar                       |CommonGroovyLibrary           |commongroovylibrary           |0.5.1               |Manifest: NOSIGNATURE         conditional-mixin-neoforge-0.6.3.jar              |conditional mixin             |conditional_mixin             |0.6.3               |Manifest: NOSIGNATURE         configured-neoforge-1.21.1-2.6.0.jar              |Configured                    |configured                    |2.6.0               |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         connectedglass-1.1.14-neoforge-mc1.21.jar         |Connected Glass               |connectedglass                |1.1.14              |Manifest: NOSIGNATURE         cookingforblockheads-neoforge-1.21.1-21.1.16.jar  |Cooking for Blockheads        |cookingforblockheads          |21.1.16             |Manifest: NOSIGNATURE         coroutil-neoforge-1.21.0-1.3.8.jar                |CoroUtil                      |coroutil                      |1.21.0-1.3.8        |Manifest: NOSIGNATURE         corpse-neoforge-1.21.1-1.1.10.jar                 |Corpse                        |corpse                        |1.21.1-1.1.10       |Manifest: NOSIGNATURE         cosmeticarmorreworked-1.21.1-v1-neoforge.jar      |CosmeticArmorReworked         |cosmeticarmorreworked         |1.21.1-v1-neoforge  |Manifest: 5e:ed:25:99:e4:44:14:c0:dd:89:c1:a9:4c:10:b5:0d:e4:b1:52:50:45:82:13:d8:d0:32:89:67:56:57:01:53         crabbersdelight-1.21.1-1.1.10.jar                 |Crabber's Delight             |crabbersdelight               |1.1.10              |Manifest: NOSIGNATURE         craftableanimalsneo-1.9.0-neoforge-1.21.1.jar     |CraftableAnimalsNEO           |craftableanimalsneo           |1.9.0               |Manifest: NOSIGNATURE         crittersandcompanions-neoforge-1.21.1-2.3.1.jar   |Critters and Companions       |crittersandcompanions         |1.21.1-2.3.1        |Manifest: NOSIGNATURE         cuisinedelight-1.2.6.jar                          |Cuisine Delight               |cuisinedelight                |1.2.6               |Manifest: NOSIGNATURE         culturaldelights-0.17.7.jar                       |Cultural Delights             |culturaldelights              |0.17.7              |Manifest: NOSIGNATURE         curios-neoforge-9.5.1+1.21.1.jar                  |Curios API                    |curios                        |9.5.1+1.21.1        |Manifest: NOSIGNATURE         curious_armor_stands-8.0.0.jar                    |Curious Armor Stands          |curious_armor_stands          |8.0.0               |Manifest: NOSIGNATURE         dawnoftimebuilder-neoforge-1.21.1-1.6.1.jar       |DawnOfTimeBuilder             |dawnoftimebuilder             |1.6.1               |Manifest: NOSIGNATURE         displaydelight-1.3.0.jar                          |Display Delight               |displaydelight                |1.3.0               |Manifest: NOSIGNATURE         DustyDecorationsNeoforged_1.21.1_V1.8.1.jar       |Dusty Decorations             |dustydecorations              |1.8.1               |Manifest: NOSIGNATURE         DyedFlames-v21.1.1-1.21.1-NeoForge.jar            |Dyed Flames                   |dyedflames                    |21.1.1              |Manifest: NOSIGNATURE         EasyAnvils-v21.1.0-1.21.1-NeoForge.jar            |Easy Anvils                   |easyanvils                    |21.1.0              |Manifest: NOSIGNATURE         Easy Diamond-neoforge-1.21.1-3.4.8.1.jar          |Easy Diamond                  |diamond                       |3.4.8               |Manifest: NOSIGNATURE         EasyMagic-v21.1.0-1.21.1-NeoForge.jar             |Easy Magic                    |easymagic                     |21.1.0              |Manifest: NOSIGNATURE         easy_mob_farm-neoforge-1.21.1-10.0.0.jar          |Easy Mob Farm                 |easy_mob_farm                 |0.0NONE             |Manifest: NOSIGNATURE         Easy Netherite-neoforge-1.21.1-1.2.6.jar          |Easy Netherite                |netherite                     |1.2.6               |Manifest: NOSIGNATURE         easy-piglins-neoforge-1.21.1-1.0.14.jar           |Easy Piglins                  |easy_piglins                  |1.21.1-1.0.14       |Manifest: NOSIGNATURE         EasyShulkerBoxes-v21.1.3-1.21.1-NeoForge.jar      |Easy Shulker Boxes            |easyshulkerboxes              |21.1.3              |Manifest: NOSIGNATURE         easy-villagers-neoforge-1.21.1-1.1.23.jar         |Easy Villagers                |easy_villagers                |1.21.1-1.1.23       |Manifest: NOSIGNATURE         eatinganimation-1.21.0-6.0.1.jar                  |Eating Animation              |eatinganimation               |6.0.1               |Manifest: NOSIGNATURE         EggDelight-v1.2-1.21.1.jar                        |Egg Delight                   |eggdelight                    |1.2                 |Manifest: NOSIGNATURE         elytraslot-neoforge-9.0.2+1.21.1.jar              |Elytra Slot                   |elytraslot                    |9.0.2+1.21.1        |Manifest: NOSIGNATURE         elytratrims-neoforge-3.5.9+1.21.1.jar             |Elytra Trims                  |elytratrims                   |3.5.9               |Manifest: NOSIGNATURE         enchdesc-neoforge-1.21.1-21.1.8.jar               |EnchantmentDescriptions       |enchdesc                      |21.1.8              |Manifest: NOSIGNATURE         endersdelight-neoforge-1.21.1-1.1.0.jar           |Ender's Delight               |endersdelight                 |1.1.0               |Manifest: NOSIGNATURE         EuphoriaPatcher-1.6.5-r5.5.1-neoforge.jar         |Euphoria Patcher              |euphoria_patcher              |1.6.5-r5.5.1-neoforg|Manifest: NOSIGNATURE         FarmersDelight-1.21.1-1.2.9.jar                   |Farmer's Delight              |farmersdelight                |1.2.9               |Manifest: NOSIGNATURE         farmingforblockheads-neoforge-1.21.1-21.1.8.jar   |Farming for Blockheads        |farmingforblockheads          |21.1.8              |Manifest: NOSIGNATURE         FastSuite-1.21.1-6.0.5.jar                        |Fast Suite                    |fastsuite                     |6.0.5               |Manifest: NOSIGNATURE         Ferdinand's Flowers 4.0 - 1.21.1 - neoforge.jar   |Ferdinand's Flowers           |ferdinandsflowers             |4.0                 |Manifest: NOSIGNATURE         Floral Enchantment-neoforge-1.21.1-1.1.0.jar      |Floral Enchantment            |floralench                    |1.1.0               |Manifest: NOSIGNATURE         ForgeConfigAPIPort-v21.1.4-1.21.1-NeoForge.jar    |Forge Config API Port         |forgeconfigapiport            |21.1.4              |Manifest: NOSIGNATURE         fabric-api-base-0.4.42+d1308dedd1.jar             |Forgified Fabric API Base     |fabric_api_base               |0.4.42+d1308dedd1   |Manifest: NOSIGNATURE         FramedBlocks-10.4.0.jar                           |FramedBlocks                  |framedblocks                  |10.4.0              |Manifest: NOSIGNATURE         framework-neoforge-1.21.1-0.9.6.jar               |Framework                     |framework                     |0.9.6               |Manifest: NOSIGNATURE         fruitsdelight-1.2.9.jar                           |Fruits Delight                |fruitsdelight                 |1.2.9               |Manifest: NOSIGNATURE         fusion-1.2.11a-neoforge-mc1.21.jar                |Fusion                        |fusion                        |1.2.11+a            |Manifest: NOSIGNATURE         fzzy_config-0.7.2+1.21+neoforge.jar               |Fzzy Config                   |fzzy_config                   |0.7.2+1.21+neoforge |Manifest: NOSIGNATURE         geckolib-neoforge-1.21.1-4.7.7.jar                |GeckoLib 4                    |geckolib                      |4.7.7               |Manifest: NOSIGNATURE         gml-6.0.2.jar                                     |GroovyModLoader               |gml                           |6.0.2               |Manifest: NOSIGNATURE         Highlighter-1.21-neoforge-1.1.11.jar              |Highlighter                   |highlighter                   |1.1.11              |Manifest: NOSIGNATURE         Iceberg-1.21.1-neoforge-1.3.2.jar                 |Iceberg                       |iceberg                       |1.3.2               |Manifest: NOSIGNATURE         ironfurnaces-neoforge-1.21.1-4.2.6.jar            |Iron Furnaces                 |ironfurnaces                  |4.2.6               |Manifest: NOSIGNATURE         iteminteractions-neoforge-21.1.4.jar              |Item Interactions             |iteminteractions              |21.1.4              |Manifest: NOSIGNATURE         jamlib-neoforge-1.3.5+1.21.1.jar                  |JamLib                        |jamlib                        |1.3.5+1.21.1        |Manifest: NOSIGNATURE         justenoughbreeding-neoforge-1.21-1.21.1-1.6.2.jar |Just Enough Breeding          |justenoughbreeding            |1.6.2               |Manifest: NOSIGNATURE         jei-1.21.1-neoforge-19.21.2.313.jar               |Just Enough Items             |jei                           |19.21.2.313         |Manifest: NOSIGNATURE         thedarkcolour.kffmod-5.9.0.jar                    |Kotlin For Forge              |kotlinforforge                |5.9.0               |Manifest: NOSIGNATURE         kuma-api-neoforge-21.0.5+1.21.jar                 |KumaAPI                       |kuma_api                      |21.0.5              |Manifest: NOSIGNATURE         l2core-3.0.8+1.jar                                |L2Core                        |l2core                        |3.0.8+1             |Manifest: NOSIGNATURE         l2harvester-3.0.0.jar                             |L2Harvester                   |l2harvester                   |3.0.0               |Manifest: NOSIGNATURE         LeavesBeGone-v21.1.0-1.21.1-NeoForge.jar          |Leaves Be Gone                |leavesbegone                  |21.1.0              |Manifest: NOSIGNATURE         luckyswardrobe-2.0.0.jar                          |Lucky's Wardrobe Restitched   |luckyswardrobe                |2.0.0               |Manifest: NOSIGNATURE         mcw-bridges-3.1.1-mc1.21.1neoforge.jar            |Macaw's Bridges               |mcwbridges                    |3.1.1               |Manifest: NOSIGNATURE         mcw-doors-1.1.2-mc1.21.1neoforge.jar              |Macaw's Doors                 |mcwdoors                      |1.1.2               |Manifest: NOSIGNATURE         mcw-fences-1.2.0-1.21.1neoforge.jar               |Macaw's Fences and Walls      |mcwfences                     |1.2.0               |Manifest: NOSIGNATURE         mcw-furniture-3.3.0-mc1.21.1neoforge.jar          |Macaw's Furniture             |mcwfurnitures                 |3.3.0               |Manifest: NOSIGNATURE         mcw-lights-1.1.2-mc1.21.1neoforge.jar             |Macaw's Lights and Lamps      |mcwlights                     |1.1.2               |Manifest: NOSIGNATURE         mcw-paths-1.1.0neoforge-mc1.21.1.jar              |Macaw's Paths and Pavings     |mcwpaths                      |1.1.0               |Manifest: NOSIGNATURE         mcw-stairs-1.0.1-1.21.1neoforge.jar               |Macaw's Stairs and Balconies  |mcwstairs                     |1.0.1               |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.4-mc1.21.1neoforge.jar          |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.4               |Manifest: NOSIGNATURE         midnightlib-1.6.9+1.21-neoforge.jar               |MidnightLib                   |midnightlib                   |1.6.9               |Manifest: NOSIGNATURE         client-1.21.1-20240808.144430-srg.jar             |Minecraft                     |minecraft                     |1.21.1              |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         monolib-neoforge-1.21.1-2.1.0.jar                 |MonoLib                       |monolib                       |2.1.0               |Manifest: NOSIGNATURE         moonlight-1.21-2.22.6-neoforge.jar                |Moonlight Lib                 |moonlight                     |1.21-2.22.6         |Manifest: NOSIGNATURE         more_beautiful_torches-merged-1.21-3.0.0.jar      |More Beautiful Torches        |more_beautiful_torches        |3.0.0               |Manifest: NOSIGNATURE         MouseTweaks-neoforge-mc1.21-2.26.1.jar            |Mouse Tweaks                  |mousetweaks                   |2.26.1              |Manifest: NOSIGNATURE         refurbished_furniture-neoforge-1.21.1-1.0.16.jar  |MrCrayfish's Furniture Mod: Re|refurbished_furniture         |1.0.16              |Manifest: NOSIGNATURE         MyNethersDelight-1.21.1-1.9.jar                   |My Nether's Delight           |mynethersdelight              |1.9                 |Manifest: NOSIGNATURE         NaturesCompass-1.21.1-3.0.3-neoforge.jar          |Nature's Compass              |naturescompass                |1.21.1-3.0.2-neoforg|Manifest: NOSIGNATURE         neoforge-21.1.205-universal.jar                   |NeoForge                      |neoforge                      |21.1.205            |Manifest: NOSIGNATURE         neoforgedatapackextensions-neoforge-21.1.2.jar    |NeoForge Data Pack Extensions |neoforgedatapackextensions    |21.1.2              |Manifest: NOSIGNATURE         new_slab_variants-merged-1.21.1-3.0.1.jar         |New Slab Variants             |new_slab_variants             |3.0.1               |Manifest: NOSIGNATURE         nightlights-neoforge-1.3.0.jar                    |Night Lights                  |nightlights                   |1.3.0               |Manifest: NOSIGNATURE         notenoughanimations-neoforge-1.10.2-mc1.21.jar    |NotEnoughAnimations           |notenoughanimations           |1.10.2              |Manifest: NOSIGNATURE         OpenLoader-neoforge-1.21.1-21.1.5.jar             |OpenLoader                    |openloader                    |21.1.5              |Manifest: NOSIGNATURE         OverflowingBars-v21.1.1-1.21.1-NeoForge.jar       |Overflowing Bars              |overflowingbars               |21.1.1              |Manifest: NOSIGNATURE         owo-lib-neoforge-0.12.15.5-beta.1+1.21.jar        |oωo                           |owo                           |0.12.15.5-beta.1+1.2|Manifest: NOSIGNATURE         Patchouli-1.21.1-92-NEOFORGE.jar                  |Patchouli                     |patchouli                     |1.21.1-92-NEOFORGE  |Manifest: NOSIGNATURE         PickUpNotifier-v21.1.1-1.21.1-NeoForge.jar        |Pick Up Notifier              |pickupnotifier                |21.1.1              |Manifest: NOSIGNATURE         Placebo-1.21.1-9.9.1.jar                          |Placebo                       |placebo                       |9.9.1               |Manifest: NOSIGNATURE         player-animation-lib-forge-2.0.1+1.21.1.jar       |Player Animator               |playeranimator                |2.0.1+1.21.1        |Manifest: NOSIGNATURE         polymorph-neoforge-1.1.0+1.21.1.jar               |Polymorph                     |polymorph                     |1.1.0+1.21.1        |Manifest: NOSIGNATURE         prickle-neoforge-1.21.1-21.1.10.jar               |PrickleMC                     |prickle                       |21.1.10             |Manifest: NOSIGNATURE         PuzzlesLib-v21.1.38-1.21.1-NeoForge.jar           |Puzzles Lib                   |puzzleslib                    |21.1.38             |Manifest: NOSIGNATURE         rechiseled-1.1.6a-neoforge-mc1.21.jar             |Rechiseled                    |rechiseled                    |1.1.6+a             |Manifest: NOSIGNATURE         rechiseled_chipped-1.3-1.21.1.jar                 |Rechiseled: Chipped           |rechiseled_chipped            |1.3                 |Manifest: NOSIGNATURE         resourcefullib-neoforge-1.21-3.0.12.jar           |Resourceful Lib               |resourcefullib                |3.0.12              |Manifest: NOSIGNATURE         rightclickharvest-neoforge-4.5.3+1.21.1.jar       |Right Click Harvest           |rightclickharvest             |4.5.3+1.21.1        |Manifest: NOSIGNATURE         shulkerboxtooltip-neoforge-5.1.6+1.21.1.jar       |ShulkerBoxTooltip             |shulkerboxtooltip             |5.1.6+1.21.1        |Manifest: NOSIGNATURE         simplehats-neoforge-1.21.1-0.4.0.jar              |SimpleHats                    |simplehats                    |0.4.0               |Manifest: NOSIGNATURE         skyblock_resources-1.6.0-neoforge-1.21.1.jar      |Skyblock Resources            |skyblock_resources            |1.6.0               |Manifest: NOSIGNATURE         sootychimneys-neoforge-1.3.3.jar                  |Sooty Chimneys                |sootychimneys                 |1.3.3               |Manifest: NOSIGNATURE         sophisticatedbackpacks-1.21.1-3.24.21.1314.jar    |Sophisticated Backpacks       |sophisticatedbackpacks        |3.24.21             |Manifest: NOSIGNATURE         sophisticatedcore-1.21.1-1.3.67.1105.jar          |Sophisticated Core            |sophisticatedcore             |1.3.67              |Manifest: NOSIGNATURE         sophisticatedstorage-1.21.1-1.5.0.1243.jar        |Sophisticated Storage         |sophisticatedstorage          |1.5.0               |Manifest: NOSIGNATURE         spectrelib-neoforge-0.17.2+1.21.jar               |SpectreLib                    |spectrelib                    |0.17.2+1.21         |Manifest: NOSIGNATURE         Stoneworks-v21.1.0-1.21.1-NeoForge.jar            |Stoneworks                    |stoneworks                    |21.1.0              |Manifest: NOSIGNATURE         storagedelight-25.06.24-1.21-neoforge.jar         |Storage Delight               |storagedelight                |25.06.24-1.21-neofor|Manifest: NOSIGNATURE         StorageDrawers-neoforge-1.21.1-13.11.1.jar        |Storage Drawers               |storagedrawers                |13.11.1             |Manifest: NOSIGNATURE         labels-1.21-2.0.1-neoforge.jar                    |Storage Labels                |labels                        |1.21-2.0.1          |Manifest: NOSIGNATURE         storageracks-1.13-1.21.1-release.jar              |Storage Racks                 |storageracks                  |1.13-1.21.1-release |Manifest: NOSIGNATURE         SubtleEffects-neoforge-1.21.1-1.12.1.jar          |Subtle Effects                |subtle_effects                |1.12.1              |Manifest: NOSIGNATURE         supermartijn642configlib-1.1.8-neoforge-mc1.21.jar|SuperMartijn642's Config Libra|supermartijn642configlib      |1.1.8               |Manifest: NOSIGNATURE         supermartijn642corelib-1.1.18a-neoforge-mc1.21.jar|SuperMartijn642's Core Lib    |supermartijn642corelib        |1.1.18+a            |Manifest: NOSIGNATURE         sushigocrafting-1.21-0.6.4.jar                    |Sushi Go Crafting             |sushigocrafting               |0.6.4               |Manifest: NOSIGNATURE         twilightforest-1.21.1-4.7.3196-universal.jar      |The Twilight Forest           |twilightforest                |4.7.3196            |Manifest: NOSIGNATURE         titanium-1.21-4.0.37.jar                          |Titanium                      |titanium                      |4.0.37              |Manifest: NOSIGNATURE         trailandtales_delight-0.4.jar                     |Trail&Tales Delight           |trailandtales_delight         |0.4.1               |Manifest: NOSIGNATURE         TRansition-1.0.4-1.21-neoforge-SNAPSHOT.jar       |TRansition                    |transition                    |1.0.4               |Manifest: NOSIGNATURE         TRender-1.0.6-1.21-neoforge-SNAPSHOT.jar          |TRender                       |trender                       |1.0.6               |Manifest: NOSIGNATURE         twilightdelight-3.0.6.jar                         |Twilight Flavors & Delight    |twilightdelight               |3.0.6               |Manifest: NOSIGNATURE         tf_dnv-2.0.3.jar                                  |Twilight Forest - Dungeons & V|tf_dnv                        |2.0.3               |Manifest: NOSIGNATURE         ubesdelight-neoforge-1.21.1-0.4.3.jar             |Ube's Delight                 |ubesdelight                   |0.4.3               |Manifest: NOSIGNATURE         underlay-1.21-v0.9.6-f.jar                        |Underlay                      |underlay                      |0.9.6               |Manifest: NOSIGNATURE         VampiresDelight-1.21.1-0.1.10d.jar                |Vampire's Delight             |vampiresdelight               |0.1.10d             |Manifest: NOSIGNATURE         Vampirism-1.21-1.10.7.jar                         |Vampirism                     |vampirism                     |1.10.7              |Manifest: NOSIGNATURE         VisualWorkbench-v21.1.1-1.21.1-NeoForge.jar       |Visual Workbench              |visualworkbench               |21.1.1              |Manifest: NOSIGNATURE         waveycapes-neoforge-1.6.2-mc1.21.jar              |WaveyCapes                    |waveycapes                    |1.6.2               |Manifest: NOSIGNATURE         watut-neoforge-1.21.0-1.2.7.jar                   |What Are They Up To           |watut                         |1.21.0-1.2.7        |Manifest: NOSIGNATURE         Xaeros_Minimap_25.2.10_NeoForge_1.21.jar          |Xaero's Minimap               |xaerominimap                  |25.2.10             |Manifest: NOSIGNATURE         XaerosWorldMap_1.39.12_NeoForge_1.21.jar          |Xaero's World Map             |xaeroworldmap                 |1.39.12             |Manifest: NOSIGNATURE         weaponmaster_ydm-1.21.1-neoforge-4.2.7.jar        |YDM's Weapon Master           |weaponmaster_ydm              |4.2.7               |Manifest: NOSIGNATURE         yet_another_config_lib_v3-3.7.1+1.21.1-neoforge.ja|YetAnotherConfigLib           |yet_another_config_lib_v3     |3.7.1+1.21.1-neoforg|Manifest: NOSIGNATURE     Crash Report UUID: d323af41-b15d-4c61-b987-49c0e3e8e1a8     FML: 4.0.41     NeoForge: 21.1.205
    • Are you ready to join a Minecraft server that truly breaks the mold? IP: play.soulsteal.net  Discord: Ask In-Game!   SoulSteal SMP is not your typical server. It's a dark, mystical world that expertly fuses the best parts of Prison, Survival, and Anarchy. We're a tight-knit community where the grind is real, but so are the rewards, and we pride ourselves on being completely P2W (Pay-to-Win) free. Every single item and rank can be earned through gameplay within a reasonable amount of time. No shortcuts, just pure dedication. Dual Progression System This is where the magic happens. You have two distinct paths to advance and get ahead. You can climb through the ranks by earning Souls, a custom currency dropped by unique mobs and rewarding jobs like Lava Fishing. Alternatively, you can use your in-game dollars to purchase exclusive perks and cosmetics. This dual system creates a dynamic economy that rewards every playstyle, whether you're a grinder or a savvy merchant. Four Custom Realms Our core progression is built around four unique realms, each with its own rich lore, specific challenges, and custom armor sets like Ember and Verdant. These realms act as our version of the Prison gamemode, where you must fight your way through to conquer them all. Each realm presents a new challenge, pushing you to adapt your strategy and gear. Anarchy vs. Structured Gameplay SoulSteal SMP offers the best of both worlds. Craving intense PvP and chaos? Jump into our massive 2,000 x 2,000 grief-enabled Anarchy world where trust is a liability and only the strongest survive. Prefer a more structured experience? Stay within the realms for a grief-free PvE environment where you can focus on building and progressing without worrying about being raided. The Epic Endgame The journey culminates in a grand finale. Conquer all four realms to earn the prestigious Exalted rank and unlock the ultimate reward: a grief-free Premium World with custom terrain, exclusive resources, and a place to build your final legacy. Join our growing community and carve your legend in SoulSteal SMP. The adventure awaits.
    • Like title says I am trying to add some mods to a pre-existing modpack, but something is causing a conflict to the world gen settings that causes it to crash with the Description: Exception generating new chunk. edit this is based on a  19.2 modpack, prominence, with extra mods added. crash https://pastebin.com/Y3V5d4G6 Partial latest log, file was too big for pastebin. didn't know that was a thing https://pastebin.com/uJ8L2UUz
    • I was updating my modpack by adding more mods but then I encountered an issue with kotlin and essential once I started minecraft. I believe this error is what's causing it: Could not find parent kotlin/jvm/internal/Lambda for class gg/essential/elementa/components/UIImage$2$1 in classloader jdk.internal.loader.ClassLoaders$AppClassLoader@60f82f98 on thread Thread[ForkJoinPool.commonPool-worker-2,5,main] here's the entire crash log for more info: https://pastebin.com/k8jYucFY EDIT: My bad here's the latest.log file: https://pastebin.com/zQ8cZVyv
  • 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 Terms of Use.