⚠️if enableMixinCompressedStreamTools or/and enableMixinPatchSpawnerAnimals is/are enabled pls disabling it to prevent some bugs⚠️
fixe
Try to fix Default value cannot be lower than minimum value! when calling RangedAttribute
Fix a ConcurrentModificationException from SpawnCreaturesTask
Fix null crashes from getSkyBlendColour from ForgeHooksClient
other
Disable "enableMixinCompressedStreamTools" by default because causing crashes
Disable enableMixinPatchSpawnerAnimals by default because causing crashes and another bugs (like mob spawns too much)``
improvment
Large Improvment to MixinSpawnerAnimals
Reduce optimizationsAndTweaks$getMaxNeighborLightValue overhead
Call findChunksForSpawning every 4 ticks instead of 1 (This reduce overall lags caused by mob spawning)
fixe
Add a mixin to "Fix Stack overflow crash when angelica is loaded by disabling some methods from GLDebug class from angelica"
Add a mixin to "Fix Invalid framebuffer operation (1286) caused by Hud Caching from angelica mod"
Add a mixin to "Fix Null Crash caused by onKeypress from ClientProxy in Angelica mod when some bad mods are installed"
Add a mixin to "Fix Null crash from the init method of DeepslateOreRegistry from Et Futurum Requiem when some bad mods are installed"
Fix ArithmeticException by zero crash in MixinTextureUtil
Fix crash caused by func_151241_e visibility
Big Bugfixes to MixinSpawnerAnimals
Removing MixinBlockFluidBase to prevent class not found error from some mods like buildcraft , tconstruct,minefactory reloaded,thaumcraft
Attempt to fix #122
other
Slightly better logging for MixinStatList
Add falsepatternlib and unimixins as real dependencies
Disable MixinPathEntity + MixinPathNativate for now,it causing crash
java.lang.ArrayIndexOutOfBoundsException: 27
at net.minecraft.pathfinding.PathEntity.func_75881_a(SourceFile:591)
at net.minecraft.pathfinding.PathNavigate.func_75508_h(SourceFile:161)
at net.minecraft.pathfinding.PathNavigate.func_75501_e(SourceFile:127)
at net.minecraft.entity.EntityLiving.func_70619_bc(EntityLiving.java:3316)
at net.minecraft.entity.EntityLivingBase.func_70636_d(EntityLivingBase.java:1774)
at net.minecraft.entity.EntityLiving.func_70636_d(EntityLiving.java:367)
at net.minecraft.entity.monster.EntityMob.func_70636_d(SourceFile:25)
at com.hoopawolf.mam.entity.EntityDendroid.func_70636_d(EntityDendroid.java:96)
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1611)
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:206)
at net.minecraft.entity.monster.EntityMob.func_70071_h_(SourceFile:30)
at net.minecraft.world.World.func_72866_a(World.java:2070)
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:648)
at net.minecraft.world.World.func_72870_g(World.java:2034)
at net.minecraft.world.World.optimizationsAndTweaks$updateLoadedEntities(World.java:52143)
at net.minecraft.world.World.func_72939_s(World.java:52072)
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:2646)
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:2744)
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:334)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:3083)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:2840)
at java.lang.Thread.run(Thread.java:748)
57671116
src/main/java/fr/iamacat/optimizationsandtweaks/asm/Mixin.java
Try fixing indexOutOfBoundIssues from PathEntity
optimize/reduce uneeded codes in MixinWorld
Fix #116
Add MixinPathEntity
Mixin Added
-MixinPathNavigate (Vanilla) (Made tryMoveToEntityLiving Asyncronous)
Mixin Updated
-MixinEntity (Vanilla) (redundant code remover)
-MixinEntityTracker (Vanilla) (Use A Thread safe HashSet instead of not thread safe)
-MixinMinecraft (Vanilla) (Remove unecessary optimizations)
-MixinMinecraftServer (Vanilla) (Made tick method synchronized and add a a name to Save Thread)
-MixinNBTTagCompound (Vanilla) (Use ConcurrentHashMap instead of HashMap to prevent ConcurrentModificationException)
-MixinVec3 (Vanilla) (made setComponents synchronized)
-MixinWorld (Vanilla) (Improve Thread Safety)
-MixinWorldServer (Vanilla) (Improve Thread Safety + make it more memory efficient
-MixinBiomeGenBase (Vanilla) (made genBiomeTerrain synchronized)
Mixin Removed
-MixinChunkCoordIntPair (Vanilla) (Removed because Hodgepodge has a better optimization)
-MixinDedicatedServer (Vanilla) (Removed because unecessary optimizations)
Other
-rename NoiseGeneratorOctavesMultithread to NoiseGeneratorOctavesTwo (and remove threaded features)
-rename NoiseGeneratorImprovedMultithread to NoiseGeneratorImprovedTwo (and remove threaded features)
-rename NoiseGeneratorPerlinMultithread to NoiseGeneratorPerlinTwo (and remove threaded features)
-rename NoiseGeneratorSimplexMultithread to NoiseGeneratorSimplexTwo (and remove threaded features)
-Made ArrayListThreadSafe class
-Made ConcurrentSkipListSetThreadSafe class
-Made HashSetThreadSafe class
-Made TreeSetThreadSafe class
-add a name to CompressTask thread
seem to fix these bugs :
Thread safe issues with entityLists can cause crash , know to make crash instant with Cocoutil
Mobs can spawn into blocks (NOT PROPERLY FIXED)
Fire can break blocks really fast
cascading worldgens caused by populateChunk from MixinChunk
crash caused by MixinPatchSpawnerAnimals
There is an attempt to load a chunk (-42,64) in dimension 0 that is already being loaded. This will cause weird chunk breakages.
Server attempted to spawn an unknown entity using ID: {0} at ({1}, {2}, {3}) Skipping!
NPE caused by optimizationsAndTweaks$isTargetEntityValid
Crash Don't know how to add class tumbleweed.common.EntityTumbleweed! (NOT PROPERLY FIXED)
Known issues
Thread safe issues with entityLists can cause crash , know to make crash instant with Cocoutil
Mobs can spawn into blocks
Fire can break blocks really fast
Mixin Added
-MixinFantasticEvents (Fantastic Fish) (Fixing cascading worldgens while Spawning Entity)
-MixinChunkCoordIntPair (Vanilla) (Optimizing ChunkCoordIntPair)
-MixinLongHashMap (Vanilla) (Optimizing LongHashMap)
-MixinIntHashMap (Vanilla) (Optimizing IntHashMap)
-MixinPathPoint (Vanilla) (Optimizing PathPoint)
-MixinObjectIntIdentityMap (Vanilla) (Optimizing ObjectIntIdentityMap)
-MixinBlockFluidBase (Vanilla) (Try fixing ClassCastException net.minecraft.block.BlockStaticLiquid cannot be cast to net.minecraftforge.fluids.BlockFluidBase)
Mixin Updated
-MixinBlockLeaves (Vanilla) (try fixing cascading worldgens)
-MixinCompressedStreamTools (Vanilla) (Made compress method non server blocking)
-MixinEntity (Vanila) (Optimizing setFlag + getBrightness method)
-MixinEntityAINearestAttackableTarget (Vanilla) (cleanup code)
-MixinEntityLookHelper (Vanilla) (Remove uneccesary checks)
-MixinEntityTracker (Vanilla) (Reenable Entity is already tracked! logging)
-MixinEntityTrackerEntry (Vanilla) (Try optimizing func_151260_c method)
-MixinGodZillaFix (Orespawn) (Remove uneccesary checks)
-MixinMapGenStructure (Vanilla) (Optimizing func_143028_c method)
-MixinMinecraft (Vanilla) (code cleanup)
-MixinMinecraftServer (Vanilla) (Try making saveAllPlayerData/saveAllWorlds non server blocking)
-MixinNibbleArray (Vanilla) (Optimizing the class)
-MixinPatchSpawnerAnimals (Vanilla) (made Entity Spawning non server blocking (probably making some bugs but making significant performance boost)
-MixinSaveHandler (Vanilla) (Optimizing checkSessionLock method)
-MixinWorld (Vanilla) (Optimizing more the class)
-MixinWorldGenMinable (Vanilla) (Optimizing more the class)
-MixinWorldServer (Vanilla) (Optimizing more the class)
-MixinEventHandlerNEP (Not Enough pets) (code cleanup)
-MixinBlockTickingWater (CofhCore)
-MixinBlockDynamicLiquid (Vanilla)
-MixinBlockLeaves (Vanilla) (Optimizing more)
-MixinIntegratedServer (Vanilla) (optimizing more)
-MixinPathFinder (Vanilla) (Optimizing more)
-MixinMobSpawnerGoblinLogic (Goblin mod) (code cleanup)
-MixinBlockGrass (Vanilla) (Try fixing cascading worldgens)
-MixinChunk (Vanilla) (Optimizing more)
-MixinChunkProviderServer (Vanilla) (Optimizing more)
-MixinEntityLiving (Vanilla) (Cleanup code)
Mixin Removed
-MixinLeaves (Vanilla) (Dupplicated from MixinBlockLeaves LOL)
Fixe
-seem to fix https://github.com/quentin452/OptimizationsAndTweaks/issues/110
-try fixing cascading worldgens caused by optimizationsAndTweaks$spreadGrass from BlockGrass2
-fixing some cascading worldgens by removing some unecessay checks from ThaumcraftWorldGenerator class
Other
-Optimizing Object2ObjectHashMap from agrona collection
-Optimizing LongHashMap2
-Optimizing ChunkProviderGenerateTwo
Other
-disabling MixinWorldServer by default see : https://github.com/quentin452/OptimizationsAndTweaks/issues/110