Jump to content

Concurrent Modification Exception


Asweez

Recommended Posts

I get this error every time I try to open my world. I am using MCAnimator and this is one of the classes. I am using Forge 1.8, Java 1.7 (I tried both 1.7 and 1.8 java they both didn't work).

 

 

[17:40:33] [main/INFO] [GradleStart]: username: Asweez
[17:40:33] [main/INFO] [GradleStart]: Extra: []
[17:40:33] [main/INFO] [GradleStart]: Password found, attempting login
[17:40:34] [main/INFO]: Logging in with username & password
[17:40:35] [main/INFO] [GradleStart]: Login Succesful!
[17:40:35] [main/INFO] [GradleStart]: Running with arguments: [--userProperties, [], --username, Asweez, --accessToken, {REDACTED}, --assetIndex, 1.8, --uuid, f5cb1557227e4b58b571b98d4f5e2f34, --userType, mojang, --assetsDir, /Users/Kids/.gradle/caches/minecraft/assets, --version, 1.8, --tweakClass, net.minecraftforge.fml.common.launcher.FMLTweaker, --tweakClass, net.minecraftforge.gradle.tweakers.CoremodTweaker]
[17:40:35] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.CoremodTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker
[17:40:35] [main/INFO] [FML]: Forge Mod Loader version 8.99.124.1450 for Minecraft 1.8 loading
[17:40:35] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.7.0_71, running on Mac OS X:x86_64:10.10.4, installed at /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/jre
[17:40:35] [main/INFO] [FML]: Managed to load a deobfuscated Minecraft name- we are in a deobfuscated environment. Skipping runtime deobfuscation
[17:40:35] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.CoremodTweaker
[17:40:35] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.fml.relauncher.FMLCorePlugin
[17:40:35] [main/INFO] [GradleStart]: Injecting location in coremod net.minecraftforge.classloading.FMLForgePlugin
[17:40:35] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
[17:40:35] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
[17:40:35] [main/ERROR] [FML]: The binary patch set is missing. Either you are in a development environment, or things are not going to work!
[17:40:36] [main/ERROR] [FML]: FML appears to be missing any signature data. This is not a good thing
[17:40:36] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
[17:40:36] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
[17:40:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.gradle.tweakers.AccessTransformerTweaker
[17:40:37] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.TerminalTweaker
[17:40:37] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.TerminalTweaker
[17:40:37] [main/INFO] [LaunchWrapper]: Launching wrapped minecraft {net.minecraft.client.main.Main}
[17:40:38] [Client thread/INFO]: Setting user: Asweez
[17:40:41] [Client thread/INFO]: LWJGL Version: 2.9.2
[17:40:41] [Client thread/INFO] [sTDOUT]: [net.minecraftforge.fml.client.SplashProgress:start:235]: ---- Minecraft Crash Report ----
// My bad.

Time: 11/30/15 5:40 PM
Description: Loading screen debug info

This is just a prompt for computer specs to be printed. THIS IS NOT A ERROR


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
Minecraft Version: 1.8
Operating System: Mac OS X (x86_64) version 10.10.4
Java Version: 1.7.0_71, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 231537496 bytes (220 MB) / 361234432 bytes (344 MB) up to 1908932608 bytes (1820 MB)
JVM Flags: 0 total; 
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: 
Loaded coremods (and transformers): 
GL info: ' Vendor: 'Intel Inc.' Version: '2.1 INTEL-10.6.31' Renderer: 'Intel Iris Pro OpenGL Engine'
[17:40:41] [Client thread/INFO] [MinecraftForge]: Attempting early MinecraftForge initialization
[17:40:41] [Client thread/INFO] [FML]: MinecraftForge v11.14.3.1450 Initialized
[17:40:41] [Client thread/INFO] [FML]: Replaced 204 ore recipies
[17:40:41] [Client thread/INFO] [MinecraftForge]: Completed early MinecraftForge initialization
[17:40:41] [Client thread/INFO] [FML]: Found 0 mods from the command line. Injecting into mod discoverer
[17:40:41] [Client thread/INFO] [FML]: Searching /Users/Kids/Desktop/MiniMods/MoreCreeps/mods for mods
[17:40:43] [Client thread/INFO] [FML]: Forge Mod Loader has identified 4 mods to load
[17:40:44] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, creeps] at CLIENT
[17:40:44] [Client thread/INFO] [FML]: Attempting connection with missing mods [mcp, FML, Forge, creeps] at SERVER
[17:40:44] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:More Creeps and Weirdos
[17:40:44] [Client thread/INFO] [FML]: Processing ObjectHolder annotations
[17:40:44] [Client thread/INFO] [FML]: Found 384 ObjectHolder annotations
[17:40:44] [Client thread/INFO] [FML]: Identifying ItemStackHolder annotations
[17:40:44] [Client thread/INFO] [FML]: Found 0 ItemStackHolder annotations
[17:40:44] [Client thread/INFO] [FML]: Configured a dormant chunk cache size of 0
[17:40:44] [Client thread/INFO] [FML]: Applying holder lookups
[17:40:44] [Client thread/INFO] [FML]: Holder lookups applied
[17:40:44] [Client thread/INFO] [FML]: Injecting itemstacks
[17:40:44] [Client thread/INFO] [FML]: Itemstack injection complete
[17:40:44] [sound Library Loader/INFO]: Starting up SoundSystem...
[17:40:44] [Thread-8/INFO]: Initializing LWJGL OpenAL
[17:40:44] [Thread-8/INFO]: (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
[17:40:44] [Thread-8/INFO]: OpenAL initialized.
[17:40:45] [sound Library Loader/INFO]: Sound engine started
[17:40:47] [Client thread/INFO]: Created: 512x512 textures-atlas
[17:40:48] [Client thread/INFO] [sTDOUT]: [com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.MCAVersionChecker:checkForLibraryVersion:11]: MCA WARNING: com.apmods.creeps.models.ModelSneakySal needs a newer version of the library (5). Things could go wrong!
[17:40:48] [Client thread/INFO] [sTDOUT]: [com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.MCAVersionChecker:checkForLibraryVersion:11]: MCA WARNING: com.apmods.creeps.models.floob.ModelFloob needs a newer version of the library (5). Things could go wrong!
[17:40:48] [Client thread/INFO] [FML]: Injecting itemstacks
[17:40:48] [Client thread/INFO] [FML]: Itemstack injection complete
[17:40:48] [Client thread/INFO] [FML]: Forge Mod Loader has successfully loaded 4 mods
[17:40:48] [Client thread/INFO]: Reloading ResourceManager: Default, FMLFileResourcePack:Forge Mod Loader, FMLFileResourcePack:Minecraft Forge, FMLFileResourcePack:More Creeps and Weirdos
[17:40:48] [Client thread/INFO]: SoundSystem shutting down...
[17:40:49] [Client thread/WARN]: Author: Paul Lamb, www.paulscode.com
[17:40:49] [sound Library Loader/INFO]: Starting up SoundSystem...
[17:40:49] [Thread-10/INFO]: Initializing LWJGL OpenAL
[17:40:49] [Thread-10/INFO]: (The LWJGL binding of OpenAL.  For more information, see http://www.lwjgl.org)
[17:40:49] [Thread-10/INFO]: OpenAL initialized.
[17:40:49] [sound Library Loader/INFO]: Sound engine started
[17:40:50] [Client thread/INFO]: Created: 512x512 textures-atlas
[17:40:53] [server thread/INFO]: Starting integrated minecraft server version 1.8
[17:40:53] [server thread/INFO]: Generating keypair
[17:40:53] [server thread/INFO] [FML]: Injecting existing block and item data into this server instance
[17:40:53] [server thread/INFO] [FML]: Applying holder lookups
[17:40:53] [server thread/INFO] [FML]: Holder lookups applied
[17:40:53] [server thread/INFO] [FML]: Loading dimension 0 (New World) (net.minecraft.server.integrated.IntegratedServer@170b0284)
[17:40:53] [server thread/INFO] [FML]: Loading dimension 1 (New World) (net.minecraft.server.integrated.IntegratedServer@170b0284)
[17:40:53] [server thread/INFO] [FML]: Loading dimension -1 (New World) (net.minecraft.server.integrated.IntegratedServer@170b0284)
[17:40:53] [server thread/INFO]: Preparing start region for level 0
[17:40:54] [server thread/INFO]: Changing view distance to 12, from 10
[17:40:54] [server thread/ERROR] [FML]: Exception caught during firing event net.minecraftforge.fml.common.gameevent.TickEvent$ServerTickEvent@2a92c388:
java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:859) ~[?:1.7.0_71]
at java.util.ArrayList$Itr.next(ArrayList.java:831) ~[?:1.7.0_71]
at com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation.AnimTickHandler.onServerTick(AnimTickHandler.java:54) ~[AnimTickHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_7_AnimTickHandler_onServerTick_ServerTickEvent.invoke(.dynamic) ~[?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138) [EventBus.class:?]
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:301) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:658) [MinecraftServer.class:?]
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171) [integratedServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_71]
[17:40:54] [server thread/ERROR] [FML]: Index: 1 Listeners:
[17:40:54] [server thread/ERROR] [FML]: 0: NORMAL
[17:40:54] [server thread/ERROR] [FML]: 1: ASM: com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation.AnimTickHandler@7a85393d onServerTick(Lnet/minecraftforge/fml/common/gameevent/TickEvent$ServerTickEvent;)V
[17:40:54] [server thread/ERROR]: Encountered an unexpected exception
java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:859) ~[?:1.7.0_71]
at java.util.ArrayList$Itr.next(ArrayList.java:831) ~[?:1.7.0_71]
at com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation.AnimTickHandler.onServerTick(AnimTickHandler.java:54) ~[AnimTickHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_7_AnimTickHandler_onServerTick_ServerTickEvent.invoke(.dynamic) ~[?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138) ~[EventBus.class:?]
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:301) ~[FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:658) ~[MinecraftServer.class:?]
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171) ~[integratedServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_71]
[17:40:54] [server thread/ERROR]: This crash report has been saved to: /Users/Kids/Desktop/MiniMods/MoreCreeps/./crash-reports/crash-2015-11-30_17.40.54-server.txt
[17:40:54] [server thread/INFO]: Stopping server
[17:40:54] [server thread/INFO]: Saving players
[17:40:54] [server thread/INFO]: Saving worlds
[17:40:54] [server thread/INFO]: Saving chunks for level 'New World'/Overworld
[17:40:54] [server thread/INFO]: Saving chunks for level 'New World'/Nether
[17:40:54] [server thread/INFO]: Saving chunks for level 'New World'/The End
[17:40:54] [server thread/INFO] [FML]: Unloading dimension 0
[17:40:54] [server thread/INFO] [FML]: Unloading dimension -1
[17:40:54] [server thread/INFO] [FML]: Unloading dimension 1
[17:40:54] [server thread/INFO] [FML]: Applying holder lookups
[17:40:54] [server thread/INFO] [FML]: Holder lookups applied
[17:40:54] [server thread/INFO] [FML]: The state engine was in incorrect state SERVER_STOPPING and forced into state SERVER_STOPPED. Errors may have been discarded.
[17:40:55] [Client thread/INFO] [sTDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:663]: ---- Minecraft Crash Report ----
// Why did you do that?

Time: 11/30/15 5:40 PM
Description: Exception in server tick loop

java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:859)
at java.util.ArrayList$Itr.next(ArrayList.java:831)
at com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation.AnimTickHandler.onServerTick(AnimTickHandler.java:54)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_7_AnimTickHandler_onServerTick_ServerTickEvent.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138)
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:301)
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:658)
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540)
at java.lang.Thread.run(Thread.java:745)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
Minecraft Version: 1.8
Operating System: Mac OS X (x86_64) version 10.10.4
Java Version: 1.7.0_71, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 391525840 bytes (373 MB) / 778043392 bytes (742 MB) up to 1908932608 bytes (1820 MB)
JVM Flags: 0 total; 
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v9.10 FML v8.0.99.99 Minecraft Forge 11.14.3.1450 4 mods loaded, 4 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCHIJAAAA	mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 
UCHIJAAAA	FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.8-11.14.3.1450.jar) 
UCHIJAAAA	Forge{11.14.3.1450} [Minecraft Forge] (forgeSrc-1.8-11.14.3.1450.jar) 
UCHIJAAAA	creeps{1.0} [More Creeps and Weirdos] (bin) 
Loaded coremods (and transformers): 
GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
Profiler Position: N/A (disabled)
Player Count: 0 / 8; []
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'
[17:40:55] [Client thread/INFO] [sTDOUT]: [net.minecraft.init.Bootstrap:printToSYSOUT:663]: #@!@# Game crashed! Crash report saved to: #@!@# ./crash-reports/crash-2015-11-30_17.40.54-server.txt
AL lib: (EE) alc_cleanup: 1 device not closed

 

 

AnimTickHandler:

 

package com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation;

import java.util.ArrayList;
import java.util.Iterator;

import com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.IMCAnimatedEntity;

import net.minecraft.entity.Entity;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent.Phase;

public class AnimTickHandler {
private ArrayList<IMCAnimatedEntity> activeEntities = new ArrayList<IMCAnimatedEntity>();
private ArrayList<IMCAnimatedEntity> removableEntities = new ArrayList<IMCAnimatedEntity>();

public AnimTickHandler() {
	FMLCommonHandler.instance().bus().register(this);
}

public void addEntity(IMCAnimatedEntity entity) {
	activeEntities.add(entity);
}

//Called when the client ticks. 
@SubscribeEvent
public void onClientTick(TickEvent.ClientTickEvent event) {
	if(!activeEntities.isEmpty()) {
		if(event.phase == Phase.START) {
			for(IMCAnimatedEntity entity : activeEntities) {
				entity.getAnimationHandler().animationsUpdate();

				if(((Entity)entity).isDead) {
					removableEntities.add(entity);
				}
			}

			for(IMCAnimatedEntity entity : removableEntities) {
				activeEntities.remove(entity);
			}
			removableEntities.clear();
		}
	}
}

//Called when the server ticks. Usually 20 ticks a second. 
@SubscribeEvent
public void onServerTick(TickEvent.ServerTickEvent event) {
	if(!activeEntities.isEmpty()) {
		if(event.phase == Phase.START) {
			for(IMCAnimatedEntity entity : activeEntities) {
				entity.getAnimationHandler().animationsUpdate();

				if(((Entity)entity).isDead) {
					removableEntities.add(entity);
				}
			}

			for(IMCAnimatedEntity entity : removableEntities) {
				activeEntities.remove(entity);
			}
			removableEntities.clear();
		}
	}
}

//Called when a new frame is displayed (See fps) 
@SubscribeEvent
public void onRenderTick(TickEvent.RenderTickEvent event) {
}

//Called when the world ticks
@SubscribeEvent
public void onWorldTick(TickEvent.WorldTickEvent event) {
}
}

 

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

Jesus!

 

CMO appears when you are manipulating contents of collection while they are being in use. Example: One thread is iterating through collection while other thread removes entries.

 

Which is literally what you did. You have 2 arrays shared between client and server event. ClientTick is fired by client thread, server, by server.

You need to have separate arrays for each logical side or not allow client to remove stuff.

Also note that you should remember about thing called "dedic" where clients don't have server thread.

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

Link to comment
Share on other sites

CME can occur even on a single-threaded application, so it is not necessarily a threading issue; in fact, variables exist separately in Minecraft client vs. server because they are (or effectively are) separate applications, so if you had a List that existed on both sides, you could modify it to your heart's content on one side without the other side ever being affected by it. That's why you need packets to communicate between the two.

 

Anyway, you can safely remove elements using Iterators, but not the standard List methods. A quick search on Google brings up lots of information; e.g. this SO question which should help your specific situation.

 

Other solutions are to make a copy of the collection, but I usually prefer iterators when I wish to remove elements mid-iteration.

Link to comment
Share on other sites

Ok heres what I made with Iterators:

 

 

			if(event.phase == Phase.START) {
			for(IMCAnimatedEntity entity : activeEntities) {
				entity.getAnimationHandler().animationsUpdate();

				if(((Entity)entity).isDead) {
					removableEntities.add(entity);
				}
			}

			for(IMCAnimatedEntity entity : removableEntities) {
				activeEntities.remove(entity);
			}
			removableEntities.clear();
		}

 

 

Would this be correct? And should I put it in both client and server or what? I'm kinda confused on this.

 

So the client runs and starts deleting files that the server is currently iterating through? Is that correct?

 

Thanks

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

Ok heres what I made with Iterators:

 

 

			if(event.phase == Phase.START) {
			for(IMCAnimatedEntity entity : activeEntities) {
				entity.getAnimationHandler().animationsUpdate();

				if(((Entity)entity).isDead) {
					removableEntities.add(entity);
				}
			}

			for(IMCAnimatedEntity entity : removableEntities) {
				activeEntities.remove(entity);
			}
			removableEntities.clear();
		}

 

o.0 I don't see any Iterator in there at all, just a foreach loop. Please, if you don't know what something is, search before you ask. There are literally thousands of pages discussing how to use Iterators in Java that you should read rather than wasting our time here.

 

So the client runs and starts deleting files that the server is currently iterating through? Is that correct?

variables exist separately in Minecraft client vs. server because they are (or effectively are) separate applications, so if you had a List that existed on both sides, you could modify it to your heart's content on one side without the other side ever being affected by it.

How is that not clear? And "files" ?! You're not handling any files at all in the code you posted...

Link to comment
Share on other sites

MCAnimator.  There's your problem.  The animation system exported by MCAnimator is rife with problems.  You will not be able to fix this on your own.

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

o.0 I don't see any Iterator in there at all, just a foreach loop. Please, if you don't know what something is, search before you ask. There are literally thousands of pages discussing how to use Iterators in Java that you should read rather than wasting our time here.

 

Sorry posted the wrong code, here's the correct code:

 

 

Iterator<IMCAnimatedEntity> it = activeEntities.iterator();
			while(it.hasNext()){
				IMCAnimatedEntity entity = it.next();
				entity.getAnimationHandler().animationsUpdate();
				if(((Entity)entity).isDead){
					removableEntities.add(entity);
				}
			}

			Iterator<IMCAnimatedEntity> itremove = removableEntities.iterator();

			while(itremove.hasNext()){
				IMCAnimatedEntity entity = it.next();
				activeEntities.remove(entity);
			}
			removableEntities.clear();

 

 

MCAnimator.  There's your problem.  The animation system exported by MCAnimator is rife with problems.  You will not be able to fix this on your own.

 

MCAnimator is not my go-to modeling program, but I have a Mac so there's no other option :/

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

You are not using the Iterator to remove the element... -.-

 

Please, search 'removing Collection element with Iterator' or some such to learn how to use them to remove entries from a Collection.

 

Also, you won't need a removableEntities list - you can remove the entry directly when found (when using the Iterator correctly).

Link to comment
Share on other sites

I did that:

 

 

Iterator<IMCAnimatedEntity> it = activeEntities.iterator();
			while(it.hasNext()){
				IMCAnimatedEntity entity = it.next();
				entity.getAnimationHandler().animationsUpdate();
				if(((Entity)entity).isDead){
					it.remove();
				}
			}

 

 

And it is in both the client and the server tick methods. However, I still get CME, even when I don't remove anything from the lists (deleting it#remove()). Why?

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

AnimTickHandler:

 

package com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation;

import java.util.ArrayList;
import java.util.Iterator;

import com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.IMCAnimatedEntity;

import net.minecraft.entity.Entity;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent.Phase;

public class AnimTickHandler {
private ArrayList<IMCAnimatedEntity> activeEntities = new ArrayList<IMCAnimatedEntity>();
private ArrayList<IMCAnimatedEntity> removableEntities = new ArrayList<IMCAnimatedEntity>();

public AnimTickHandler() {
	FMLCommonHandler.instance().bus().register(this);
}

public void addEntity(IMCAnimatedEntity entity) {
	activeEntities.add(entity);
}

//Called when the client ticks. 
@SubscribeEvent
public void onClientTick(TickEvent.ClientTickEvent event) {
	if(!activeEntities.isEmpty()) {
		if(event.phase == Phase.START) {
			Iterator<IMCAnimatedEntity> it = activeEntities.iterator();
			while(it.hasNext()){
				IMCAnimatedEntity entity = it.next();
				entity.getAnimationHandler().animationsUpdate();
				if(((Entity)entity).isDead){
//						it.remove();
				}
			}
		}
	}
}

//Called when the server ticks. Usually 20 ticks a second. 
@SubscribeEvent
public void onServerTick(TickEvent.ServerTickEvent event) {
	if(!activeEntities.isEmpty()) {
		if(event.phase == Phase.START) {
			Iterator<IMCAnimatedEntity> it = activeEntities.iterator();
			while(it.hasNext()){
				IMCAnimatedEntity entity = it.next();
				entity.getAnimationHandler().animationsUpdate();
				if(((Entity)entity).isDead){
					it.remove();
				}
			}
		}
	}
}

//Called when a new frame is displayed (See fps) 
@SubscribeEvent
public void onRenderTick(TickEvent.RenderTickEvent event) {
}

//Called when the world ticks
@SubscribeEvent
public void onWorldTick(TickEvent.WorldTickEvent event) {
}
}

 

 

Log:

 

---- Minecraft Crash Report ----
// Shall we play a game?

Time: 11/29/15 7:23 PM
Description: Exception in server tick loop

java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)
at java.util.ArrayList$Itr.next(ArrayList.java:851)
at com.apmods.creeps.models.MCALibs.common.MCACommonLibrary.animation.AnimTickHandler.onServerTick(AnimTickHandler.java:51)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_7_AnimTickHandler_onServerTick_ServerTickEvent.invoke(.dynamic)
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138)
at net.minecraftforge.fml.common.FMLCommonHandler.onPreServerTick(FMLCommonHandler.java:301)
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:658)
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:171)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540)
at java.lang.Thread.run(Thread.java:745)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
Minecraft Version: 1.8
Operating System: Mac OS X (x86_64) version 10.10.4
Java Version: 1.8.0_65, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 428730112 bytes (408 MB) / 858259456 bytes (818 MB) up to 1908932608 bytes (1820 MB)
JVM Flags: 0 total; 
IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
FML: MCP v9.10 FML v8.0.99.99 Minecraft Forge 11.14.3.1450 4 mods loaded, 4 mods active
States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
UCHIJAAAA	mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 
UCHIJAAAA	FML{8.0.99.99} [Forge Mod Loader] (forgeSrc-1.8-11.14.3.1450.jar) 
UCHIJAAAA	Forge{11.14.3.1450} [Minecraft Forge] (forgeSrc-1.8-11.14.3.1450.jar) 
UCHIJAAAA	creeps{1.0} [More Creeps and Weirdos] (bin) 
Loaded coremods (and transformers): 
GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
Profiler Position: N/A (disabled)
Player Count: 1 / 8; [EntityPlayerMP['Asweez'/114, l='New World', x=-116.11, y=4.00, z=-622.92]]
Type: Integrated Server (map_client.txt)
Is Modded: Definitely; Client brand changed to 'fml,forge'

 

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

Well, that's pretty bizarre. Using an Iterator to remove elements should generally protect you from CME in this type of scenario - the only other thing I can think of that you can try is to surround your current list traversal with a synchronized block:

synchronized (activeEntities) {
   // iterator code and iterate over list
}

That will prevent any other methods or threads from accessing the activeEntities List until that code block completes.

 

Perhaps someone with more Java knowledge will be able to explain your problem, as I am at the end of mine with respect to CME :\

Link to comment
Share on other sites

1. Using "synchronized" kills purpose of having multi-threading (in Minecraft case it would cause Client tick to "wait" for Server tick or other way around, not to mention that it is totally logic-breaking).

 

2. If you SUPER-NEED to have one Collection for both threads (which is, as alredy mentioned: retarded), you will need... idk... Lock interface (ReentrantReadWriteLock.class). Which again - will break EVERYTHING, since stuff like this is not compatible with Minecraft design. Lock is used to perfom very fast actions while securing from concurrency.

 

3. MC is not designed to handle synchronization - so DON'T do that!

You need to have separate arrays for each logical side or not allow client (or server) to remove stuff.

Also note that you should remember about thing called "dedic" where clients don't have server thread.

 

4. Make those 2 arrays or proxify your code :

On MP:

- Dedic runs ServerTickEvent on its own array.

- Client runs ClientTickEvent on its own array.

On SP:

- Only ServerTickEvent manipulates array

*Which I will AGAIN say - is REALLY bad. Server should not manipulate client stuff and other way around.

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

Link to comment
Share on other sites

So I need to have a entitiesServer and an entitiesClient list? The MCA help thing said that animations are run both on client and server. Is this right? Is there any way to get around all of this client server tick stuff or is there another solution that I can use to animate my model?

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

@Ernio I don't know where you're getting all this multi-threading stuff from - MC is not really multi-threaded except for the network, and that is, well... not well done. The server and client run as separate applications (unless on single player), not threads, so synchronizing a block (which does the same thing as a lock) in one application has no effect on the other application.

 

Even in single player, having a single array or Collection that operates on both sides, there is already a separate instance of it on each side. Otherwise doing:

List list = new ArrayList();

someMethod(World world) {
  if (world.isRemote) {
    list.add("you won't see this on the server!");
  } else {
    print list to screen; // nothing will ever show up here because the server list is separate from the client list
  }
}

 

Anyway, @OP Animations are usually triggered by the server, but only run on the client. What that means is, for example, an entity performs an attack on the server (the trigger) which sends a notification to the client saying "I (the entity) am attacking now" and the client then starts the animation timer for the attack animation.

 

I don't know how MCAnimator is set up or expects things to be handled, but really you shouldn't need any sort of Collection to handle animating entities - that should be done in the Entity class (for the triggers and possibly a timer) and the entity's Render / Model class (for the actual animations).

 

For a good example of this, check out the Iron Golem, specifically its attack on the server and how that triggers a client-side animation by using World#setEntityState in combination with the entity's #handleHealthUpdate methods, a class field for the timer that gets set on both sides, and a Model class that uses that timer to change the arm position.

Link to comment
Share on other sites

coolAlias, what you are saying is not always true. Unless there is an underlying mechanism already that separates the two sides into two instances (e.g. with Entities, TileEntities, etc.) fields will not just be magically different between client and server in SinglePlayer.  The two sides run on the same VM, in the same process. If you have an EventHandler somewhere and put a list in it this list will be shared between client & server.

Yeah, you're right. I was thinking in terms of Entity, but if you have an event handler or similar class on single player (which the OP does...), the class fields will be shared (so even if you only add things to the list on 1 side, the other side will have that same data without packets). Thanks for the correction.

 

@OP The above could explain why you are getting CME if you are only getting it in Single Player - both client and server threads (and SP is where MC is actually multi-threaded, as Ernio was saying) are iterating over the list. Adding a synchronized block or any kind of Lock should work but could negatively impact performance on single player (you probably won't notice), or using separate collection instances for each thread (again as Ernio suggested).

 

Still, the best solution is to animate as I described in my previous post, and forget all this tick event business. What you have now is not the best way to animate an entity.

Link to comment
Share on other sites

Still, the best solution is to animate as I described in my previous post, and forget all this tick event business. What you have now is not the best way to animate an entity.

 

Read: MCAnimator is crap. It makes all kinds of assumptions which end up being false. You fix this problem and another will pop up else where. I tried once to fix it and I could not. The animation code is just too complex and too buggy.

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

Still, the best solution is to animate as I described in my previous post, and forget all this tick event business. What you have now is not the best way to animate an entity.

 

Read: MCAnimator is crap. It makes all kinds of assumptions which end up being false. You fix this problem and another will pop up else where. I tried once to fix it and I could not. The animation code is just too complex and too buggy.

 

I know MCAnimator is not the best, but do you have any other option for model making and animations for macs?

Creator of the MyFit, MagiCraft, Tesseract gun, and Papa's Wingeria mod.

Link to comment
Share on other sites

I've heard good things about Tabula, though I've never used it personally and don't know if it's for Mac.

 

Otherwise, use MCAnimator to create the models and then position your model in various intermediate poses, then cycle through them to create an animation. Jabelar has a pretty good tutorial on that floating around somewhere - find one of his posts and click the link in his signature for his blog.

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.



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • https://gist.github.com/it-is-allie/29645c4fb5c7131ad30181769a37d12f There is my latest crash report. I've spent probably 5 hours messing with modpacks and have gotten it almost complete but it then randomly crashes before loading all the mods? I'm not even sure. if anyone  could help it would be greatly appreciated.   
    • Ive been trying to use a new modpack that I made for curse forge and the game keeps crashing. I cant seem to find the issue if anyone could help it would be greatly appreciated. Crash report:  ---- Minecraft Crash Report ---- // My bad. Time: 2024-06-29 23:45:33 Description: Unexpected error java.lang.ArrayIndexOutOfBoundsException: Index 15 out of bounds for length 7     at net.minecraft.client.renderer.LevelRenderer.m_109703_(LevelRenderer.java:372) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:A}     at net.minecraft.client.renderer.LevelRenderer.m_109599_(LevelRenderer.java:2275) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:A}     at net.minecraft.client.renderer.GameRenderer.m_109089_(GameRenderer.java:1651) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:APP:mixins.satin.client.json:event.GameRendererMixin,pl:mixin:APP:tacz.mixins.json:client.GameRendererMixin,pl:mixin:APP:cameraoverhaul.mixins.json:modern.GameRendererMixin,pl:mixin:APP:securitycraft.mixins.json:camera.GameRendererMixin,pl:mixin:A}     at net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:1279) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:APP:mixins.satin.client.json:event.GameRendererMixin,pl:mixin:APP:tacz.mixins.json:client.GameRendererMixin,pl:mixin:APP:cameraoverhaul.mixins.json:modern.GameRendererMixin,pl:mixin:APP:securitycraft.mixins.json:camera.GameRendererMixin,pl:mixin:A}     at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1146) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:218) ~[forge-47.3.0.jar:?] {re:classloading,pl:runtimedistcleaner:A}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {}     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {}     at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Suspected Mods: NONE Stacktrace:     at net.minecraft.client.renderer.LevelRenderer.m_109703_(LevelRenderer.java:372) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:A}     at net.minecraft.client.renderer.LevelRenderer.m_109599_(LevelRenderer.java:2275) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:A}     at net.minecraft.client.renderer.GameRenderer.m_109089_(GameRenderer.java:1651) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,xf:OptiFine:default,re:classloading,pl:accesstransformer:B,xf:OptiFine:default,pl:mixin:APP:mixins.satin.client.json:event.GameRendererMixin,pl:mixin:APP:tacz.mixins.json:client.GameRendererMixin,pl:mixin:APP:cameraoverhaul.mixins.json:modern.GameRendererMixin,pl:mixin:APP:securitycraft.mixins.json:camera.GameRendererMixin,pl:mixin:A} -- Affected level -- Details:     All players: 1 total; [LocalPlayer['cheezbergr'/61, l='ClientLevel', x=-2.50, y=103.00, z=0.50]]     Chunk stats: 961, 552     Level dimension: minecraft:overworld     Level spawn location: World: (0,103,0), Section: (at 0,7,0 in 0,6,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)     Level time: 40 game time, 40 day time     Server brand: forge     Server type: Integrated singleplayer server Stacktrace:     at net.minecraft.client.multiplayer.ClientLevel.m_6026_(ClientLevel.java:590) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,xf:OptiFine:default,re:classloading,xf:OptiFine:default,pl:mixin:APP:sound_physics_remastered.mixins.json:ClientLevelMixin,pl:mixin:A}     at net.minecraft.client.Minecraft.m_91354_(Minecraft.java:2319) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:740) ~[client-1.20.1-20230612.114412-srg.jar%23224!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:218) ~[forge-47.3.0.jar:?] {re:classloading,pl:runtimedistcleaner:A}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {}     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {}     at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {} -- Last reload -- Details:     Reload number: 1     Reload reason: initial     Finished: Yes     Packs: vanilla, mod_resources, file/FreshAnimations_v1.9.1.zip, file/MandalasGUI+Dakmode_1.20.5.zip, file/TZP_1.20.1_2.7.zip -- System Details -- Details:     Minecraft Version: 1.20.1     Minecraft Version ID: 1.20.1     Operating System: Windows 11 (amd64) version 10.0     Java Version: 17.0.8, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 542663936 bytes (517 MiB) / 2705326080 bytes (2580 MiB) up to 4294967296 bytes (4096 MiB)     CPUs: 16     Processor Vendor: AuthenticAMD     Processor Name: AMD Ryzen 7 5800X 8-Core Processor                  Identifier: AuthenticAMD Family 25 Model 33 Stepping 0     Microarchitecture: Zen 3     Frequency (GHz): 3.79     Number of physical packages: 1     Number of physical CPUs: 8     Number of logical CPUs: 16     Graphics card #0 name: Virtual Desktop Monitor     Graphics card #0 vendor: Virtual Desktop, Inc.     Graphics card #0 VRAM (MB): 0.00     Graphics card #0 deviceId: unknown     Graphics card #0 versionInfo: DriverVersion=10.54.50.446     Graphics card #1 name: NVIDIA GeForce RTX 3060 Ti     Graphics card #1 vendor: NVIDIA (0x10de)     Graphics card #1 VRAM (MB): 4095.00     Graphics card #1 deviceId: 0x2489     Graphics card #1 versionInfo: DriverVersion=32.0.15.5612     Memory slot #0 capacity (MB): 8192.00     Memory slot #0 clockSpeed (GHz): 2.13     Memory slot #0 type: DDR4     Memory slot #1 capacity (MB): 8192.00     Memory slot #1 clockSpeed (GHz): 2.13     Memory slot #1 type: DDR4     Virtual memory max (MB): 32572.56     Virtual memory used (MB): 12874.98     Swap memory total (MB): 16286.28     Swap memory used (MB): 0.00     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx4096m -Xms256m     Launched Version: forge-47.3.0     Backend library: LWJGL version 3.3.1 build 7     Backend API: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 556.12, NVIDIA Corporation     Window size: 2560x1080     GL Caps: Using framebuffer using OpenGL 3.2     GL debug messages: id=1282, source=API, type=ERROR, severity=HIGH, message='GL_INVALID_OPERATION error generated. Texture name does not refer to a texture object generated by OpenGL.' x 1     Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'; Server brand changed to 'forge'     Type: Integrated Server (map_client.txt)     Graphics mode: fancy     Resource Packs: vanilla, mod_resources, file/FreshAnimations_v1.9.1.zip, file/MandalasGUI+Dakmode_1.20.5.zip (incompatible), file/TZP_1.20.1_2.7.zip     Current Language: en_us     CPU: 16x AMD Ryzen 7 5800X 8-Core Processor      Server Running: true     Player Count: 1 / 8; [ServerPlayer['cheezbergr'/61, l='ServerLevel[an endless winter]', x=-2.50, y=103.00, z=0.50]]     Data Packs: vanilla, mod:farmersdelight, mod:weaponmaster_ydm (incompatible), mod:radiantgear (incompatible), mod:cozy_home, mod:ambientsounds, mod:primalwinter, mod:blur (incompatible), mod:satin (incompatible), mod:geckolib, mod:creativecore, mod:supermartijn642corelib, mod:tacz, mod:libraryferret, mod:curios (incompatible), mod:sound_physics_remastered (incompatible), mod:realmrpg_skeletons, mod:forgeendertech, mod:wardrobe, mod:man, mod:betterfog (incompatible), mod:toughasnails (incompatible), mod:bettervillage, mod:mixinextras (incompatible), mod:connectedglass, mod:simply_houses (incompatible), mod:terralith, mod:fusion, mod:adchimneys, mod:the_knocker, mod:forge, mod:dynamictrees (incompatible), mod:tectonic (incompatible), mod:presencefootsteps (incompatible), mod:dtterralith (incompatible), builtin/replace_tree_features_fix (incompatible), builtin/skylands_winter_fix (incompatible), tectonic/terratonic, mod:securitycraft, mod:cameraoverhaul (incompatible)     Enabled Feature Flags: minecraft:vanilla     World Generation: Experimental     OptiFine Version: OptiFine_1.20.1_HD_U_I6     OptiFine Build: 20231221-120401     Render Distance Chunks: 12     Mipmaps: 4     Anisotropic Filtering: 1     Antialiasing: 0     Multitexture: false     Shaders: BSL_v8.2.09.zip     OpenGlVersion: 4.6.0 NVIDIA 556.12     OpenGlRenderer: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2     OpenGlVendor: NVIDIA Corporation     CpuCount: 16     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.0.jar slf4jfixer PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar object_holder_definalize PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar runtime_enum_extender PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar capability_token_subclass PLUGINSERVICE          accesstransformers-8.0.4.jar accesstransformer PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar runtimedistcleaner PLUGINSERVICE          modlauncher-10.0.9.jar mixin TRANSFORMATIONSERVICE          modlauncher-10.0.9.jar OptiFine TRANSFORMATIONSERVICE          modlauncher-10.0.9.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          [email protected]         lowcodefml@null         javafml@null     Mod List:          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         FarmersDelight-1.20.1-1.2.4.jar                   |Farmer's Delight              |farmersdelight                |1.20.1-1.2.4        |DONE      |Manifest: NOSIGNATURE         weaponmaster_ydm-forge-1.20.1-4.2.3.jar           |YDM's Weapon Master           |weaponmaster_ydm              |4.2.3               |DONE      |Manifest: NOSIGNATURE         radiantgear-forge-2.1.5+1.20.1.jar                |Radiant Gear                  |radiantgear                   |2.1.5+1.20.1        |DONE      |Manifest: NOSIGNATURE         cozy_home-3.0.3.2-forge-1.20.1.jar                |Cozy Home                     |cozy_home                     |3.0.3.2             |DONE      |Manifest: NOSIGNATURE         AmbientSounds_FORGE_v6.0.2_mc1.20.1.jar           |AmbientSounds                 |ambientsounds                 |6.0.2               |DONE      |Manifest: NOSIGNATURE         primalwinter-forge-1.20-5.0.0.jar                 |Primal Winter                 |primalwinter                  |5.0.0               |DONE      |Manifest: NOSIGNATURE         blur-forge-3.1.1.jar                              |Blur (Forge)                  |blur                          |3.1.1               |DONE      |Manifest: NOSIGNATURE         satin-forge-1.20.1+1.15.0-SNAPSHOT.jar            |Satin Forge                   |satin                         |1.20.1+1.15.0-SNAPSH|DONE      |Manifest: NOSIGNATURE         geckolib-forge-1.20.1-4.4.7.jar                   |GeckoLib 4                    |geckolib                      |4.4.7               |DONE      |Manifest: NOSIGNATURE         CreativeCore_FORGE_v2.11.30_mc1.20.1.jar          |CreativeCore                  |creativecore                  |2.11.30             |DONE      |Manifest: NOSIGNATURE         supermartijn642corelib-1.1.17-forge-mc1.20.1.jar  |SuperMartijn642's Core Lib    |supermartijn642corelib        |1.1.17              |DONE      |Manifest: NOSIGNATURE         tacz-1.20.1-1.0.1-hotfix-release.jar              |Timeless & Classics Guns: Zero|tacz                          |1.0.1-hotfix        |DONE      |Manifest: NOSIGNATURE         libraryferret-forge-1.20.1-4.0.0.jar              |Library ferret                |libraryferret                 |4.0.0               |DONE      |Manifest: NOSIGNATURE         curios-forge-5.9.1+1.20.1.jar                     |Curios API                    |curios                        |5.9.1+1.20.1        |DONE      |Manifest: NOSIGNATURE         sound-physics-remastered-forge-1.20.1-1.4.2.jar   |Sound Physics Remastered      |sound_physics_remastered      |1.20.1-1.4.2        |DONE      |Manifest: NOSIGNATURE         realmrpg_fallen_adventurers_1.0.3_forge_1.20.1.jar|Realm RPG: Fallen Adventurers |realmrpg_skeletons            |1.0.3               |DONE      |Manifest: NOSIGNATURE         ForgeEndertech-1.20.1-11.1.4.0-build.0572.jar     |ForgeEndertech                |forgeendertech                |11.1.4.0            |DONE      |Manifest: NOSIGNATURE         wardrobe-1.0.3.1-forge-1.20.1.jar                 |Wardrobe                      |wardrobe                      |1.0.3.1             |DONE      |Manifest: NOSIGNATURE         the man 1.20.1 - 1.0.0.jar                        |The Man From The Fog          |man                           |1.0.0               |DONE      |Manifest: NOSIGNATURE         BetterFog-1.20.1-1.2.2.jar                        |Better Fog                    |betterfog                     |1.0.0               |DONE      |Manifest: NOSIGNATURE         [1.20.1] SecurityCraft v1.9.10.jar                |SecurityCraft                 |securitycraft                 |1.9.10              |DONE      |Manifest: NOSIGNATURE         ToughAsNails-1.20.1-9.0.0.96.jar                  |Tough As Nails                |toughasnails                  |0.0NONE             |DONE      |Manifest: NOSIGNATURE         bettervillage-forge-1.20.1-3.2.0.jar              |Better village                |bettervillage                 |3.1.0               |DONE      |Manifest: NOSIGNATURE         mixinextras-forge-0.2.1.jar                       |MixinExtras                   |mixinextras                   |0.2.1               |DONE      |Manifest: NOSIGNATURE         connectedglass-1.1.11-forge-mc1.20.1.jar          |Connected Glass               |connectedglass                |1.1.11              |DONE      |Manifest: NOSIGNATURE         SimplyHouses-1.1.4-1.20.1-forge.jar               |Simply Houses                 |simply_houses                 |1.1.4-1.20.1        |DONE      |Manifest: NOSIGNATURE         Terralith_1.20_v2.5.1.jar                         |Terralith                     |terralith                     |2.5.1               |DONE      |Manifest: NOSIGNATURE         fusion-1.1.1-forge-mc1.20.1.jar                   |Fusion                        |fusion                        |1.1.1               |DONE      |Manifest: NOSIGNATURE         AdChimneys-1.20.1-10.1.11.0-build.0620.jar        |Advanced Chimneys             |adchimneys                    |10.1.11.0           |DONE      |Manifest: NOSIGNATURE         the_knocker-1.3.0a-forge-1.20.1.jar               |The Knocker                   |the_knocker                   |1.3.0               |DONE      |Manifest: NOSIGNATURE         cameraoverhaul-1.1-1.20.4.jar                     |Camera Overhaul               |cameraoverhaul                |1.0.0               |DONE      |Manifest: NOSIGNATURE         forge-1.20.1-47.3.0-universal.jar                 |Forge                         |forge                         |47.3.0              |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         DynamicTrees-1.20.1-1.3.0-BETA7.jar               |Dynamic Trees                 |dynamictrees                  |1.20.1-1.3.0-BETA7  |DONE      |Manifest: NOSIGNATURE         tectonic-forge-1.19.3-2.3.5a.jar                  |Tectonic                      |tectonic                      |2.3.5a              |DONE      |Manifest: NOSIGNATURE         PresenceFootsteps-1.20.1-1.9.1-beta.1.jar         |Presence Footsteps (Forge)    |presencefootsteps             |1.20.1-1.9.1-beta.1 |DONE      |Manifest: NOSIGNATURE         DynamicTreesTerralith-1.20.1-1.2.1.jar            |Dynamic Trees for Terralith   |dtterralith                   |1.20.1-1.2.1        |DONE      |Manifest: NOSIGNATURE     Crash Report UUID: 8419d3de-1e69-45e4-9683-09da6d42688b     FML: 47.3     Forge: net.minecraftforge:47.3.0  
    • Hi, Forge refuses to recognize the mods "moonlight" and "enhancedcelestial" in my friend's modpack for essential, we have double checked that the modpack we're using has both those mods, and it still won't recognize, saying I don't have them. If I try to manually add these mods into my game, it gives me the "Unexpected custom data from client" error. I am stuck in a loop here. -- Unexpected custom data from client Missing required datapack registries: moonlight:soft_fluids, enchancedcelestials:lunar/event, enhancedcelestials:lunar/dimension_settings, moonlight:map_markers -- Logs https://pastebin.com/rvFnk4n3
    • Good afternoon, I have a problem with the minecraft launcher, when trying to open a version with forge it does not open the minecraft and the launcher gives me an error code 1, this passes me from version 1.17 onwards and without having any mod installed.   [29jun.2024 18:08:14.073] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--username, MarkitoPlex, --version, 1.20.1-forge-47.3.1, --gameDir, C:\Users\Marco Antonio RL\AppData\Roaming\.minecraft, --assetsDir, C:\Users\Marco Antonio RL\AppData\Roaming\.minecraft\assets, --assetIndex, 5, --uuid, 4768b6d7e7fa48f58946cbe18989d2e3, --accessToken, ????????, --clientId, ZmEwYTkyM2YtZTU2YS00NTVlLWE4NTgtYjY0MWI5YzFhODc1, --xuid, 2535453534635465, --userType, msa, --versionType, release, --quickPlayPath, C:\Users\Marco Antonio RL\AppData\Roaming\.minecraft\quickPlay\java\1719706091955.json, --launchTarget, forgeclient, --fml.forgeVersion, 47.3.1, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] [29jun.2024 18:08:14.077] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 10.0.9+10.0.9+main.dcd20f30 starting: java version 17.0.8 by Microsoft; OS Windows 11 arch amd64 version 10.0 [29jun.2024 18:08:14.178] [main/WARN] [net.minecraftforge.fml.loading.FMLConfig/CORE]: Configuration file C:\Users\Marco Antonio RL\AppData\Roaming\.minecraft\config\fml.toml is not correct. Correcting [29jun.2024 18:08:14.179] [main/INFO] [net.minecraftforge.fml.loading.FMLConfig/CORE]: Incorrect key [earlyWindowShowCPU] was corrected from null to false [29jun.2024 18:08:14.196] [main/INFO] [net.minecraftforge.fml.loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow [29jun.2024 18:08:14.341] [main/INFO] [EARLYDISPLAY/]: Trying GL version 4.6    
  • Topics

×
×
  • Create New...

Important Information

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