Jump to content

Recommended Posts

Posted

I use Sphinx4 in my mod and everything is working fine (finally) except for that it can't file some acoustic model files. These files have no extension, so are just referenced to as "/means" or "/noisedict". They work fine in the editor, but don't work in the builded jar. The jar says that it can't find the file at x location, but when I extract the jar and look where it says, the file is there. I don't know what else to do, because the file it can't find is exactly where it is looking for it (it is "means", if that helps).

 

Thanks

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

Posted

How are you trying to load the files?

(That means "show your code")

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Posted

Here is the loader class. I don't fully understand how it loads the files. However, the editor loads means.txt, variances.txt, etc. just fine. But when I build it it throws than error that it can't find the file, even though the file is exactly where it specifies that it is missing the file. I don't get it.

 

Sphinx3Loader:

/*
* Copyright 1999-2004 Carnegie Mellon University.  
* Portions Copyright 2004 Sun Microsystems, Inc.  
* Portions Copyright 2004 Mitsubishi Electric Research Laboratories.
* All Rights Reserved.  Use is subject to license terms.
* 
* See the file "license.terms" for information on usage and
* redistribution of this file, and for a DISCLAIMER OF ALL 
* WARRANTIES.
*
*/
package edu.cmu.sphinx.linguist.acoustic.tiedstate;

import edu.cmu.sphinx.decoder.adaptation.ClusteredDensityFileData;
import edu.cmu.sphinx.decoder.adaptation.Transform;
import edu.cmu.sphinx.linguist.acoustic.*;
import edu.cmu.sphinx.linguist.acoustic.tiedstate.tiedmixture.MixtureComponentSet;
import edu.cmu.sphinx.linguist.acoustic.tiedstate.tiedmixture.PrunableMixtureComponent;
import edu.cmu.sphinx.linguist.acoustic.tiedstate.tiedmixture.SetBasedGaussianMixture;
import static edu.cmu.sphinx.linguist.acoustic.tiedstate.Pool.Feature.*;
import edu.cmu.sphinx.util.ExtendedStreamTokenizer;
import edu.cmu.sphinx.util.LogMath;
import edu.cmu.sphinx.util.TimerPool;
import edu.cmu.sphinx.util.Utilities;
import edu.cmu.sphinx.util.props.*;

import java.io.*;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
* Loads a tied-state acoustic model generated by the Sphinx-3 trainer.
* <p>
* The acoustic model is stored as a directory specified by a URL. The
* dictionary and language model files are not required to be in the package.
* You can specify their locations separately.
* <p>
* Configuration file should set mandatory property of component: <b>location</b> - 
* this specifies the directory where the actual model
* data files are. You can use <b>resource:</b> prefix to refer to files packed
* inside jar or any other URI scheme.
* The actual model data files are named "mdef", "means", "variances",
* "transition_matrices", "mixture_weights".
*/

public class Sphinx3Loader implements Loader {

    /**
     * The unit manager
     */
    @S4Component(type = UnitManager.class)
    public final static String PROP_UNIT_MANAGER = "unitManager";

    /**
     * The root location of the model directory structure
     */
    @S4String(mandatory = true)
    public final static String PROP_LOCATION = "location";

    /**
     * The property specifying whether context-dependent units should be used.
     */
    @S4Boolean(defaultValue = true)
    public final static String PROP_USE_CD_UNITS = "useCDUnits";

    /**
     * Mixture component score floor.
     */
    @S4Double(defaultValue = 0.0f)
    public final static String PROP_MC_FLOOR = "mixtureComponentScoreFloor";

    /**
     * Variance floor.
     */
    @S4Double(defaultValue = 0.0001f)
    public final static String PROP_VARIANCE_FLOOR = "varianceFloor";

    /**
     * Mixture weight floor
     */
    @S4Double(defaultValue = 1e-7f)
    public final static String PROP_MW_FLOOR = "mixtureWeightFloor";
    
    /**
     * Number of top Gaussians to use in scoring
     */
    @S4Integer(defaultValue = 4)
    public final static String PROP_TOPN = "topGaussiansNum";

    protected final static String FILLER = "filler";
    protected final static String SILENCE_CIPHONE = "SIL";
    protected final static int BYTE_ORDER_MAGIC = 0x11223344;

    /**
     * Supports this version of the acoustic model
     */
    public final static String MODEL_VERSION = "0.3";

    private final static int CONTEXT_SIZE = 1;
    protected Properties modelProps;
    protected Pool<float[]> meansPool;
    protected Pool<float[]> variancePool;
    protected Pool<float[][]> transitionsPool;
    protected GaussianWeights mixtureWeights;
    private int numStates;
    private int numStreams;
    private int numBase;
    private int numGaussiansPerState;
    private int[] vectorLength;
    private int[] senone2ci;

    protected Pool<float[][]> meanTransformationMatrixPool;
    protected Pool<float[]> meanTransformationVectorPool;
    protected Pool<float[][]> varianceTransformationMatrixPool;
    protected Pool<float[]> varianceTransformationVectorPool;

    protected float[][] transformMatrix;
    private MixtureComponentSet[] phoneticTiedMixtures;
    protected Pool<Senone> senonePool;

    private Map<String, Unit> contextIndependentUnits;
    private HMMManager hmmManager;
    protected LogMath logMath;
    private UnitManager unitManager;
    private boolean swap;

    private final static String DENSITY_FILE_VERSION = "1.0";
    private final static String MIXW_FILE_VERSION = "1.0";
    private final static String TMAT_FILE_VERSION = "1.0";
    private final static String TRANSFORM_FILE_VERSION = "0.1";
    // --------------------------------------
    // Configuration variables
    // --------------------------------------
    protected Logger logger;
    private URL location;
    protected float distFloor;
    protected float mixtureWeightFloor;
    protected float varianceFloor;
    private int topGauNum;
    protected boolean useCDUnits;
    private boolean loaded;

    public Sphinx3Loader(URL location,
            UnitManager unitManager, float distFloor, float mixtureWeightFloor,
            float varianceFloor, int topGauNum, boolean useCDUnits) {

        init(location, unitManager, distFloor,
                mixtureWeightFloor, varianceFloor, topGauNum, useCDUnits,
                Logger.getLogger(getClass().getName()));
    }

    public Sphinx3Loader(String location,
            UnitManager unitManager, float distFloor, float mixtureWeightFloor,
            float varianceFloor, int topGauNum, boolean useCDUnits)
            throws MalformedURLException, ClassNotFoundException {

        init(ConfigurationManagerUtils.resourceToURL(location),
                unitManager, distFloor, mixtureWeightFloor,
                varianceFloor, topGauNum, useCDUnits,
                Logger.getLogger(getClass().getName()));
    }

    protected void init(URL location,
            UnitManager unitManager, float distFloor, float mixtureWeightFloor,
            float varianceFloor, int topGauNum, boolean useCDUnits, Logger logger) {
        logMath = LogMath.getLogMath();
        this.location = location;
        this.logger = logger;
        this.unitManager = unitManager;
        this.distFloor = distFloor;
        this.mixtureWeightFloor = mixtureWeightFloor;
        this.varianceFloor = varianceFloor;
        this.topGauNum = topGauNum;
        this.useCDUnits = useCDUnits;
    }

    public Sphinx3Loader() {

    }

    public int getNumStates() {
        return numStates;
    }

    public int getNumStreams() {
        return numStreams;
    }

    public int getNumGaussiansPerState() {
        return numGaussiansPerState;
    }

    public int[] getVectorLength() {
        return vectorLength;
    }
    
    public int[] getSenone2Ci() {
        return senone2ci;
    }

    public String getLocation() {
        return this.location.getPath();
    }
    
    public boolean hasTiedMixtures() {
        String modelType = modelProps.getProperty("-model", "cont");
        return modelType.equals("ptm");
    }

    public void newProperties(PropertySheet ps) throws PropertyException {

        init(ConfigurationManagerUtils.getResource(PROP_LOCATION, ps),
                (UnitManager) ps.getComponent(PROP_UNIT_MANAGER),
                ps.getFloat(PROP_MC_FLOOR), ps.getFloat(PROP_MW_FLOOR),
                ps.getFloat(PROP_VARIANCE_FLOOR),
                ps.getInt(PROP_TOPN),
                ps.getBoolean(PROP_USE_CD_UNITS), ps.getLogger());
    }

    // This function is a bit different from the
    // ConfigurationManagerUtils.getResource
    // for compatibility reasons. By default it looks for the resources, not
    // for the files.
    protected InputStream getDataStream(String path) throws IOException,
            URISyntaxException {
        return new URL(Utilities.pathJoin(location.toString(), path)).openStream();
    }

    public void load() throws IOException {
        if (!loaded) {
            TimerPool.getTimer(this, "Load AM").start();

            hmmManager = new HMMManager();
            contextIndependentUnits = new LinkedHashMap<String, Unit>();

            // dummy pools for these elements
            meanTransformationMatrixPool = null;
            meanTransformationVectorPool = null;
            varianceTransformationMatrixPool = null;
            varianceTransformationVectorPool = null;
            transformMatrix = null;

            // do the actual acoustic model loading
            try {
                loadModelFiles();
            } catch (URISyntaxException e) {
                throw new RuntimeException(e);
            }

            // done
            loaded = true;
            TimerPool.getTimer(this, "Load AM").stop();
        }
    }

    /**
     * Return the HmmManager.
     * 
     * @return the hmmManager
     */
    protected HMMManager getHmmManager() {
        return hmmManager;
    }

    /**
     * Return the MatrixPool.
     * 
     * @return the matrixPool
     */
    protected Pool<float[][]> getMatrixPool() {
        return transitionsPool;
    }

    /**
     * Return the MixtureWeightsPool.
     * 
     * @return the mixtureWeightsPool
     */
    protected GaussianWeights getMixtureWeightsPool() {
        return mixtureWeights;
    }

    /**
     * Loads the AcousticModel from a directory in the file system.
     * @throws IOException IO went wrong
     * @throws URISyntaxException uri was incorrectly specified
     */
    protected void loadModelFiles() throws IOException,
            URISyntaxException {
        
        meansPool = loadDensityFile("means.txt", -Float.MAX_VALUE);
        variancePool = loadDensityFile("variances.txt",
                varianceFloor);
        mixtureWeights = loadMixtureWeights("mixture_weights.txt", mixtureWeightFloor);
        transitionsPool = loadTransitionMatrices("transition_matrices.txt");
        transformMatrix = loadTransformMatrix("feature_transform.txt");
        modelProps = loadModelProps("feat.params");
        
        if (hasTiedMixtures()) {
            //create senone to CI mapping
            getSenoneToCIPhone();
            //create tied senone pool
            senonePool = createTiedSenonePool(distFloor, varianceFloor);
        } else {
            //create regular senone poll
            senonePool = createSenonePool(distFloor, varianceFloor);
        }

        // load the HMM modelDef file
        InputStream modelStream = getDataStream("mdef.txt");
        if (modelStream == null) {
            throw new IOException("can't find model definition");
        }
        loadHMMPool(useCDUnits, modelStream);
    }

    public Map<String, Unit> getContextIndependentUnits() {
        return contextIndependentUnits;
    }
    
    /**
     * Creates senone to CI phone mapping, reading model definition file
     */
    private void getSenoneToCIPhone() throws IOException, URISyntaxException {
        InputStream inputStream = getDataStream("mdef.txt");
        if (inputStream == null) {
            throw new IOException("can't find model definition");
        }
        ExtendedStreamTokenizer est = new ExtendedStreamTokenizer(inputStream,
                '#', false);

        logger.fine("Loading HMM file from " + location);

        est.expectString(MODEL_VERSION);

        numBase = est.getInt("numBase");
        est.expectString("n_base");

        int numTri = est.getInt("numTri");
        est.expectString("n_tri");

        int numStateMap = est.getInt("numStateMap");
        est.expectString("n_state_map");

        int numTiedState = est.getInt("numTiedState");
        est.expectString("n_tied_state");

        senone2ci = new int[numTiedState];

        est.getInt("numContextIndependentTiedState");
        est.expectString("n_tied_ci_state");

        int numTiedTransitionMatrices = est.getInt("numTiedTransitionMatrices");
        est.expectString("n_tied_tmat");

        int numStatePerHMM = numStateMap / (numTri + numBase);

        assert numTiedState == mixtureWeights.getStatesNum();
        assert numTiedTransitionMatrices == transitionsPool.size();

        // Load the base phones
        for (int i = 0; i < numBase + numTri; i++) {
            //TODO name this magic const somehow
            for (int j = 0; j < 5; j++)
                est.getString();
            int tmat = est.getInt("tmat");

            for (int j = 0; j < numStatePerHMM - 1; j++) {
                senone2ci[est.getInt("j")] = tmat;
            }
            est.expectString("N");

            assert tmat < numTiedTransitionMatrices;
        }

        est.close();
    }
    
    /**
     * Creates the senone pool from the rest of the pools.
     * 
     * @param distFloor
     *            the lowest allowed score
     * @param varianceFloor
     *            the lowest allowed variance
     * @return the senone pool
     */
    protected Pool<Senone> createSenonePool(float distFloor, float varianceFloor) {
        Pool<Senone> pool = new Pool<Senone>("senones");
        
        int numMeans = meansPool.size();
        int numVariances = variancePool.size();
        int numGaussiansPerSenone = mixtureWeights.getGauPerState();
        int numSenones = mixtureWeights.getStatesNum();
        int numStreams = mixtureWeights.getStreamsNum();
        int whichGaussian = 0;

        logger.fine("Senones " + numSenones);
        logger.fine("Gaussians Per Senone " + numGaussiansPerSenone);
        logger.fine("Means " + numMeans);
        logger.fine("Variances " + numVariances);

        assert numGaussiansPerSenone > 0;
        assert numVariances == numSenones * numGaussiansPerSenone;
        assert numMeans == numSenones * numGaussiansPerSenone;

        float[][] meansTransformationMatrix = meanTransformationMatrixPool == null ? null
                : meanTransformationMatrixPool.get(0);
        float[] meansTransformationVector = meanTransformationVectorPool == null ? null
                : meanTransformationVectorPool.get(0);
        float[][] varianceTransformationMatrix = varianceTransformationMatrixPool == null ? null
                : varianceTransformationMatrixPool.get(0);
        float[] varianceTransformationVector = varianceTransformationVectorPool == null ? null
                : varianceTransformationVectorPool.get(0);

        for (int i = 0; i < numSenones; i++) {
            MixtureComponent[] mixtureComponents = new MixtureComponent[numGaussiansPerSenone
                    * numStreams];
            for (int j = 0; j < numGaussiansPerSenone; j++) {
                mixtureComponents[j] = new MixtureComponent(
                        meansPool.get(whichGaussian),
                        meansTransformationMatrix, meansTransformationVector,
                        variancePool.get(whichGaussian),
                        varianceTransformationMatrix,
                        varianceTransformationVector, distFloor, varianceFloor);

                whichGaussian++;
            }

            Senone senone = new GaussianMixture(mixtureWeights, mixtureComponents, i);
            pool.put(i, senone);
        }
        return pool;
    }
    
    /**
     * Creates the tied senone pool from the rest of the pools.
     * 
     * @param distFloor
     *            the lowest allowed score
     * @param varianceFloor
     *            the lowest allowed variance
     * @return the senone pool
     */
    private Pool<Senone> createTiedSenonePool(float distFloor, float varianceFloor) {
        Pool<Senone> pool = new Pool<Senone>("senones");

        int numMeans = meansPool.size();
        int numVariances = variancePool.size();
        int numGaussiansPerState = mixtureWeights.getGauPerState();
        int numSenones = mixtureWeights.getStatesNum();
        int numStreams = mixtureWeights.getStreamsNum();

        logger.fine("Senones " + numSenones);
        logger.fine("Gaussians Per State " + numGaussiansPerState);
        logger.fine("Means " + numMeans);
        logger.fine("Variances " + numVariances);

        assert numGaussiansPerState > 0;
        assert numVariances == numBase * numGaussiansPerState * numStreams;
        assert numMeans == numBase * numGaussiansPerState * numStreams;

        float[][] meansTransformationMatrix = meanTransformationMatrixPool == null ? null
                : meanTransformationMatrixPool.get(0);
        float[] meansTransformationVector = meanTransformationVectorPool == null ? null
                : meanTransformationVectorPool.get(0);
        float[][] varianceTransformationMatrix = varianceTransformationMatrixPool == null ? null
                : varianceTransformationMatrixPool.get(0);
        float[] varianceTransformationVector = varianceTransformationVectorPool == null ? null
                : varianceTransformationVectorPool.get(0);
        
        phoneticTiedMixtures = new MixtureComponentSet[numBase];
        for (int i = 0; i < numBase; i++) {
            ArrayList<PrunableMixtureComponent[]> mixtureComponents = new ArrayList<PrunableMixtureComponent[]>();
            for (int j = 0; j < numStreams; j++) {
            	PrunableMixtureComponent[] featMixtureComponents = new PrunableMixtureComponent[numGaussiansPerState];
                for (int k = 0; k < numGaussiansPerState; k++) {
                	int whichGaussian = i * numGaussiansPerState * numStreams + j * numGaussiansPerState + k;
                	featMixtureComponents[k] = new PrunableMixtureComponent(
                            meansPool.get(whichGaussian),
                            meansTransformationMatrix, meansTransformationVector,
                            variancePool.get(whichGaussian),
                            varianceTransformationMatrix,
                            varianceTransformationVector, distFloor, varianceFloor, k);
                }
                mixtureComponents.add(featMixtureComponents);
            }
            phoneticTiedMixtures[i] = new MixtureComponentSet(mixtureComponents, topGauNum);
        }
        
        for (int i = 0; i < numSenones; i++) {
            Senone senone = new SetBasedGaussianMixture(mixtureWeights, phoneticTiedMixtures[senone2ci[i]], i);
            pool.put(i, senone);
        }
        return pool;
    }

    /**
     * Loads the sphinx3 density file, a set of density arrays are created and
     * placed in the given pool.
     * 
     * @param path
     *            the name of the data
     * @param floor
     *            the minimum density allowed
     * @return a pool of loaded densities
     * @throws FileNotFoundException
     *             if a file cannot be found
     * @throws IOException
     *             if an error occurs while loading the data
     * @throws URISyntaxException uri was incorrectly specified
     */
    public Pool<float[]> loadDensityFile(String path, float floor)
            throws IOException, URISyntaxException {
        Properties props = new Properties();
        int blockSize = 0;

        DataInputStream dis = readS3BinaryHeader(path, props);

        String version = props.getProperty("version");

        if (version == null || !version.equals(DENSITY_FILE_VERSION)) {
            throw new IOException("Unsupported version in " + path);
        }

        String checksum = props.getProperty("chksum0");
        boolean doCheckSum = (checksum != null && checksum.equals("yes"));
        resetChecksum();

        int numStates = readInt(dis);
        int numStreams = readInt(dis);
        int numGaussiansPerState = readInt(dis);

        int[] vectorLength = new int[numStreams];
        for (int i = 0; i < numStreams; i++) {
            vectorLength[i] = readInt(dis);
        }

        int rawLength = readInt(dis);

        logger.fine("Number of states " + numStates);
        logger.fine("Number of streams " + numStreams);
        logger.fine("Number of gaussians per state " + numGaussiansPerState);
        logger.fine("Vector length " + vectorLength.length);
        logger.fine("Raw length " + rawLength);

        for (int i = 0; i < numStreams; i++) {
            blockSize += vectorLength[i];
        }

        assert rawLength == numGaussiansPerState * blockSize * numStates;

        Pool<float[]> pool = new Pool<float[]>(path);
        pool.setFeature(NUM_SENONES, numStates);
        pool.setFeature(NUM_STREAMS, numStreams);
        pool.setFeature(NUM_GAUSSIANS_PER_STATE, numGaussiansPerState);

        for (int i = 0; i < numStates; i++) {
            for (int j = 0; j < numStreams; j++) {
                for (int k = 0; k < numGaussiansPerState; k++) {
                    float[] density = readFloatArray(dis, vectorLength[j]);
                    Utilities.floorData(density, floor);
                    pool.put(i * numStreams * numGaussiansPerState + j
                            * numGaussiansPerState + k, density);
                }
            }
        }

        validateChecksum(dis, doCheckSum);

        dis.close();

        this.numStates = numStates;
        this.numStreams = numStreams;
        this.numGaussiansPerState = numGaussiansPerState;
        this.vectorLength = vectorLength;

        return pool;
    }

    /**
     * Reads the S3 binary header from the given location + path. Adds header
     * information to the given set of properties.
     * 
     * @param path
     *            the name of the file
     * @param props
     *            the properties
     * @return the input stream positioned after the header
     * @throws IOException
     *             on error
     * @throws URISyntaxException uri was incorrectly specified
     */
    public DataInputStream readS3BinaryHeader(String path, Properties props)
            throws IOException, URISyntaxException {

        InputStream inputStream = getDataStream(path);

        if (inputStream == null) {
            throw new IOException("Can't open " + path);
        }
        DataInputStream dis = new DataInputStream(new BufferedInputStream(
                inputStream));
        String id = readWord(dis);
        if (!id.equals("s3")) {
            throw new IOException("Not proper s3 binary file " + path);
        }
        String name;
        while ((name = readWord(dis)) != null) {
            if (!name.equals("endhdr")) {
                String value = readWord(dis);
                props.setProperty(name, value);
            } else {
                break;
            }
        }
        int byteOrderMagic = dis.readInt();
        if (byteOrderMagic == BYTE_ORDER_MAGIC) {
            logger.fine("Not swapping " + path);
            swap = false;
        } else if (Utilities.swapInteger(byteOrderMagic) == BYTE_ORDER_MAGIC) {
            logger.fine("Swapping  " + path);
            swap = true;
        } else {
            throw new IOException("Corrupted S3 file " + path);
        }
        return dis;
    }

    /**
     * Reads the next word (text separated by whitespace) from the given stream.
     * 
     * @param dis
     *            the input stream
     * @return the next word
     * @throws IOException
     *             on error
     */
    String readWord(DataInputStream dis) throws IOException {
        StringBuilder sb = new StringBuilder();
        char c;
        // skip leading whitespace
        do {
            c = readChar(dis);
        } while (Character.isWhitespace(c));
        // read the word
        do {
            sb.append(c);
            c = readChar(dis);
        } while (!Character.isWhitespace(c));
        return sb.toString();
    }

    /**
     * Reads a single char from the stream.
     * 
     * @param dis
     *            the stream to read
     * @return the next character on the stream
     * @throws IOException
     *             if an error occurs
     */
    private char readChar(DataInputStream dis) throws IOException {
        return (char) dis.readByte();
    }

    /* Stores checksum during loading */
    private long calculatedCheckSum = 0;

    /**
     * Resets the checksum before loading a new chunk of data
     */
    private void resetChecksum() {
        calculatedCheckSum = 0;
    }

    /**
     * Validates checksum in the stream
     * 
     * @param dis
     *            input stream
     * @param doCheckSum
     *            validates
     * @throws IOException
     *             on error
     **/
    private void validateChecksum(DataInputStream dis, boolean doCheckSum)
            throws IOException {
        if (!doCheckSum)
            return;
        int oldCheckSum = (int) calculatedCheckSum;
        int checkSum = readInt(dis);
        if (checkSum != oldCheckSum) {
            throw new IOException("Invalid checksum "
                    + Long.toHexString(calculatedCheckSum) + " must be "
                    + Integer.toHexString(checkSum));
        }
    }

    /**
     * Read an integer from the input stream, byte-swapping as necessary.
     * 
     * @param dis
     *            the input stream
     * @return an integer value
     * @throws IOException
     *             on error
     */
    public int readInt(DataInputStream dis) throws IOException {
        int val;
        if (swap) {
            val = Utilities.readLittleEndianInt(dis);
        } else {
            val = dis.readInt();
        }
        calculatedCheckSum = ((calculatedCheckSum << 20 | calculatedCheckSum >> 12) + val) & 0xFFFFFFFFL;
        return val;
    }

    /**
     * Read a float from the input stream, byte-swapping as necessary.
     * 
     * @param dis
     *            the input stream
     * @return a floating pint value
     * @throws IOException
     *             on error
     */
    public float readFloat(DataInputStream dis) throws IOException {
        int val;
        if (swap) {
            val = Utilities.readLittleEndianInt(dis);
        } else {
            val = dis.readInt();
        }
        calculatedCheckSum = ((calculatedCheckSum << 20 | calculatedCheckSum >> 12) + val) & 0xFFFFFFFFL;
        return Float.intBitsToFloat(val);
    }

    /**
     * Reads the given number of floats from the stream and returns them in an
     * array of floats.
     * 
     * @param dis
     *            the stream to read data from
     * @param size
     *            the number of floats to read
     * @return an array of size float elements
     * @throws IOException
     *             if an exception occurs
     */
    public float[] readFloatArray(DataInputStream dis, int size)
            throws IOException {
        float[] data = new float[size];
        for (int i = 0; i < size; i++) {
            data[i] = readFloat(dis);
        }
        return data;
    }

    /**
     * Loads the sphinx3 density file, a set of density arrays are created and
     * placed in the given pool.
     * 
     * @param useCDUnits
     *            if true, loads also the context dependent units
     * @param inputStream
     *            the open input stream to use
     * @throws FileNotFoundException
     *             if a file cannot be found
     * @throws IOException
     *             if an error occurs while loading the data
     */
    protected void loadHMMPool(boolean useCDUnits, InputStream inputStream) throws IOException {
        ExtendedStreamTokenizer est = new ExtendedStreamTokenizer(inputStream,
                '#', false);

        logger.fine("Loading HMM file from: " + location);

        est.expectString(MODEL_VERSION);

        int numBase = est.getInt("numBase");
        est.expectString("n_base");

        int numTri = est.getInt("numTri");
        est.expectString("n_tri");

        int numStateMap = est.getInt("numStateMap");
        est.expectString("n_state_map");

        int numTiedState = est.getInt("numTiedState");
        est.expectString("n_tied_state");

        int numContextIndependentTiedState = est
                .getInt("numContextIndependentTiedState");
        est.expectString("n_tied_ci_state");

        int numTiedTransitionMatrices = est.getInt("numTiedTransitionMatrices");
        est.expectString("n_tied_tmat");

        int numStatePerHMM = numStateMap / (numTri + numBase);

        assert numTiedState == mixtureWeights.getStatesNum();
        assert numTiedTransitionMatrices == transitionsPool.size();

        // Load the base phones
        for (int i = 0; i < numBase; i++) {
            String name = est.getString();
            String left = est.getString();
            String right = est.getString();
            String position = est.getString();
            String attribute = est.getString();
            int tmat = est.getInt("tmat");

            int[] stid = new int[numStatePerHMM - 1];

            for (int j = 0; j < numStatePerHMM - 1; j++) {
                stid[j] = est.getInt("j");
                assert stid[j] >= 0 && stid[j] < numContextIndependentTiedState;
            }
            est.expectString("N");

            assert left.equals("-");
            assert right.equals("-");
            assert position.equals("-");
            assert tmat < numTiedTransitionMatrices;

            Unit unit = unitManager.getUnit(name, attribute.equals(FILLER));
            contextIndependentUnits.put(unit.getName(), unit);

            if (logger.isLoggable(Level.FINE)) {
                logger.fine("Loaded " + unit);
            }

            // The first filler
            if (unit.isFiller() && unit.getName().equals(SILENCE_CIPHONE)) {
                unit = UnitManager.SILENCE;
            }

            float[][] transitionMatrix = transitionsPool.get(tmat);
            SenoneSequence ss = getSenoneSequence(stid);

            HMM hmm = new SenoneHMM(unit, ss, transitionMatrix,
                    HMMPosition.lookup(position));
            hmmManager.put(hmm);
        }

        if (hmmManager.get(HMMPosition.UNDEFINED, UnitManager.SILENCE) == null) {
            throw new IOException("Could not find SIL unit in acoustic model");
        }

        // Load the context dependent phones. If the useCDUnits
        // property is false, the CD phones will not be created, but
        // the values still need to be read in from the file.

        String lastUnitName = "";
        Unit lastUnit = null;
        int[] lastStid = null;
        SenoneSequence lastSenoneSequence = null;

        for (int i = 0; i < numTri; i++) {
            String name = est.getString();
            String left = est.getString();
            String right = est.getString();
            String position = est.getString();
            String attribute = est.getString();
            int tmat = est.getInt("tmat");

            int[] stid = new int[numStatePerHMM - 1];

            for (int j = 0; j < numStatePerHMM - 1; j++) {
                stid[j] = est.getInt("j");
                assert stid[j] >= numContextIndependentTiedState
                        && stid[j] < numTiedState;
            }
            est.expectString("N");

            assert !left.equals("-");
            assert !right.equals("-");
            assert !position.equals("-");
            assert attribute.equals("n/a");
            assert tmat < numTiedTransitionMatrices;

            if (useCDUnits) {
                Unit unit;
                String unitName = (name + ' ' + left + ' ' + right);

                if (unitName.equals(lastUnitName)) {
                    unit = lastUnit;
                } else {
                    Unit[] leftContext = new Unit[1];
                    leftContext[0] = contextIndependentUnits.get(left);

                    Unit[] rightContext = new Unit[1];
                    rightContext[0] = contextIndependentUnits.get(right);

                    Context context = LeftRightContext.get(leftContext,
                            rightContext);
                    unit = unitManager.getUnit(name, false, context);
                }
                lastUnitName = unitName;
                lastUnit = unit;

                if (logger.isLoggable(Level.FINE)) {
                    logger.fine("Loaded " + unit);
                }

                float[][] transitionMatrix = transitionsPool.get(tmat);

                SenoneSequence ss = lastSenoneSequence;
                if (ss == null || !sameSenoneSequence(stid, lastStid)) {
                    ss = getSenoneSequence(stid);
                }
                lastSenoneSequence = ss;
                lastStid = stid;

                HMM hmm = new SenoneHMM(unit, ss, transitionMatrix,
                        HMMPosition.lookup(position));
                hmmManager.put(hmm);
            }
        }

        est.close();
    }

    /**
     * Returns true if the given senone sequence IDs are the same.
     * 
     * @param ssid1 ids of first senone sequence
     * @param ssid2 ids of second senone sequence
     * @return true if the given senone sequence IDs are the same, false
     *         otherwise
     */
    protected boolean sameSenoneSequence(int[] ssid1, int[] ssid2) {
        if (ssid1.length == ssid2.length) {
            for (int i = 0; i < ssid1.length; i++) {
                if (ssid1[i] != ssid2[i]) {
                    return false;
                }
            }
            return true;
        } else {
            return false;
        }
    }

    /**
     * Gets the senone sequence representing the given senones.
     * 
     * @param stateid
     *            is the array of senone state ids
     * @return the senone sequence associated with the states
     */
    protected SenoneSequence getSenoneSequence(int[] stateid) {
        Senone[] senones = new Senone[stateid.length];
        for (int i = 0; i < stateid.length; i++) {
            senones[i] = senonePool.get(stateid[i]);
        }
        return new SenoneSequence(senones);
    }

    /**
     * Loads the mixture weights (Binary).
     * 
     * @param path
     *            the path to the mixture weight file
     * @param floor
     *            the minimum mixture weight allowed
     * @return a pool of mixture weights
     * @throws IOException
     *             if an error occurs while loading the data
     * @throws URISyntaxException uri was incorrectly specified
     */
    protected GaussianWeights loadMixtureWeights(String path, float floor)
            throws IOException, URISyntaxException {
        logger.fine("Loading mixture weights from: " + path);

        Properties props = new Properties();

        DataInputStream dis = readS3BinaryHeader(path, props);

        String version = props.getProperty("version");

        if (version == null || !version.equals(MIXW_FILE_VERSION)) {
            throw new IOException("Unsupported version in " + path);
        }

        String checksum = props.getProperty("chksum0");
        boolean doCheckSum = (checksum != null && checksum.equals("yes"));
        resetChecksum();

        int numStates = readInt(dis);
        int numStreams = readInt(dis);
        int numGaussiansPerState = readInt(dis);
        int numValues = readInt(dis);
        GaussianWeights mixtureWeights = new GaussianWeights(path, numStates, numGaussiansPerState, numStreams);

        logger.fine("Number of states " + numStates);
        logger.fine("Number of streams " + numStreams);
        logger.fine("Number of gaussians per state " + numGaussiansPerState);

        assert numValues == numStates * numStreams * numGaussiansPerState;

            for (int i = 0; i < numStates; i++) {
                for (int j = 0; j < numStreams; j++) {
                    float[] logStreamMixtureWeight = readFloatArray(dis,
                            numGaussiansPerState);
                    Utilities.normalize(logStreamMixtureWeight);
                    Utilities.floorData(logStreamMixtureWeight, floor);
                    logMath.linearToLog(logStreamMixtureWeight);
                    mixtureWeights.put(i, j, logStreamMixtureWeight);
                }
            }

        validateChecksum(dis, doCheckSum);

        dis.close();
        return mixtureWeights;
    }

    /**
     * Loads the transition matrices (Binary).
     * 
     * @param path
     *            the path to the transitions matrices
     * @return a pool of transition matrices
     * @throws IOException
     *             if an error occurs while loading the data
     * @throws URISyntaxException uri was incorrectly specified
     */
    protected Pool<float[][]> loadTransitionMatrices(String path)
            throws IOException, URISyntaxException {
        logger.fine("Loading transition matrices from: " + path);

        Properties props = new Properties();
        DataInputStream dis = readS3BinaryHeader(path, props);

        String version = props.getProperty("version");

        if (version == null || !version.equals(TMAT_FILE_VERSION)) {
            throw new IOException("Unsupported version in " + path);
        }

        String checksum = props.getProperty("chksum0");
        boolean doCheckSum = (checksum != null && checksum.equals("yes"));
        resetChecksum();

        Pool<float[][]> pool = new Pool<float[][]>(path);

        int numMatrices = readInt(dis);
        int numRows = readInt(dis);
        int numStates = readInt(dis);
        int numValues = readInt(dis);

        assert numValues == numStates * numRows * numMatrices;

        for (int i = 0; i < numMatrices; i++) {
            float[][] tmat = new float[numStates][];
            // last row should be zeros
            tmat[numStates - 1] = new float[numStates];
            logMath.linearToLog(tmat[numStates - 1]);

            for (int j = 0; j < numRows; j++) {
                tmat[j] = readFloatArray(dis, numStates);
                Utilities.nonZeroFloor(tmat[j], 0f);
                Utilities.normalize(tmat[j]);
                logMath.linearToLog(tmat[j]);
            }
            pool.put(i, tmat);
        }

        validateChecksum(dis, doCheckSum);

        dis.close();
        return pool;
    }

    /**
     * Loads the transform matrices (Binary).
     * 
     * @param path
     *            the path to the transform matrix
     * @return a transform matrix
     * @throws java.io.FileNotFoundException
     *             if a file cannot be found
     * @throws java.io.IOException
     *             if an error occurs while loading the data
     */
    protected float[][] loadTransformMatrix(String path) throws IOException {
        logger.fine("Loading transform matrix from: " + path);

        Properties props = new Properties();

        DataInputStream dis;
        try {
            dis = readS3BinaryHeader(path, props);
        } catch (URISyntaxException e) {
            throw new RuntimeException(e);
        } catch (IOException e) {
            return null;
        }

        String version = props.getProperty("version");

        if (version == null || !version.equals(TRANSFORM_FILE_VERSION)) {
            throw new IOException("Unsupported version in " + path);
        }

        String checksum = props.getProperty("chksum0");
        boolean doCheckSum = (checksum != null && checksum.equals("yes"));
        resetChecksum();

        readInt(dis);
        int numRows = readInt(dis);
        int numValues = readInt(dis);
        int num = readInt(dis);

        assert num == numRows * numValues;

        float[][] result = new float[numRows][];
        for (int i = 0; i < numRows; i++) {
            result[i] = readFloatArray(dis, numValues);
        }

        validateChecksum(dis, doCheckSum);

        dis.close();
        return result;
    }
    
    public void clearGauScores() {
        if (phoneticTiedMixtures == null)
            return;
        for (MixtureComponentSet mixture : phoneticTiedMixtures)
            mixture.clearStoredScores();
    }
    
    public void setGauScoresQueueLength(int scoresQueueLen) {
        if (phoneticTiedMixtures == null)
            return;
        for (MixtureComponentSet mixture : phoneticTiedMixtures)
            mixture.setScoreQueueLength(scoresQueueLen);
    }

    public Pool<float[]> getMeansPool() {
        return meansPool;
    }

    public Pool<float[][]> getMeansTransformationMatrixPool() {
        return meanTransformationMatrixPool;
    }

    public Pool<float[]> getMeansTransformationVectorPool() {
        return meanTransformationVectorPool;
    }

    public Pool<float[]> getVariancePool() {
        return variancePool;
    }

    public Pool<float[][]> getVarianceTransformationMatrixPool() {
        return varianceTransformationMatrixPool;
    }

    public Pool<float[]> getVarianceTransformationVectorPool() {
        return varianceTransformationVectorPool;
    }

    public GaussianWeights getMixtureWeights() {
        return mixtureWeights;
    }

    public Pool<float[][]> getTransitionMatrixPool() {
        return transitionsPool;
    }

    public float[][] getTransformMatrix() {
        return transformMatrix;
    }
    
    public Pool<Senone> getSenonePool() {
        return senonePool;
    }

    public int getLeftContextSize() {
        return CONTEXT_SIZE;
    }

    public int getRightContextSize() {
        return CONTEXT_SIZE;
    }

    public HMMManager getHMMManager() {
        return hmmManager;
    }

    public void logInfo() {
        logger.info("Loading tied-state acoustic model from: " + location);
        meansPool.logInfo(logger);
        variancePool.logInfo(logger);
        transitionsPool.logInfo(logger);
        senonePool.logInfo(logger);

        if (meanTransformationMatrixPool != null)
            meanTransformationMatrixPool.logInfo(logger);
        if (meanTransformationVectorPool != null)
            meanTransformationVectorPool.logInfo(logger);
        if (varianceTransformationMatrixPool != null)
            varianceTransformationMatrixPool.logInfo(logger);
        if (varianceTransformationVectorPool != null)
            varianceTransformationVectorPool.logInfo(logger);

        mixtureWeights.logInfo(logger);
        senonePool.logInfo(logger);
        logger.info("Context Independent Unit Entries: "
                + contextIndependentUnits.size());
        hmmManager.logInfo(logger);
    }

    public Properties getProperties() {
        return modelProps;
    }

    protected Properties loadModelProps(String path)
            throws MalformedURLException, IOException, URISyntaxException {
        Properties props = new Properties();
        BufferedReader reader = new BufferedReader(new InputStreamReader(
                getDataStream(path)));
        String line;
        while ((line = reader.readLine()) != null) {
            String[] tokens = line.split(" ");
            props.put(tokens[0], tokens[1]);
        }
        return props;
    }

    public void update(Transform transform, ClusteredDensityFileData clusters) {
        for (int index = 0; index < meansPool.size(); index++) {
            int transformClass = clusters.getClassIndex(index);
            float[] tmean = new float[getVectorLength()[0]];
            float[] mean = meansPool.get(index);
            
            for (int i = 0; i < numStreams; i++) {
                for (int l = 0; l < getVectorLength()[i]; l++) {
                    tmean[l] = 0;
                    for (int m = 0; m < getVectorLength()[i]; m++) {
                        tmean[l] += transform.getAs()[transformClass][i][l][m]
                                * mean[m];
                    }
                    tmean[l] += transform.getBs()[transformClass][i][l];
                }
                System.arraycopy(tmean, 0, mean, 0, tmean.length);
            }
        }
    }
}

 

The main files are loaded in the loadModelFiles() method.

 

Thanks

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

Posted

And...its gone over my head.

 

I do know that when compiled your files (in /src/resources) don't exist as "files" but as a virtual object inside a zip file, and it has to be referenced differently.

 

But I can't tell what Sphinx4 is/isn't doing.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

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

    • Attempted start Minecraft server with friends. I used the Modpack beyond depth and removed essential as instructed in forge and a few mods of my own. server crashes idk why  https://paste.ee/p/m2E9PKIU  
    • Oh wait - cracked Launchers are not supported  
    • Not Working it crashes again  https://mclo.gs/vIsbuvN
    • Add crash-reports with sites like https://mclo.gs/   Make a test without all Create addons - like Create Deco etc.        
    • My minecraft modpack crashes, whenever I try to start. [18:26:55] [main/INFO]: ModLauncher running: args [--username, {MINECRAFT_USERNAME}, --version, 1.20.1, --gameDir, C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana, --assetsDir, C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\meta\assets, --assetIndex, 5, --uuid, {MINECRAFT_UUID}, --accessToken, ❄❄❄❄❄❄❄❄, --clientId, c4502edb-87c6-40cb-b595-64a280cf8906, --xuid, 0, --userType, msa, --versionType, release, --width, 854, --height, 480, --launchTarget, forgeclient, --fml.forgeVersion, 47.4.0, --fml.mcVersion, 1.20.1, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20230612.114412] [18:26:55] [main/INFO]: ModLauncher 10.0.9+10.0.9+main.dcd20f30 starting: java version 21.0.7 by Oracle Corporation; OS Windows 11 arch amd64 version 10.0 [18:26:57] [main/INFO]: Loading ImmediateWindowProvider fmlearlywindow [18:26:57] [main/INFO]: Trying GL version 4.6 [18:26:58] [main/INFO]: Requested GL version 4.6 got version 4.6 [18:26:58] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/C:/Users/Julian%20Trost/AppData/Roaming/ModrinthApp/meta/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%23115!/ Service=ModLauncher Env=CLIENT [18:26:58] [pool-2-thread-1/INFO]: GL info: NVIDIA GeForce RTX 2070 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 576.40, NVIDIA Corporation [18:26:59] [main/INFO]: Found mod file [1.20.1] SecurityCraft v1.10.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file alexscaves-2.0.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file alexsmobs-1.22.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file allthetrims-3.4.3-forge+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file allurement-1.20.1-4.0.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file amendments-1.20-1.2.19.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Apotheosis-1.20.1-7.4.8.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ApothicAttributes-1.20.1-1.3.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Aquaculture-1.20.1-2.5.5.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file aquamirae-6.API15.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file architectury-9.2.14-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ars_nouveau-1.20.1-4.12.6-all.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file artifacts-forge-9.5.16.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file athena-forge-1.20.1-3.1.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file atmospheric-1.20.1-6.1.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file AttributeFix-Forge-1.20.1-21.0.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file automobility-0.4.2+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file autumnity-1.20.1-5.0.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file BadMobs-1.20.1-19.0.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file bagus_lib-1.20.1-5.3.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file balm-forge-1.20.1-7.3.29-all.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file biomeinfo-1.20.1-1.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file BiomesOPlenty-forge-1.20.1-19.0.0.96.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file blue_skies-1.20.1-1.3.31.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file blueprint-1.20.1-7.1.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file BOMD-Forge-1.20.1-1.1.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Bookshelf-Forge-1.20.1-20.2.13.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file caelus-forge-3.2.0+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file camera-forge-1.20.1-1.0.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file catalogue-forge-1.20.1-1.8.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file CerbonsApi-Forge-1.20.1-1.0.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Chaosswords 4.2.0 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file charmofundying-forge-6.5.0+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file cherishedworlds-forge-6.1.7+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file chipped-forge-1.20.1-3.0.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file chloride-FORGE-mc1.20.1-v1.7.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file citadel-2.6.1-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file cloth-config-11.1.136-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Clumps-forge-1.20.1-12.0.0.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file cofh_core-1.20.1-11.0.2.56.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file collective-1.20.1-8.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file configured-forge-1.20.1-2.2.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Controlling-forge-1.20.1-12.0.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file copycats-3.0.0+mc.1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Corgilib-Forge-1.20.1-4.0.3.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file corpse-forge-1.20.1-1.0.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file cosmeticarmorreworked-1.20.1-v1a.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file create-1.20.1-6.0.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file createdeco-2.0.3-1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file creeperoverhaul-3.0.2-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file cupboard-1.20.1-2.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file curios-forge-5.14.1+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file CustomNPCs-1.20.1-GBPort-Unofficial-20250429.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file customvillagertrades-forge-20.25.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file decoration-delight-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file decorative_blocks-forge-1.20.1-4.1.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Deep Dark Regrowth 1.2.6.1 - 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Delightful-1.20.1-3.7.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file deltaboxlib-2.1.1-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file dynamic-fps-3.9.4+minecraft-1.20.0-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file earth2java-forge-1.10.1+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file EasyMagic-v8.0.1-1.20.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ecologics-forge-1.20.1-2.2.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file EffectTooltips-Forge-1.20.1-9.0.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file effortlessbuilding-1.20.1-3.10.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file elevatorid-1.20.1-lex-1.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ElysiumAPI-1.20.1-1.1.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file embeddium-0.3.31+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emi-1.1.22+1.20.1+forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emi_enchanting-0.1.2+1.20.1+forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emi_loot-0.7.6+1.20.1+forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emiffect-forge-1.1.2+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emitrades-forge-1.2.1+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Emojiful-Forge-1.20.1-4.2.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file emotecraft-for-MC1.20.1-2.2.7-b.build.50-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file EnchantmentDescriptions-Forge-1.20.1-17.1.19.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file endergetic-1.20.1-5.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file enderitemod-1.5.1-1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file endermanoverhaul-forge-1.20.1-1.0.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file endersdelight-forge-1.20.1-1.1.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file endrem_forge-5.3.3-R-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file environmental-1.20.1-4.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file everycomp-1.20-2.8.4-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file everythingcopper-1.20.1-2.3.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file explosiveenhancement-1.1.0-1.20.1-client-and-server.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file eyesoficeandfire-1.1.0-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file fabric-api-0.92.2+1.11.12+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file fallingleaves-1.20.1-2.1.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file FarmersDelight-1.20.1-1.2.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file fastasyncworldsave-1.20.1-2.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file FastLeafDecay-32.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file FastSuite-1.20.1-5.1.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ferritecore-6.0.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file flib-1.20.1-0.0.15.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file forbidden_arcanus-1.20.1-2.2.6.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file forgery-3.6.1+1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file FramedBlocks-9.4.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file framework-forge-1.20.1-0.7.12.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ftb-library-forge-2001.2.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file fusion-1.2.7b-forge-mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file fzzy_config-0.6.9+1.20.1+forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Galosphere-1.20.1-1.4.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file geckolib-forge-1.20.1-4.7.1.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file GlitchCore-forge-1.20.1-0.0.1.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file goblintraders-forge-1.20.1-1.9.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file gourd_guards-1.0.1-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file guardvillagers-1.20.1-1.6.10.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file HammerLib-1.20.1-20.1.50.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file HangGlider-v8.0.1-1.20.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file hexerei-0.4.2.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file hunters_return-1.20.1-11.7.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file IBEEditor-1.20-2.2.8-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file iceandfire-2.1.13-1.20.1-beta-5.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file idas_forge-1.11.1+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file identity-2.7.1-1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file illageandspillagerespillaged-1.2.8.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ImmediatelyFast-Forge-1.5.0+1.20.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file integrated_api-1.5.3+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file integrated_cataclysm_forge-1.0.4+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file integrated_stronghold-1.1.2+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file integrated_villages-1.2.0+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file irons_spellbooks-1.20.1-3.4.0.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Jadens-Nether-Expansion-2.3.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file jei-1.20.1-forge-15.20.0.106.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file JustEnoughGuns-0.12.0-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file justzoom_forge_2.1.1_MC_1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file konkrete_forge_1.8.0_MC_1.20-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file kotlinforforge-4.11.0-all.jar of type LIBRARY with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file L_Enders_Cataclysm 1.20.1-2.66.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file legendarymonsters-1.9.4 MC 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file letsdo-API-forge-1.2.15-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file letsdo-brewery-forge-1.1.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file lionfishapi-2.4-Fix.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Locks-Unoffical-forge-1.20.1-1.2.4.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file lootr-forge-1.20-0.7.35.91.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Luminous Nether V1.2.7 - Forge 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Luminous V1.5 - Forge 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file mace_port-3.0.4-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Mantle-1.20.1-1.11.44.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file mavapi-1.1.4-mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file mavm-1.2.6-mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file memoryleakfix-forge-1.17+-1.1.5.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file memoryusagetitle-forge-1.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Mocap-FORGE-1.20.1-1.3.8.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file modernfix-forge-5.21.0+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file mofus_broken_constellation-0.9.0-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file monolib-forge-1.20.1-2.1.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file moonlight-1.20-2.14.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file MorePlayerModels-1.20.1.20240409.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file morevillagers-forge-1.20.1-5.0.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file mowziesmobs-1.7.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file MyNethersDelight-1.20.1-0.1.7.5.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file NaturalDecorMod_1.20.1Forge_V1.6.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file nether-s-exoticism-1.20.1-1.2.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file no-ruined-nether-portals-1.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file noisium-forge-2.3.0+mc1.20-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file notenoughcrashes-4.4.7+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file obscure_api-15.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file ObsidianUI-forge-0.2.3+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file oceansdelight-1.0.2-1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file OctoLib-FORGE-0.5.0.1+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Oh-The-Biomes-Weve-Gone-Forge-1.5.11.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Oh-The-Trees-Youll-Grow-forge-1.20.1-1.3.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file omgourd-1.20.1-5.0.0.17.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Oreganized 1.20.1-4.0.0.carcinogenious.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file overloadedarmorbar-1.20.1-1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file packetfixer-forge-2.0.0-1.19-to-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file particular-1.20.1-Forge-1.2.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Patchouli-1.20.1-84.1-FORGE.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file phantasmic-1.20.1-0.2.5.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file physics-mod-3.0.14-mc-1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file PickUpNotifier-v8.0.0-1.20.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Placebo-1.20.1-8.6.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Platform-forge-1.20.1-1.2.7.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file player-animation-lib-forge-1.0.2-rc1+1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file polymorph-forge-0.49.10+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file PuzzlesLib-v8.1.32-1.20.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Quark-4.0-462.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file quark_delight_1.0.0_forge_1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file QuarkOddities-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Quit-Forge-1.19.4-1.20.X-1.1.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file rechiseled-1.1.6-forge-mc1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file rechiseled_chipped-1.2.1-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file rechiseled_fans-1.0.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file rechiseledcreate-1.0.2a-forge-mc1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file redeco-1.14.1-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file refurbished_furniture-forge-1.20.1-1.0.12.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file RegionsUnexploredForge-0.5.6+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file relics-1.20.1-0.8.0.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file resourcefulconfig-forge-1.20.1-2.1.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file resourcefullib-forge-1.20.1-2.1.29.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file RubinatedNether-forge-1.3.0.E-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file RyoamicLights-forge-0.2.3+mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file savage_and_ravage-1.20.1-6.0.0.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Searchables-forge-1.20.1-1.0.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file servercore-forge-1.5.2+1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file simplehats-forge-1.20.1-0.3.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file SneakMobs-1.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file sophisticatedbackpacks-1.20.1-3.23.15.1236.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file sophisticatedcore-1.20.1-1.2.57.978.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file spark-1.10.53-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file spelunkery-1.20.1-0.3.16-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file spring-1.1.0-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file StrawStatues-v8.0.3-1.20.1-Forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file structure_gel-1.20.1-2.16.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file supermartijn642configlib-1.1.8-forge-mc1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file supermartijn642corelib-1.1.18-forge-mc1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file supplementaries-1.20-3.1.30.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file TerraBlender-forge-1.20.1-3.0.1.10.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file terramity-0.9.8-forge-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file the_bumblezone-7.7.1+1.20.1-forge.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file TheOuterEnd-1.0.10.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Tinted Campfires-1.20.1-1.2.11.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file torchmaster-20.1.9.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file traveloptics-4.4.0-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file twilightforest-1.20.1-4.3.2508-universal.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file txnilib-forge-1.0.23-1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file UltraSwords - 1.20.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file upgrade_aquatic-1.20.1-6.0.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file useless-sword-1.20.1-V1.4.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file valhelsia_core-forge-1.20.1-1.1.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file vanillabackport-forge-1.20.1-1.1.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file villagernames-1.20.1-8.2.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file villagertools-1.20.1-1.0.3.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file voidtotem-forge-1.20-3.0.1.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file wandering-bags-1.20.1-2.0.7.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file waystones-forge-1.20.1-14.1.12.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file worldedit-mod-7.2.15.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file XaerosWorldMap_1.39.4_Forge_1.20.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/INFO]: Found mod file Zeta-1.0-30.jar of type MOD with provider {mods folder locator at C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods} [18:26:59] [main/WARN]: Mod file C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\meta\libraries\net\minecraftforge\fmlcore\1.20.1-47.4.0\fmlcore-1.20.1-47.4.0.jar is missing mods.toml file [18:26:59] [main/WARN]: Mod file C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\meta\libraries\net\minecraftforge\javafmllanguage\1.20.1-47.4.0\javafmllanguage-1.20.1-47.4.0.jar is missing mods.toml file [18:26:59] [main/WARN]: Mod file C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\meta\libraries\net\minecraftforge\lowcodelanguage\1.20.1-47.4.0\lowcodelanguage-1.20.1-47.4.0.jar is missing mods.toml file [18:26:59] [main/WARN]: Mod file C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\meta\libraries\net\minecraftforge\mclanguage\1.20.1-47.4.0\mclanguage-1.20.1-47.4.0.jar is missing mods.toml file [18:26:59] [main/INFO]: Found mod file fmlcore-1.20.1-47.4.0.jar of type LIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/INFO]: Found mod file javafmllanguage-1.20.1-47.4.0.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/INFO]: Found mod file lowcodelanguage-1.20.1-47.4.0.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/INFO]: Found mod file mclanguage-1.20.1-47.4.0.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/INFO]: Found mod file client-1.20.1-20230612.114412-srg.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/INFO]: Found mod file forge-1.20.1-47.4.0-universal.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.MinecraftLocator@aac3f4e [18:26:59] [main/WARN]: Attempted to select two dependency jars from JarJar which have the same identification: Mod File: and Mod File: . Using Mod File: [18:26:59] [main/WARN]: Attempted to select a dependency jar for JarJar which was passed in as source: geckolib. Using Mod File: C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods\geckolib-forge-1.20.1-4.7.1.2.jar [18:26:59] [main/WARN]: Attempted to select a dependency jar for JarJar which was passed in as source: fabric_api. Using Mod File: C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods\fabric-api-0.92.2+1.11.12+1.20.1.jar [18:26:59] [main/WARN]: Attempted to select a dependency jar for JarJar which was passed in as source: athena. Using Mod File: C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods\athena-forge-1.20.1-3.1.2.jar [18:26:59] [main/WARN]: Attempted to select a dependency jar for JarJar which was passed in as source: resourcefulconfig. Using Mod File: C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods\resourcefulconfig-forge-1.20.1-2.1.3.jar [18:26:59] [main/WARN]: Attempted to select a dependency jar for JarJar which was passed in as source: resourcefullib. Using Mod File: C:\Users\{COMPUTER_USERNAME}\AppData\Roaming\ModrinthApp\profiles\Minecraft Arcana\mods\resourcefullib-forge-1.20.1-2.1.29.jar [18:26:59] [main/INFO]: Found 72 dependencies adding them to mods collection [18:26:59] [main/INFO]: Found mod file fabric-transfer-api-v1-3.3.5+631c9cd677.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-dimensions-v1-2.1.54+8005d10d77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file kuma-api-forge-20.1.10+1.20.1.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-renderer-api-v1-3.2.1+cf68abbe77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file puzzlesapi-forge-8.1.4.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file dazzleconf-core-1.3.0-M2.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file kfflang-4.11.0.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file Ponder-Forge-1.20.1-1.0.52.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-item-api-v1-2.1.28+4d0bbcfa77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-model-loading-api-v1-1.0.3+6274ab9d77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-rendering-fluids-v1-3.0.28+4ac5e37a77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-screen-handler-api-v1-1.3.30+561530ec77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-models-v0-0.4.2+7c3892a477.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-resource-loader-v0-0.11.10+bcd08ed377.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file critter-forge-0.1-beta.14.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file mclib-20.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file snakeyaml-2.2.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-rendering-v1-3.0.8+66e9a48f77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-renderer-indigo-1.5.2+b5b2da4177.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-loader-2.6.0+0.15.0+1.20.1-full.jar of type LANGPROVIDER with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-convention-tags-v1-1.5.5+fa3d1c0177.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-mining-level-api-v1-2.1.50+561530ec77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-command-api-v1-1.2.34+f71b366f77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file MixinExtras-0.4.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-block-view-api-v2-1.0.1+0767707077.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-command-api-v2-2.2.13+561530ec77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file MixinSquared-0.1.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-data-attachment-api-v1-1.0.0+30ef839e77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file mixinextras-forge-0.4.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file jankson-1.2.3.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-screen-api-v1-2.0.8+45a670a577.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-particles-v1-1.1.2+78e1ecb877.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file puzzlesaccessapi-forge-20.1.1.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file dazzleconf-ext-snakeyaml-1.3.0-M2.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-content-registries-v0-4.0.11+a670df1e77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file Reflect-1.3.4.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-transitive-access-wideners-v1-4.3.1+1880499877.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file caffeine-3.2.0.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-game-rule-api-v1-1.0.40+683d4da877.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-api-base-0.4.31+ef105b4977.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-api-lookup-api-v1-1.6.36+67f9824077.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-blockrenderlayer-v1-1.1.41+1d0da21e77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file battery-1.3.0.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file mixinsquared-forge-0.1.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file Registrate-MC1.20-1.3.3.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file spectrelib-forge-0.13.17+1.20.1.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-block-api-v1-1.0.11+0e6cb7f777.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file json-0.2.1.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-resource-conditions-api-v1-2.3.8+9e342fc177.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file kffmod-4.11.0.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file kfflib-4.11.0.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file bytecodecs-1.0.2.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file flywheel-forge-1.20.1-1.0.1.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-item-group-api-v1-4.0.12+c9161c2d77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-biome-api-v1-13.0.13+dc36698e77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-entity-events-v1-1.6.0+4ca7515277.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-registry-sync-v0-2.3.3+1c0ea72177.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file yabn-1.0.3.jar of type GAMELIBRARY with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-recipe-api-v1-1.0.21+514a076577.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-loot-api-v2-1.2.1+eb28f93e77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-object-builder-api-v1-11.1.3+4bd998fa77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-rendering-data-attachment-v1-0.3.37+a6081afc77.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-networking-api-v1-1.3.11+503a202477.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-sound-api-v1-1.0.13+4f23bd8477.jar of type MOD with provider net.minecraftforge.fml.loading.moddiscovery.JarInJarDependencyLocator@7d21852b [18:26:59] [main/INFO]: Found mod file fabric-messag
  • Topics

×
×
  • Create New...

Important Information

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