Jump to content

Recommended Posts

Posted

Hi there,

 

My biome is working so far, and i'm trying to find my way to generate my dimension without using the base classes BiomeGenBase & BiomeDecorator, so far i got my biome te decorate and to spawn in my custom dimension (which generates like the nether).

I would like to have 2 or more biomes to spawn in my custom dimension. How to do that?

 

I am using forge v 7.7.1.611 and Mcp 7.44.

 

I am also having troubles with the use of a customBiomeDecorator.

i have tried the following things:

- Searched a lot of forums/tutorials about 2 or more biomes to spawn in your dimension, haven't found anything about it so far.

- Found a tutorial about a customBiomeDecorator, followed it but didn't still work.

(with the normal BiomeDecorator it all worked fine aswell)

- I now have placed the "WorldGen.generate();" inside the chunkprovider but if i wan't to use more biomes this wouldn't work well, or is there anyway you can do a biomeid check or something?

 

These are my files:

 

mod_Ores

 

 

package Mod_Ores;

import java.util.Random;

import Mod_Ores.Mobs.EntityBlueSlime;
import Mod_Ores.Mobs.EntityEnt;
import Mod_Ores.Mobs.EntitySnowCreeper;

import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EnumCreatureType;
import net.minecraft.entity.monster.EntityMob;
import net.minecraft.item.EnumArmorMaterial;
import net.minecraft.item.EnumToolMaterial;
import net.minecraft.item.Item;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
import net.minecraft.src.ModLoader;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraftforge.common.DimensionManager;
import net.minecraftforge.common.MinecraftForge;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.Init;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.network.NetworkMod;
import cpw.mods.fml.common.network.NetworkMod.SidedPacketHandler;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.common.registry.LanguageRegistry;

@Mod(modid="myOresMod", name="Extra Ores Mod", version="1.1.2")
@NetworkMod(clientSideRequired = true, serverSideRequired = false, clientPacketHandlerSpec =
@SidedPacketHandler(channels = {"mod_Ores" }, packetHandler = ClientPacketHandler.class),
serverPacketHandlerSpec =
@SidedPacketHandler(channels = {"mod_Ores" }, packetHandler = ServerPacketHandler.class))
public class mod_Ores
{
@Instance("myOresMod") // instance
    public static mod_Ores instance;
private IGuiHandlerCustom guiHandler = new IGuiHandlerCustom();
    public static BiomeGenBase SoulForest;
    public static BiomeGenBase FrostCaves;
public static int DimensionSoulForest = 20;

@Init
public void load(FMLInitializationEvent ev)
{		
	GameRegistry.registerWorldGenerator(new WorldGeneratorSoulTrees());
	SoulForest = (new BiomeGenSoulForest(23).setBiomeName("SoulForest").setDisableRain().setMinMaxHeight(0.0F, 0.9F)); //Custom Biome
	FrostCaves = (new BiomeGenFrostCaves(24).setBiomeName("FrostCaves").setEnableSnow().setTemperatureRainfall(0.05F, 0.8F).setMinMaxHeight(0.0F, 0.9F)); //Custom Biome
	GameRegistry.addBiome(SoulForest);
	GameRegistry.addBiome(FrostCaves);
//Dimension
	DimensionManager.registerProviderType(DimensionSoulForest, WorldProviderMarona.class, false);
	DimensionManager.registerDimension(DimensionSoulForest, DimensionSoulForest);
//Entity Blue Slime
		ModLoader.registerEntityID(EntityBlueSlime.class, "Blue Slime", ModLoader.getUniqueEntityId());
		ModLoader.addSpawn(EntityBlueSlime.class, 7, 5, 10, EnumCreatureType.monster, SoulForest);

		//Entity Snow Creeper
		ModLoader.registerEntityID(EntitySnowCreeper.class, "Snow Creeper", ModLoader.getUniqueEntityId());
		ModLoader.addSpawn(EntitySnowCreeper.class, 6, 2, 4, EnumCreatureType.monster, SoulForest);
}

public String getVersion()
{
	return "1.5.1";
}
}

 

 

 

BiomeGenSoulForest

 

 

package Mod_Ores;

import java.util.Random;

import net.minecraft.block.Block;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeDecorator;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.biome.SpawnListEntry;
import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.terraingen.DecorateBiomeEvent;
import Mod_Ores.Mobs.EntityBlueSlime;
import Mod_Ores.Mobs.EntityEnt;
import Mod_Ores.Mobs.EntitySnowCreeper;

public class BiomeGenSoulForest extends BiomeGenBase
{
TheBiomeDeco customBiomeDecorator;

public BiomeGenSoulForest(int par1)
    {
        super(par1);
        //this.topBlock = (byte)mod_Ores.LateriteGrass.blockID;
        //this.fillerBlock = (byte)mod_Ores.LateriteDirt.blockID;
        this.topBlock = (byte)Block.grass.blockID;
        this.fillerBlock = (byte)Block.dirt.blockID;
        
        spawnableMonsterList.add(new SpawnListEntry(EntityBlueSlime.class, 7, 5, 10));
        spawnableMonsterList.add(new SpawnListEntry(EntityEnt.class, 8, 3, 5));
        spawnableMonsterList.add(new SpawnListEntry(EntitySnowCreeper.class, 10, 2, 4));
        theBiomeDecorator = new TheBiomeDeco(this);
        customBiomeDecorator = (TheBiomeDeco)theBiomeDecorator;
        customBiomeDecorator.treesPerChunk = 10;
        customBiomeDecorator.baneberryvineperchunk = 3;
        customBiomeDecorator.blueberryvineperchunk = 5;
        customBiomeDecorator.blackberryvineperchunk = 3;
        customBiomeDecorator.cranberryvineperchunk = 5;
        customBiomeDecorator.raspberryvineperchunk = 4;
        customBiomeDecorator.razzberryvineperchunk = 4;
        customBiomeDecorator.strawberryvineperchunk = 6;
        customBiomeDecorator.grapetreeperchunk = 20;
        customBiomeDecorator.mushroomsPerChunk = 30;
        customBiomeDecorator.grassPerChunk = 40;
    }
}

 

 

 

ChunkProviderMarona

 

 

package Mod_Ores;

import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.DUNGEON;
import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.FIRE;
import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.GLOWSTONE;
import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.NETHER_LAVA;
import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.LAKE;
import java.util.List;
import java.util.Random;

import net.minecraft.block.Block;
import net.minecraft.block.BlockSand;
import net.minecraft.entity.EnumCreatureType;
import net.minecraft.util.IProgressUpdate;
import net.minecraft.world.ChunkPosition;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.chunk.Chunk;
import net.minecraft.world.chunk.IChunkProvider;
import net.minecraft.world.gen.MapGenBase;
import net.minecraft.world.gen.MapGenCavesHell;
import net.minecraft.world.gen.NoiseGeneratorOctaves;
import net.minecraft.world.gen.feature.WorldGenDungeons;
import net.minecraft.world.gen.feature.WorldGenFire;
import net.minecraft.world.gen.feature.WorldGenFlowers;
import net.minecraft.world.gen.feature.WorldGenGlowStone1;
import net.minecraft.world.gen.feature.WorldGenGlowStone2;
import net.minecraft.world.gen.feature.WorldGenHellLava;
import net.minecraft.world.gen.feature.WorldGenLiquids;
import net.minecraft.world.gen.feature.WorldGenMinable;
import net.minecraft.world.gen.structure.MapGenNetherBridge;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.Event.Result;
import net.minecraftforge.event.terraingen.ChunkProviderEvent;
import net.minecraftforge.event.terraingen.DecorateBiomeEvent;
import net.minecraftforge.event.terraingen.PopulateChunkEvent;
import static net.minecraftforge.event.terraingen.DecorateBiomeEvent.Decorate.EventType.*;
import static net.minecraftforge.event.terraingen.InitMapGenEvent.EventType.*;
import static net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate.EventType.*;
import net.minecraftforge.event.terraingen.TerrainGen;

public class ChunkProviderMarona implements IChunkProvider
{
//NETHER SOUL FOREST IDEA	

private Random soulRNG;

    /** A NoiseGeneratorOctaves used in generating nether terrain */
    private NoiseGeneratorOctaves netherNoiseGen1;
    private NoiseGeneratorOctaves netherNoiseGen2;
    private NoiseGeneratorOctaves netherNoiseGen3;
    public NoiseGeneratorOctaves mobSpawnerNoise;

    /** Determines whether lateriteGrass or porphyry can be generated at a location */
    private NoiseGeneratorOctaves lateriteGrassPorphyryNoise;

    /**
     * Determines whether something other than porphyry can be generated at a location
     */
    private NoiseGeneratorOctaves porphyryExclusivityNoiseGen;
    public NoiseGeneratorOctaves netherNoiseGen6;
    public NoiseGeneratorOctaves netherNoiseGen7;

    /** The biomes that are used to generate the chunk */
    private BiomeGenBase[] biomesForGeneration;
   
    /** Is the world that the nether is getting generated. */
    private World worldObj;
    private double[] noiseField;
    public MapGenNetherBridge genNetherBridge = new MapGenNetherBridge();

    /**
     * Holds the noise used to determine whether lateriteGrass can be generated at a location
     */
    private double[] lateriteGrassNoise = new double[256];
    private double[] porphyryNoise = new double[256];

    /**
     * Holds the noise used to determine whether something other than porphyry can be generated at a location
     */
    private double[] porphyryExclusivityNoise = new double[256];
    private MapGenBase netherCaveGenerator = new MapGenCavesHell();
    double[] noiseData1;
    double[] noiseData2;
    double[] noiseData3;
    double[] noiseData4;
    double[] noiseData5;

private Object theBiomeDecorator;

    public ChunkProviderMarona(World par1World, long par2)
    {
        this.worldObj = par1World;
        this.soulRNG = new Random(par2);
        this.netherNoiseGen1 = new NoiseGeneratorOctaves(this.soulRNG, 16);
        this.netherNoiseGen2 = new NoiseGeneratorOctaves(this.soulRNG, 16);
        this.netherNoiseGen3 = new NoiseGeneratorOctaves(this.soulRNG, ;
        this.lateriteGrassPorphyryNoise = new NoiseGeneratorOctaves(this.soulRNG, 4);
        this.porphyryExclusivityNoiseGen = new NoiseGeneratorOctaves(this.soulRNG, 4);
        this.netherNoiseGen6 = new NoiseGeneratorOctaves(this.soulRNG, 10);
        this.netherNoiseGen7 = new NoiseGeneratorOctaves(this.soulRNG, 16);
        this.mobSpawnerNoise = new NoiseGeneratorOctaves(this.soulRNG, ;

        NoiseGeneratorOctaves[] noiseGens = {netherNoiseGen1, netherNoiseGen2, netherNoiseGen3, lateriteGrassPorphyryNoise, porphyryExclusivityNoiseGen, netherNoiseGen6, netherNoiseGen7, mobSpawnerNoise};
        noiseGens = TerrainGen.getModdedNoiseGenerators(par1World, this.soulRNG, noiseGens);
        this.netherNoiseGen1 = noiseGens[0];
        this.netherNoiseGen2 = noiseGens[1];
        this.netherNoiseGen3 = noiseGens[2];
        this.lateriteGrassPorphyryNoise = noiseGens[3];
        this.porphyryExclusivityNoiseGen = noiseGens[4];
        this.netherNoiseGen6 = noiseGens[5];
        this.netherNoiseGen7 = noiseGens[6];
        this.mobSpawnerNoise = noiseGens[7];
    }

    
    /**
     * Generates the shape of the terrain in the nether.
     */
    public void generateNetherTerrain(int par1, int par2, byte[] par3ArrayOfByte)
    {
        byte b0 = 4;
        byte b1 = 32;
        int k = b0 + 1;
        byte b2 = 17;
        int l = b0 + 1;
        this.noiseField = this.initializeNoiseField(this.noiseField, par1 * b0, 0, par2 * b0, k, b2, l);

        for (int i1 = 0; i1 < b0; ++i1)
        {
            for (int j1 = 0; j1 < b0; ++j1)
            {
                for (int k1 = 0; k1 < 16; ++k1)
                {
                    double d0 = 0.125D;
                    double d1 = this.noiseField[((i1 + 0) * l + j1 + 0) * b2 + k1 + 0];
                    double d2 = this.noiseField[((i1 + 0) * l + j1 + 1) * b2 + k1 + 0];
                    double d3 = this.noiseField[((i1 + 1) * l + j1 + 0) * b2 + k1 + 0];
                    double d4 = this.noiseField[((i1 + 1) * l + j1 + 1) * b2 + k1 + 0];
                    double d5 = (this.noiseField[((i1 + 0) * l + j1 + 0) * b2 + k1 + 1] - d1) * d0;
                    double d6 = (this.noiseField[((i1 + 0) * l + j1 + 1) * b2 + k1 + 1] - d2) * d0;
                    double d7 = (this.noiseField[((i1 + 1) * l + j1 + 0) * b2 + k1 + 1] - d3) * d0;
                    double d8 = (this.noiseField[((i1 + 1) * l + j1 + 1) * b2 + k1 + 1] - d4) * d0;

                    for (int l1 = 0; l1 < 8; ++l1)
                    {
                        double d9 = 0.25D;
                        double d10 = d1;
                        double d11 = d2;
                        double d12 = (d3 - d1) * d9;
                        double d13 = (d4 - d2) * d9;

                        for (int i2 = 0; i2 < 4; ++i2)
                        {
                            int j2 = i2 + i1 * 4 << 11 | 0 + j1 * 4 << 7 | k1 * 8 + l1;
                            short short1 = 128;
                            double d14 = 0.25D;
                            double d15 = d10;
                            double d16 = (d11 - d10) * d14;

                            for (int k2 = 0; k2 < 4; ++k2)
                            {
                                int l2 = 0;

                                if (k1 * 8 + l1 < b1)
                                {
                                    l2 = Block.waterStill.blockID;
                                }

                                if (d15 > 0.0D)
                                {
                                    l2 = (byte)mod_Ores.Porphyry.blockID;
                                }

                                par3ArrayOfByte[j2] = (byte)l2;
                                j2 += short1;
                                d15 += d16;
                            }

                            d10 += d12;
                            d11 += d13;
                        }

                        d1 += d5;
                        d2 += d6;
                        d3 += d7;
                        d4 += d8;
                    }
                }
            }
        }
    }

    /**
     * name based on ChunkProviderGenerate
     */
    public void replaceBlocksForBiome(int par1, int par2, byte[] par3ArrayOfByte, BiomeGenBase[] par4ArrayOfBiomeGenBase)
    {
        ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, par1, par2, par3ArrayOfByte, null);
        MinecraftForge.EVENT_BUS.post(event);
        if (event.getResult() == Result.DENY) return;

        byte b0 = 64;
        double d0 = 0.03125D;
        this.lateriteGrassNoise = this.lateriteGrassPorphyryNoise.generateNoiseOctaves(this.lateriteGrassNoise, par1 * 16, par2 * 16, 0, 16, 16, 1, d0, d0, 1.0D);
        this.porphyryNoise = this.lateriteGrassPorphyryNoise.generateNoiseOctaves(this.porphyryNoise, par1 * 16, 109, par2 * 16, 16, 1, 16, d0, 1.0D, d0);
        this.porphyryExclusivityNoise = this.porphyryExclusivityNoiseGen.generateNoiseOctaves(this.porphyryExclusivityNoise, par1 * 16, par2 * 16, 0, 16, 16, 1, d0 * 2.0D, d0 * 2.0D, d0 * 2.0D);

        for (int k = 0; k < 16; ++k)
        {
            for (int l = 0; l < 16; ++l)
            {
            	BiomeGenBase biomegenbase = par4ArrayOfBiomeGenBase[l + k * 16];
                boolean flag = this.lateriteGrassNoise[k + l * 16] + this.soulRNG.nextDouble() * 0.2D > 0.0D;
                boolean flag1 = this.porphyryNoise[k + l * 16] + this.soulRNG.nextDouble() * 0.2D > 0.0D;
                int i1 = (int)(this.porphyryExclusivityNoise[k + l * 16] / 3.0D + 3.0D + this.soulRNG.nextDouble() * 0.25D);
                int j1 = -1;
                byte b1 = biomegenbase.topBlock;
                byte b2 = biomegenbase.fillerBlock;

                for (int k1 = 127; k1 >= 0; --k1)
                {
                    int l1 = (l * 16 + k) * 128 + k1;

                    if (k1 < 127 - this.soulRNG.nextInt(5) && k1 > 0 + this.soulRNG.nextInt(5))
                    {
                        byte b3 = par3ArrayOfByte[l1];

                        if (b3 == 0)
                        {
                            j1 = -1;
                        }
                        else if (b3 == (byte)mod_Ores.Porphyry.blockID)
                        {
                            if (j1 == -1)
                            {
                                if (i1 <= 0)
                                {
                                    b1 = 0;
                                    b2 = (byte)mod_Ores.Porphyry.blockID;
                                }
                                else if (k1 >= b0 - 4 && k1 <= b0 + 1)
                                {
                                	 b1 = biomegenbase.topBlock;
                                     b2 = biomegenbase.fillerBlock;

                                    if (flag1)
                                    {
                                        b1 = (byte)Block.grass.blockID;
                                    }

                                    if (flag1)
                                    {
                                        b2 = (byte)mod_Ores.Porphyry.blockID;
                                    }

                                    if (flag)
                                    {
                                        b1 = (byte)Block.grass.blockID;
                                    }

                                    if (flag)
                                    {
                                        b2 = (byte)mod_Ores.Slate.blockID;
                                    }
                                }

                                if (k1 < b0 && b1 == 0)
                                {
                                    b1 = (byte)Block.waterStill.blockID;
                                }

                                j1 = i1;

                                if (k1 >= b0 - 1)
                                {
                                    par3ArrayOfByte[l1] = b1;
                                }
                                else
                                {
                                    par3ArrayOfByte[l1] = b2;
                                }
                            }
                            else if (j1 > 0)
                            {
                                --j1;
                                par3ArrayOfByte[l1] = b2;
                            }
                        }
                    }
                    else
                    {
                        par3ArrayOfByte[l1] = (byte)Block.bedrock.blockID;
                    }
                }
            }
        }
    }

    /**
     * loads or generates the chunk at the chunk location specified
     */
    public Chunk loadChunk(int par1, int par2)
    {
        return this.provideChunk(par1, par2);
    }

    /**
     * Will return back a chunk, if it doesn't exist and its not a MP client it will generates all the blocks for the
     * specified chunk from the map seed and chunk seed
     */
    @Override
    public Chunk provideChunk(int par1, int par2)
    {
        this.soulRNG.setSeed((long)par1 * 341873128712L + (long)par2 * 132897987541L);
        byte[] abyte = new byte[32768];
        this.generateNetherTerrain(par1, par2, abyte);
        this.biomesForGeneration = this.worldObj.getWorldChunkManager().loadBlockGeneratorData(this.biomesForGeneration, par1 * 16, par2 * 16, 16, 16);
        this.replaceBlocksForBiome(par1, par2, abyte, this.biomesForGeneration);
        this.netherCaveGenerator.generate(this, this.worldObj, par1, par2, abyte);
        this.genNetherBridge.generate(this, this.worldObj, par1, par2, abyte);
        Chunk chunk = new Chunk(this.worldObj, abyte, par1, par2);
        BiomeGenBase[] abiomegenbase = this.worldObj.getWorldChunkManager().loadBlockGeneratorData((BiomeGenBase[])null, par1 * 16, par2 * 16, 16, 16);
        byte[] abyte1 = chunk.getBiomeArray();

        for (int k = 0; k < abyte1.length; ++k)
        {
            abyte1[k] = (byte)abiomegenbase[k].biomeID;
        }

        chunk.resetRelightChecks();
        return chunk;
    }

    public void decorate(World par1World, Random par2Random, int par3, int par4)
    {
        ((BiomeGenBase) this.theBiomeDecorator).decorate(par1World, par2Random, par3, par4);
    }
    /**
     * generates a subset of the level's terrain data. Takes 7 arguments: the [empty] noise array, the position, and the
     * size.
     */
    private double[] initializeNoiseField(double[] par1ArrayOfDouble, int par2, int par3, int par4, int par5, int par6, int par7)
    {
        ChunkProviderEvent.InitNoiseField event = new ChunkProviderEvent.InitNoiseField(this, par1ArrayOfDouble, par2, par3, par4, par5, par6, par7);
        MinecraftForge.EVENT_BUS.post(event);
        if (event.getResult() == Result.DENY) return event.noisefield;
        if (par1ArrayOfDouble == null)
        {
            par1ArrayOfDouble = new double[par5 * par6 * par7];
        }

        double d0 = 684.412D;
        double d1 = 2053.236D;
        this.noiseData4 = this.netherNoiseGen6.generateNoiseOctaves(this.noiseData4, par2, par3, par4, par5, 1, par7, 1.0D, 0.0D, 1.0D);
        this.noiseData5 = this.netherNoiseGen7.generateNoiseOctaves(this.noiseData5, par2, par3, par4, par5, 1, par7, 100.0D, 0.0D, 100.0D);
        this.noiseData1 = this.netherNoiseGen3.generateNoiseOctaves(this.noiseData1, par2, par3, par4, par5, par6, par7, d0 / 80.0D, d1 / 60.0D, d0 / 80.0D);
        this.noiseData2 = this.netherNoiseGen1.generateNoiseOctaves(this.noiseData2, par2, par3, par4, par5, par6, par7, d0, d1, d0);
        this.noiseData3 = this.netherNoiseGen2.generateNoiseOctaves(this.noiseData3, par2, par3, par4, par5, par6, par7, d0, d1, d0);
        int k1 = 0;
        int l1 = 0;
        double[] adouble1 = new double[par6];
        int i2;

        for (i2 = 0; i2 < par6; ++i2)
        {
            adouble1[i2] = Math.cos((double)i2 * Math.PI * 6.0D / (double)par6) * 2.0D;
            double d2 = (double)i2;

            if (i2 > par6 / 2)
            {
                d2 = (double)(par6 - 1 - i2);
            }

            if (d2 < 4.0D)
            {
                d2 = 4.0D - d2;
                adouble1[i2] -= d2 * d2 * d2 * 10.0D;
            }
        }

        for (i2 = 0; i2 < par5; ++i2)
        {
            for (int j2 = 0; j2 < par7; ++j2)
            {
                double d3 = (this.noiseData4[l1] + 256.0D) / 512.0D;

                if (d3 > 1.0D)
                {
                    d3 = 1.0D;
                }

                double d4 = 0.0D;
                double d5 = this.noiseData5[l1] / 8000.0D;

                if (d5 < 0.0D)
                {
                    d5 = -d5;
                }

                d5 = d5 * 3.0D - 3.0D;

                if (d5 < 0.0D)
                {
                    d5 /= 2.0D;

                    if (d5 < -1.0D)
                    {
                        d5 = -1.0D;
                    }

                    d5 /= 1.4D;
                    d5 /= 2.0D;
                    d3 = 0.0D;
                }
                else
                {
                    if (d5 > 1.0D)
                    {
                        d5 = 1.0D;
                    }

                    d5 /= 6.0D;
                }

                d3 += 0.5D;
                d5 = d5 * (double)par6 / 16.0D;
                ++l1;

                for (int k2 = 0; k2 < par6; ++k2)
                {
                    double d6 = 0.0D;
                    double d7 = adouble1[k2];
                    double d8 = this.noiseData2[k1] / 512.0D;
                    double d9 = this.noiseData3[k1] / 512.0D;
                    double d10 = (this.noiseData1[k1] / 10.0D + 1.0D) / 2.0D;

                    if (d10 < 0.0D)
                    {
                        d6 = d8;
                    }
                    else if (d10 > 1.0D)
                    {
                        d6 = d9;
                    }
                    else
                    {
                        d6 = d8 + (d9 - d8) * d10;
                    }

                    d6 -= d7;
                    double d11;

                    if (k2 > par6 - 4)
                    {
                        d11 = (double)((float)(k2 - (par6 - 4)) / 3.0F);
                        d6 = d6 * (1.0D - d11) + -10.0D * d11;
                    }

                    if ((double)k2 < d4)
                    {
                        d11 = (d4 - (double)k2) / 4.0D;

                        if (d11 < 0.0D)
                        {
                            d11 = 0.0D;
                        }

                        if (d11 > 1.0D)
                        {
                            d11 = 1.0D;
                        }

                        d6 = d6 * (1.0D - d11) + -10.0D * d11;
                    }

                    par1ArrayOfDouble[k1] = d6;
                    ++k1;
                }
            }
        }

        return par1ArrayOfDouble;
    }

    /**
     * Checks to see if a chunk exists at x, y
     */
public boolean chunkExists(int par1, int par2)
    {
        return true;
    }

    /**
     * Populates chunk with ores etc etc
     */
    public void populate(IChunkProvider par1IChunkProvider, int par2, int par3)
    {
        BlockSand.fallInstantly = true;

        MinecraftForge.EVENT_BUS.post(new PopulateChunkEvent.Pre(par1IChunkProvider, worldObj, soulRNG, par2, par3, false));

        int k = par2 * 16;
        int l = par3 * 16;
        //this.genNetherBridge.generateStructuresInChunk(this.worldObj, this.soulRNG, par2, par3);
        int i1;
        int j1;
        int k1;
        int l1 = 0;

        boolean doGen = TerrainGen.populate(par1IChunkProvider, worldObj, soulRNG, par2, par3, false, NETHER_LAVA);
        for (i1 = 0; doGen && i1 < 8; ++i1)
        {
            j1 = k + this.soulRNG.nextInt(16) + 8;
            k1 = this.soulRNG.nextInt(128) + 4;
            l1 = l + this.soulRNG.nextInt(16) + 8;
            (new WorldGenHellLava(Block.waterMoving.blockID, false)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        
        //doGen = TerrainGen.populate(par1IChunkProvider, worldObj, soulRNG, par2, par3, false, DUNGEON);

        MinecraftForge.EVENT_BUS.post(new DecorateBiomeEvent.Pre(worldObj, soulRNG, k, l));
        
        /*doGen = TerrainGen.decorate(worldObj, soulRNG, k, l, TREE);
        for (int i = 0; i < 100; ++i)
        {
                j1 = k + soulRNG.nextInt(16) + 8;
                k1 = soulRNG.nextInt(128);
                l1 = l + soulRNG.nextInt(16) + 8;
                (new WorldGenGrapeTree(true)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }*/
        
        i1 = this.soulRNG.nextInt(this.soulRNG.nextInt(10) + 1) + 1;
        int i2;
        
        doGen = TerrainGen.decorate(worldObj, soulRNG, k, l, SHROOM);
        if (doGen && this.soulRNG.nextInt(1) == 0)
        {
            j1 = k + this.soulRNG.nextInt(16) + 8;
            k1 = this.soulRNG.nextInt(128);
            l1 = l + this.soulRNG.nextInt(16) + 8;
            (new WorldGenFlowers(Block.mushroomBrown.blockID)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }

        doGen = TerrainGen.decorate(worldObj, soulRNG, k, l, SHROOM);
        if (doGen && this.soulRNG.nextInt(1) == 0)
        {
            j1 = k + this.soulRNG.nextInt(16) + 8;
            k1 = this.soulRNG.nextInt(128);
            l1 = l + this.soulRNG.nextInt(16) + 8;
            (new WorldGenFlowers(Block.mushroomRed.blockID)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        
        /*doGen = TerrainGen.decorate(worldObj, soulRNG, k, l, FLOWERS);
        if (doGen && this.soulRNG.nextInt(1) == 0)
        {
            j1 = k + this.soulRNG.nextInt(16) + 8;
            k1 = this.soulRNG.nextInt(128);
            l1 = l + this.soulRNG.nextInt(16) + 8;
            (new WorldGenFlowers(mod_Ores.plantCantaloupe.blockID)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }*/
        
        
        for (int i = 0; i < 1; ++i)
        {
       	 	j1 = k + soulRNG.nextInt(16);
       	 	k1 = soulRNG.nextInt(128);
       	 	l1 = l + soulRNG.nextInt(16);
            (new WorldGenSoulTemple()).generate(worldObj, soulRNG, j1, k1, l1);
        }
	for (int g1 = 0; g1 < 50; g1++)
        {
		j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenGrapeTree(false)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        //vines
        for (int g1 = 0; g1 < 8; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenBaneberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 7; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenBlueberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 9; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenBlackberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 13; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenCranberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 10; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenRaspberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 12; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenRazzberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
        for (int g1 = 0; g1 < 15; g1++)
        {
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenStrawberryVines()).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }
      //flowers
        /*for (int g1 = 0; g1 < 10; g1++)
        {      
        	j1 = k + this.soulRNG.nextInt(16) + 8;
		k1 = this.soulRNG.nextInt(128);
		l1 = l + this.soulRNG.nextInt(16) + 8;
        (new WorldGenCantaloupe(2000)).generate(this.worldObj, this.soulRNG, j1, k1, l1);
        }*/
                
        // #region Ore Gen
        WorldGenMinable worldgenminable;
        int j2;

        for (int i = 0; i < 7; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 6 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Amazoniteore.blockID, 7, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Amethystore.blockID, 9, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);	
		(new WorldGenMinable(mod_Ores.Aquamarineore.blockID, 9, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 2; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 12 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Blackdiamondore.blockID, 5, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 7; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 6 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Chromiteore.blockID, 7, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);	
		(new WorldGenMinable(mod_Ores.Citrineore.blockID, 9, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 7; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);	
		(new WorldGenMinable(mod_Ores.Emeraldore.blockID, 9, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Jadeore.blockID, 8, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);	
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Jetore.blockID, 8, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Lilaore.blockID, 9, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 4; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 8 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Mithrilore.blockID, 6, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 8; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Olivineore.blockID, 8, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 2; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 10 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);	
		(new WorldGenMinable(mod_Ores.Onyxore.blockID, 4, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 13; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 1 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Opalore.blockID, 12, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 8 ; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 5 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Rubyore.blockID, 5, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 8; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 5 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Sapphireore.blockID, 5, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Scarletiteore.blockID, 6, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 9; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 4 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Tanzaniteore.blockID, 7, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 2; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 11 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Titaniumore.blockID, 4, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 10; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Topazore.blockID, 7, mod_Ores.Slate.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 10; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Turquoiseore.blockID, 8, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 10; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Violetore.blockID, 7, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}
	for (int i = 0; i < 10; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Whiteopalore.blockID, 6, mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}		
	for (int i = 0; i < 5; i++)
	{
		int randPosX = k + soulRNG.nextInt(16);
		int randPosY = soulRNG.nextInt(128);				//Rarerity 3 (1-15) 1 is very common 15 is extremely rare
		int randPosZ = l + soulRNG.nextInt(16);
		(new WorldGenMinable(mod_Ores.Bauxite.blockID, 30,mod_Ores.Porphyry.blockID)).generate(worldObj, soulRNG, randPosX, randPosY, randPosZ);
	}	

        for (k1 = 0; k1 < 16; ++k1)
        {
            l1 = k + this.soulRNG.nextInt(16);
            i2 = this.soulRNG.nextInt(108) + 10;
            j2 = l + this.soulRNG.nextInt(16);
            (new WorldGenHellLava(Block.waterMoving.blockID, true)).generate(this.worldObj, this.soulRNG, l1, i2, j2);
        }

        MinecraftForge.EVENT_BUS.post(new DecorateBiomeEvent.Post(worldObj, soulRNG, k, l));
        MinecraftForge.EVENT_BUS.post(new PopulateChunkEvent.Post(par1IChunkProvider, worldObj, soulRNG, par2, par3, false));

        BlockSand.fallInstantly = false;
    }

    /**
     * Two modes of operation: if passed true, save all Chunks in one go.  If passed false, save up to two chunks.
     * Return true if all chunks have been saved.
     */
    public boolean saveChunks(boolean par1, IProgressUpdate par2IProgressUpdate)
    {
        return true;
    }

    /**
     * Unloads chunks that are marked to be unloaded. This is not guaranteed to unload every such chunk.
     */
    public boolean unloadQueuedChunks()
    {
        return false;
    }

    /**
     * Returns if the IChunkProvider supports saving.
     */
    public boolean canSave()
    {
        return true;
    }

    /**
     * Converts the instance data to a readable string.
     */
    public String makeString()
    {
        return "SoulForestLevelSource";
    }

    /**
     * Returns a list of creatures of the specified type that can spawn at the given location.
     */
    public List getPossibleCreatures(EnumCreatureType par1EnumCreatureType, int par2, int par3, int par4)
    {
        if (par1EnumCreatureType == EnumCreatureType.monster && this.genNetherBridge.hasStructureAt(par2, par3, par4))
        {
            return this.genNetherBridge.getSpawnList();
        }
        else
        {
            BiomeGenBase biomegenbase = this.worldObj.getBiomeGenForCoords(par2, par4);
            return biomegenbase == null ? null : biomegenbase.getSpawnableList(par1EnumCreatureType);
        }
    }

    /**
     * Returns the location of the closest structure of the specified type. If not found returns null.
     */
    public ChunkPosition findClosestStructure(World par1World, String par2Str, int par3, int par4, int par5)
    {
        return null;
    }

    public int getLoadedChunkCount()
    {
        return 0;
    }

    public void recreateStructures(int par1, int par2)
    {
        //this.genNetherBridge.generate(this, this.worldObj, par1, par2, (byte[])null);
    }



//NORMAL SOULFOREST IDEA


/*	/** RNG. */
/*    private Random rand;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    private NoiseGeneratorOctaves noiseGen1;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    private NoiseGeneratorOctaves noiseGen2;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    private NoiseGeneratorOctaves noiseGen3;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    private NoiseGeneratorOctaves noiseGen4;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    public NoiseGeneratorOctaves noiseGen5;

    /** A NoiseGeneratorOctaves used in generating terrain */
/*    public NoiseGeneratorOctaves noiseGen6;
    public NoiseGeneratorOctaves mobSpawnerNoise;

    /** Reference to the World object. */
/*    private World worldObj;

    /** are map structures going to be generated (e.g. strongholds) */
/*    private final boolean mapFeaturesEnabled;

    /** Holds the overall noise array used in chunk generation */
/*    private double[] noiseArray;
    private double[] stoneNoise = new double[256];
    private MapGenBase caveGenerator = new MapGenCaves();

    /** Holds Stronghold Generator */
/*    private MapGenStronghold strongholdGenerator = new MapGenStronghold();

    /** Holds Village Generator */
/*    private MapGenVillage villageGenerator = new MapGenVillage();

    /** Holds Mineshaft Generator */
/*    private MapGenMineshaft mineshaftGenerator = new MapGenMineshaft();
    private MapGenScatteredFeature scatteredFeatureGenerator = new MapGenScatteredFeature();

    /** Holds ravine generator */
/*    private MapGenBase ravineGenerator = new MapGenRavine();

    /** The biomes that are used to generate the chunk */
/*    private BiomeGenBase[] biomesForGeneration;

    /** A double array that hold terrain noise from noiseGen3 */
/*    double[] noise3;

    /** A double array that hold terrain noise */
/*    double[] noise1;

    /** A double array that hold terrain noise from noiseGen2 */
/*    double[] noise2;

    /** A double array that hold terrain noise from noiseGen5 */
/*    double[] noise5;

    /** A double array that holds terrain noise from noiseGen6 */
/*    double[] noise6;

    /**
     * Used to store the 5x5 parabolic field that is used during terrain generation.
     */
/*    float[] parabolicField;
    int[][] field_73219_j = new int[32][32];

    {
        caveGenerator = TerrainGen.getModdedMapGen(caveGenerator, CAVE);
        strongholdGenerator = (MapGenStronghold) TerrainGen.getModdedMapGen(strongholdGenerator, STRONGHOLD);
        villageGenerator = (MapGenVillage) TerrainGen.getModdedMapGen(villageGenerator, VILLAGE);
        mineshaftGenerator = (MapGenMineshaft) TerrainGen.getModdedMapGen(mineshaftGenerator, MINESHAFT);
        scatteredFeatureGenerator = (MapGenScatteredFeature) TerrainGen.getModdedMapGen(scatteredFeatureGenerator, SCATTERED_FEATURE);
        ravineGenerator = TerrainGen.getModdedMapGen(ravineGenerator, RAVINE);
    }

    public ChunkProviderMarona(World par1World, long par2, boolean par4)
    {
        this.worldObj = par1World;
        this.mapFeaturesEnabled = par4;
        this.rand = new Random(par2);
        this.noiseGen1 = new NoiseGeneratorOctaves(this.rand, 16);
        this.noiseGen2 = new NoiseGeneratorOctaves(this.rand, 16);
        this.noiseGen3 = new NoiseGeneratorOctaves(this.rand, ;
        this.noiseGen4 = new NoiseGeneratorOctaves(this.rand, 4);
        this.noiseGen5 = new NoiseGeneratorOctaves(this.rand, 10);
        this.noiseGen6 = new NoiseGeneratorOctaves(this.rand, 16);
        this.mobSpawnerNoise = new NoiseGeneratorOctaves(this.rand, ;

        NoiseGeneratorOctaves[] noiseGens = {noiseGen1, noiseGen2, noiseGen3, noiseGen4, noiseGen5, noiseGen6, mobSpawnerNoise};
        noiseGens = TerrainGen.getModdedNoiseGenerators(par1World, this.rand, noiseGens);
        this.noiseGen1 = noiseGens[0];
        this.noiseGen2 = noiseGens[1];
        this.noiseGen3 = noiseGens[2];
        this.noiseGen4 = noiseGens[3];
        this.noiseGen5 = noiseGens[4];
        this.noiseGen6 = noiseGens[5];
        this.mobSpawnerNoise = noiseGens[6];
    }

    /**
     * Generates the shape of the terrain for the chunk though its all stone though the water is frozen if the
     * temperature is low enough
     */
/*    public void generateTerrain(int par1, int par2, byte[] par3ArrayOfByte)
    {
        byte b0 = 4;
        byte b1 = 16;
        byte b2 = 63;
        int k = b0 + 1;
        byte b3 = 17;
        int l = b0 + 1;
        this.biomesForGeneration = this.worldObj.getWorldChunkManager().getBiomesForGeneration(this.biomesForGeneration, par1 * 4 - 2, par2 * 4 - 2, k + 5, l + 5);
        this.noiseArray = this.initializeNoiseField(this.noiseArray, par1 * b0, 0, par2 * b0, k, b3, l);

        for (int i1 = 0; i1 < b0; ++i1)
        {
            for (int j1 = 0; j1 < b0; ++j1)
            {
                for (int k1 = 0; k1 < b1; ++k1)
                {
                    double d0 = 0.125D;
                    double d1 = this.noiseArray[((i1 + 0) * l + j1 + 0) * b3 + k1 + 0];
                    double d2 = this.noiseArray[((i1 + 0) * l + j1 + 1) * b3 + k1 + 0];
                    double d3 = this.noiseArray[((i1 + 1) * l + j1 + 0) * b3 + k1 + 0];
                    double d4 = this.noiseArray[((i1 + 1) * l + j1 + 1) * b3 + k1 + 0];
                    double d5 = (this.noiseArray[((i1 + 0) * l + j1 + 0) * b3 + k1 + 1] - d1) * d0;
                    double d6 = (this.noiseArray[((i1 + 0) * l + j1 + 1) * b3 + k1 + 1] - d2) * d0;
                    double d7 = (this.noiseArray[((i1 + 1) * l + j1 + 0) * b3 + k1 + 1] - d3) * d0;
                    double d8 = (this.noiseArray[((i1 + 1) * l + j1 + 1) * b3 + k1 + 1] - d4) * d0;

                    for (int l1 = 0; l1 < 8; ++l1)
                    {
                        double d9 = 0.25D;
                        double d10 = d1;
                        double d11 = d2;
                        double d12 = (d3 - d1) * d9;
                        double d13 = (d4 - d2) * d9;

                        for (int i2 = 0; i2 < 4; ++i2)
                        {
                            int j2 = i2 + i1 * 4 << 11 | 0 + j1 * 4 << 7 | k1 * 8 + l1;
                            short short1 = 128;
                            j2 -= short1;
                            double d14 = 0.25D;
                            double d15 = (d11 - d10) * d14;
                            double d16 = d10 - d15;

                            for (int k2 = 0; k2 < 4; ++k2)
                            {
                                if ((d16 += d15) > 0.0D)
                                {
                                    par3ArrayOfByte[j2 += short1] = (byte)mod_Ores.Porphyry.blockID;
                                }
                                else if (k1 * 8 + l1 < b2)
                                {
                                    par3ArrayOfByte[j2 += short1] = (byte)Block.waterStill.blockID;
                                }
                                else
                                {
                                    par3ArrayOfByte[j2 += short1] = 0;
                                }
                            }

                            d10 += d12;
                            d11 += d13;
                        }

                        d1 += d5;
                        d2 += d6;
                        d3 += d7;
                        d4 += d8;
                    }
                }
            }
        }
    }

    /**
     * Replaces the stone that was placed in with blocks that match the biome
     */
/*    public void replaceBlocksForBiome(int par1, int par2, byte[] par3ArrayOfByte, BiomeGenBase[] par4ArrayOfBiomeGenBase)
    {
        ChunkProviderEvent.ReplaceBiomeBlocks event = new ChunkProviderEvent.ReplaceBiomeBlocks(this, par1, par2, par3ArrayOfByte, par4ArrayOfBiomeGenBase);
        MinecraftForge.EVENT_BUS.post(event);
        if (event.getResult() == Result.DENY) return;

        byte b0 = 63;
        double d0 = 0.03125D;
        this.stoneNoise = this.noiseGen4.generateNoiseOctaves(this.stoneNoise, par1 * 16, par2 * 16, 0, 16, 16, 1, d0 * 2.0D, d0 * 2.0D, d0 * 2.0D);

        for (int k = 0; k < 16; ++k)
        {
            for (int l = 0; l < 16; ++l)
            {
                BiomeGenBase biomegenbase = par4ArrayOfBiomeGenBase[l + k * 16];
                float f = biomegenbase.getFloatTemperature();
                int i1 = (int)(this.stoneNoise[k + l * 16] / 3.0D + 3.0D + this.rand.nextDouble() * 0.25D);
                int j1 = -1;
                byte b1 = biomegenbase.topBlock;
                byte b2 = biomegenbase.fillerBlock;

                for (int k1 = 127; k1 >= 0; --k1)
                {
                    int l1 = (l * 16 + k) * 128 + k1;

                    if (k1 <= 0 + this.rand.nextInt(5))
                    {
                        par3ArrayOfByte[l1] = (byte)Block.bedrock.blockID;
                    }
                    else
                    {
                        byte b3 = par3ArrayOfByte[l1];

                        if (b3 == 0)
                        {
                            j1 = -1;
                        }
                        else if (b3 == (byte)mod_Ores.Porphyry.blockID)
                        {
                            if (j1 == -1)
                            {
                                if (i1 <= 0)
                                {
                                    b1 = 0;
                                    b2 = (byte)mod_Ores.Porphyry.blockID;
                                }
                                else if (k1 >= b0 - 4 && k1 <= b0 + 1)
                                {
                                    b1 = biomegenbase.topBlock;
                                    b2 = biomegenbase.fillerBlock;
                                }

                                if (k1 < b0 && b1 == 0)
                                {
                                    if (f < 0.15F)
                                    {
                                        b1 = (byte)Block.waterStill.blockID;
                                    }
                                    else
                                    {
                                        b1 = (byte)Block.waterStill.blockID;
                                    }
                                }

                                j1 = i1;

                                if (k1 >= b0 - 1)
                                {
                                    par3ArrayOfByte[l1] = b1;
                                }
                                else
                                {
                                    par3ArrayOfByte[l1] = b2;
                                }
                            }
                            else if (j1 > 0)
                            {
                                --j1;
                                par3ArrayOfByte[l1] = b2;

                                if (j1 == 0 && b2 == (byte)mod_Ores.Slate.blockID)
                                {
                                    j1 = this.rand.nextInt(4);
                                    b2 = (byte)mod_Ores.Slate.blockID;
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /**
     * loads or generates the chunk at the chunk location specified
     */
/*    public Chunk loadChunk(int par1, int par2)
    {
        return this.provideChunk(par1, par2);
    }

    /**
     * Will return back a chunk, if it doesn't exist and its not a MP client it will generates all the blocks for the
     * specified chunk from the map seed and chunk seed
     */
/*   public Chunk provideChunk(int par1, int par2)
    {
        this.rand.setSeed((long)par1 * 341873128712L + (long)par2 * 132897987541L);
        byte[] abyte = new byte[32768];
        this.generateTerrain(par1, par2, abyte);
        this.biomesForGeneration = this.worldObj.getWorldChunkManager().loadBlockGeneratorData(this.biomesForGeneration, par1 * 16, par2 * 16, 16, 16);
        this.replaceBlocksForBiome(par1, par2, abyte, this.biomesForGeneration);
        this.caveGenerator.generate(this, this.worldObj, par1, par2, abyte);
        this.ravineGenerator.generate(this, this.worldObj, par1, par2, abyte);

        if (this.mapFeaturesEnabled)
        {
            this.mineshaftGenerator.generate(this, this.worldObj, par1, par2, abyte);
            this.villageGenerator.generate(this, this.worldObj, par1, par2, abyte);
            this.strongholdGenerator.generate(this, this.worldObj, par1, par2, abyte);
            this.scatteredFeatureGenerator.generate(this, this.worldObj, par1, par2, abyte);
        }

        Chunk chunk = new Chunk(this.worldObj, abyte, par1, par2);
        byte[] abyte1 = chunk.getBiomeArray();

        for (int k = 0; k < abyte1.length; ++k)
        {
            abyte1[k] = (byte)this.biomesForGeneration[k].biomeID;
        }

        chunk.generateSkylightMap();
        return chunk;
    }

    /**
     * generates a subset of the level's terrain data. Takes 7 arguments: the [empty] noise array, the position, and the
     * size.
     */
/*    private double[] initializeNoiseField(double[] par1ArrayOfDouble, int par2, int par3, int par4, int par5, int par6, int par7)
    {
        ChunkProviderEvent.InitNoiseField event = new ChunkProviderEvent.InitNoiseField(this, par1ArrayOfDouble, par2, par3, par4, par5, par6, par7);
        MinecraftForge.EVENT_BUS.post(event);
        if (event.getResult() == Result.DENY) return event.noisefield;

        if (par1ArrayOfDouble == null)
        {
            par1ArrayOfDouble = new double[par5 * par6 * par7];
        }

        if (this.parabolicField == null)
        {
            this.parabolicField = new float[25];

            for (int k1 = -2; k1 <= 2; ++k1)
            {
                for (int l1 = -2; l1 <= 2; ++l1)
                {
                    float f = 10.0F / MathHelper.sqrt_float((float)(k1 * k1 + l1 * l1) + 0.2F);
                    this.parabolicField[k1 + 2 + (l1 + 2) * 5] = f;
                }
            }
        }

        double d0 = 684.412D;
        double d1 = 684.412D;
        this.noise5 = this.noiseGen5.generateNoiseOctaves(this.noise5, par2, par4, par5, par7, 1.121D, 1.121D, 0.5D);
        this.noise6 = this.noiseGen6.generateNoiseOctaves(this.noise6, par2, par4, par5, par7, 200.0D, 200.0D, 0.5D);
        this.noise3 = this.noiseGen3.generateNoiseOctaves(this.noise3, par2, par3, par4, par5, par6, par7, d0 / 80.0D, d1 / 160.0D, d0 / 80.0D);
        this.noise1 = this.noiseGen1.generateNoiseOctaves(this.noise1, par2, par3, par4, par5, par6, par7, d0, d1, d0);
        this.noise2 = this.noiseGen2.generateNoiseOctaves(this.noise2, par2, par3, par4, par5, par6, par7, d0, d1, d0);
        boolean flag = false;
        boolean flag1 = false;
        int i2 = 0;
        int j2 = 0;

        for (int k2 = 0; k2 < par5; ++k2)
        {
            for (int l2 = 0; l2 < par7; ++l2)
            {
                float f1 = 0.0F;
                float f2 = 0.0F;
                float f3 = 0.0F;
                byte b0 = 2;
                BiomeGenBase biomegenbase = this.biomesForGeneration[k2 + 2 + (l2 + 2) * (par5 + 5)];

                for (int i3 = -b0; i3 <= b0; ++i3)
                {
                    for (int j3 = -b0; j3 <= b0; ++j3)
                    {
                        BiomeGenBase biomegenbase1 = this.biomesForGeneration[k2 + i3 + 2 + (l2 + j3 + 2) * (par5 + 5)];
                        float f4 = this.parabolicField[i3 + 2 + (j3 + 2) * 5] / (biomegenbase1.minHeight + 2.0F);

                        if (biomegenbase1.minHeight > biomegenbase.minHeight)
                        {
                            f4 /= 2.0F;
                        }

                        f1 += biomegenbase1.maxHeight * f4;
                        f2 += biomegenbase1.minHeight * f4;
                        f3 += f4;
                    }
                }

                f1 /= f3;
                f2 /= f3;
                f1 = f1 * 0.9F + 0.1F;
                f2 = (f2 * 4.0F - 1.0F) / 8.0F;
                double d2 = this.noise6[j2] / 8000.0D;

                if (d2 < 0.0D)
                {
                    d2 = -d2 * 0.3D;
                }

                d2 = d2 * 3.0D - 2.0D;

                if (d2 < 0.0D)
                {
                    d2 /= 2.0D;

                    if (d2 < -1.0D)
                    {
                        d2 = -1.0D;
                    }

                    d2 /= 1.4D;
                    d2 /= 2.0D;
                }
                else
                {
                    if (d2 > 1.0D)
                    {
                        d2 = 1.0D;
                    }

                    d2 /= 8.0D;
                }

                ++j2;

                for (int k3 = 0; k3 < par6; ++k3)
                {
                    double d3 = (double)f2;
                    double d4 = (double)f1;
                    d3 += d2 * 0.2D;
                    d3 = d3 * (double)par6 / 16.0D;
                    double d5 = (double)par6 / 2.0D + d3 * 4.0D;
                    double d6 = 0.0D;
                    double d7 = ((double)k3 - d5) * 12.0D * 128.0D / 128.0D / d4;

                    if (d7 < 0.0D)
                    {
                        d7 *= 4.0D;
                    }

                    double d8 = this.noise1[i2] / 512.0D;
                    double d9 = this.noise2[i2] / 512.0D;
                    double d10 = (this.noise3[i2] / 10.0D + 1.0D) / 2.0D;

                    if (d10 < 0.0D)
                    {
                        d6 = d8;
                    }
                    else if (d10 > 1.0D)
                    {
                        d6 = d9;
                    }
                    else
                    {
                        d6 = d8 + (d9 - d8) * d10;
                    }

                    d6 -= d7;

                    if (k3 > par6 - 4)
                    {
                        double d11 = (double)((float)(k3 - (par6 - 4)) / 3.0F);
                        d6 = d6 * (1.0D - d11) + -10.0D * d11;
                    }

                    par1ArrayOfDouble[i2] = d6;
                    ++i2;
                }
            }
        }

        return par1ArrayOfDouble;
    }

    /**
     * Checks to see if a chunk exists at x, y
     */
/*    public boolean chunkExists(int par1, int par2)
    {
        return true;
    }

    /**
     * Populates chunk with ores etc etc
     */
/*    public void populate(IChunkProvider par1IChunkProvider, int par2, int par3)
    {
        BlockSand.fallInstantly = true;
        int k = par2 * 16;
        int l = par3 * 16;
        BiomeGenBase biomegenbase = this.worldObj.getBiomeGenForCoords(k + 16, l + 16);
        this.rand.setSeed(this.worldObj.getSeed());
        long i1 = this.rand.nextLong() / 2L * 2L + 1L;
        long j1 = this.rand.nextLong() / 2L * 2L + 1L;
        this.rand.setSeed((long)par2 * i1 + (long)par3 * j1 ^ this.worldObj.getSeed());
        boolean flag = false;

        MinecraftForge.EVENT_BUS.post(new PopulateChunkEvent.Pre(par1IChunkProvider, worldObj, rand, par2, par3, flag));

        if (this.mapFeaturesEnabled)
        {
            this.mineshaftGenerator.generateStructuresInChunk(this.worldObj, this.rand, par2, par3);
            flag = this.villageGenerator.generateStructuresInChunk(this.worldObj, this.rand, par2, par3);
            this.strongholdGenerator.generateStructuresInChunk(this.worldObj, this.rand, par2, par3);
            this.scatteredFeatureGenerator.generateStructuresInChunk(this.worldObj, this.rand, par2, par3);
        }

        int k1;
        int l1;
        int i2;

        if (TerrainGen.populate(par1IChunkProvider, worldObj, rand, par2, par3, flag, LAKE) && 
                !flag && this.rand.nextInt(4) == 0)
        {
            k1 = k + this.rand.nextInt(16) + 8;
            l1 = this.rand.nextInt(128);
            i2 = l + this.rand.nextInt(16) + 8;
            (new WorldGenLakes(Block.waterStill.blockID)).generate(this.worldObj, this.rand, k1, l1, i2);
        }

        if (TerrainGen.populate(par1IChunkProvider, worldObj, rand, par2, par3, flag, LAVA) &&
                !flag && this.rand.nextInt( == 0)
        {
            k1 = k + this.rand.nextInt(16) + 8;
            l1 = this.rand.nextInt(this.rand.nextInt(120) + ;
            i2 = l + this.rand.nextInt(16) + 8;

            if (l1 < 63 || this.rand.nextInt(10) == 0)
            {
                (new WorldGenLakes(Block.lavaStill.blockID)).generate(this.worldObj, this.rand, k1, l1, i2);
            }
        }

        boolean doGen = TerrainGen.populate(par1IChunkProvider, worldObj, rand, par2, par3, flag, DUNGEON);
        for (k1 = 0; doGen && k1 < 8; ++k1)
        {
            l1 = k + this.rand.nextInt(16) + 8;
            i2 = this.rand.nextInt(128);
            int j2 = l + this.rand.nextInt(16) + 8;

            if ((new WorldGenDungeons()).generate(this.worldObj, this.rand, l1, i2, j2))
            {
                ;
            }
        }

        biomegenbase.decorate(this.worldObj, this.rand, k, l);
        SpawnerAnimals.performWorldGenSpawning(this.worldObj, biomegenbase, k + 8, l + 8, 16, 16, this.rand);
        k += 8;
        l += 8;

        doGen = TerrainGen.populate(par1IChunkProvider, worldObj, rand, par2, par3, flag, ICE);
        for (k1 = 0; doGen && k1 < 16; ++k1)
        {
            for (l1 = 0; l1 < 16; ++l1)
            {
                i2 = this.worldObj.getPrecipitationHeight(k + k1, l + l1);

                if (this.worldObj.isBlockFreezable(k1 + k, i2 - 1, l1 + l))
                {
                    this.worldObj.setBlock(k1 + k, i2 - 1, l1 + l, Block.ice.blockID, 0, 2);
                }

                if (this.worldObj.canSnowAt(k1 + k, i2, l1 + l))
                {
                    this.worldObj.setBlock(k1 + k, i2, l1 + l, Block.snow.blockID, 0, 2);
                }
            }
        }

        MinecraftForge.EVENT_BUS.post(new PopulateChunkEvent.Post(par1IChunkProvider, worldObj, rand, par2, par3, flag));

        BlockSand.fallInstantly = true;
    }

    /**
     * Two modes of operation: if passed true, save all Chunks in one go.  If passed false, save up to two chunks.
     * Return true if all chunks have been saved.
     */
/*    public boolean saveChunks(boolean par1, IProgressUpdate par2IProgressUpdate)
    {
        return true;
    }

    /**
     * Unloads chunks that are marked to be unloaded. This is not guaranteed to unload every such chunk.
     */
/*    public boolean unloadQueuedChunks()
    {
        return false;
    }

    /**
     * Returns if the IChunkProvider supports saving.
     */
/*    public boolean canSave()
    {
        return true;
    }

    /**
     * Converts the instance data to a readable string.
     */
/*    public String makeString()
    {
        return "RandomLevelSource";
    }

    /**
     * Returns a list of creatures of the specified type that can spawn at the given location.
     */
/*    public List getPossibleCreatures(EnumCreatureType par1EnumCreatureType, int par2, int par3, int par4)
    {
        BiomeGenBase biomegenbase = this.worldObj.getBiomeGenForCoords(par2, par4);
        return biomegenbase == null ? null : (biomegenbase == BiomeGenBase.swampland && par1EnumCreatureType == EnumCreatureType.monster && this.scatteredFeatureGenerator.hasStructureAt(par2, par3, par4) ? this.scatteredFeatureGenerator.getScatteredFeatureSpawnList() : biomegenbase.getSpawnableList(par1EnumCreatureType));
    }

    /**
     * Returns the location of the closest structure of the specified type. If not found returns null.
     */
/*    public ChunkPosition findClosestStructure(World par1World, String par2Str, int par3, int par4, int par5)
    {
        return "Stronghold".equals(par2Str) && this.strongholdGenerator != null ? this.strongholdGenerator.getNearestInstance(par1World, par3, par4, par5) : null;
    }

    public int getLoadedChunkCount()
    {
        return 0;
    }

    public void recreateStructures(int par1, int par2)
    {
        if (this.mapFeaturesEnabled)
        {
            this.mineshaftGenerator.generate(this, this.worldObj, par1, par2, (byte[])null);
            this.villageGenerator.generate(this, this.worldObj, par1, par2, (byte[])null);
            this.strongholdGenerator.generate(this, this.worldObj, par1, par2, (byte[])null);
            this.scatteredFeatureGenerator.generate(this, this.worldObj, par1, par2, (byte[])null);
        }
    }*/
}

 

 

 

WorldProviderMarona

 

 

package Mod_Ores;

import java.util.Random;

import net.minecraft.world.WorldProviderHell;
import net.minecraft.world.WorldProviderSurface;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.biome.WorldChunkManager;
import net.minecraft.world.biome.WorldChunkManagerHell;
import net.minecraft.world.chunk.IChunkProvider;

public class WorldProviderMarona extends WorldProviderSurface
{

//The WorldProvider covers all the basics of the dimension. Look in WorldProviderBase.java and
//WorldProvider.java for all the potential qualities you can assign to your dimension.

public WorldProviderMarona()
{
}

//The save file will be called DIM65 (DIM + id number).
public int getDimensionID()
{

	return 65;

}
public String getDimensionName()
{
return "Soul Forest";
}

public String getRespawnMessage()
{

return "Leaving Soul Forest";

}

//You can use an existing WorldChunkManager, or create your own. You must create your own to
//add multiple unique biomes to a dimension.
public void registerWorldChunkManager()
{

this.worldChunkMgr = new WorldChunkManagerHell(mod_Ores.SoulForest, 2.5F, 2.0F); //Your Biome goes here
//worldChunkMgr = new WorldChunkManagerHell(BiomeGenBase.FrostCaves, 2.5F, 2.0F); 
this.dimensionId = mod_Ores.DimensionSoulForest;
}

//This is where you define your terrain generator.
@Override
public IChunkProvider createChunkGenerator()
{

return new ChunkProviderMarona(worldObj, worldObj.getSeed());

}

//Note that, if you respawn in the dimension, you will end up at the coordinates 	of your
//overworld spawn point, not at the location of your first entrance to the dimension or
//something like that. Note also that beds don't work if yo	u cannot respawn in the dimension.
public boolean canRespawnHere()
{

return true;

}

}

 

 

 

Thanks for reading and thanks for your time.

Please help me i'm still trying out different stuff but i would really appreciate your help, even if it is just an idea or a link to a different post.

 

Every bits help!

Posted

I did look into this and did some searching, most of the statements I found was like this:

Pain inn the ass hard

I refuse to believe that it's that hard, it's all about commitment ;)

 

I did find one thread which had some useful information, maybe it could help you on your way?

http://www.minecraftforge.net/forum/index.php?topic=3331.0

The last post at least seems to lead to a good read :)

It's quite recent so go take a look :)

 

Edit: The github seems to have been moved, I guess this is the current location but it wasn't too easy to navigate the folder names: https://github.com/tuyapin/MinecraftMods

If you guys dont get it.. then well ya.. try harder...

Posted

biome decorator is not what generates the various biomes, it just decorates them.... I would assume you would need the custom chunkprovider, custom worldprovider, and then you would need to modify the GenLayer and stuff like that, clone the overworld regular field and start tweaking from there.

  • 2 weeks later...
Posted

Unfortunately i haven't gotten this to work :( still.

 

I don't have to make a custom WorldChunkManager, GenLayer (+ all subGenLayer), WorldType, WorldTypeEvent, IntCache, BiomeCacheBlock, BiomeCache etc would i?

 

I also found out that i could use the list of the normal worldchunkmanager and delete biomes using Forge's .removeBiome(""); But that also deletes it from the overworld. I have tried several things to fix this but i haven't gotten it to work properly with loads of "NullPointerExceptions" and "Exception Ticking World".

Posted

Unfortunately i haven't gotten this to work :( still.

 

I don't have to make a custom WorldChunkManager, GenLayer (+ all subGenLayer), WorldType, WorldTypeEvent, IntCache, BiomeCacheBlock, BiomeCache etc would i?

I believe you do, sadly. At least, that's what I had to do when I made my "Dig Deeper!" mod. I'll give you some of the basic stuff from my MCM here.

 


public class WorldChunkManagerDeeper extends WorldChunkManager
{
    private GenLayer genBiomes;

    /** A GenLayer containing the indices into BiomeGenBase.biomeList[] */
    private GenLayer biomeIndexLayer;

    /** The BiomeCache object for this world. */
    private BiomeCacheDeeper biomeCache;

    /** A list of biomes that the player can spawn in. */
    private List biomesToSpawnIn;

    protected WorldChunkManagerDeeper()
    {
        biomeCache = new BiomeCacheDeeper(this);
        biomesToSpawnIn = new ArrayList();
        biomesToSpawnIn.add(BiomeGenBase.forest);

        biomesToSpawnIn.add(BiomeGenBase.jungleHills);
    }

    public WorldChunkManagerDeeper(long par1, WorldType par3WorldType)
    {
        this();
        GenLayer agenlayer[] = GenLayer.initializeAllBiomeGenerators(par1, par3WorldType);
        genBiomes = agenlayer[0];
        biomeIndexLayer = agenlayer[1];
    }

    public WorldChunkManagerDeeper(World par1World)
    {
        this(par1World.getSeed(), par1World.getWorldInfo().getTerrainType());
    }

    /**
     * Gets the list of valid biomes for the player to spawn in.
     */
    public List getBiomesToSpawnIn()
    {
        return biomesToSpawnIn;
    }

    /**
     * Returns the BiomeGenBase related to the x, z position on the world.
     */
    public BiomeGenBase getBiomeGenAt(int par1, int par2)
    {
        return biomeCache.getBiomeGenAt(par1, par2);
    }

    /**
     * Returns a list of rainfall values for the specified blocks. Args: listToReuse, x, z, width, length.
     */
    public float[] getRainfall(float par1ArrayOfFloat[], int par2, int par3, int par4, int par5)
    {
        IntCache.resetIntCache();

        if (par1ArrayOfFloat == null || par1ArrayOfFloat.length < par4 * par5)
        {
            par1ArrayOfFloat = new float[par4 * par5];
        }

        int ai[] = biomeIndexLayer.getInts(par2, par3, par4, par5);

        for (int i = 0; i < par4 * par5; i++)
        {
            float f = (float)BiomeGenBase.biomeList[ai[i]].getIntRainfall() / 65536F;

            if (f > 1.0F)
            {
                f = 1.0F;
            }

            par1ArrayOfFloat[i] = f;
        }

        return par1ArrayOfFloat;
    }

    /**
     * Return an adjusted version of a given temperature based on the y height
     */
    public float getTemperatureAtHeight(float par1, int par2)
    {
        return par1;
    }

    /**
     * Returns a list of temperatures to use for the specified blocks.  Args: listToReuse, x, y, width, length
     */
    public float[] getTemperatures(float par1ArrayOfFloat[], int par2, int par3, int par4, int par5)
    {
        IntCache.resetIntCache();

        if (par1ArrayOfFloat == null || par1ArrayOfFloat.length < par4 * par5)
        {
            par1ArrayOfFloat = new float[par4 * par5];
        }

        int ai[] = biomeIndexLayer.getInts(par2, par3, par4, par5);

        for (int i = 0; i < par4 * par5; i++)
        {
            float f = (float)BiomeGenBase.biomeList[ai[i]].getIntTemperature() / 65536F;

            if (f > 1.0F)
            {
                f = 1.0F;
            }

            par1ArrayOfFloat[i] = f;
        }

        return par1ArrayOfFloat;
    }

    /**
     * Returns an array of biomes for the location input.
     */
    public BiomeGenBase[] getBiomesForGeneration(BiomeGenBase par1ArrayOfBiomeGenBase[], int par2, int par3, int par4, int par5)
    {
        IntCache.resetIntCache();

        if (par1ArrayOfBiomeGenBase == null || par1ArrayOfBiomeGenBase.length < par4 * par5)
        {
            par1ArrayOfBiomeGenBase = new BiomeGenBase[par4 * par5];
        }

        int ai[] = genBiomes.getInts(par2, par3, par4, par5);

        for (int i = 0; i < par4 * par5; i++)
        {
            par1ArrayOfBiomeGenBase[i] = BiomeGenBase.biomeList[ai[i]];
        }

        return par1ArrayOfBiomeGenBase;
    }

    /**
     * Returns biomes to use for the blocks and loads the other data like temperature and humidity onto the
     * WorldChunkManager Args: oldBiomeList, x, z, width, depth
     */
    public BiomeGenBase[] loadBlockGeneratorData(BiomeGenBase par1ArrayOfBiomeGenBase[], int par2, int par3, int par4, int par5)
    {
        return getBiomeGenAt(par1ArrayOfBiomeGenBase, par2, par3, par4, par5, true);
    }

    /**
     * Return a list of biomes for the specified blocks. Args: listToReuse, x, y, width, length, cacheFlag (if false,
     * don't check biomeCache to avoid infinite loop in BiomeCacheBlock)
     */
    public BiomeGenBase[] getBiomeGenAt(BiomeGenBase par1ArrayOfBiomeGenBase[], int par2, int par3, int par4, int par5, boolean par6)
    {
        IntCache.resetIntCache();

        if (par1ArrayOfBiomeGenBase == null || par1ArrayOfBiomeGenBase.length < par4 * par5)
        {
            par1ArrayOfBiomeGenBase = new BiomeGenBase[par4 * par5];
        }

        if (par6 && par4 == 16 && par5 == 16 && (par2 & 0xf) == 0 && (par3 & 0xf) == 0)
        {
            BiomeGenBase abiomegenbase[] = biomeCache.getCachedBiomes(par2, par3);
            System.arraycopy(abiomegenbase, 0, par1ArrayOfBiomeGenBase, 0, par4 * par5);
            return par1ArrayOfBiomeGenBase;
        }

        int ai[] = biomeIndexLayer.getInts(par2, par3, par4, par5);

        for (int i = 0; i < par4 * par5; i++)
        {
            par1ArrayOfBiomeGenBase[i] = BiomeGenBase.biomeList[ai[i]];
        }

        return par1ArrayOfBiomeGenBase;
    }

    /**
     * checks given Chunk's Biomes against List of allowed ones
     */
    public boolean areBiomesViable(int par1, int par2, int par3, List par4List)
    {
        int i = par1 - par3 >> 2;
        int j = par2 - par3 >> 2;
        int k = par1 + par3 >> 2;
        int l = par2 + par3 >> 2;
        int i1 = (k - i) + 1;
        int j1 = (l - j) + 1;
        int ai[] = genBiomes.getInts(i, j, i1, j1);

        for (int k1 = 0; k1 < i1 * j1; k1++)
        {
            BiomeGenBase biomegenbase = BiomeGenBase.biomeList[ai[k1]];

            if (!par4List.contains(biomegenbase))
            {
                return false;
            }
        }

        return true;
    }

    /**
     * Finds a valid position within a range, that is once of the listed biomes.
     */
    public ChunkPosition findBiomePosition(int par1, int par2, int par3, List par4List, Random par5Random)
    {
        int i = par1 - par3 >> 2;
        int j = par2 - par3 >> 2;
        int k = par1 + par3 >> 2;
        int l = par2 + par3 >> 2;
        int i1 = (k - i) + 1;
        int j1 = (l - j) + 1;
        int ai[] = genBiomes.getInts(i, j, i1, j1);
        ChunkPosition chunkposition = null;
        int k1 = 0;

        for (int l1 = 0; l1 < ai.length; l1++)
        {
            int i2 = i + l1 % i1 << 2;
            int j2 = j + l1 / i1 << 2;
            BiomeGenBase biomegenbase = BiomeGenBase.biomeList[ai[l1]];

            if (par4List.contains(biomegenbase) && (chunkposition == null || par5Random.nextInt(k1 + 1) == 0))
            {
                chunkposition = new ChunkPosition(i2, 0, j2);
                k1++;
            }
        }

        return chunkposition;
    }

    /**
     * Calls the WorldChunkManager's biomeCache.cleanupCache()
     */
    public void cleanupCache()
    {
        biomeCache.cleanupCache();
    }
}

width=300 height=100http://i.imgur.com/ivK3J.png[/img]

I'm a little surprised that I am still ranked as a "Forge Modder," having not posted a single mod since my animals mod... I have to complete Digging Deeper!, fast!

Posted
I think you want Forge code, not Minecraft code.

Otherwise it would be a jar mod.

 

EDIT: Where did you get your code?

 

Well first of all if you know how to add multiple biomes to your custom dimension then please tell us.

 

You say i shouldn't use minecraft code but that doesn't make any sense in any way. Although it is true that i should not code inside the minecraft base classes which i ofcourse try to avoid. I am not sure if you mean that by "jar mod".

  • 1 month later...
Posted

The way i have managed to get it done is by having custom worldchunkmanager in  WorldType or WorldProvider depending if you are making dimension or a worldtype.

The worldchunkmanager is mostly untouched it just points to the custom genLayer.

The GenLayerBiome decides what biomes gets generated you should tell it where it can find your custom BiomeGenBase[] array.

 

and remember to register your worldprovider or worldtype with forge too :)

Posted

The way i have managed to get it done is by having custom worldchunkmanager in  WorldType or WorldProvider depending if you are making dimension or a worldtype.

That. I have no explanation to help you with, but in making my own dimension, I wanted all of the vanilla overworld biomes to spawn in my dimension. The 2 world chunk managers I know of are WorldChunkManager and WorldChunkManagerHell. The Hell one does one biome, which you specify. The regular one does multiple. You will have to make your own world chunk manager and look in to how the regular one works.

Read my thoughts on my summer mod work and tell me what you think!

http://www.minecraftforge.net/forum/index.php/topic,8396.0.html

 

I absolutely love her when she smiles

  • 1 year later...
Posted

Blade your reply worked, just note with 1.7.1+ you need to do some changes as per : http://www.wuppy29.com/minecraft/modding-tutorials/wuppys-minecraft-forge-modding-tutorials-for-1-7-updating-1-6-to-1-7-part-1-modfile-and-recipes/#sthash.9BCseiYx.dpbs

 

Basically, biomeList becomes getBiomeGenArray()

as well as getIntTemperature() changes to getFloatTemperature() with additional parameters.

 

As per original answer, I managed to get multiple biomes on a custom dimension with modding ChunkProvider, WorldProvider, WorldChunkManager

Posted

Blade your reply worked, just note with 1.7.1+ you need to do some changes as per : http://www.wuppy29.com/minecraft/modding-tutorials/wuppys-minecraft-forge-modding-tutorials-for-1-7-updating-1-6-to-1-7-part-1-modfile-and-recipes/#sthash.9BCseiYx.dpbs

 

Basically, biomeList becomes getBiomeGenArray()

as well as getIntTemperature() changes to getFloatTemperature() with additional parameters.

 

As per original answer, I managed to get multiple biomes on a custom dimension with modding ChunkProvider, WorldProvider, WorldChunkManager

Dude, this thread is 2 years old... Make your own if you need help.

Don't PM me with questions. They will be ignored! Make a thread on the appropriate board for support.

 

1.12 -> 1.13 primer by williewillus.

 

1.7.10 and older versions of Minecraft are no longer supported due to it's age! Update to the latest version for support.

 

http://www.howoldisminecraft1710.today/

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

    • I'm having the same issue. I'm still in the process of troubleshooting, but currently I'm not having the issue. I had just updated FramedBlocks, XaeroPlus, Puzzles Lib [Forge & Fabric], Structure Essentials, and Server Performance - Smooth Chunk Save. After booting it up, I had the issue, I closed and reopened it, and then I got an error about FTBRanks (which had happened before). It basically said it required a more up to date version of Forge, but I had just updated forge before updating all the other mods, so FTBRanks should have given the error when I booted it up before. Currently, the game is running fine and my screen hasn't frozen and flashed. I'll update this if more information comes up.
    • ---- Minecraft Crash Report ---- // Shall we play a game? Time: 2025-03-12 17:35:49 Description: mouseClicked event handler java.lang.IllegalStateException: Failed to load registries due to above errors     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.load(RegistryDataLoader.java:154) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.mixinextras$bridge$load$34(RegistryDataLoader.java) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.wrapOperation$cjo000$fabric_resource_conditions_api_v1$captureRegistries(RegistryDataLoader.java:555) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.mixinextras$bridge$wrapOperation$cjo000$fabric_resource_conditions_api_v1$captureRegistries$35(RegistryDataLoader.java) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.wrapOperation$cml000$fabric_registry_sync_v0$wrapIsServerCall(RegistryDataLoader.java:1052) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.load(RegistryDataLoader.java:118) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.loadLayer(WorldLoader.java:76) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.loadAndReplaceLayer(WorldLoader.java:82) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.load(WorldLoader.java:35) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.CreateWorldScreen.openFresh(CreateWorldScreen.java:123) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.CreateWorldScreenMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:bugfix.extra_experimental_screen.CreateWorldScreenMixin from mod modernfix,pl:mixin:APP:cumulus_menus.mixins.json:client.CreateWorldScreenMixin from mod cumulus_menus,pl:mixin:APP:fabric-resource-loader-v0.client.mixins.json:CreateWorldScreenMixin from mod fabric_resource_loader_v0,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.WorldSelectionList.loadLevels(WorldSelectionList.java:192) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.WorldSelectionList.<init>(WorldSelectionList.java:111) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.SelectWorldScreen.init(SelectWorldScreen.java:51) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.Screen.init(Screen.java:317) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenMixin from mod fabric_screen_api_v1,pl:mixin:APP:balm.neoforge.mixins.json:ScreenAccessor from mod balm,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenAccessor from mod fabric_screen_api_v1,pl:mixin:APP:immersiveui-common.mixins.json:ScreenMixin from mod immersiveui,pl:mixin:APP:mixins.cobblemon-neoforge.json:ScreenMixin from mod cobblemon,pl:mixin:APP:yungsmenutweaks.mixins.json:ScreenMixin from mod yungsmenutweaks,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.ScreenAccessor from mod cumulus_menus,pl:mixin:APP:ponder.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinChatClicked from mod cold_sweat,pl:mixin:APP:aether.mixins.json:client.accessor.ScreenAccessor from mod aether,pl:mixin:APP:relics.mixins.json:ScreenMixin from mod relics,pl:mixin:APP:patchouli_xplat.mixins.json:client.AccessorScreen from mod patchouli,pl:mixin:APP:owo.mixins.json:ScreenAccessor from mod owo,pl:mixin:APP:owo.mixins.json:ui.ScreenMixin from mod owo,pl:mixin:APP:iceberg.mixins.json:ScreenMixin from mod iceberg,pl:mixin:APP:owo.mixins.json:ui.layers.ScreenMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.setScreen(Minecraft.java:1057) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.TitleScreen.lambda$createNormalMenuOptions$7(TitleScreen.java:161) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinTitleScreen from mod iris,pl:mixin:APP:cumulus_menus.mixins.json:client.TitleScreenMixin from mod cumulus_menus,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.TitleScreenAccessor from mod cumulus_menus,pl:mixin:APP:aether.mixins.json:client.accessor.TitleScreenAccessor from mod aether,pl:mixin:APP:collective_neoforge.mixins.json:TitleScreenMixin from mod collective,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.Button.onPress(Button.java:41) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {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.gui.components.AbstractButton.onClick(AbstractButton.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:accessories-common.mixins.json:client.AbstractButtonMixin from mod accessories,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension.onClick(IAbstractWidgetExtension.java:36) ~[neoforge-21.1.133-universal.jar%23398!/:?] {re:computing_frames,re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.AbstractWidget.mouseClicked(AbstractWidget.java:144) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:yungsmenutweaks.mixins.json:AbstractWidgetMixin from mod yungsmenutweaks,pl:mixin:APP:accessories-common.mixins.json:client.owo.ComponentStubMixin from mod accessories,pl:mixin:APP:owo.mixins.json:ui.ClickableWidgetMixin from mod owo,pl:mixin:APP:owo.mixins.json:ui.access.ClickableWidgetAccessor from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.events.ContainerEventHandler.mouseClicked(ContainerEventHandler.java:38) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.TitleScreen.mouseClicked(TitleScreen.java:340) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinTitleScreen from mod iris,pl:mixin:APP:cumulus_menus.mixins.json:client.TitleScreenMixin from mod cumulus_menus,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.TitleScreenAccessor from mod cumulus_menus,pl:mixin:APP:aether.mixins.json:client.accessor.TitleScreenAccessor from mod aether,pl:mixin:APP:collective_neoforge.mixins.json:TitleScreenMixin from mod collective,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$onPress$0(MouseHandler.java:98) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.Screen.wrapScreenError(Screen.java:451) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenMixin from mod fabric_screen_api_v1,pl:mixin:APP:balm.neoforge.mixins.json:ScreenAccessor from mod balm,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenAccessor from mod fabric_screen_api_v1,pl:mixin:APP:immersiveui-common.mixins.json:ScreenMixin from mod immersiveui,pl:mixin:APP:mixins.cobblemon-neoforge.json:ScreenMixin from mod cobblemon,pl:mixin:APP:yungsmenutweaks.mixins.json:ScreenMixin from mod yungsmenutweaks,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.ScreenAccessor from mod cumulus_menus,pl:mixin:APP:ponder.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinChatClicked from mod cold_sweat,pl:mixin:APP:aether.mixins.json:client.accessor.ScreenAccessor from mod aether,pl:mixin:APP:relics.mixins.json:ScreenMixin from mod relics,pl:mixin:APP:patchouli_xplat.mixins.json:client.AccessorScreen from mod patchouli,pl:mixin:APP:owo.mixins.json:ScreenAccessor from mod owo,pl:mixin:APP:owo.mixins.json:ui.ScreenMixin from mod owo,pl:mixin:APP:iceberg.mixins.json:ScreenMixin from mod iceberg,pl:mixin:APP:owo.mixins.json:ui.layers.ScreenMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.onPress(MouseHandler.java:95) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$setup$4(MouseHandler.java:202) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:98) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:modernfix-common.mixins.json:perf.fix_loop_spin_waiting.BlockableEventLoopMixin from mod modernfix,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$setup$5(MouseHandler.java:202) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43) ~[lwjgl-glfw-3.3.3.jar%23165!/:build 5] {}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.3.jar%23177!/:build 5] {}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509) ~[lwjgl-glfw-3.3.3.jar%23165!/:build 5] {re:mixin}     at TRANSFORMER/[email protected]/com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:162) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinGlStateManager from mod iris,pl:mixin:APP:mixins.iris.json:MixinRenderSystem from mod iris,pl:mixin:APP:mixins.iris.json:statelisteners.MixinRenderSystem from mod iris,pl:mixin:APP:sodium-common.mixins.json:workarounds.event_loop.RenderSystemMixin from mod sodium,pl:mixin:APP:flywheel.backend.mixins.json:RenderSystemMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.accessor.RenderSystemAccessor from mod ponder,pl:mixin:APP:owo.mixins.json:ui.RenderSystemMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1220) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,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%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,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%23397!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:notenoughcrashes.forge.mixins.json:client.MixinMain from mod notenoughcrashes,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.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.4.jar%23106!/:?] {}     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:?] {} 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.resources.RegistryDataLoader.load(RegistryDataLoader.java:154) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.mixinextras$bridge$load$34(RegistryDataLoader.java) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.wrapOperation$cjo000$fabric_resource_conditions_api_v1$captureRegistries(RegistryDataLoader.java:555) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.mixinextras$bridge$wrapOperation$cjo000$fabric_resource_conditions_api_v1$captureRegistries$35(RegistryDataLoader.java) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.wrapOperation$cml000$fabric_registry_sync_v0$wrapIsServerCall(RegistryDataLoader.java:1052) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.resources.RegistryDataLoader.load(RegistryDataLoader.java:118) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-resource-conditions-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_resource_conditions_api_v1,pl:mixin:APP:fabric-registry-sync-v0.mixins.json:RegistryLoaderMixin from mod fabric_registry_sync_v0,pl:mixin:APP:fabric-item-api-v1.mixins.json:RegistryLoaderMixin from mod fabric_item_api_v1,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.loadLayer(WorldLoader.java:76) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.loadAndReplaceLayer(WorldLoader.java:82) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.server.WorldLoader.load(WorldLoader.java:35) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.CreateWorldScreen.openFresh(CreateWorldScreen.java:123) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.CreateWorldScreenMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:bugfix.extra_experimental_screen.CreateWorldScreenMixin from mod modernfix,pl:mixin:APP:cumulus_menus.mixins.json:client.CreateWorldScreenMixin from mod cumulus_menus,pl:mixin:APP:fabric-resource-loader-v0.client.mixins.json:CreateWorldScreenMixin from mod fabric_resource_loader_v0,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.WorldSelectionList.loadLevels(WorldSelectionList.java:192) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.WorldSelectionList.<init>(WorldSelectionList.java:111) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.worldselection.SelectWorldScreen.init(SelectWorldScreen.java:51) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.Screen.init(Screen.java:317) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenMixin from mod fabric_screen_api_v1,pl:mixin:APP:balm.neoforge.mixins.json:ScreenAccessor from mod balm,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenAccessor from mod fabric_screen_api_v1,pl:mixin:APP:immersiveui-common.mixins.json:ScreenMixin from mod immersiveui,pl:mixin:APP:mixins.cobblemon-neoforge.json:ScreenMixin from mod cobblemon,pl:mixin:APP:yungsmenutweaks.mixins.json:ScreenMixin from mod yungsmenutweaks,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.ScreenAccessor from mod cumulus_menus,pl:mixin:APP:ponder.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinChatClicked from mod cold_sweat,pl:mixin:APP:aether.mixins.json:client.accessor.ScreenAccessor from mod aether,pl:mixin:APP:relics.mixins.json:ScreenMixin from mod relics,pl:mixin:APP:patchouli_xplat.mixins.json:client.AccessorScreen from mod patchouli,pl:mixin:APP:owo.mixins.json:ScreenAccessor from mod owo,pl:mixin:APP:owo.mixins.json:ui.ScreenMixin from mod owo,pl:mixin:APP:iceberg.mixins.json:ScreenMixin from mod iceberg,pl:mixin:APP:owo.mixins.json:ui.layers.ScreenMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.setScreen(Minecraft.java:1057) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.TitleScreen.lambda$createNormalMenuOptions$7(TitleScreen.java:161) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinTitleScreen from mod iris,pl:mixin:APP:cumulus_menus.mixins.json:client.TitleScreenMixin from mod cumulus_menus,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.TitleScreenAccessor from mod cumulus_menus,pl:mixin:APP:aether.mixins.json:client.accessor.TitleScreenAccessor from mod aether,pl:mixin:APP:collective_neoforge.mixins.json:TitleScreenMixin from mod collective,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.Button.onPress(Button.java:41) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {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.gui.components.AbstractButton.onClick(AbstractButton.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:accessories-common.mixins.json:client.AbstractButtonMixin from mod accessories,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.neoforged.neoforge.client.extensions.IAbstractWidgetExtension.onClick(IAbstractWidgetExtension.java:36) ~[neoforge-21.1.133-universal.jar%23398!/:?] {re:computing_frames,re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.AbstractWidget.mouseClicked(AbstractWidget.java:144) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:yungsmenutweaks.mixins.json:AbstractWidgetMixin from mod yungsmenutweaks,pl:mixin:APP:accessories-common.mixins.json:client.owo.ComponentStubMixin from mod accessories,pl:mixin:APP:owo.mixins.json:ui.ClickableWidgetMixin from mod owo,pl:mixin:APP:owo.mixins.json:ui.access.ClickableWidgetAccessor from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.components.events.ContainerEventHandler.mouseClicked(ContainerEventHandler.java:38) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,re:mixin,re:classloading}     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.TitleScreen.mouseClicked(TitleScreen.java:340) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinTitleScreen from mod iris,pl:mixin:APP:cumulus_menus.mixins.json:client.TitleScreenMixin from mod cumulus_menus,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.TitleScreenAccessor from mod cumulus_menus,pl:mixin:APP:aether.mixins.json:client.accessor.TitleScreenAccessor from mod aether,pl:mixin:APP:collective_neoforge.mixins.json:TitleScreenMixin from mod collective,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$onPress$0(MouseHandler.java:98) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A} -- Affected screen -- Details:     Screen name: net.minecraft.client.gui.screens.TitleScreen Stacktrace:     at TRANSFORMER/[email protected]/net.minecraft.client.gui.screens.Screen.wrapScreenError(Screen.java:451) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenMixin from mod fabric_screen_api_v1,pl:mixin:APP:balm.neoforge.mixins.json:ScreenAccessor from mod balm,pl:mixin:APP:fabric-screen-api-v1.mixins.json:ScreenAccessor from mod fabric_screen_api_v1,pl:mixin:APP:immersiveui-common.mixins.json:ScreenMixin from mod immersiveui,pl:mixin:APP:mixins.cobblemon-neoforge.json:ScreenMixin from mod cobblemon,pl:mixin:APP:yungsmenutweaks.mixins.json:ScreenMixin from mod yungsmenutweaks,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.ScreenAccessor from mod cumulus_menus,pl:mixin:APP:ponder.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinChatClicked from mod cold_sweat,pl:mixin:APP:aether.mixins.json:client.accessor.ScreenAccessor from mod aether,pl:mixin:APP:relics.mixins.json:ScreenMixin from mod relics,pl:mixin:APP:patchouli_xplat.mixins.json:client.AccessorScreen from mod patchouli,pl:mixin:APP:owo.mixins.json:ScreenAccessor from mod owo,pl:mixin:APP:owo.mixins.json:ui.ScreenMixin from mod owo,pl:mixin:APP:iceberg.mixins.json:ScreenMixin from mod iceberg,pl:mixin:APP:owo.mixins.json:ui.layers.ScreenMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.onPress(MouseHandler.java:95) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$setup$4(MouseHandler.java:202) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:98) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:modernfix-common.mixins.json:perf.fix_loop_spin_waiting.BlockableEventLoopMixin from mod modernfix,pl:mixin:A}     at TRANSFORMER/[email protected]/net.minecraft.client.MouseHandler.lambda$setup$5(MouseHandler.java:202) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:betterthirdperson.mixins.json:MouseMixin from mod betterthirdperson,pl:mixin:APP:balm.neoforge.mixins.json:MouseHandlerAccessor from mod balm,pl:mixin:APP:supplementaries-common.mixins.json:MouseHandlerMixin from mod supplementaries,pl:mixin:APP:mixins.cobblemon-common.json:MouseHandlerMixin from mod cobblemon,pl:mixin:APP:relics.mixins.json:MouseHandlerMixin from mod relics,pl:mixin:APP:smallships-common.mixins.json:zooming.client.MouseHandlerMixin from mod smallships,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MouseHandlerAccessor from mod smallships,pl:mixin:APP:owo.mixins.json:ui.layers.MouseMixin from mod owo,pl:mixin:APP:create.mixins.json:accessor.MouseHandlerAccessor from mod create,pl:mixin:APP:betterthirdperson.mixins.json:MouseFixupMixin from mod betterthirdperson,pl:mixin:A,pl:runtimedistcleaner:A}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43) ~[lwjgl-glfw-3.3.3.jar%23165!/:build 5] {}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.3.jar%23177!/:build 5] {}     at MC-BOOTSTRAP/[email protected]+5/org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509) ~[lwjgl-glfw-3.3.3.jar%23165!/:build 5] {re:mixin}     at TRANSFORMER/[email protected]/com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:162) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:mixins.iris.json:MixinGlStateManager from mod iris,pl:mixin:APP:mixins.iris.json:MixinRenderSystem from mod iris,pl:mixin:APP:mixins.iris.json:statelisteners.MixinRenderSystem from mod iris,pl:mixin:APP:sodium-common.mixins.json:workarounds.event_loop.RenderSystemMixin from mod sodium,pl:mixin:APP:flywheel.backend.mixins.json:RenderSystemMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.accessor.RenderSystemAccessor from mod ponder,pl:mixin:APP:owo.mixins.json:ui.RenderSystemMixin from mod owo,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/[email protected]/net.minecraft.client.Minecraft.runTick(Minecraft.java:1220) ~[client-1.21.1-20240808.144430-srg.jar%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,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%23397!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:modernfix-common.mixins.json:bugfix.world_leaks.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:bugfix.concurrency.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:perf.dedicated_reload_executor.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-common.mixins.json:feature.measure_time.MinecraftMixin from mod modernfix,pl:mixin:APP:modernfix-neoforge.mixins.json:feature.measure_time.MinecraftMixin_Forge from mod modernfix,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:aaa_particles-common.mixins.json:client.MixinMinecraft from mod aaa_particles,pl:mixin:APP:laserbridges.mixins.json:MixinMinecraft from mod laserbridges,pl:mixin:APP:glitchcore.mixins.json:client.MixinMinecraft from mod glitchcore,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:cold_sweat.mixin.json:MixinInventoryOpenClient from mod cold_sweat,pl:mixin:APP:cold_sweat.mixin.json:MixinPickEntity from mod cold_sweat,pl:mixin:APP:notenoughcrashes.mixins.json:client.MixinMinecraftClient from mod notenoughcrashes,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:carryon.mixins.json:MinecraftMixin from mod carryon,pl:mixin:APP:mixins.sodiumdynamiclights.json:MinecraftClientMixin from mod sodiumdynamiclights,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadEnd from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:MixinResourceReloadStart from mod entity_model_features,pl:mixin:APP:entity_model_features-common.mixins.json:accessor.MinecraftClientAccessor from mod entity_model_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinMinecraftClient from mod entity_texture_features,pl:mixin:APP:entity_texture_features-common.mixins.json:reloading.MixinResourceReload from mod entity_texture_features,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:fightorflight.mixins_common.json:MinecraftClientInject from mod fightorflight,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:smallships-fabric-neoforge.mixins.json:container.MinecraftMixin from mod smallships,pl:mixin:APP:l2menustacker.mixins.json:MinecraftMixin from mod l2menustacker,pl:mixin:APP:fabric-lifecycle-events-v1.client.mixins.json:MinecraftClientMixin from mod fabric_lifecycle_events_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:utility_belt.client.mixins.json:MinecraftMixin from mod utility_belt,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:sound_physics_remastered.mixins.json:MinecraftMixin from mod (unknown),pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:modernfix-common.mixins.json:feature.remove_telemetry.MinecraftMixin_Telemetry from mod modernfix,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%23397!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:notenoughcrashes.forge.mixins.json:client.MixinMain from mod notenoughcrashes,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.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.38.jar%23120!/:4.0] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.4.jar%23106!/:?] {}     at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.4.jar%23106!/:?] {}     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:?] {} -- Cobblemon -- Details:     Version: 1.6.1     Is Snapshot: false     Git Commit: c66de51 (https://gitlab.com/cable-mc/cobblemon/-/commit/c66de51e39dd5144bde3550f630b58f67a835b65)     Branch: HEAD -- 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.3, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 545257472 bytes (519 MiB) / 4823449600 bytes (4600 MiB) up to 8992587776 bytes (8576 MiB)     CPUs: 12     Processor Vendor: AuthenticAMD     Processor Name: AMD Ryzen 5 7600X 6-Core Processor                  Identifier: AuthenticAMD Family 25 Model 97 Stepping 2     Microarchitecture: Zen 3     Frequency (GHz): 4.69     Number of physical packages: 1     Number of physical CPUs: 6     Number of logical CPUs: 12     Graphics card #0 name: NVIDIA GeForce RTX 4060     Graphics card #0 vendor: NVIDIA     Graphics card #0 VRAM (MiB): 8188.00     Graphics card #0 deviceId: VideoController1     Graphics card #0 versionInfo: 32.0.15.6636     Graphics card #1 name: AMD Radeon(TM) Graphics     Graphics card #1 vendor: Advanced Micro Devices, Inc.     Graphics card #1 VRAM (MiB): 512.00     Graphics card #1 deviceId: VideoController2     Graphics card #1 versionInfo: 32.0.11034.2     Memory slot #0 capacity (MiB): 16384.00     Memory slot #0 clockSpeed (GHz): 6.00     Memory slot #0 type: Unknown     Memory slot #1 capacity (MiB): 16384.00     Memory slot #1 clockSpeed (GHz): 6.00     Memory slot #1 type: Unknown     Virtual memory max (MiB): 41077.56     Virtual memory used (MiB): 24675.50     Swap memory total (MiB): 8704.00     Swap memory used (MiB): 79.68     Space in storage for jna.tmpdir (MiB): available: 283548.59, total: 952929.00     Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): available: 283548.59, total: 952929.00     Space in storage for io.netty.native.workdir (MiB): available: 283548.59, total: 952929.00     Space in storage for java.io.tmpdir (MiB): available: 283548.59, total: 952929.00     Space in storage for workdir (MiB): available: 283548.59, total: 952929.00     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx8576m -Xms256m     Loaded Shaderpack: (off)     Client Crashes Since Restart: 1     Integrated Server Crashes Since Restart: 0     ModLauncher: 11.0.4+main.d2e20e43     ModLauncher launch target: forgeclient     ModLauncher services:          sponge-mixin-0.15.2+mixin.0.8.7.jar mixin PLUGINSERVICE          loader-4.0.38.jar slf4jfixer PLUGINSERVICE          loader-4.0.38.jar runtime_enum_extender PLUGINSERVICE          at-modlauncher-10.0.1.jar accesstransformer PLUGINSERVICE          loader-4.0.38.jar runtimedistcleaner PLUGINSERVICE          modlauncher-11.0.4.jar mixin TRANSFORMATIONSERVICE          modlauncher-11.0.4.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          [email protected]         [email protected]+0.16.0+1.21         [email protected]         [email protected]         [email protected]         [email protected]     Mod List:          3d_placeable_food-2.4.0-neoforge-1.21.1.jar       |3D Placeable food             |placeable_food                |2.4.0               |Manifest: NOSIGNATURE         skinlayers3d-neoforge-1.7.4-mc1.21.jar            |3d-Skin-Layers                |skinlayers3d                  |1.7.4               |Manifest: NOSIGNATURE         a_good_place-1.21-1.2.5-neoforge.jar              |A Good Place                  |a_good_place                  |1.21-1.2.5          |Manifest: NOSIGNATURE         aaa_particles-1.21-1.4.9-neoforge.jar             |AAAParticles                  |aaa_particles                 |1.21-1.4.9          |Manifest: NOSIGNATURE         aaa_particles_world-neoforge-1.21-1.0.3.jar       |AAAParticles: World           |aaa_particles_world           |1.21-1.0.3          |Manifest: NOSIGNATURE         accessories-neoforge-1.1.0-beta.28+1.21.1.jar     |Accessories                   |accessories                   |1.1.0-beta.28+1.21.1|Manifest: NOSIGNATURE         additional_lights-neoforge-1.21-2.1.9.jar         |Additional Lights             |additional_lights             |2.1.9               |Manifest: NOSIGNATURE         AdvancementPlaques-1.21.1-neoforge-1.6.8.jar      |Advancement Plaques           |advancementplaques            |1.6.8               |Manifest: NOSIGNATURE         aeroblender-1.21.1-1.0.0-neoforge.jar             |AeroBlender                   |aeroblender                   |1.0.0               |Manifest: NOSIGNATURE         AetherVillages-1.21.1-1.0.8-neoforge.jar          |Aether Villages               |aether_villages               |1.0.8               |Manifest: NOSIGNATURE         AI-Improvements-1.21-0.5.3.jar                    |AI-Improvements               |aiimprovements                |0.5.3               |Manifest: NOSIGNATURE         amendments-1.21-1.2.24-neoforge.jar               |Amendments                    |amendments                    |1.21-1.2.24         |Manifest: NOSIGNATURE         animal_feeding_trough-1.1.2+1.21-neoforge.jar     |Animal Feeding Trough         |animal_feeding_trough         |1.1.2               |Manifest: NOSIGNATURE         Apotheosis-1.21.1-8.2.0.jar                       |Apotheosis                    |apotheosis                    |8.2.0               |Manifest: NOSIGNATURE         ApothicAttributes-1.21.1-2.6.2.jar                |Apothic Attributes            |apothic_attributes            |2.6.2               |Manifest: NOSIGNATURE         ApothicEnchanting-1.21.1-1.3.2.jar                |Apothic Enchanting            |apothic_enchanting            |1.3.2               |Manifest: NOSIGNATURE         ApothicSpawners-1.21.1-1.2.1.jar                  |Apothic Spawners              |apothic_spawners              |1.2.1               |Manifest: NOSIGNATURE         appleskin-neoforge-mc1.21-3.0.5.jar               |AppleSkin                     |appleskin                     |3.0.5+mc1.21        |Manifest: NOSIGNATURE         Aquaculture-1.21.1-2.7.13.jar                     |Aquaculture 2                 |aquaculture                   |2.7.13              |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         atlas_api-1.21-1.0.2.jar                          |Atlas API                     |atlas_api                     |1.21-1.0.2          |Manifest: NOSIGNATURE         attributefix-neoforge-1.21.1-21.1.2.jar           |AttributeFix                  |attributefix                  |21.1.2              |Manifest: NOSIGNATURE         badgebox-neoforge-1.2.5.jar                       |Badge Box                     |badgebox                      |1.0.0               |Manifest: NOSIGNATURE         balm-neoforge-1.21.1-21.0.31.jar                  |Balm                          |balm                          |21.0.31             |Manifest: NOSIGNATURE         BetterThirdPerson-neoforge-1.9.0.jar              |Better Third Person           |betterthirdperson             |1.9.0               |Manifest: NOSIGNATURE         betterfpsdist-1.21-6.0.jar                        |betterfpsdist mod             |betterfpsdist                 |6.0                 |Manifest: NOSIGNATURE         bookshelf-neoforge-1.21.1-21.1.50.jar             |Bookshelf                     |bookshelf                     |21.1.50             |Manifest: NOSIGNATURE         rctcapturecap-neoforge-1.21.1-1.0.1.jar           |Capture Cap - RCT Version     |rctcapturecap                 |1.0.1               |Manifest: NOSIGNATURE         carryon-neoforge-1.21.1-2.2.2.11.jar              |Carry On                      |carryon                       |2.2.2               |Manifest: NOSIGNATURE         [neoforge]ctov-3.5.6.jar                          |ChoiceTheorem's Overhauled Vil|ctov                          |3.5.6               |Manifest: NOSIGNATURE         Chunky-1.4.16.jar                                 |Chunky                        |chunky                        |1.4.16              |Manifest: NOSIGNATURE         CityCraft-1.21-(v.2.3.0-NEO).jar                  |City Craft                    |citycraft                     |2.3.0               |Manifest: NOSIGNATURE         cloth-config-neoforge-15.0.140-neoforge.jar       |Cloth Config v15 API          |cloth_config                  |15.0.140            |Manifest: NOSIGNATURE         Clumps-neoforge-1.21.1-19.0.0.1.jar               |Clumps                        |clumps                        |19.0.0.1            |Manifest: NOSIGNATURE         CobbleBadges-neoforge-3.0.0+Beta-3+1.21.1.jar     |CobbleBadges                  |cobblebadges                  |3.0.0+Beta-3+1.21.1 |Manifest: NOSIGNATURE         Cobblemon-neoforge-1.6.1+1.21.1.jar               |Cobblemon                     |cobblemon                     |1.6.1+1.21.1        |Manifest: NOSIGNATURE         Cobblemon AFP 1.8.1-1.21.1-NeoForge.jar           |Cobblemon Alatia's Fakemon Pac|cobblemon_alatia              |1.8.1-1.21.1-neoforg|Manifest: NOSIGNATURE         capture-xp-1.6-neoforge-1.0.0.jar                 |Cobblemon Capture XP          |capture_xp                    |1.6-neoforge-1.0.0  |Manifest: NOSIGNATURE         cobblemonchallenge-neoforge-2.1.0.jar             |Cobblemon Challenge           |cobblemonchallenge            |2.1.0               |Manifest: NOSIGNATURE         fightorflight-neoforge-0.7.6.jar                  |Cobblemon Fight or Flight     |fightorflight                 |0.7.6               |Manifest: NOSIGNATURE         CobblemonMoveInspector-neoforge-1.2.0.jar         |Cobblemon Move Inspector      |cobblemon_move_inspector      |1.2.0               |Manifest: NOSIGNATURE         cobblemonparts-1.2-NEO1.21.1.jar                  |Cobblemon Parts               |cobblemonparts                |1.2                 |Manifest: NOSIGNATURE         cobblemon_quests-[1.21.1]-neoforge-1.1.12.jar     |Cobblemon Quests              |cobblemon_quests              |1.1.12              |Manifest: NOSIGNATURE         cobblemon_smartphone-neoforge-1.0.2.jar           |Cobblemon Smartphone          |cobblemon_smartphone          |1.0.2               |Manifest: NOSIGNATURE         cobblemon-spawn-notification-1.6-neoforge-1.0.0.ja|Cobblemon Spawn Notification  |spawn_notification            |1.6-neoforge-1.0.0  |Manifest: NOSIGNATURE         Cobblemon-TM-neoforge-1.2.jar                     |Cobblemon TM                  |cobblemon_tm                  |1.2                 |Manifest: NOSIGNATURE         cobbleloots-neoforge-2.0.0.jar                    |Cobblemon: CobbleLoots        |cobbleloots                   |2.0.0               |Manifest: NOSIGNATURE         cobblemonextrastructures-1.21.1-1.0.0.jar         |Cobblemon: Extra Structures   |cobblemonextrastructures      |1.21.1-1.0.0        |Manifest: NOSIGNATURE         Cobblemon_MegaShowdown-6.4.1-release-neoforge.jar |Cobblemon: Mega Showdown      |mega_showdown                 |6.4.1-release-neofor|Manifest: NOSIGNATURE         CobblemonSizeVariationNeoforge-1.1.0+1.6.1.jar    |CobblemonSizeVariation        |cobblemonsizevariation        |1.1.0               |Manifest: NOSIGNATURE         cobblenav-neoforge-2.1.0.jar                      |Cobblenav                     |cobblenav                     |2.1.0               |Manifest: NOSIGNATURE         Cobblepedia-NeoForge-0.7.0.jar                    |Cobblepedia                   |cobblepedia                   |0.7.0               |Manifest: NOSIGNATURE         ColdSweat-2.3.12.jar                              |Cold Sweat                    |cold_sweat                    |2.3.12              |Manifest: NOSIGNATURE         collective-1.21.1-7.94.jar                        |Collective                    |collective                    |7.94                |Manifest: NOSIGNATURE         comforts-neoforge-9.0.3+1.21.1.jar                |Comforts                      |comforts                      |9.0.3+1.21.1        |Manifest: NOSIGNATURE         cgl-1.21-neoforge-0.5.1.jar                       |CommonGroovyLibrary           |commongroovylibrary           |0.5.1               |Manifest: NOSIGNATURE         Controlling-neoforge-1.21.1-19.0.4.jar            |Controlling                   |controlling                   |19.0.4              |Manifest: NOSIGNATURE         corpse-neoforge-1.21.1-1.1.5.jar                  |Corpse                        |corpse                        |1.21.1-1.1.5        |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         create-1.21.1-6.0.2.jar                           |Create                        |create                        |6.0.2               |Manifest: NOSIGNATURE         create_ltab-2.6.0.jar                             |Create Let The Adventure Begin|create_ltab                   |2.6.0               |Manifest: NOSIGNATURE         bellsandwhistles-0.4.6-1.21.1.jar                 |Create: Bells & Whistles      |bellsandwhistles              |0.4.6-1.21.1        |Manifest: NOSIGNATURE         Create_Desires-2-Dreams-1.21.1-2.0.0.jar          |Create: Desires 2 Dreams      |create_d2d                    |2.0.0               |Manifest: NOSIGNATURE         create_easy_structures-0.1.3-neoforge-1.21.1.jar  |Create: Easy Structures       |create_easy_structures        |0.1.3               |Manifest: NOSIGNATURE         create_sky_village-0.0.30J-neoforge-1.21.1.jar    |Create: Sky Village           |create_sky_village            |0.0.30              |Manifest: NOSIGNATURE         create_structures_arise-149.22.21-neoforge-1.21.1.|Create: Structures Arise      |create_structures_arise       |149.22.21           |Manifest: NOSIGNATURE         create_ultimate_factory-1.9.0-neoforge-1.21.1.jar |Create: Ultimate Factory      |create_ultimate_factory       |1.9.0               |Manifest: NOSIGNATURE         create_better_villagers-1.2.6-Neoforge-1.21.1.jar |Create_Better_Villagers       |create_better_villagers       |1.2.6-Neoforge-1.21.|Manifest: NOSIGNATURE         cullleaves-neoforge-4.0.1.jar                     |CullLeaves                    |cullleaves                    |4.0.1               |Manifest: NOSIGNATURE         cumulus_menus-1.21.1-2.0.3-neoforge.jar           |Cumulus                       |cumulus_menus                 |2.0.3               |Manifest: NOSIGNATURE         cupboard-1.21-2.9.jar                             |Cupboard mod                  |cupboard                      |2.9                 |Manifest: NOSIGNATURE         curios-neoforge-9.3.0+1.21.1.jar                  |Curios API                    |curios                        |9.3.0+1.21.1        |Manifest: NOSIGNATURE         deep_aether-1.21.1-1.1.2.jar                      |Deep Aether                   |deep_aether                   |1.1.2               |Manifest: NOSIGNATURE         deimos-1.21.1-neoforge-2.1.jar                    |Deimos                        |deimos                        |2.1                 |Manifest: NOSIGNATURE         dungeons-and-taverns-v4.4.4 [NeoForge].jar        |Dungeons and Taverns          |mr_dungeons_andtaverns        |1-v4.4.4            |Manifest: NOSIGNATURE         easyelevators-1.21.1-1.3.jar                      |Easy Elevators                |easyelevators                 |1.3                 |Manifest: NOSIGNATURE         easy_npc-neoforge-1.21.1-5.9.0.jar                |Easy NPC                      |easy_npc                      |0.0NONE             |Manifest: NOSIGNATURE         eatinganimation-1.21.0-6.0.1.jar                  |Eating Animation              |eatinganimation               |6.0.1               |Manifest: NOSIGNATURE         eggs-cobblemon-addon-0.6.jar                      |Eggs - Cobblemon Addon        |mr_eggs_cobblemonaddon        |0.6                 |Manifest: NOSIGNATURE         elevatorid-neoforge-1.21.1-1.11.4.jar             |ElevatorMod                   |elevatorid                    |1.21.1-1.11.4       |Manifest: NOSIGNATURE         enchdesc-neoforge-1.21.1-21.1.5.jar               |EnchantmentDescriptions       |enchdesc                      |21.1.5              |Manifest: NOSIGNATURE         entity_model_features_neoforge_1.21.1-2.4.1.jar   |Entity Model Features         |entity_model_features         |2.4.1               |Manifest: NOSIGNATURE         entity_texture_features_neoforge_1.21.1-6.2.9.jar |Entity Texture Features       |entity_texture_features       |6.2.9               |Manifest: NOSIGNATURE         entityculling-neoforge-1.7.3-mc1.21.jar           |EntityCulling                 |entityculling                 |1.7.3               |Manifest: NOSIGNATURE         epic-terrain_compatible-0.1.3.jar                 |Epic Terrain Compatible       |mr_epic_terrain_compatible    |0.1.3               |Manifest: NOSIGNATURE         EuphoriaPatcher-1.5.2-r5.4-neoforge.jar           |Euphoria Patcher              |euphoria_patcher              |1.5.2-r5.4-neoforge |Manifest: NOSIGNATURE         Explorify v1.6.2 f10-48.jar                       |Explorify                     |explorify                     |1.6.2               |Manifest: NOSIGNATURE         explosiveenhancement-neoforge-1.21.1-1.1.1-client.|Explosive Enhancement         |explosiveenhancement          |1.1.1               |Manifest: NOSIGNATURE         FarmersDelight-1.21.1-1.2.7.jar                   |Farmer's Delight              |farmersdelight                |1.2.7               |Manifest: NOSIGNATURE         FarmersWearableCookingPot-v0.1-1.21.1.jar         |Farmer's Wearable Cooking Pot |farmers_wearable_cooking_pot  |0.1                 |Manifest: NOSIGNATURE         FarmersStructures-1.0.1-1.21.1_neoforge.jar       |FarmersStructures             |farmers_structures            |1.0.0               |Manifest: NOSIGNATURE         ferritecore-7.0.2-neoforge.jar                    |Ferrite Core                  |ferritecore                   |7.0.2               |Manifest: 41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a         flywheel-neoforge-1.21.1-1.0.1-11.jar             |Flywheel                      |flywheel                      |1.0.1-11            |Manifest: NOSIGNATURE         forgeconfigapiport-neoforge-21.1.0.jar            |Forge Config API Port         |forgeconfigapiport            |21.1.0              |Manifest: NOSIGNATURE         forgified-fabric-api-0.107.0+2.0.22+1.21.1.jar    |Forgified Fabric API          |fabric_api                    |0.107.0+2.0.22+1.21.|Manifest: NOSIGNATURE         fabric-api-base-0.4.42+d1308dedd1.jar             |Forgified Fabric API Base     |fabric_api_base               |0.4.42+d1308dedd1   |Manifest: NOSIGNATURE         fabric-api-lookup-api-v1-1.6.69+c21168c319.jar    |Forgified Fabric API Lookup AP|fabric_api_lookup_api_v1      |1.6.69+c21168c319   |Manifest: NOSIGNATURE         fabric-biome-api-v1-13.0.30+1e62d33c19.jar        |Forgified Fabric Biome API (v1|fabric_biome_api_v1           |13.0.30+1e62d33c19  |Manifest: NOSIGNATURE         fabric-block-api-v1-1.0.22+a6e994cd19.jar         |Forgified Fabric Block API (v1|fabric_block_api_v1           |1.0.22+a6e994cd19   |Manifest: NOSIGNATURE         fabric-blockrenderlayer-v1-1.1.52+b089b4bd19.jar  |Forgified Fabric BlockRenderLa|fabric_blockrenderlayer_v1    |1.1.52+b089b4bd19   |Manifest: NOSIGNATURE         fabric-block-view-api-v2-1.0.10+9afaaf8c19.jar    |Forgified Fabric BlockView API|fabric_block_view_api_v2      |1.0.10+9afaaf8c19   |Manifest: NOSIGNATURE         fabric-client-tags-api-v1-1.1.15+e053909619.jar   |Forgified Fabric Client Tags  |fabric_client_tags_api_v1     |1.1.15+e053909619   |Manifest: NOSIGNATURE         fabric-command-api-v2-2.2.28+36d727be19.jar       |Forgified Fabric Command API (|fabric_command_api_v2         |2.2.28+36d727be19   |Manifest: NOSIGNATURE         fabric-content-registries-v0-8.0.17+0a0c14ff19.jar|Forgified Fabric Content Regis|fabric_content_registries_v0  |8.0.17+0a0c14ff19   |Manifest: NOSIGNATURE         fabric-convention-tags-v1-2.1.1+7f945d5b19.jar    |Forgified Fabric Convention Ta|fabric_convention_tags_v1     |2.1.1+7f945d5b19    |Manifest: NOSIGNATURE         fabric-convention-tags-v2-2.9.1+231468e519.jar    |Forgified Fabric Convention Ta|fabric_convention_tags_v2     |2.9.1+231468e519    |Manifest: NOSIGNATURE         fabric-data-attachment-api-v1-1.2.0+7330bc1b19.jar|Forgified Fabric Data Attachme|fabric_data_attachment_api_v1 |1.2.0+7330bc1b19    |Manifest: NOSIGNATURE         fabric-data-generation-api-v1-20.2.22+2d91a6db19.j|Forgified Fabric Data Generati|fabric_data_generation_api_v1 |20.2.22+2d91a6db19  |Manifest: NOSIGNATURE         fabric-entity-events-v1-1.7.0+1af6e62419.jar      |Forgified Fabric Entity Events|fabric_entity_events_v1       |1.7.0+1af6e62419    |Manifest: NOSIGNATURE         fabric-events-interaction-v0-0.7.13+7b71cc1619.jar|Forgified Fabric Events Intera|fabric_events_interaction_v0  |0.7.13+7b71cc1619   |Manifest: NOSIGNATURE         fabric-game-rule-api-v1-1.0.53+36d727be19.jar     |Forgified Fabric Game Rule API|fabric_game_rule_api_v1       |1.0.53+36d727be19   |Manifest: NOSIGNATURE         fabric-gametest-api-v1-2.0.5+29f188ce19.jar       |Forgified Fabric Game Test API|fabric_gametest_api_v1        |2.0.5+29f188ce19    |Manifest: NOSIGNATURE         fabric-item-api-v1-11.1.1+57cdfa8219.jar          |Forgified Fabric Item API (v1)|fabric_item_api_v1            |11.1.1+57cdfa8219   |Manifest: NOSIGNATURE         fabric-item-group-api-v1-4.1.6+e324903319.jar     |Forgified Fabric Item Group AP|fabric_item_group_api_v1      |4.1.6+e324903319    |Manifest: NOSIGNATURE         fabric-key-binding-api-v1-1.0.47+62cc7ce119.jar   |Forgified Fabric Key Binding A|fabric_key_binding_api_v1     |1.0.47+62cc7ce119   |Manifest: NOSIGNATURE         fabric-lifecycle-events-v1-2.4.0+36b6b86a19.jar   |Forgified Fabric Lifecycle Eve|fabric_lifecycle_events_v1    |2.4.0+36b6b86a19    |Manifest: NOSIGNATURE         fabric-loot-api-v2-3.0.15+a3ee712d19.jar          |Forgified Fabric Loot API (v2)|fabric_loot_api_v2            |3.0.15+a3ee712d19   |Manifest: NOSIGNATURE         fabric-loot-api-v3-1.0.3+333dfad919.jar           |Forgified Fabric Loot API (v3)|fabric_loot_api_v3            |1.0.3+333dfad919    |Manifest: NOSIGNATURE         fabric-message-api-v1-6.0.13+e053909619.jar       |Forgified Fabric Message API (|fabric_message_api_v1         |6.0.13+e053909619   |Manifest: NOSIGNATURE         fabric-model-loading-api-v1-2.0.0+a6e994cd19.jar  |Forgified Fabric Model Loading|fabric_model_loading_api_v1   |2.0.0+a6e994cd19    |Manifest: NOSIGNATURE         fabric-networking-api-v1-4.3.0+5c124ecf19.jar     |Forgified Fabric Networking AP|fabric_networking_api_v1      |4.3.0+5c124ecf19    |Manifest: NOSIGNATURE         fabric-object-builder-api-v1-15.2.1+ba60825e19.jar|Forgified Fabric Object Builde|fabric_object_builder_api_v1  |15.2.1+ba60825e19   |Manifest: NOSIGNATURE         fabric-particles-v1-4.0.2+824f924c19.jar          |Forgified Fabric Particles (v1|fabric_particles_v1           |4.0.2+824f924c19    |Manifest: NOSIGNATURE         fabric-recipe-api-v1-5.0.13+59440bcc19.jar        |Forgified Fabric Recipe API (v|fabric_recipe_api_v1          |5.0.13+59440bcc19   |Manifest: NOSIGNATURE         fabric-registry-sync-v0-5.1.3+0c9b5b5419.jar      |Forgified Fabric Registry Sync|fabric_registry_sync_v0       |5.1.3+0c9b5b5419    |Manifest: NOSIGNATURE         fabric-renderer-indigo-1.7.0+acb05a3919.jar       |Forgified Fabric Renderer - In|fabric_renderer_indigo        |1.7.0+acb05a3919    |Manifest: NOSIGNATURE         fabric-renderer-api-v1-3.4.0+acb05a3919.jar       |Forgified Fabric Renderer API |fabric_renderer_api_v1        |3.4.0+acb05a3919    |Manifest: NOSIGNATURE         fabric-rendering-v1-5.0.5+077ba95f19.jar          |Forgified Fabric Rendering (v1|fabric_rendering_v1           |5.0.5+077ba95f19    |Manifest: NOSIGNATURE         fabric-rendering-data-attachment-v1-0.3.48+73761d2|Forgified Fabric Rendering Dat|fabric_rendering_data_attachme|0.3.48+73761d2e19   |Manifest: NOSIGNATURE         fabric-rendering-fluids-v1-3.1.6+857185bc19.jar   |Forgified Fabric Rendering Flu|fabric_rendering_fluids_v1    |3.1.6+857185bc19    |Manifest: NOSIGNATURE         fabric-resource-conditions-api-v1-4.3.0+edeecbd819|Forgified Fabric Resource Cond|fabric_resource_conditions_api|4.3.0+edeecbd819    |Manifest: NOSIGNATURE         fabric-resource-loader-v0-1.3.1+4ea8954419.jar    |Forgified Fabric Resource Load|fabric_resource_loader_v0     |1.3.1+4ea8954419    |Manifest: NOSIGNATURE         fabric-screen-api-v1-2.0.25+b282c4bb19.jar        |Forgified Fabric Screen API (v|fabric_screen_api_v1          |2.0.25+b282c4bb19   |Manifest: NOSIGNATURE         fabric-screen-handler-api-v1-1.3.87+8dbc56dd19.jar|Forgified Fabric Screen Handle|fabric_screen_handler_api_v1  |1.3.87+8dbc56dd19   |Manifest: NOSIGNATURE         fabric-sound-api-v1-1.0.23+10b84f8419.jar         |Forgified Fabric Sound API (v1|fabric_sound_api_v1           |1.0.23+10b84f8419   |Manifest: NOSIGNATURE         fabric-transfer-api-v1-5.4.1+d719f32719.jar       |Forgified Fabric Transfer API |fabric_transfer_api_v1        |5.4.1+d719f32719    |Manifest: NOSIGNATURE         fabric-transitive-access-wideners-v1-6.1.0+0df3143|Forgified Fabric Transitive Ac|fabric_transitive_access_widen|6.1.0+0df3143b19    |Manifest: NOSIGNATURE         ftb-library-neoforge-2101.1.11.jar                |FTB Library                   |ftblibrary                    |2101.1.11           |Manifest: NOSIGNATURE         ftb-quests-neoforge-2101.1.6.jar                  |FTB Quests                    |ftbquests                     |2101.1.6            |Manifest: NOSIGNATURE         ftb-teams-neoforge-2101.1.2.jar                   |FTB Teams                     |ftbteams                      |2101.1.2            |Manifest: NOSIGNATURE         fzzy_config-0.6.5+1.21+neoforge.jar               |Fzzy Config                   |fzzy_config                   |0.6.5+1.21+neoforge |Manifest: NOSIGNATURE         gametechbcs_spellbooks-2.6.5-1.21.1.jar           |GameTechBC's Spellbooks       |gametechbcs_spellbooks        |2.6.5-1.21.1        |Manifest: NOSIGNATURE         GatewaysToEternity-1.21.1-5.0.2.jar               |Gateways To Eternity          |gateways                      |5.0.2               |Manifest: NOSIGNATURE         geckolib-neoforge-1.21.1-4.7.4.jar                |GeckoLib 4                    |geckolib                      |4.7.4               |Manifest: NOSIGNATURE         GlitchCore-neoforge-1.21.1-2.1.0.0.jar            |GlitchCore                    |glitchcore                    |2.1.0.0             |Manifest: NOSIGNATURE         gravelmon-forge-3.0.2.jar                         |Gravelmon                     |gravelmon                     |3.0.2               |Manifest: NOSIGNATURE         gravels_extended_battles-neoforge-1.5.3.jar       |Gravels Extended Battles      |gravels_extended_battles      |1.5.3               |Manifest: NOSIGNATURE         gml-6.0.2.jar                                     |GroovyModLoader               |gml                           |6.0.2               |Manifest: NOSIGNATURE         gtbcs_spell_lib-1.0.1-1.21.1.jar                  |GTBC's SpellLib               |gtbcs_spell_lib               |1.0.1-1.21.1        |Manifest: NOSIGNATURE         guardvillagers-2.3.2-1.21.1.jar                   |Guard Villagers               |guardvillagers                |2.3.2               |Manifest: NOSIGNATURE         handcrafted-neoforge-1.21.1-4.0.2.jar             |Handcrafted                   |handcrafted                   |4.0.2               |Manifest: NOSIGNATURE         Iceberg-1.21.1-neoforge-1.2.9.2.jar               |Iceberg                       |iceberg                       |1.2.9.2             |Manifest: NOSIGNATURE         immersivelanterns-neoforge-1.0.6-1.21.1.jar       |Immersive Lanterns            |immersivelanterns             |1.0.6               |Manifest: NOSIGNATURE         ImmersiveUI-NEOFORGE-0.3.0.jar                    |ImmersiveUI                   |immersiveui                   |0.3.0               |Manifest: NOSIGNATURE         Incendium_1.21.x_v5.4.4.jar                       |Incendium                     |incendium                     |5.4.3               |Manifest: NOSIGNATURE         iris-neoforge-1.8.8+mc1.21.1.jar                  |Iris                          |iris                          |1.8.8+mc1.21.1      |Manifest: NOSIGNATURE         ironchest-1.21-neoforge-16.0.7.jar                |Iron Chests                   |ironchest                     |1.21-neoforge-16.0.7|Manifest: NOSIGNATURE         ironfurnaces-neoforge-1.21.1-4.2.6.jar            |Iron Furnaces                 |ironfurnaces                  |4.2.6               |Manifest: NOSIGNATURE         irons_jewelry-1.21.1-1.0.9.jar                    |Iron's Gems 'n Jewelry        |irons_jewelry                 |1.21.1-1.0.9        |Manifest: NOSIGNATURE         irons_spellbooks-1.21.1-3.9.1.jar                 |Iron's Spells 'n Spellbooks   |irons_spellbooks              |1.21.1-3.9.1        |Manifest: NOSIGNATURE         Jade-1.21.1-NeoForge-15.9.2.jar                   |Jade                          |jade                          |15.9.2+neoforge     |Manifest: NOSIGNATURE         JadeAddons-1.21.1-NeoForge-6.0.1.jar              |Jade Addons                   |jadeaddons                    |0.0NONE             |Manifest: NOSIGNATURE         jamlib-neoforge-1.3.2+1.21.1.jar                  |JamLib                        |jamlib                        |1.3.2+1.21.1        |Manifest: NOSIGNATURE         jei-1.21.1-neoforge-19.21.0.247.jar               |Just Enough Items             |jei                           |19.21.0.247         |Manifest: NOSIGNATURE         JustEnoughResources-NeoForge-1.21.1-1.6.0.13.jar  |Just Enough Resources         |jeresources                   |1.6.0.13            |Manifest: NOSIGNATURE         kffmod-5.7.0.jar                                  |Kotlin For Forge              |kotlinforforge                |5.7.0               |Manifest: NOSIGNATURE         kuma-api-neoforge-21.0.5-SNAPSHOT.jar             |KumaAPI                       |kuma_api                      |21.0.5-SNAPSHOT     |Manifest: NOSIGNATURE         l2archery-3.0.3.jar                               |L2Archery                     |l2archery                     |3.0.3               |Manifest: NOSIGNATURE         l2backpack-3.0.13.jar                             |L2Backpack                    |l2backpack                    |3.0.13              |Manifest: NOSIGNATURE         l2complements-3.0.10.jar                          |L2Complements                 |l2complements                 |3.0.10              |Manifest: NOSIGNATURE         l2core-3.0.8+4.jar                                |L2Core                        |l2core                        |3.0.8+4             |Manifest: NOSIGNATURE         l2damagetracker-3.0.5.jar                         |L2DamageTracker               |l2damagetracker               |3.0.5               |Manifest: NOSIGNATURE         l2itemselector-3.0.8.jar                          |L2ItemSelector                |l2itemselector                |3.0.8               |Manifest: NOSIGNATURE         l2library-3.0.4.jar                               |L2Library                     |l2library                     |3.0.4               |Manifest: NOSIGNATURE         l2menustacker-3.0.9.jar                           |L2MenuStacker                 |l2menustacker                 |3.0.9               |Manifest: NOSIGNATURE         l2tabs-3.0.5+7.jar                                |L2Tabs                        |l2tabs                        |3.0.5+7             |Manifest: NOSIGNATURE         l2weaponry-3.0.4.jar                              |L2Weaponry                    |l2weaponry                    |3.0.4               |Manifest: NOSIGNATURE         L_Ender's Cataclysm-2.58-1.21.1.jar               |L_Ender's Cataclysm           |cataclysm                     |2.58-1.21.1         |Manifest: NOSIGNATURE         laserbridges-1.21.1-neoforge-5.jar                |Laser Bridges & Doors         |laserbridges                  |5                   |Manifest: NOSIGNATURE         letsparkour-1.21.1-1.8.jar                        |Let's Parkour                 |letsparkour                   |1.8                 |Manifest: NOSIGNATURE         libraryferret-neoforge-1.21.1-4.0.0.jar           |Library ferret                |libraryferret                 |4.0.0               |Manifest: NOSIGNATURE         lionfishapi-2.6.jar                               |lionfishapi                   |lionfishapi                   |2.6                 |Manifest: NOSIGNATURE         lithostitched-neoforge-1.21.1-1.4.5.jar           |Lithostitched                 |lithostitched                 |1.4.2               |Manifest: NOSIGNATURE         Loot Beams Refork-neoforge-1.21.1-2.5.11.jar      |Loot Beams Refork             |lootbeams                     |2.5.11              |Manifest: NOSIGNATURE         lootintegrations-1.21-4.2.jar                     |Lootintegrations mod          |lootintegrations              |4.2                 |Manifest: NOSIGNATURE         lootintegrations_cataclysm-1.1.jar                |lootintegrations_cataclysm mod|lootintegrations_cataclysm    |1                   |Manifest: NOSIGNATURE         lootintegrations_ctov-1.3.jar                     |lootintegrations_ctov mod     |lootintegrations_ctov         |1                   |Manifest: NOSIGNATURE         lootintegrations_dnt-2.3.jar                      |lootintegrations_dnt mod      |lootintegrations_dnt          |1                   |Manifest: NOSIGNATURE         lootintegrations_yungs-1.3.jar                    |lootintegrations_yungs mod    |lootintegrations_yungs        |1                   |Manifest: NOSIGNATURE         mcw-bridges-3.0.0-mc1.21.1neoforge.jar            |Macaw's Bridges               |mcwbridges                    |3.0.0               |Manifest: NOSIGNATURE         mcw-doors-1.1.2-mc1.21.1neoforge.jar              |Macaw's Doors                 |mcwdoors                      |1.1.2               |Manifest: NOSIGNATURE         mcw-fences-1.1.2-mc1.21.1neoforge.jar             |Macaw's Fences and Walls      |mcwfences                     |1.1.2               |Manifest: NOSIGNATURE         mcw-furniture-3.3.0-mc1.21.1neoforge.jar          |Macaw's Furniture             |mcwfurnitures                 |3.3.0               |Manifest: NOSIGNATURE         mcw-lights-1.1.1-mc1.21.1neoforge.jar             |Macaw's Lights and Lamps      |mcwlights                     |1.1.1               |Manifest: NOSIGNATURE         mcw-paintings-1.0.5-1.21.1neoforge.jar            |Macaw's Paintings             |mcwpaintings                  |1.0.5               |Manifest: NOSIGNATURE         mcw-paths-1.1.0neoforge-mc1.21.1.jar              |Macaw's Paths and Pavings     |mcwpaths                      |1.1.0               |Manifest: NOSIGNATURE         mcw-roofs-2.3.1-mc1.21.1neoforge.jar              |Macaw's Roofs                 |mcwroofs                      |2.3.1               |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.4-mc1.21.1neoforge.jar          |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.4               |Manifest: NOSIGNATURE         mcw-windows-2.3.0-mc1.21.1neoforge.jar            |Macaw's Windows               |mcwwindows                    |2.3.2               |Manifest: NOSIGNATURE         V6.6-Matmos-mod-1.21.1.jar                        |Matmos ambiant sound          |matmos                        |6.6                 |Manifest: NOSIGNATURE         midnightlib-1.6.9-neoforge+1.21.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         modernfix-neoforge-5.20.2+mc1.21.1.jar            |ModernFix                     |modernfix                     |5.20.2+mc1.21.1     |Manifest: NOSIGNATURE         moonlight-1.21-2.17.34-neoforge.jar               |Moonlight Lib                 |moonlight                     |1.21-2.17.34        |Manifest: NOSIGNATURE         MouseTweaks-neoforge-mc1.21-2.26.1.jar            |Mouse Tweaks                  |mousetweaks                   |2.26.1              |Manifest: NOSIGNATURE         MythsAndLegends-neoforge-1.7.2-Hotfix.jar         |MythsAndLegends               |mythsandlegends               |1.7.2               |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.133-universal.jar                   |NeoForge                      |neoforge                      |21.1.133            |Manifest: NOSIGNATURE         Nirvana Library-neoforge-1.21.1-1.0.1.jar         |Nirvana Library               |nirvana_lib                   |1.0.1               |Manifest: NOSIGNATURE         nitrogen_internals-1.21.1-1.1.22-neoforge.jar     |Nitrogen                      |nitrogen_internals            |1.1.22              |Manifest: NOSIGNATURE         notenoughcrashes-neoforge-4.4.8+1.21.1.jar        |Not Enough Crashes            |notenoughcrashes              |4.4.8+1.21.1        |Manifest: NOSIGNATURE         notenoughanimations-neoforge-1.9.2-mc1.21.jar     |NotEnoughAnimations           |notenoughanimations           |1.9.2               |Manifest: NOSIGNATURE         OctoLib-NEOFORGE-0.5.0.1.jar                      |OctoLib                       |octolib                       |0.5.0.1             |Manifest: NOSIGNATURE         owo-lib-neoforge-0.12.15-beta.12+1.21.jar         |oωo                           |owo                           |0.12.15-beta.12+1.21|Manifest: NOSIGNATURE         packetfixer-neoforge-2.1.0-1.21-to-1.21.3.jar     |Packet Fixer                  |packetfixer                   |2.1.0               |Manifest: NOSIGNATURE         fallingtrees-neoforge-mc1.21-0.13.2-SNAPSHOT.jar  |Panda's Falling Tree's        |fallingtrees                  |0.13.2              |Manifest: NOSIGNATURE         pandalib-neoforge-mc1.21-0.5.2-SNAPSHOT.jar       |PandaLib                      |pandalib                      |0.5.2               |Manifest: NOSIGNATURE         paraglider-1.0.0-neoforge-1.21.1.jar              |Paraglider                    |paraglider                    |1.0.0               |Manifest: NOSIGNATURE         Patchouli-1.21-88-NEOFORGE.jar                    |Patchouli                     |patchouli                     |1.21-88-NEOFORGE    |Manifest: NOSIGNATURE         Pehkui-3.8.3+1.21-neoforge.jar                    |Pehkui                        |pehkui                        |3.8.3+1.21-neoforge |Manifest: NOSIGNATURE         pet-your-cobblemon-1.3.3.jar                      |Pet Your Cobblemon            |petyourcobblemon              |1.3.3               |Manifest: NOSIGNATURE         Placebo-1.21.1-9.7.0.jar                          |Placebo                       |placebo                       |9.7.0               |Manifest: NOSIGNATURE         player-animation-lib-forge-2.0.1+1.21.1.jar       |Player Animator               |playeranimator                |2.0.1+1.21.1        |Manifest: NOSIGNATURE         Ponder-NeoForge-1.21.1-1.0.0.jar                  |Ponder                        |ponder                        |1.0.0               |Manifest: NOSIGNATURE         prickle-neoforge-1.21.1-21.1.6.jar                |PrickleMC                     |prickle                       |21.1.6              |Manifest: NOSIGNATURE         rctmod-neoforge-1.21.1-0.13.16-beta.jar           |Radical Cobblemon Trainers    |rctmod                        |0.13.16-beta        |Manifest: NOSIGNATURE         rctapi-neoforge-1.21.1-0.10.12-beta.jar           |Radical Cobblemon Trainers API|rctapi                        |0.10.12-beta        |Manifest: NOSIGNATURE         relics-1.21.1-0.10.7.0.jar                        |Relics                        |relics                        |0.10.7.0            |Manifest: NOSIGNATURE         resourcefullib-neoforge-1.21-3.0.11.jar           |Resourceful Lib               |resourcefullib                |3.0.11              |Manifest: NOSIGNATURE         Searchables-neoforge-1.21.1-1.0.2.jar             |Searchables                   |searchables                   |1.0.2               |Manifest: NOSIGNATURE         SereneSeasons-neoforge-1.21.1-10.1.0.3.jar        |Serene Seasons                |sereneseasons                 |10.1.0.3            |Manifest: NOSIGNATURE         voicechat-neoforge-1.21.1-2.5.26.jar              |Simple Voice Chat             |voicechat                     |1.21.1-2.5.26       |Manifest: NOSIGNATURE         SkyVillages-1.0.6-1.21.x-neoforge-release.jar     |Sky Villages                  |skyvillages                   |1.0.6               |Manifest: NOSIGNATURE         smallships-neoforge-1.21.1-2.0.0-b2.1.jar         |Small Ships                   |smallships                    |2.0.0-b2.1          |Manifest: NOSIGNATURE         smarterfarmers-1.21-2.2.2-neoforge.jar            |Smarter Farmers               |smarterfarmers                |1.21-2.2.2          |Manifest: NOSIGNATURE         sodium-neoforge-0.6.9+mc1.21.1.jar                |Sodium                        |sodium                        |0.6.9+mc1.21.1      |Manifest: NOSIGNATURE         sodiumdynamiclights-neoforge-1.0.10-1.21.1.jar    |Sodium Dynamic Lights         |sodiumdynamiclights           |1.0.9               |Manifest: NOSIGNATURE         solarcooker-neoforge-1.21.1-4.2.0.0.jar           |Solar Cooker                  |solarcooker                   |1.21.1-4.2.0.0      |Manifest: NOSIGNATURE         sophisticatedbackpacks-1.21.1-3.24.1.1209.jar     |Sophisticated Backpacks       |sophisticatedbackpacks        |3.24.1              |Manifest: NOSIGNATURE         sophisticatedcore-1.21.1-1.3.2.900.jar            |Sophisticated Core            |sophisticatedcore             |1.3.2               |Manifest: NOSIGNATURE         sound-physics-remastered-neoforge-1.21.1-1.4.8.jar|Sound Physics Remastered      |sound_physics_remastered      |1.21.1-1.4.8        |Manifest: NOSIGNATURE         spectrelib-neoforge-0.17.2+1.21.jar               |SpectreLib                    |spectrelib                    |0.17.2+1.21         |Manifest: NOSIGNATURE         Stellarity-3.0.6.1.jar                            |Stellarity                    |stellarity                    |3.0.6.1             |Manifest: NOSIGNATURE         Storage Drawers-neoforge-1.21-13.8.5.jar          |Storage Drawers               |storagedrawers                |13.8.5              |Manifest: NOSIGNATURE         structureessentials-1.21.1-4.5.jar                |Structure Essentials mod      |structureessentials           |4.5                 |Manifest: NOSIGNATURE         supplementaries-1.21-3.0.41-beta-neoforge.jar     |Supplementaries               |supplementaries               |1.21-3.0.41-beta    |Manifest: NOSIGNATURE         TaxDeepVillager+M.1.21.1+NeoF.2.0.0.jar           |Tax' Deep Villager            |taxdv                         |2.0.0               |Manifest: NOSIGNATURE         TaxOceanVillager+M.1.21.1+NeoF.4.0.1.jar          |Tax' Ocean Villager           |taxov                         |4.0.1               |Manifest: NOSIGNATURE         taxtg-2.0.1-neoforge-1.21.1.jar                   |Tax' Tree Giant               |taxtg                         |2.0.1               |Manifest: NOSIGNATURE         tctcore-1.6-neoforge-1.21.1.jar                   |tctcore                       |tctcore                       |1.6                 |Manifest: NOSIGNATURE         TerraBlender-neoforge-1.21.1-4.1.0.3.jar          |TerraBlender                  |terrablender                  |4.1.0.3             |Manifest: NOSIGNATURE         aether-1.21.1-1.5.5-neoforge.jar                  |The Aether                    |aether                        |1.5.5               |Manifest: NOSIGNATURE         twilightforest-1.21.1-4.6.3003-universal.jar      |The Twilight Forest           |twilightforest                |4.6.3003            |Manifest: NOSIGNATURE         Tomtaru's Cobblemon  Farmer's Delight Tweaks - 1.2|Tomtaru's Cobblemon & Farmer's|tmtcd                         |1.2.0               |Manifest: NOSIGNATURE         twilightdelight-3.0.2.jar                         |Twilight Flavors & Delight    |twilightdelight               |3.0.2               |Manifest: NOSIGNATURE         txnilib-neoforge-1.0.22-1.21.1.jar                |TxniLib                       |txnilib                       |1.0.21              |Manifest: NOSIGNATURE         utility-belt-neoforge-2.6.0+1.21.1.jar            |Utility Belt                  |utility_belt                  |2.6.0+1.21.1        |Manifest: NOSIGNATURE         villagernames-1.21.1-8.2.jar                      |Villager Names                |villagernames                 |8.2                 |Manifest: NOSIGNATURE         Waves-1.21-1.4.1.jar                              |Waves                         |waves                         |1.4.1               |Manifest: NOSIGNATURE         waystones-neoforge-1.21.1-21.1.12.jar             |Waystones                     |waystones                     |21.1.12             |Manifest: NOSIGNATURE         wither_spawn_animation-1.4.2-neoforge-1.21.1.jar  |Wither Spawn Animation        |wither_spawn_animation        |1.4.2               |Manifest: NOSIGNATURE         worldedit-mod-7.3.8.jar                           |WorldEdit                     |worldedit                     |7.3.8+6939-7d32b45  |Manifest: NOSIGNATURE         Xaeros_Minimap_25.1.0_NeoForge_1.21.jar           |Xaero's Minimap               |xaerominimap                  |25.1.0              |Manifest: NOSIGNATURE         XaerosWorldMap_1.39.4_NeoForge_1.21.jar           |Xaero's World Map             |xaeroworldmap                 |1.39.4              |Manifest: NOSIGNATURE         YungsApi-1.21.1-NeoForge-5.1.4.jar                |YUNG's API                    |yungsapi                      |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterDesertTemples-1.21.1-NeoForge-4.1.5.jar|YUNG's Better Desert Temples  |betterdeserttemples           |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBetterDungeons-1.21.1-NeoForge-5.1.4.jar     |YUNG's Better Dungeons        |betterdungeons                |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterJungleTemples-1.21.1-NeoForge-3.1.2.jar|YUNG's Better Jungle Temples  |betterjungletemples           |1.21.1-NeoForge-3.1.|Manifest: NOSIGNATURE         YungsBetterMineshafts-1.21.1-NeoForge-5.1.1.jar   |YUNG's Better Mineshafts      |bettermineshafts              |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterNetherFortresses-1.21.1-NeoForge-3.1.4.|YUNG's Better Nether Fortresse|betterfortresses              |1.21.1-NeoForge-3.1.|Manifest: NOSIGNATURE         YungsBetterOceanMonuments-1.21.1-NeoForge-4.1.2.ja|YUNG's Better Ocean Monuments |betteroceanmonuments          |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBetterStrongholds-1.21.1-NeoForge-5.1.3.jar  |YUNG's Better Strongholds     |betterstrongholds             |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterWitchHuts-1.21.1-NeoForge-4.1.1.jar    |YUNG's Better Witch Huts      |betterwitchhuts               |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBridges-1.21.1-NeoForge-5.1.1.jar            |YUNG's Bridges                |yungsbridges                  |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsExtras-1.21.1-NeoForge-5.1.1.jar             |YUNG's Extras                 |yungsextras                   |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsMenuTweaks-1.21.1-NeoForge-2.1.2.jar         |YUNG's Menu Tweaks            |yungsmenutweaks               |1.21.1-NeoForge-2.1.|Manifest: NOSIGNATURE     Crash Report UUID: 65d247b5-6e52-4529-8858-0086ca899884     FML: 4.0.38     NeoForge: 21.1.133     Flywheel Backend: flywheel:indirect     Suspected Mods: Forgified Fabric Resource Conditions API (v1) (fabric_resource_conditions_api_v1), Forgified Fabric Registry Sync (v0) (fabric_registry_sync_v0)
    • @TileEntity it seemed to work, but do you know of a way i could get the two mods to play nicely with each other? Im just trying to add supplementary to a modpack (and most of the mods dont play nicely with neoforge) so i cant exactly remake the whole pack.
    • I did that and it says Error: Unable to access jarfile server.jar im assuming this is why you said make to sure they match? so I checked and following that same path then viewing the server folder, there is no .far file only a .dll file checking the modded server folder obviously has a server-1.20.1.jar file though completely different pathing so I don't think this is what you mean but let me know if im missing something. ALSO, was probably not what was needed but I reinstalled Java 17 in case it didnt fully download for some reason? still no such file.
    • Yes - Update 6 makes larger changes which is breaking these addons Most addons already have the update - some are still in the update process and will be released in the next days
  • Topics

×
×
  • Create New...

Important Information

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