Jump to content

Recommended Posts

Posted

So I have this on my readFromNBT in a TileEntity

 

Problem is... Why this if is false?

 

    @Override
    public void readFromNBT(NBTTagCompound compound) {
        
        super.readFromNBT(compound);

        LogHelper.info("CALLED HERE!!! " + compound);

        if (compound.hasKey(PANELS)) {

            LogHelper.info("CALLED INSIDE HAS KEY PANELS");

            NBTTagCompound panels = compound.getCompoundTag(PANELS);
            this.stackPanelUp = new ItemStack(panels.getCompoundTag("up"));

        } else {
            LogHelper.info("NOT TRUE PANELS");
        }

    }

 

Console shows:

 

[21:46:03] [main/INFO] [LogHelper]: CALLED HERE!!! {ForgeData:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}},x:50,y:83,z:272,id:"factoryblock:te_factory"}
[21:46:03] [main/INFO] [LogHelper]: NOT TRUE PANELS

 

 

PANEL is:

 

public static final String PANELS = "factory.panels";

 

Posted (edited)
19 minutes ago, TheAwesomeGem said:

Show  your  writeToNBT method.

Here:
 

    @Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {
        // this is called by minecraft to give you the posibility to update your NBT before being saved to the world
        super.writeToNBT(compound);

        compound.setTag("up", this.stackPanelUp.writeToNBT(new NBTTagCompound()));
        compound.setTag("down", this.stackPanelDown.writeToNBT(new NBTTagCompound()));
        compound.setTag("east", this.stackPanelEast.writeToNBT(new NBTTagCompound()));
        compound.setTag("west", this.stackPanelWest.writeToNBT(new NBTTagCompound()));
        compound.setTag("north", this.stackPanelNorth.writeToNBT(new NBTTagCompound()));
        compound.setTag("south", this.stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return compound;
    }

 

The whole class, just in case:

 

Spoiler

package org.bitbucket.factoryblock.tileentity;

import org.bitbucket.factoryblock.LogHelper;
import org.bitbucket.factoryblock.enums.EnumPanels;
import org.bitbucket.factoryblock.interfaces.IPanel;

import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList;

public class TileEntityFactory extends TileEntity implements ITickable, net.minecraft.client.renderer.texture.ITickable {

    public static final String PANELS = "factory.panels";

    private NonNullList<EnumPanels> factoryPanels = NonNullList.withSize(6, EnumPanels.EMPTY);

    private ItemStack stackPanelUp = ItemStack.EMPTY;
    private ItemStack stackPanelDown = ItemStack.EMPTY;
    private ItemStack stackPanelEast = ItemStack.EMPTY;
    private ItemStack stackPanelWest = ItemStack.EMPTY;
    private ItemStack stackPanelNorth = ItemStack.EMPTY;
    private ItemStack stackPanelSouth = ItemStack.EMPTY;

    public TileEntityFactory() {
        this.getTileData().setTag(PANELS, createNBTData());
    }

    @Override
    public void update() {
        // TODO Auto-generated method stub

    }

    // TODO Do we need this?
    @Override
    public void tick() {
        // TODO Auto-generated method stub

    }

    public void setPanelAt(EnumFacing facing, ItemStack stack) {
        switch (facing) {
            case UP:
                this.stackPanelUp = stack;
                break;
            case DOWN:
                this.stackPanelUp = stack;
                break;
            case EAST:
                this.stackPanelUp = stack;
                break;
            case WEST:
                this.stackPanelUp = stack;
                break;
            case NORTH:
                this.stackPanelUp = stack;
                break;
            case SOUTH:
                this.stackPanelUp = stack;
                break;
        }

        // This Force NBT Update?
        this.markDirty();
    }

    public EnumPanels getPanelTypeAt(EnumFacing facing) {

        switch (facing) {
            case UP:
                if (this.stackPanelUp.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelUp.getItem();
                    return thePanel.getPanelType();
                }
            case DOWN:
                if (this.stackPanelDown.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelDown.getItem();
                    return thePanel.getPanelType();
                }
            case EAST:
                if (this.stackPanelEast.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelEast.getItem();
                    return thePanel.getPanelType();
                }
            case WEST:
                if (this.stackPanelWest.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelWest.getItem();
                    return thePanel.getPanelType();
                }
            case NORTH:
                if (this.stackPanelNorth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelNorth.getItem();
                    return thePanel.getPanelType();
                }
            case SOUTH:
                if (this.stackPanelSouth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelSouth.getItem();
                    return thePanel.getPanelType();
                }
        }

        return EnumPanels.EMPTY;
    }

    public NBTTagCompound createNBTData() {
        NBTTagCompound panels = new NBTTagCompound();

        // NBTTagCompound panelUp = new NBTTagCompound();
        // NBTTagCompound panelDown = new NBTTagCompound();
        // NBTTagCompound panelEast = new NBTTagCompound();
        // NBTTagCompound panelWest = new NBTTagCompound();
        // NBTTagCompound panelNorth = new NBTTagCompound();
        // NBTTagCompound panelSouth = new NBTTagCompound();

        // panelUp.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelUp.writeToNBT(panelUp);
        panels.setTag("up", stackPanelUp.writeToNBT(new NBTTagCompound()));

        // panelDown.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelDown.writeToNBT(panelDown);
        panels.setTag("down", stackPanelDown.writeToNBT(new NBTTagCompound()));

        // panelEast.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelEast.writeToNBT(panelEast);
        panels.setTag("east", stackPanelEast.writeToNBT(new NBTTagCompound()));

        // panelWest.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelWest.writeToNBT(panelWest);
        panels.setTag("west", stackPanelWest.writeToNBT(new NBTTagCompound()));

        // panelNorth.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelNorth.writeToNBT(panelNorth);
        panels.setTag("north", stackPanelNorth.writeToNBT(new NBTTagCompound()));

        // panelSouth.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelSouth.writeToNBT(panelSouth);
        panels.setTag("south", stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return panels;
    }

    @Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {
        // this is called by minecraft to give you the posibility to update your NBT before being saved to the world
        super.writeToNBT(compound);

        compound.setTag("up", this.stackPanelUp.writeToNBT(new NBTTagCompound()));
        compound.setTag("down", this.stackPanelDown.writeToNBT(new NBTTagCompound()));
        compound.setTag("east", this.stackPanelEast.writeToNBT(new NBTTagCompound()));
        compound.setTag("west", this.stackPanelWest.writeToNBT(new NBTTagCompound()));
        compound.setTag("north", this.stackPanelNorth.writeToNBT(new NBTTagCompound()));
        compound.setTag("south", this.stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return compound;
    }

    @Override
    public void readFromNBT(NBTTagCompound compound) {

        super.readFromNBT(compound);

        LogHelper.info("CALLED HERE!!! " + compound);

        if (compound.hasKey(PANELS)) {

            LogHelper.info("CALLED INSIDE HAS KEY PANELS");

            NBTTagCompound panels = compound.getCompoundTag(PANELS);

            this.stackPanelUp = new ItemStack(panels.getCompoundTag("up"));
            this.stackPanelDown = new ItemStack(panels.getCompoundTag("down"));
            this.stackPanelEast = new ItemStack(panels.getCompoundTag("east"));
            this.stackPanelWest = new ItemStack(panels.getCompoundTag("west"));
            this.stackPanelNorth = new ItemStack(panels.getCompoundTag("north"));
            this.stackPanelSouth = new ItemStack(panels.getCompoundTag("south"));

        } else {
            LogHelper.info("NOT TRUE PANELS");
        }

    }

    @Override
    public NBTTagCompound getUpdateTag() {
        // TODO Auto-generated method stub
        return super.getUpdateTag();
    }

}

 

PS: I believe I now see the problem :P But lets see...

Edited by American2050
Posted
22 minutes ago, American2050 said:

Here:
 


    @Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {
        // this is called by minecraft to give you the posibility to update your NBT before being saved to the world
        super.writeToNBT(compound);

        compound.setTag("up", this.stackPanelUp.writeToNBT(new NBTTagCompound()));
        compound.setTag("down", this.stackPanelDown.writeToNBT(new NBTTagCompound()));
        compound.setTag("east", this.stackPanelEast.writeToNBT(new NBTTagCompound()));
        compound.setTag("west", this.stackPanelWest.writeToNBT(new NBTTagCompound()));
        compound.setTag("north", this.stackPanelNorth.writeToNBT(new NBTTagCompound()));
        compound.setTag("south", this.stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return compound;
    }

 

The whole class, just in case:

 

  Hide contents


package org.bitbucket.factoryblock.tileentity;

import org.bitbucket.factoryblock.LogHelper;
import org.bitbucket.factoryblock.enums.EnumPanels;
import org.bitbucket.factoryblock.interfaces.IPanel;

import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList;

public class TileEntityFactory extends TileEntity implements ITickable, net.minecraft.client.renderer.texture.ITickable {

    public static final String PANELS = "factory.panels";

    private NonNullList<EnumPanels> factoryPanels = NonNullList.withSize(6, EnumPanels.EMPTY);

    private ItemStack stackPanelUp = ItemStack.EMPTY;
    private ItemStack stackPanelDown = ItemStack.EMPTY;
    private ItemStack stackPanelEast = ItemStack.EMPTY;
    private ItemStack stackPanelWest = ItemStack.EMPTY;
    private ItemStack stackPanelNorth = ItemStack.EMPTY;
    private ItemStack stackPanelSouth = ItemStack.EMPTY;

    public TileEntityFactory() {
        this.getTileData().setTag(PANELS, createNBTData());
    }

    @Override
    public void update() {
        // TODO Auto-generated method stub

    }

    // TODO Do we need this?
    @Override
    public void tick() {
        // TODO Auto-generated method stub

    }

    public void setPanelAt(EnumFacing facing, ItemStack stack) {
        switch (facing) {
            case UP:
                this.stackPanelUp = stack;
                break;
            case DOWN:
                this.stackPanelUp = stack;
                break;
            case EAST:
                this.stackPanelUp = stack;
                break;
            case WEST:
                this.stackPanelUp = stack;
                break;
            case NORTH:
                this.stackPanelUp = stack;
                break;
            case SOUTH:
                this.stackPanelUp = stack;
                break;
        }

        // This Force NBT Update?
        this.markDirty();
    }

    public EnumPanels getPanelTypeAt(EnumFacing facing) {

        switch (facing) {
            case UP:
                if (this.stackPanelUp.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelUp.getItem();
                    return thePanel.getPanelType();
                }
            case DOWN:
                if (this.stackPanelDown.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelDown.getItem();
                    return thePanel.getPanelType();
                }
            case EAST:
                if (this.stackPanelEast.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelEast.getItem();
                    return thePanel.getPanelType();
                }
            case WEST:
                if (this.stackPanelWest.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelWest.getItem();
                    return thePanel.getPanelType();
                }
            case NORTH:
                if (this.stackPanelNorth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelNorth.getItem();
                    return thePanel.getPanelType();
                }
            case SOUTH:
                if (this.stackPanelSouth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelSouth.getItem();
                    return thePanel.getPanelType();
                }
        }

        return EnumPanels.EMPTY;
    }

    public NBTTagCompound createNBTData() {
        NBTTagCompound panels = new NBTTagCompound();

        // NBTTagCompound panelUp = new NBTTagCompound();
        // NBTTagCompound panelDown = new NBTTagCompound();
        // NBTTagCompound panelEast = new NBTTagCompound();
        // NBTTagCompound panelWest = new NBTTagCompound();
        // NBTTagCompound panelNorth = new NBTTagCompound();
        // NBTTagCompound panelSouth = new NBTTagCompound();

        // panelUp.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelUp.writeToNBT(panelUp);
        panels.setTag("up", stackPanelUp.writeToNBT(new NBTTagCompound()));

        // panelDown.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelDown.writeToNBT(panelDown);
        panels.setTag("down", stackPanelDown.writeToNBT(new NBTTagCompound()));

        // panelEast.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelEast.writeToNBT(panelEast);
        panels.setTag("east", stackPanelEast.writeToNBT(new NBTTagCompound()));

        // panelWest.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelWest.writeToNBT(panelWest);
        panels.setTag("west", stackPanelWest.writeToNBT(new NBTTagCompound()));

        // panelNorth.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelNorth.writeToNBT(panelNorth);
        panels.setTag("north", stackPanelNorth.writeToNBT(new NBTTagCompound()));

        // panelSouth.setString("panel", EnumPanels.EMPTY.getName());
        // stackPanelSouth.writeToNBT(panelSouth);
        panels.setTag("south", stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return panels;
    }

    @Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {
        // this is called by minecraft to give you the posibility to update your NBT before being saved to the world
        super.writeToNBT(compound);

        compound.setTag("up", this.stackPanelUp.writeToNBT(new NBTTagCompound()));
        compound.setTag("down", this.stackPanelDown.writeToNBT(new NBTTagCompound()));
        compound.setTag("east", this.stackPanelEast.writeToNBT(new NBTTagCompound()));
        compound.setTag("west", this.stackPanelWest.writeToNBT(new NBTTagCompound()));
        compound.setTag("north", this.stackPanelNorth.writeToNBT(new NBTTagCompound()));
        compound.setTag("south", this.stackPanelSouth.writeToNBT(new NBTTagCompound()));

        return compound;
    }

    @Override
    public void readFromNBT(NBTTagCompound compound) {

        super.readFromNBT(compound);

        LogHelper.info("CALLED HERE!!! " + compound);

        if (compound.hasKey(PANELS)) {

            LogHelper.info("CALLED INSIDE HAS KEY PANELS");

            NBTTagCompound panels = compound.getCompoundTag(PANELS);

            this.stackPanelUp = new ItemStack(panels.getCompoundTag("up"));
            this.stackPanelDown = new ItemStack(panels.getCompoundTag("down"));
            this.stackPanelEast = new ItemStack(panels.getCompoundTag("east"));
            this.stackPanelWest = new ItemStack(panels.getCompoundTag("west"));
            this.stackPanelNorth = new ItemStack(panels.getCompoundTag("north"));
            this.stackPanelSouth = new ItemStack(panels.getCompoundTag("south"));

        } else {
            LogHelper.info("NOT TRUE PANELS");
        }

    }

    @Override
    public NBTTagCompound getUpdateTag() {
        // TODO Auto-generated method stub
        return super.getUpdateTag();
    }

}

 

PS: I believe I now see the problem :P But lets see...

You are not saving the PANELS tag.

Posted
9 hours ago, TheAwesomeGem said:

You are not saving the PANELS tag.

Yes now that I see the writeToNBT I noticed that, but how come that when I print the compound to the console it does show the tag PANELS there and the default values for each side?

PS: the createNBT is implemented correctly? Is it ok to call it from the constructor?

Thanks a lot.

Posted

Also... Independent of the fact that I was missing to write the tag PANELS... How come it's there on the NBT I receive, but the hasKey still is false?

 

@Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {
        // this is called by minecraft to give you the posibility to update your NBT before being saved to the world
        super.writeToNBT(compound);

        LogHelper.info("CALLED WRITE " + compound + " content");

        if (compound.hasKey(PANELS)) {
            LogHelper.info("HAS PANELS");
        }

 

Console shows:

 

[08:35:04] [Server thread/INFO] [LogHelper]: CALLED WRITE {ForgeData:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}},x:50,y:83,z:272,id:"factoryblock:te_factory"} content

 

but HAS PANELS never shows... isn't {ForgeData:{factory.panels:{east:{id indicating the precense of the tag PANELS there, or I'm missing something?

Posted

Judging by the "ForgeData" tag, it looks like you're using TileEntity#getTileData somewhere; don't do this. The tag returned by TileEntity#getTileData is for mods to store custom data on external TileEntities; but the capability system is a much better way to do this.

 

When you call TileEntity#writeToNBT, pass an empty compound tag as the argument.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted
9 minutes ago, Choonster said:

Judging by the "ForgeData" tag, it looks like you're using TileEntity#getTileData somewhere; don't do this. The tag returned by TileEntity#getTileData is for mods to store custom data on external TileEntities; but the capability system is a much better way to do this.

 

When you call TileEntity#writeToNBT, pass an empty compound tag as the argument.

Ohh ok. Well a friend told me that apparently I should never call the writeToNBT myself, not sure where he saw that. Is it ok to call it from the createNBT method that I have in my constructor, so each time the tileentity is set on the world, it creates the default values?

 

PD: I had the getTileData at the constructor as // this.getTileData().setTag(PANELS, createNBTData());

Posted
6 minutes ago, American2050 said:

Ohh ok. Well a friend told me that apparently I should never call the writeToNBT myself, not sure where he saw that. Is it ok to call it from the createNBT method that I have in my constructor, so each time the tileentity is set on the world, it creates the default values?

 

PD: I had the getTileData at the constructor as // this.getTileData().setTag(PANELS, createNBTData());

 

Don't call TileEntity#writeToNBT unless you actually need to serialise the TileEntity to NBT (e.g. to store the data in an ItemStack). Minecraft automatically calls it when the chunk is written to disk.

 

Your TileEntity's data should be stored in regular fields and only written to NBT when necessary.

  • Like 1

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Posted
Just now, Choonster said:

 

Don't call TileEntity#writeToNBT unless you actually need to serialise the TileEntity to NBT (e.g. to store the data in an ItemStack). Minecraft automatically calls it when the chunk is written to disk.

 

Your TileEntity's data should be stored in regular fields and only written to NBT when necessary.

Ohhh ok, so I don't need to worry about storing the values for the first time when the TileEntity is placed in the world?

 

I was doing this so, when I call methods from the Block, for example onBlockActivated I already "know" and can be "sure" that the TileEntity already has default values. But I guess I check against variables and not the data on the NBT right? Like if I want to change the value of for example ItemStack on side "UP" I just change the value of that variable and whenever Minecraft calls the writeToNBT it will update that value?

 

Thanks, and sorry for so many questions NBT was/is (and hopefully not will always be) a shady part on codding that I never clearly understand.

Posted

Apparently the problem is that the server isn't receiving the updated information.

 

This is a log when loading a world with one of my TileEntities placed on it...

 

[09:35:44] [Server thread/INFO] [LogHelper]: CALLED HERE ON READ!!!
[09:35:44] [Server thread/INFO] [LogHelper]: COMPOUND ON READ IS: {ForgeData:{factory.data:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}}},x:52,y:83,z:269,id:"factoryblock:te_factory",factory.data:{factory.panels:{east:{id:"minecraft:air",Count:0b,Damage:0s},south:{id:"minecraft:air",Count:0b,Damage:0s},north:{id:"minecraft:air",Count:0b,Damage:0s},west:{id:"minecraft:air",Count:0b,Damage:0s},up:{id:"minecraft:air",Count:0b,Damage:0s},down:{id:"minecraft:air",Count:0b,Damage:0s}}}}
[09:35:44] [Server thread/INFO] [LogHelper]: HAS TAG ON READ
[09:35:44] [Server thread/INFO] [LogHelper]: HAS PANELS ON READ

[09:35:49] [Server thread/INFO] [LogHelper]: COMPOUND ON WRITE IS: {ForgeData:{factory.data:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}}},x:52,y:83,z:269,id:"factoryblock:te_factory",factory.data:{factory.panels:{east:{id:"minecraft:air",Count:0b,Damage:0s},south:{id:"minecraft:air",Count:0b,Damage:0s},north:{id:"minecraft:air",Count:0b,Damage:0s},west:{id:"minecraft:air",Count:0b,Damage:0s},up:{id:"minecraft:air",Count:0b,Damage:0s},down:{id:"minecraft:air",Count:0b,Damage:0s}}}}
[09:35:49] [Server thread/INFO] [LogHelper]: HAS TAG ON WRITE
[09:35:49] [Server thread/INFO] [LogHelper]: HAS PANELS ON WRITE
[09:35:49] [Server thread/INFO] [LogHelper]: HAS up ON WRITE

[09:35:49] [main/INFO] [LogHelper]: CALLED HERE ON READ!!!
[09:35:49] [main/INFO] [LogHelper]: COMPOUND ON READ IS: {ForgeData:{factory.data:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}}},x:52,y:83,z:269,id:"factoryblock:te_factory"}

[09:35:53] [Server thread/INFO] [LogHelper]: COMPOUND ON WRITE IS: {ForgeData:{factory.data:{factory.panels:{east:{id:"minecraft:air",Count:1b,Damage:0s},south:{id:"minecraft:air",Count:1b,Damage:0s},north:{id:"minecraft:air",Count:1b,Damage:0s},west:{id:"minecraft:air",Count:1b,Damage:0s},up:{id:"minecraft:air",Count:1b,Damage:0s},down:{id:"minecraft:air",Count:1b,Damage:0s}}}},x:52,y:83,z:269,id:"factoryblock:te_factory",factory.data:{factory.panels:{east:{id:"minecraft:air",Count:0b,Damage:0s},south:{id:"minecraft:air",Count:0b,Damage:0s},north:{id:"minecraft:air",Count:0b,Damage:0s},west:{id:"minecraft:air",Count:0b,Damage:0s},up:{id:"minecraft:air",Count:0b,Damage:0s},down:{id:"minecraft:air",Count:0b,Damage:0s}}}}
[09:35:53] [Server thread/INFO] [LogHelper]: HAS TAG ON WRITE
[09:35:53] [Server thread/INFO] [LogHelper]: HAS PANELS ON WRITE
[09:35:53] [Server thread/INFO] [LogHelper]: HAS up ON WRITE
[09:35:53] [Server thread/INFO]: Saving chunks for level 'New World'/the_nether
[09:35:53] [Server thread/INFO]: Saving chunks for level 'New World'/the_end

 

This are the differences I notice: The Write was only called on server.

 

And when the read is called both, Server and Client side, the information on the NBT is different

 

SERVER on READ
{ForgeData:{factory.data:
{factory.panels:{
east:{id:"minecraft:air",Count:1b,Damage:0s},
south:{id:"minecraft:air",Count:1b,Damage:0s},
north:{id:"minecraft:air",Count:1b,Damage:0s},
west:{id:"minecraft:air",Count:1b,Damage:0s},
up:{id:"minecraft:air",Count:1b,Damage:0s},
down:{id:"minecraft:air",Count:1b,Damage:0s}}}},
x:52,y:83,z:269,id:"factoryblock:te_factory",

factory.data:
{factory.panels:{
east:{id:"minecraft:air",Count:0b,Damage:0s},
south:{id:"minecraft:air",Count:0b,Damage:0s},
north:{id:"minecraft:air",Count:0b,Damage:0s},
west:{id:"minecraft:air",Count:0b,Damage:0s},
up:{id:"minecraft:air",Count:0b,Damage:0s},
down:{id:"minecraft:air",Count:0b,Damage:0s}}}}


CLIENT on READ
{ForgeData:{factory.data:
{factory.panels:{
east:{id:"minecraft:air",Count:1b,Damage:0s},
south:{id:"minecraft:air",Count:1b,Damage:0s},
north:{id:"minecraft:air",Count:1b,Damage:0s},
west:{id:"minecraft:air",Count:1b,Damage:0s},
up:{id:"minecraft:air",Count:1b,Damage:0s},
down:{id:"minecraft:air",Count:1b,Damage:0s}}}},
x:52,y:83,z:269,id:"factoryblock:te_factory"}

 

What I don't understand why is the ForgeData there? And how the client go it?

PS: I guess the fix for this is to work with packets now? I remember I saw something about overwriting 4 packet methods for TileEntities but will have to read about this as I have not idea.
 

This is my TE code now after cleanup:

 

package org.bitbucket.factoryblock.tileentity;

import org.bitbucket.factoryblock.LogHelper;
import org.bitbucket.factoryblock.enums.EnumPanels;
import org.bitbucket.factoryblock.interfaces.IPanel;

import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.ITickable;

public class TileEntityFactory extends TileEntity implements ITickable, net.minecraft.client.renderer.texture.ITickable {

    public static final String TAG = "factory.data";
    public static final String PANELS = "factory.panels";

    private ItemStack stackPanelUp = ItemStack.EMPTY;
    private ItemStack stackPanelDown = ItemStack.EMPTY;
    private ItemStack stackPanelEast = ItemStack.EMPTY;
    private ItemStack stackPanelWest = ItemStack.EMPTY;
    private ItemStack stackPanelNorth = ItemStack.EMPTY;
    private ItemStack stackPanelSouth = ItemStack.EMPTY;

    public TileEntityFactory() {
    }

    @Override
    public void update() {
        // TODO Auto-generated method stub

    }

    // TODO Do we need this?
    @Override
    public void tick() {
        // TODO Auto-generated method stub

    }

    public void setPanelAt(EnumFacing facing, ItemStack stack) {
        switch (facing) {
            case UP:
                this.stackPanelUp = stack;
                break;
            case DOWN:
                this.stackPanelUp = stack;
                break;
            case EAST:
                this.stackPanelUp = stack;
                break;
            case WEST:
                this.stackPanelUp = stack;
                break;
            case NORTH:
                this.stackPanelUp = stack;
                break;
            case SOUTH:
                this.stackPanelUp = stack;
                break;
        }

        // This Force NBT Update?
        this.markDirty();
    }

    public EnumPanels getPanelTypeAt(EnumFacing facing) {

        switch (facing) {
            case UP:
                if (this.stackPanelUp.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelUp.getItem();
                    return thePanel.getPanelType();
                }
            case DOWN:
                if (this.stackPanelDown.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelDown.getItem();
                    return thePanel.getPanelType();
                }
            case EAST:
                if (this.stackPanelEast.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelEast.getItem();
                    return thePanel.getPanelType();
                }
            case WEST:
                if (this.stackPanelWest.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelWest.getItem();
                    return thePanel.getPanelType();
                }
            case NORTH:
                if (this.stackPanelNorth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelNorth.getItem();
                    return thePanel.getPanelType();
                }
            case SOUTH:
                if (this.stackPanelSouth.getItem() instanceof IPanel) {
                    IPanel thePanel = (IPanel) this.stackPanelSouth.getItem();
                    return thePanel.getPanelType();
                }
        }

        return EnumPanels.EMPTY;
    }

    @Override
    public NBTTagCompound writeToNBT(NBTTagCompound compound) {

        super.writeToNBT(compound);

        // DATA
        NBTTagCompound data = new NBTTagCompound();

        // PANELS
        NBTTagCompound panels = new NBTTagCompound();

        panels.setTag("up", this.stackPanelUp.writeToNBT(new NBTTagCompound()));
        panels.setTag("down", this.stackPanelDown.writeToNBT(new NBTTagCompound()));
        panels.setTag("east", this.stackPanelEast.writeToNBT(new NBTTagCompound()));
        panels.setTag("west", this.stackPanelWest.writeToNBT(new NBTTagCompound()));
        panels.setTag("north", this.stackPanelNorth.writeToNBT(new NBTTagCompound()));
        panels.setTag("south", this.stackPanelSouth.writeToNBT(new NBTTagCompound()));

        // STORE PANELS ON DATA
        data.setTag(PANELS, panels);

        // STORE DATA ON A MAIN TAG
        compound.setTag(TAG, data);

        LogHelper.info("COMPOUND ON WRITE IS: " + compound);

        if (compound.hasKey(TAG)) {
            LogHelper.info("HAS TAG ON WRITE");
            NBTTagCompound temp = compound.getCompoundTag(TAG);
            if (temp.hasKey(PANELS)) {
                LogHelper.info("HAS PANELS ON WRITE");
                NBTTagCompound temp_panels = temp.getCompoundTag(PANELS);

                if (temp_panels.hasKey("up")) {
                    LogHelper.info("HAS up ON WRITE");
                }
            }
        }
        return compound;
    }

    @Override
    public void readFromNBT(NBTTagCompound compound) {

        super.readFromNBT(compound);

        LogHelper.info("CALLED HERE ON READ!!!");
        LogHelper.info("COMPOUND ON READ IS: " + compound);

        if (compound.hasKey(TAG)) {

            LogHelper.info("HAS TAG ON READ");

            NBTTagCompound data = compound.getCompoundTag(TAG);

            if (data.hasKey(PANELS)) {

                LogHelper.info("HAS PANELS ON READ");

                NBTTagCompound panels = data.getCompoundTag(PANELS);

                this.stackPanelUp = new ItemStack(panels.getCompoundTag("up"));
                this.stackPanelDown = new ItemStack(panels.getCompoundTag("down"));
                this.stackPanelEast = new ItemStack(panels.getCompoundTag("east"));
                this.stackPanelWest = new ItemStack(panels.getCompoundTag("west"));
                this.stackPanelNorth = new ItemStack(panels.getCompoundTag("north"));
                this.stackPanelSouth = new ItemStack(panels.getCompoundTag("south"));
            }

        }

    }

    /*
     * @Override
     * public NBTTagCompound getUpdateTag() {
     * return super.getUpdateTag();
     * }
     */

}

 

Posted (edited)
26 minutes ago, diesieben07 said:

Some things to clear up:

  • Saving to disk for tile entities (and normal entities) happens automatically, you get no control over when it happens. The only thing you must do is call TileEntity::markDirty when data that needs saving has changed. This tells Minecraft "Hey, I need saving before you unload me". When that happens does not matter and you should not care about it. markDirty also tells nearby blocks "hey, my tile entity data has changed" (by calling Block::onNeighborChange if Block::getWeakChanges returns true for the neighboring block). This is used to update comparators when a nearby inventory changes. Making these two things one method is ugly, but that's how it is.
  • Loading from disk for tile entities happens automatically. You can (usually) assume that your tile entity will not be in a state of "I am freshly created but do not have the data yet". Only exception is a constructor in your TileEntity class (seriously, you almost never should write one) and obviously the Block::createTileEntity method, where you just created the fresh instance.
  • Stop thinking in terms of "store stuff in NBT". NBT is a serialization format (like JSON). You store things in your tile entity, which happens to use NBT to persist data into the world. But nobody but the methods writeToNbt and readFromNbt need to care about this and nobody else but them should touch NBT.
  • getUpdateTag (which you have pointlessly overridden) is vanilla's crude tile entity synchronization mechanism. For vanilla this mechanism is "take the complete tile entity state, serialize it like we would if saving to disk and then shove it down the network". Adopting this mechanism in modded code is terrible, since modded tile entities often have incredibly complex functionality and produce lots of data when saving to disk. There is no need to shove all this crap down the network. Only send over what you need to and if you are feeling especially nice, stop using the terrible NBT-based syncing that vanilla uses.

Now, on to the issues with your code:

  • Do not implement that client-only ITickable interface on your tile entity. You will crash a dedicated server.
  • Never, ever use getTileData. Seriously. For your own tile entities, store data in normal fields (see above). Do not use NBT here, NBT is for saving to disk, only (ignore ItemStacks, they are terrible).

Thanks a lot for all this, great information. Some points here. I used the getUpdateTag  because I was following a tutorial and example code from MinecraftByExamples on the TileEntities examples

https://github.com/TheGreyGhost/MinecraftByExample/tree/master/src/main/java/minecraftbyexample/mbe20_tileentity_data

(so now I have the 4 methods suggested there getUpdatePacket(), getUpdateTag(), onDataPacket(), and handleUpdateTag() been overriden.

 

Now going with the thinking of "I store things in my TileEntity" problem comes when I change a variable on my TileEntity but those changes are made server only, then the client doesn't know about them until writeToNBT and readFromNBT are called.

 

I have a point on my TileEntity after I set x ItemStack to any given side, at the end of that method I call this.markDirty (But you mention I shouldn't care of "When" that happens) I would like for it to happen inmediatly, so my block knows about the changes.

 

Now on my block, on the method onBlockActivated (And server side) I set the ItemStacks on my tile entity and, after that is done I am calling .notifyBlockUpdate on the client side. It's not until the 2nd time I right click that you can see the render update (At this point I'm not sure if it's because the first time it's called, it still doesn't have the information of what ItemStack is on X side or what) I will have to see what's going on there.

 

PS: What do you mean with "ignore ItemStacks they are terrible"? You mean why I'm storing itemstacks on my TileEntity this way?

Edited by American2050
Posted

diesieben07 Thanks a lot for the time you take answering this questions and clarifying all the points. I believe that I finally have a better understanding on what's happening and when it's happening and more important, on how to handle this things.

I'm gonna start implementing all this and let you know how it went.

 

I was super super lost because I'm using a lot of things I never experiment with before. Special Rendering for my block, extended unlisted properties, and all this data sync across server and client. Tons of stuff going on at the same time, and I unsure on how to implement all of those, so it literally fell like 1 step forward and 10 back for each thing I got working. Always hitting some bump :P

 

Thanks once again. :x

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • I've tried removing Entity Texture Features, Sodium, and Valkyrien Skies, none of that worked. Also tried removing the Xaero mods and that didnt work either. I don't know how to add files I'm sorry if I am doing this wrong   ---- Minecraft Crash Report ---- // Embeddium instance tainted by mods: [entity_texture_features, sodiumoptionsapi, valkyrienskies] // Please do not reach out for Embeddium support without removing these mods first. // ------- // You're mean. Time: 2024-11-30 18:39:37 Description: Rendering overlay java.lang.RuntimeException: One of more entry values did not copy to the correct id. Check log for details!     at net.minecraftforge.registries.ForgeRegistry.sync(ForgeRegistry.java:625) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.registries.GameData.loadRegistry(GameData.java:571) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.registries.GameData.freezeData(GameData.java:250) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.common.ForgeStatesProvider.lambda$new$5(ForgeStatesProvider.java:26) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.fml.ModLoader.handleInlineTransition(ModLoader.java:217) ~[fmlcore-1.20.1-47.3.0.jar%23735!/:?] {re:mixin}     at net.minecraftforge.fml.ModLoader.lambda$dispatchAndHandleError$19(ModLoader.java:209) ~[fmlcore-1.20.1-47.3.0.jar%23735!/:?] {re:mixin}     at java.util.Optional.ifPresent(Optional.java:178) ~[?:?] {re:mixin}     at net.minecraftforge.fml.ModLoader.dispatchAndHandleError(ModLoader.java:209) ~[fmlcore-1.20.1-47.3.0.jar%23735!/:?] {re:mixin}     at net.minecraftforge.fml.ModLoader.lambda$finishMods$17(ModLoader.java:197) ~[fmlcore-1.20.1-47.3.0.jar%23735!/:?] {re:mixin}     at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?] {re:mixin}     at net.minecraftforge.fml.ModLoader.finishMods(ModLoader.java:197) ~[fmlcore-1.20.1-47.3.0.jar%23735!/:?] {re:mixin}     at net.minecraftforge.client.loading.ClientModLoader.lambda$finishModLoading$6(ClientModLoader.java:102) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading,pl:runtimedistcleaner:A}     at net.minecraftforge.client.loading.ClientModLoader.lambda$createRunnableWithCatch$4(ClientModLoader.java:89) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading,pl:runtimedistcleaner:A}     at net.minecraftforge.client.loading.ClientModLoader.finishModLoading(ClientModLoader.java:102) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading,pl:runtimedistcleaner:A}     at net.minecraftforge.client.loading.ClientModLoader.lambda$onResourceReload$3(ClientModLoader.java:82) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading,pl:runtimedistcleaner:A}     at java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787) ~[?:?] {}     at java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:483) ~[?:?] {}     at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?] {}     at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?] {}     at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?] {re:computing_frames}     at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?] {re:computing_frames}     at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Suspected Mods: NONE Stacktrace:     at net.minecraftforge.registries.ForgeRegistry.sync(ForgeRegistry.java:625) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.registries.GameData.loadRegistry(GameData.java:571) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading}     at net.minecraftforge.registries.GameData.freezeData(GameData.java:250) ~[forge-1.20.1-47.3.0-universal.jar%23739!/:?] {re:classloading} -- Overlay render details -- Details:     Overlay name: net.minecraftforge.client.loading.ForgeLoadingOverlay Stacktrace:     at net.minecraft.client.renderer.GameRenderer.m_109093_(GameRenderer.java:957) ~[client-1.20.1-20230612.114412-srg.jar%23734!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1146) ~[client-1.20.1-20230612.114412-srg.jar%23734!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23734!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaerominimap:xaero_minecraftclient,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:218) ~[forge-47.3.0.jar:?] {re:classloading,pl:runtimedistcleaner:A}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {}     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {}     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {}     at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.3.0.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?] {}     at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?] {} -- Last reload -- Details:     Reload number: 1     Reload reason: initial     Finished: No     Packs: vanilla, mod_resources, builtin/towntalk, Moonlight Mods Dynamic Assets -- System Details -- Details:     Minecraft Version: 1.20.1     Minecraft Version ID: 1.20.1     Operating System: Windows 11 (amd64) version 10.0     Java Version: 17.0.8, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 2647858816 bytes (2525 MiB) / 8522825728 bytes (8128 MiB) up to 21508390912 bytes (20512 MiB)     CPUs: 12     Processor Vendor: AuthenticAMD     Processor Name: AMD Ryzen 5 5600X3D 6-Core Processor                Identifier: AuthenticAMD Family 25 Model 33 Stepping 2     Microarchitecture: Zen 3     Frequency (GHz): 3.29     Number of physical packages: 1     Number of physical CPUs: 6     Number of logical CPUs: 12     Graphics card #0 name: NVIDIA GeForce RTX 4060 Ti     Graphics card #0 vendor: NVIDIA (0x10de)     Graphics card #0 VRAM (MB): 4095.00     Graphics card #0 deviceId: 0x2803     Graphics card #0 versionInfo: DriverVersion=32.0.15.6109     Memory slot #0 capacity (MB): 16384.00     Memory slot #0 clockSpeed (GHz): 2.67     Memory slot #0 type: DDR4     Memory slot #1 capacity (MB): 16384.00     Memory slot #1 clockSpeed (GHz): 2.67     Memory slot #1 type: DDR4     Virtual memory max (MB): 34696.73     Virtual memory used (MB): 22514.95     Swap memory total (MB): 2048.00     Swap memory used (MB): 0.00     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx20512m -Xms256m     Launched Version: forge-47.3.0     Backend library: LWJGL version 3.3.1 build 7     Backend API: NVIDIA GeForce RTX 4060 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 561.09, NVIDIA Corporation     Window size: 1024x768     GL Caps: Using framebuffer using OpenGL 3.2     GL debug messages:      Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'     Type: Client (map_client.txt)     Graphics mode: fancy     Resource Packs:      Current Language: en_us     CPU: 12x AMD Ryzen 5 5600X3D 6-Core Processor      ModLauncher: 10.0.9+10.0.9+main.dcd20f30     ModLauncher launch target: forgeclient     ModLauncher naming: srg     ModLauncher services:          mixin-0.8.5.jar mixin PLUGINSERVICE          eventbus-6.0.5.jar eventbus PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar slf4jfixer PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar object_holder_definalize PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar runtime_enum_extender PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar capability_token_subclass PLUGINSERVICE          accesstransformers-8.0.4.jar accesstransformer PLUGINSERVICE          fmlloader-1.20.1-47.3.0.jar runtimedistcleaner PLUGINSERVICE          modlauncher-10.0.9.jar mixin TRANSFORMATIONSERVICE          modlauncher-10.0.9.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          [email protected]         [email protected]         javafml@null         lowcodefml@null     Mod List:          tetra_tables--mc1.20--1.2.jar                     |Tetra tables looking neat     |tetra_tables                  |1.2                 |DONE      |Manifest: NOSIGNATURE         quarkstructures-1.0.0-1.20.1.jar                  |Quark Structures              |quarkstructures               |1.0.0-1.20.1        |DONE      |Manifest: NOSIGNATURE         YungsBetterDungeons-1.20-Forge-4.0.4.jar          |YUNG's Better Dungeons        |betterdungeons                |1.20-Forge-4.0.4    |DONE      |Manifest: NOSIGNATURE         farmers-cutting-quark-1.0.0.jar                   |Farmer's Cutting: Quark       |fcquark                       |1.0.0               |DONE      |Manifest: NOSIGNATURE         additionalentityattributes-forge-1.4.0.5+1.20.1.ja|Additional Entity Attributes  |additionalentityattributes    |1.4.0.5+1.20.1      |DONE      |Manifest: NOSIGNATURE         botarium-forge-1.20.1-2.3.4.jar                   |Botarium                      |botarium                      |2.3.4               |DONE      |Manifest: NOSIGNATURE         mcw-windows-2.3.0-mc1.20.1forge.jar               |Macaw's Windows               |mcwwindows                    |2.3.0               |DONE      |Manifest: NOSIGNATURE         apoli-forge-1.20.1-2.9.0.8.jar                    |Apoli                         |apoli                         |1.20.1-2.9.0.8      |DONE      |Manifest: NOSIGNATURE         cavernousdelight-1.1.0.jar                        |Cavernous Delight             |cavernousdelight              |1.1.0               |DONE      |Manifest: NOSIGNATURE         AutochefsDelight-1.20.1-Forge-1.0.5.jar           |Autochef's Delight            |autochefsdelight              |1.0.5+forge         |DONE      |Manifest: NOSIGNATURE         additional_attributes-1.20.1-1.2.1-all.jar        |Additional Attributes         |additional_attributes         |1.2.1               |DONE      |Manifest: NOSIGNATURE         YungsApi-1.20-Forge-4.0.6.jar                     |YUNG's API                    |yungsapi                      |1.20-Forge-4.0.6    |DONE      |Manifest: NOSIGNATURE         farmers-cutting-biomes-o-plenty-1.0.0.jar         |Farmer's Cutting: Biomes O' Pl|fcbop                         |1.0.0               |DONE      |Manifest: NOSIGNATURE         balm-forge-1.20.1-7.3.9-all.jar                   |Balm                          |balm                          |7.3.9               |DONE      |Manifest: NOSIGNATURE         JustEnoughResources-1.20.1-1.4.0.247.jar          |Just Enough Resources         |jeresources                   |1.4.0.247           |DONE      |Manifest: NOSIGNATURE         chat_heads-0.13.7-forge-1.20.jar                  |Chat Heads                    |chat_heads                    |0.13.7              |DONE      |Manifest: NOSIGNATURE         YungsBetterNetherFortresses-1.20-Forge-2.0.6.jar  |YUNG's Better Nether Fortresse|betterfortresses              |1.20-Forge-2.0.6    |DONE      |Manifest: NOSIGNATURE         cloth-config-11.1.136-forge.jar                   |Cloth Config v10 API          |cloth_config                  |11.1.136            |DONE      |Manifest: NOSIGNATURE         sound-physics-remastered-forge-1.20.1-1.4.5.jar   |Sound Physics Remastered      |sound_physics_remastered      |1.20.1-1.4.5        |DONE      |Manifest: NOSIGNATURE         cavebiomesdelight-1.0.2-1.20.1.jar                |Yung's Cave Biomes Delight    |cavebiomesdelight             |1.0.2-1.20.1        |DONE      |Manifest: NOSIGNATURE         deeperdarkerdelight-1.1.1-1.20.1.jar              |Deeper Darker Delight         |deeperdarkerdelight           |1.1.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         embeddium-0.3.31+mc1.20.1.jar                     |Embeddium                     |embeddium                     |0.3.31+mc1.20.1     |DONE      |Manifest: NOSIGNATURE         structure_gel-1.20.1-2.16.2.jar                   |Structure Gel API             |structure_gel                 |2.16.2              |DONE      |Manifest: NOSIGNATURE         xaeros_waystones_compability-1.0.jar              |Xaero's Map - Waystones Compab|w2w2                          |1.0                 |DONE      |Manifest: NOSIGNATURE         vintagedelight-0.1.6.jar                          |Vintage Delight               |vintagedelight                |0.1.6               |DONE      |Manifest: NOSIGNATURE         handcrafted-forge-1.20.1-3.0.6.jar                |Handcrafted                   |handcrafted                   |3.0.6               |DONE      |Manifest: NOSIGNATURE         Farmers Friend 1.1 - 1.20.1.jar                   |Farmer's Friend               |farmers_friend                |1.0.0               |DONE      |Manifest: NOSIGNATURE         adastradelight-1.1.0-1.20.1.jar                   |Ad Astra Delight              |adastradelight                |1.1.0-1.20.1        |DONE      |Manifest: NOSIGNATURE         WaystonesTeleportPets-1.20-1.20.1--1.2.jar        |Waystones Teleport Pets       |w2pets                        |1.0                 |DONE      |Manifest: NOSIGNATURE         StructureCompass-1.20.1-2.1.0.jar                 |Structure Compass Mod         |structurecompass              |2.1.0               |DONE      |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.3-mc1.20.1forge.jar             |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.3               |DONE      |Manifest: NOSIGNATURE         YungsBridges-1.20-Forge-4.0.3.jar                 |YUNG's Bridges                |yungsbridges                  |1.20-Forge-4.0.3    |DONE      |Manifest: NOSIGNATURE         resourcefulconfig-forge-1.20.1-2.1.2.jar          |Resourcefulconfig             |resourcefulconfig             |2.1.2               |DONE      |Manifest: NOSIGNATURE         doggychunks-1.20.1-1.0.jar                        |Doggy Chunks                  |doggychunks                   |1.20.1-1.0          |DONE      |Manifest: NOSIGNATURE         alexsmobsinteraction-4.3-all.jar                  |Alexs Mobs Interaction        |alexsmobsinteraction          |4.3                 |DONE      |Manifest: NOSIGNATURE         curios-forge-5.11.0+1.20.1.jar                    |Curios API                    |curios                        |5.11.0+1.20.1       |DONE      |Manifest: NOSIGNATURE         origins-forge-1.20.1-1.10.0.9-all.jar             |Origins                       |origins                       |1.20.1-1.10.0.9     |DONE      |Manifest: NOSIGNATURE         right-click-harvest-3.2.3+1.20.1-forge.jar        |Right Click Harvest           |rightclickharvest             |3.2.3+1.20.1-forge  |DONE      |Manifest: NOSIGNATURE         Searchables-forge-1.20.1-1.0.3.jar                |Searchables                   |searchables                   |1.0.3               |DONE      |Manifest: NOSIGNATURE         YungsExtras-1.20-Forge-4.0.3.jar                  |YUNG's Extras                 |yungsextras                   |1.20-Forge-4.0.3    |DONE      |Manifest: NOSIGNATURE         Butchersdelight Foods beta 1.20.1 1.0.3.jar       |ButchersDelightfoods          |butchersdelightfoods          |1.20.11.0.3         |DONE      |Manifest: NOSIGNATURE         Icarus-NeoForge-2.10.0.jar                        |Icarus                        |icarus                        |2.10.0              |DONE      |Manifest: NOSIGNATURE         cumulus_menus-1.20.1-1.0.1-neoforge.jar           |Cumulus                       |cumulus_menus                 |1.20.1-1.0.1-neoforg|DONE      |Manifest: NOSIGNATURE         Butchersdelight beta 1.20.1 2.1.0.jar             |ButchersDelight               |butchersdelight               |1.20.12.1.0         |DONE      |Manifest: NOSIGNATURE         mcw-roofs-2.3.1-mc1.20.1forge.jar                 |Macaw's Roofs                 |mcwroofs                      |2.3.1               |DONE      |Manifest: NOSIGNATURE         emiffect-forge-1.1.2+mc1.20.1.jar                 |EMIffect                      |emiffect                      |1.1.2+mc1.20.1      |DONE      |Manifest: NOSIGNATURE         betterwithminecolonies-1.20-1.19.19.jar           |Better With Minecolonies      |betterwithminecolonies        |1.20-1.19.19        |DONE      |Manifest: NOSIGNATURE         YungsBetterEndIsland-1.20-Forge-2.0.6.jar         |YUNG's Better End Island      |betterendisland               |1.20-Forge-2.0.6    |DONE      |Manifest: NOSIGNATURE         nitrogen_internals-1.20.1-1.0.11-neoforge.jar     |Nitrogen                      |nitrogen_internals            |1.20.1-1.0.11-neofor|DONE      |Manifest: NOSIGNATURE         JadeAddons-1.20.1-Forge-5.3.1.jar                 |Jade Addons                   |jadeaddons                    |5.3.1+forge         |DONE      |Manifest: NOSIGNATURE         l2library-2.4.25-slim.jar                         |L2 Library                    |l2library                     |2.4.25              |DONE      |Manifest: NOSIGNATURE         toms_storage-1.20-1.6.8.jar                       |Tom's Simple Storage Mod      |toms_storage                  |1.6.8               |DONE      |Manifest: NOSIGNATURE         YungsBetterMineshafts-1.20-Forge-4.0.4.jar        |YUNG's Better Mineshafts      |bettermineshafts              |1.20-Forge-4.0.4    |DONE      |Manifest: NOSIGNATURE         DynamicTrees-1.20.1-1.3.5.jar                     |Dynamic Trees                 |dynamictrees                  |1.20.1-1.3.5        |DONE      |Manifest: NOSIGNATURE         DynamicTreesPlus-1.20.1-1.2.0-BETA3.jar           |Dynamic Trees Plus            |dynamictreesplus              |1.20.1-1.2.0-BETA3  |DONE      |Manifest: NOSIGNATURE         YungsBetterJungleTemples-1.20-Forge-2.0.5.jar     |YUNG's Better Jungle Temples  |betterjungletemples           |1.20-Forge-2.0.5    |DONE      |Manifest: NOSIGNATURE         Better_Dogs_X_Doggy_Talents_Next_v1.2.2 [Forge] - |Better Dogs For DTN           |betterdogs_dtn                |1.2.2               |DONE      |Manifest: NOSIGNATURE         SmartBrainLib-forge-1.20.1-1.15.jar               |SmartBrainLib                 |smartbrainlib                 |1.15                |DONE      |Manifest: NOSIGNATURE         QuarkOddities-1.20.1.jar                          |Quark Oddities                |quarkoddities                 |1.20.1              |DONE      |Manifest: NOSIGNATURE         TipsyLib-forge-1.20.1-2.0.9.jar                   |TipsyLib                      |tipsylib                      |2.0.9               |DONE      |Manifest: NOSIGNATURE         JustEnoughAdvancements-1.20.1-5.0.1.jar           |Just Enough Advancements      |jea                           |1.20.1-5.0.1        |DONE      |Manifest: NOSIGNATURE         Pehkui-3.8.2+1.20.1-forge.jar                     |Pehkui                        |pehkui                        |3.8.2+1.20.1-forge  |DONE      |Manifest: NOSIGNATURE         friendsfoesdelight-1.0.1-1.20.1.jar               |Friends&Foes Delight          |friendsfoesdelight            |1.0.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         caelus-forge-3.2.0+1.20.1.jar                     |Caelus API                    |caelus                        |3.2.0+1.20.1        |DONE      |Manifest: NOSIGNATURE         alexscavesdelight-1.0.22-1.20.1.jar               |Alex's Caves Delight          |alexscavesdelight             |1.0.22-1.20.1       |DONE      |Manifest: NOSIGNATURE         artifactsdelight-1.0.1.1-1.20.1.jar               |Artifacts Delight             |artifactsdelight              |1.0.1.1-1.20.1      |DONE      |Manifest: NOSIGNATURE         NaturesCompass-1.20.1-1.11.2-forge.jar            |Nature's Compass              |naturescompass                |1.20.1-1.11.2-forge |DONE      |Manifest: NOSIGNATURE         EpheroLib-1.20.1-FORGE-1.2.0.jar                  |BOZOID                        |epherolib                     |0.1.2               |DONE      |Manifest: NOSIGNATURE         untamedwilds-1.20.1-4.0.4.jar                     |Untamed Wilds                 |untamedwilds                  |4.0.4               |DONE      |Manifest: NOSIGNATURE         smarterfarmers-1.20-2.1.0.jar                     |Smarter Farmers               |smarterfarmers                |1.20-2.1.0          |DONE      |Manifest: NOSIGNATURE         LibX-1.20.1-5.0.12.jar                            |LibX                          |libx                          |1.20.1-5.0.12       |DONE      |Manifest: NOSIGNATURE         GlitchCore-forge-1.20.1-0.0.1.1.jar               |GlitchCore                    |glitchcore                    |0.0.1.1             |DONE      |Manifest: NOSIGNATURE         SereneSeasons-forge-1.20.1-9.1.0.0.jar            |Serene Seasons                |sereneseasons                 |9.1.0.0             |DONE      |Manifest: NOSIGNATURE         fusion-1.1.1-forge-mc1.20.1.jar                   |Fusion                        |fusion                        |1.1.1               |DONE      |Manifest: NOSIGNATURE         cratedelight-24.11.29-1.20-forge.jar              |Crate Delight                 |cratedelight                  |24.11.29-1.20-forge |DONE      |Manifest: NOSIGNATURE         CraftTweaker-forge-1.20.1-14.0.44.jar             |CraftTweaker                  |crafttweaker                  |14.0.44             |DONE      |Manifest: NOSIGNATURE         aether_delight_1.0.0_forge_1.20.1.jar             |Aether Delight                |aetherdelight                 |1.0.0               |DONE      |Manifest: NOSIGNATURE         blueskiesdelight-1.0.3.2-1.20.1.jar               |Blue Skies Delight            |blueskiesdelight              |1.0.3.2-1.20.1      |DONE      |Manifest: NOSIGNATURE         client-1.20.1-20230612.114412-srg.jar             |Minecraft                     |minecraft                     |1.20.1              |DONE      |Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f         emi-1.1.18+1.20.1+forge.jar                       |EMI                           |emi                           |1.1.18+1.20.1+forge |DONE      |Manifest: NOSIGNATURE         jei-1.20.1-forge-15.20.0.105.jar                  |Just Enough Items             |jei                           |15.20.0.105         |DONE      |Manifest: NOSIGNATURE         ecologicsdelight-1.0.3-1.20.1.jar                 |Ecologics Delight             |ecologicsdelight              |1.0.3-1.20.1        |DONE      |Manifest: NOSIGNATURE         fabric-api-base-0.4.31+ef105b4977.jar             |Fabric API Base               |fabric_api_base               |0.4.31+ef105b4977   |DONE      |Manifest: NOSIGNATURE         MouseTweaks-forge-mc1.20.1-2.25.1.jar             |Mouse Tweaks                  |mousetweaks                   |2.25.1              |DONE      |Manifest: NOSIGNATURE         NoChatReports-FORGE-1.20.1-v2.2.2.jar             |No Chat Reports               |nochatreports                 |1.20.1-v2.2.2       |DONE      |Manifest: NOSIGNATURE         delightfulburgers-1.20.1.jar                      |Delightful Burgers            |delightfulburgers             |1.20.1              |DONE      |Manifest: NOSIGNATURE         quarkartifacts-1.0.1-1.20.1.jar                   |Quark Artifacts               |quarkartifacts                |1.0.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         justenoughbreeding-forge-1.20.x-1.4.1.jar         |Just Enough Breeding          |justenoughbreeding            |1.4.1               |DONE      |Manifest: NOSIGNATURE         Oh-The-Trees-Youll-Grow-forge-1.20.1-1.3.1.jar    |Oh The Trees You'll Grow      |ohthetreesyoullgrow           |1.20.1-1.3.1        |DONE      |Manifest: NOSIGNATURE         spectrelib-forge-0.13.15+1.20.1.jar               |SpectreLib                    |spectrelib                    |0.13.15+1.20.1      |DONE      |Manifest: NOSIGNATURE         Corgilib-Forge-1.20.1-4.0.3.2.jar                 |CorgiLib                      |corgilib                      |4.0.3.2             |DONE      |Manifest: NOSIGNATURE         domum_ornamentum-1.20.1-1.0.186-RELEASE-universal.|Domum Ornamentum              |domum_ornamentum              |1.20.1-1.0.186-RELEA|DONE      |Manifest: NOSIGNATURE         calio-forge-1.20.1-1.11.0.5.jar                   |Calio                         |calio                         |1.20.1-1.11.0.5     |DONE      |Manifest: NOSIGNATURE         kffmod-4.11.0.jar                                 |Kotlin For Forge              |kotlinforforge                |4.11.0              |DONE      |Manifest: NOSIGNATURE         quarktrade-1.0.0-1.20.1.jar                       |Quark Trade                   |quarktrade                    |1.0.0-1.20.1        |DONE      |Manifest: NOSIGNATURE         farmersrespite-1.20.1-2.1.2.jar                   |Farmer's Respite              |farmersrespite                |1.20.1-2.1          |DONE      |Manifest: NOSIGNATURE         ecologics-forge-1.20.1-2.2.0.jar                  |Ecologics                     |ecologics                     |2.2.0               |DONE      |Manifest: NOSIGNATURE         Xaeros_Minimap_24.6.1_Forge_1.20.jar              |Xaero's Minimap               |xaerominimap                  |24.6.1              |DONE      |Manifest: NOSIGNATURE         decoration-delight-1.20.1.jar                     |Decoration Delight            |decoration_delight            |1.0.0               |DONE      |Manifest: NOSIGNATURE         Croptopia-1.20.1-FORGE-3.0.4.jar                  |Croptopia                     |croptopia                     |3.0.4               |DONE      |Manifest: NOSIGNATURE         polymorph-forge-0.49.5+1.20.1.jar                 |Polymorph                     |polymorph                     |0.49.5+1.20.1       |DONE      |Manifest: NOSIGNATURE         JustEnoughProfessions-forge-1.20.1-3.0.1.jar      |Just Enough Professions (JEP) |justenoughprofessions         |3.0.1               |DONE      |Manifest: NOSIGNATURE         structurize-1.20.1-1.0.760-snapshot.jar           |Structurize                   |structurize                   |1.20.1-1.0.760-snaps|DONE      |Manifest: NOSIGNATURE         supplementariesquarkcompat-1.0.1-1.20.1.jar       |Supplementaries x Quark Compat|supplementariesquarkcompat    |1.0.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         FastFurnace-1.20.1-8.0.2.jar                      |FastFurnace                   |fastfurnace                   |8.0.2               |DONE      |Manifest: NOSIGNATURE         oceansdelight-1.0.2-1.20.jar                      |Ocean's Delight               |oceansdelight                 |1.0.2-1.20          |DONE      |Manifest: NOSIGNATURE         lootr-forge-1.20-0.7.34.89.jar                    |Lootr                         |lootr                         |0.7.34.87           |DONE      |Manifest: NOSIGNATURE         occultism-1.20.1-1.140.2.jar                      |Occultism                     |occultism                     |1.140.2             |DONE      |Manifest: NOSIGNATURE         valkyrienskies-120-2.3.0-beta.5.jar               |Valkyrien Skies 2             |valkyrienskies                |2.3.0-beta.5        |DONE      |Manifest: NOSIGNATURE         cosmeticarmorreworked-1.20.1-v1a.jar              |CosmeticArmorReworked         |cosmeticarmorreworked         |1.20.1-v1a          |DONE      |Manifest: 5e:ed:25:99:e4:44:14:c0:dd:89:c1:a9:4c:10:b5:0d:e4:b1:52:50:45:82:13:d8:d0:32:89:67:56:57:01:53         fruitsdelight-1.0.13.jar                          |Fruits Delight                |fruitsdelight                 |1.0.13              |DONE      |Manifest: NOSIGNATURE         letsdo-addon-structures-1.7.1.jar                 |Let's Do Addon: Structures    |letsdoaddonstructures         |1.7.1               |DONE      |Manifest: NOSIGNATURE         cristellib-1.1.6-forge.jar                        |Cristel Lib                   |cristellib                    |1.1.6               |DONE      |Manifest: NOSIGNATURE         ad_astra-forge-1.20.1-1.15.19.jar                 |Ad Astra                      |ad_astra                      |1.15.19             |DONE      |Manifest: NOSIGNATURE         tetra-1.20.1-6.6.0.jar                            |tetra                         |tetra                         |6.6.0               |DONE      |Manifest: NOSIGNATURE         tetranomicon-1.5.3-1.20.1.jar                     |Tetranomicon                  |tetranomicon                  |1.5.3-1.20.1        |DONE      |Manifest: NOSIGNATURE         kuma-api-forge-20.1.8+1.20.1.jar                  |KumaAPI                       |kuma_api                      |20.1.8              |DONE      |Manifest: NOSIGNATURE         blue_skies-1.20.1-1.3.31.jar                      |Blue Skies                    |blue_skies                    |1.3.31              |DONE      |Manifest: NOSIGNATURE         dimasctetracompat-1.20.1-1.4.0.1.jar              |Dimensional Ascension Tetra Co|dimasctetracompat             |1.20.1-1.4.0.1      |DONE      |Manifest: NOSIGNATURE         YungsBetterWitchHuts-1.20-Forge-3.0.3.jar         |YUNG's Better Witch Huts      |betterwitchhuts               |1.20-Forge-3.0.3    |DONE      |Manifest: NOSIGNATURE         netherportalfix-forge-1.20-13.0.1.jar             |NetherPortalFix               |netherportalfix               |13.0.1              |DONE      |Manifest: NOSIGNATURE         farmers-cutting-twilight-forest-1.20.1-1.0.jar    |Farmer's Cutting: Twilight For|mr_farmers_cuttingtwilightfore|1.20.1-1.0          |DONE      |Manifest: NOSIGNATURE         geckolib-forge-1.20.1-4.4.9.jar                   |GeckoLib 4                    |geckolib                      |4.4.9               |DONE      |Manifest: NOSIGNATURE         DynamicTreesEcologics-1.20.1-1.1.0.jar            |Dynamic Trees for Ecologics   |dtecologics                   |1.20.1-1.1.0        |DONE      |Manifest: NOSIGNATURE         aether-1.20.1-1.5.1-neoforge.jar                  |The Aether                    |aether                        |1.20.1-1.5.1-neoforg|DONE      |Manifest: NOSIGNATURE         towntalk-1.20.1-1.1.0.jar                         |TownTalk                      |towntalk                      |1.1.0               |DONE      |Manifest: NOSIGNATURE         ingredientsdelight-1.0.2.1-1.20.1.jar             |Ingredients Delight           |ingredientsdelight            |1.0.2.1-1.20.1      |DONE      |Manifest: NOSIGNATURE         naturalist-forge-4.0.3-1.20.1.jar                 |Naturalist                    |naturalist                    |4.0.3               |DONE      |Manifest: NOSIGNATURE         incontrol-1.20-9.2.11.jar                         |InControl                     |incontrol                     |1.20-9.2.11         |DONE      |Manifest: NOSIGNATURE         DoggyTalentsNext-1.20.1-1.18.37.jar               |Doggy Talents Next            |doggytalents                  |1.18.37             |DONE      |Manifest: NOSIGNATURE         YungsBetterOceanMonuments-1.20-Forge-3.0.4.jar    |YUNG's Better Ocean Monuments |betteroceanmonuments          |1.20-Forge-3.0.4    |DONE      |Manifest: NOSIGNATURE         biomesoplentydelight-1.0.2.1-1.20.1.jar           |Biomes O'Plenty Delight       |biomesoplentydelight          |1.0.2.1-1.20.1      |DONE      |Manifest: NOSIGNATURE         sophisticatedcore-1.20.1-0.7.11.799.jar           |Sophisticated Core            |sophisticatedcore             |0.7.11.799          |DONE      |Manifest: NOSIGNATURE         eureka-1201-1.5.1-beta.3.jar                      |VS Eureka Mod                 |vs_eureka                     |1.5.1-beta.3        |DONE      |Manifest: NOSIGNATURE         mcwfurnituresbop-1.20-1.2.jar                     |Macaw's Furnitures - BOP      |mcwfurnituresbop              |1.20-1.2            |DONE      |Manifest: NOSIGNATURE         mcw-furniture-3.3.0-mc1.20.1forge.jar             |Macaw's Furniture             |mcwfurnitures                 |3.3.0               |DONE      |Manifest: NOSIGNATURE         TerraBlender-forge-1.20.1-3.0.1.7.jar             |TerraBlender                  |terrablender                  |3.0.1.7             |DONE      |Manifest: NOSIGNATURE         BiomesOPlenty-forge-1.20.1-19.0.0.91.jar          |Biomes O' Plenty              |biomesoplenty                 |19.0.0.91           |DONE      |Manifest: NOSIGNATURE         DynamicTreesBOP-1.20.1-3.3.1.jar                  |Dynamic Trees for Biomes o' Pl|dtbop                         |1.20.1-3.3.1        |DONE      |Manifest: NOSIGNATURE         XaerosWorldMap_1.39.0_Forge_1.20.jar              |Xaero's World Map             |xaeroworldmap                 |1.39.0              |DONE      |Manifest: NOSIGNATURE         JRFTL-1.20.1-1.6.0.jar                            |JRFTL                         |jrftl                         |1.6.0               |DONE      |Manifest: NOSIGNATURE         Controlling-forge-1.20.1-12.0.2.jar               |Controlling                   |controlling                   |12.0.2              |DONE      |Manifest: NOSIGNATURE         Placebo-1.20.1-8.6.2.jar                          |Placebo                       |placebo                       |8.6.2               |DONE      |Manifest: NOSIGNATURE         citadel-2.6.0-1.20.1.jar                          |Citadel                       |citadel                       |2.6.0               |DONE      |Manifest: NOSIGNATURE         alexsmobs-1.22.9.jar                              |Alex's Mobs                   |alexsmobs                     |1.22.9              |DONE      |Manifest: NOSIGNATURE         Rats-1.20.1-8.1.3.jar                             |Rats                          |rats                          |1.20.1-8.1.3        |DONE      |Manifest: NOSIGNATURE         forge-1.20.1-47.3.0-universal.jar                 |Forge                         |forge                         |47.3.0              |DONE      |Manifest: 84:ce:76:e8:45:35:e4:0e:63:86:df:47:59:80:0f:67:6c:c1:5f:6e:5f:4d:b3:54:47:1a:9f:7f:ed:5e:f2:90         Zeta-1.0-24.jar                                   |Zeta                          |zeta                          |1.0-24              |DONE      |Manifest: NOSIGNATURE         appleskin-forge-mc1.20.1-2.5.1.jar                |AppleSkin                     |appleskin                     |2.5.1+mc1.20.1      |DONE      |Manifest: NOSIGNATURE         lootintegrations-1.20.1-3.7.jar                   |Lootintegrations mod          |lootintegrations              |1.20.1-3.7          |DONE      |Manifest: NOSIGNATURE         mixinextras-forge-0.4.1.jar                       |MixinExtras                   |mixinextras                   |0.4.1               |DONE      |Manifest: NOSIGNATURE         emitrades-forge-1.2.1+mc1.20.1.jar                |EMI Trades                    |emitrades                     |1.2.1+mc1.20.1      |DONE      |Manifest: NOSIGNATURE         cobweb-forge-1.20.1-1.0.0.jar                     |Cobweb                        |cobweb                        |1.0.0               |DONE      |Manifest: NOSIGNATURE         soul-fire-d-forge-1.20.1-4.0.6.jar                |Soul Fire'd                   |soul_fire_d                   |4.0.6               |DONE      |Manifest: NOSIGNATURE         storagedelight-24.09.11-1.20-forge.jar            |Storage Delight               |storagedelight                |24.09.11-1.20-forge |DONE      |Manifest: NOSIGNATURE         sophisticatedbackpacks-1.20.1-3.20.17.1150.jar    |Sophisticated Backpacks       |sophisticatedbackpacks        |3.20.17.1150        |DONE      |Manifest: NOSIGNATURE         relics-1.20.1-0.8.0.7.jar                         |Relics                        |relics                        |0.8.0.7             |DONE      |Manifest: NOSIGNATURE         rch-supplementaries-compat-forge-1.0.0.jar        |RightClickHarvest Supplementar|rch_supplementaries_compat    |1.0.0               |DONE      |Manifest: NOSIGNATURE         mcw-doors-1.1.1forge-mc1.20.1.jar                 |Macaw's Doors                 |mcwdoors                      |1.1.1               |DONE      |Manifest: NOSIGNATURE         jeed-1.20-2.2.2.jar                               |Just Enough Effects Descriptio|jeed                          |1.20-2.2.2          |DONE      |Manifest: NOSIGNATURE         ramcompat-1.20.1-0.1.4.jar                        |RAM-Compat                    |ramcompat                     |0.1.4               |DONE      |Manifest: NOSIGNATURE         carryon-forge-1.20.1-2.1.2.7.jar                  |Carry On                      |carryon                       |2.1.2.7             |DONE      |Manifest: NOSIGNATURE         sodiumoptionsapi-forge-1.0.8-1.20.1.jar           |Sodium Options API            |sodiumoptionsapi              |1.0.8               |DONE      |Manifest: NOSIGNATURE         macawsroofsbop-1.20-1.1.jar                       |Macaw's Roofs - BOP           |macawsroofsbop                |1.20-1.1            |DONE      |Manifest: NOSIGNATURE         fzzy_config-0.5.8+1.20.1+forge.jar                |Fzzy Config                   |fzzy_config                   |0.5.8+1.20.1+forge  |DONE      |Manifest: NOSIGNATURE         emi_loot-0.7.4+1.20.1+forge.jar                   |EMI Loot                      |emi_loot                      |0.7.4+1.20.1+forge  |DONE      |Manifest: NOSIGNATURE         twilightforest-1.20.1-4.3.2508-universal.jar      |The Twilight Forest           |twilightforest                |4.3.2508            |DONE      |Manifest: NOSIGNATURE         DynamicTreesTheTwilightForest-1.20.1-2.2.0-BETA2.j|Dynamic Trees for The Twilight|dttwilightforest              |1.20.1-2.2.0-BETA2  |DONE      |Manifest: NOSIGNATURE         farmersplus-1.0.3.jar                             |Farmer's Plus                 |farmersplus                   |1.0.3               |DONE      |Manifest: NOSIGNATURE         sodiumdynamiclights-forge-1.0.9-1.20.1.jar        |Sodium Dynamic Lights         |sodiumdynamiclights           |1.0.9               |DONE      |Manifest: NOSIGNATURE         letsdo-addon-compat-forge-1.4.2.jar               |[Let's Do Addon] Compat       |letsdoaddon_compat            |1.4.2               |DONE      |Manifest: NOSIGNATURE         konkrete_forge_1.8.0_MC_1.20-1.20.1.jar           |Konkrete                      |konkrete                      |1.8.0               |DONE      |Manifest: NOSIGNATURE         adtetra-2.1.0.jar                                 |Ad Tetra!                     |adtetra                       |2.1.0               |DONE      |Manifest: NOSIGNATURE         undergarden_delight_1.0.0_forge_1.20.1.jar        |Undergarden Delight           |undergardendelight            |1.0.0               |DONE      |Manifest: NOSIGNATURE         mcw-bridges-3.0.0-mc1.20.1forge.jar               |Macaw's Bridges               |mcwbridges                    |3.0.0               |DONE      |Manifest: NOSIGNATURE         macawsbridgesbop-1.20-1.3.jar                     |Macaw's Bridges - BOP         |macawsbridgesbop              |1.20-1.3            |DONE      |Manifest: NOSIGNATURE         FarmersDelight-1.20.1-1.2.5.jar                   |Farmer's Delight              |farmersdelight                |1.20.1-1.2.5        |DONE      |Manifest: NOSIGNATURE         chefs-delight-1.0.3-forge-1.20.1.jar              |Chefs Delight                 |chefsdelight                  |1.0.3-forge-1.20.1  |DONE      |Manifest: NOSIGNATURE         culturaldelights-0.16.1.jar                       |Cultural Delights             |culturaldelights              |0.16.1              |DONE      |Manifest: NOSIGNATURE         farmers_croptopia-1.20.1-1.1.0.jar                |Farmer's Croptopia            |farmers_croptopia             |1.1.0               |DONE      |Manifest: NOSIGNATURE         FarmersStructures-1.0.3-1.20.jar                  |FarmersStructures             |farmers_structures            |1.0.0               |DONE      |Manifest: NOSIGNATURE         largemeals-1.20.1-1.3.0.jar                       |Large Meals                   |largemeals                    |1.20.1-1.3.0        |DONE      |Manifest: NOSIGNATURE         ends_delight-1.20.1-2.4.jar                       |End's Delight                 |ends_delight                  |2.4                 |DONE      |Manifest: NOSIGNATURE         entity_model_features_forge_1.20.1-2.2.6.jar      |Entity Model Features         |entity_model_features         |2.2.6               |DONE      |Manifest: NOSIGNATURE         ecologicsartifacts-1.0.1-1.20.1.jar               |Ecologics Artifacts           |ecologicsartifacts            |1.0.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         entity_texture_features_forge_1.20.1-6.2.8.jar    |Entity Texture Features       |entity_texture_features       |6.2.8               |DONE      |Manifest: NOSIGNATURE         DynamicTreesAether-1.20.1-1.3.0.jar               |Dynamic Trees for The Aether  |dtaether                      |1.20.1-1.3.0        |DONE      |Manifest: NOSIGNATURE         CompassCoords-1.6.0-mc1.20.jar                    |Compass Coords                |compasscoords                 |1.6.0               |DONE      |Manifest: NOSIGNATURE         jearchaeology-1.20.1-1.0.4.jar                    |Just Enough Archaeology       |jearchaeology                 |1.20.1-1.0.4        |DONE      |Manifest: NOSIGNATURE         mcw-fences-1.1.2-mc1.20.1forge.jar                |Macaw's Fences and Walls      |mcwfences                     |1.1.2               |DONE      |Manifest: NOSIGNATURE         mcwfencesbop-1.20-1.2.jar                         |Macaw's Fences - BOP          |mcwfencesbop                  |1.20-1.2            |DONE      |Manifest: NOSIGNATURE         farmers_delight_christmas_edition-V.0.92.5-forge-1|Farmers Delight Christmas edit|farmers_delight_christmas_edit|1.0.0               |DONE      |Manifest: NOSIGNATURE         untameddelight-1.20.1-1.1.0.jar                   |Untamed Delight               |untameddelight                |1.20.1-1.0.0        |DONE      |Manifest: NOSIGNATURE         Patchouli-1.20.1-84-FORGE.jar                     |Patchouli                     |patchouli                     |1.20.1-84-FORGE     |DONE      |Manifest: NOSIGNATURE         blockui-1.20.1-1.0.156-RELEASE.jar                |UI Library Mod                |blockui                       |1.20.1-1.0.156-RELEA|DONE      |Manifest: NOSIGNATURE         multipiston-1.20-1.2.43-RELEASE.jar               |Multi-Piston                  |multipiston                   |1.20-1.2.43-RELEASE |DONE      |Manifest: NOSIGNATURE         origins-classes-forge-1.2.1.jar                   |Origins: Classes              |origins_classes               |1.2.1               |DONE      |Manifest: NOSIGNATURE         YungsBetterStrongholds-1.20-Forge-4.0.3.jar       |YUNG's Better Strongholds     |betterstrongholds             |1.20-Forge-4.0.3    |DONE      |Manifest: NOSIGNATURE         aetheric_tetranomicon-1.1.2-1.20.1.jar            |Aetheric Tetranomicon         |aetheric_tetranomicon         |1.1.2-1.20.1        |DONE      |Manifest: NOSIGNATURE         resourcefullib-forge-1.20.1-2.1.29.jar            |Resourceful Lib               |resourcefullib                |2.1.29              |DONE      |Manifest: NOSIGNATURE         pehkui4all-1.0.1-forge-1.20.1.jar                 |Pehkui4All                    |pehkui4all                    |1.0.1               |DONE      |Manifest: NOSIGNATURE         twilightdelight-2.0.13.jar                        |Twilight's Flavor & Delight   |twilightdelight               |2.0.13              |DONE      |Manifest: NOSIGNATURE         deeperdarker-forge-1.20.1-1.3.3.jar               |Deeper and Darker             |deeperdarker                  |1.3.3               |DONE      |Manifest: NOSIGNATURE         architectury-9.2.14-forge.jar                     |Architectury                  |architectury                  |9.2.14              |DONE      |Manifest: NOSIGNATURE         letsdo-API-forge-1.2.15-forge.jar                 |[Let's Do] API                |doapi                         |1.2.15              |DONE      |Manifest: NOSIGNATURE         letsdo-vinery-forge-1.4.28.jar                    |[Let's Do] Vinery             |vinery                        |1.4.28              |DONE      |Manifest: NOSIGNATURE         letsdo-herbalbrews-forge-1.0.8.jar                |[Let's Do] HerbalBrews        |herbalbrews                   |1.0.8               |DONE      |Manifest: NOSIGNATURE         letsdo-nethervinery-forge-1.2.14.jar              |[Let's Do] NetherVinery       |nethervinery                  |1.2.14              |DONE      |Manifest: NOSIGNATURE         letsdo-furniture-forge-1.0.3.jar                  |[Let's Do] Furniture          |furniture                     |1.0.3               |DONE      |Manifest: NOSIGNATURE         letsdo-farm_and_charm-forge-1.0.4.jar             |[Let's Do] Farm & Charm       |farm_and_charm                |1.0.4               |DONE      |Manifest: NOSIGNATURE         letsdo-camping-forge-1.0.4.jar                    |[Let's Do] Camping            |camping                       |1.0.4               |DONE      |Manifest: NOSIGNATURE         letsdo-candlelight-forge-2.0.2.jar                |[Let's Do] Candlelight        |candlelight                   |2.0.2               |DONE      |Manifest: NOSIGNATURE         letsdo-bakery-forge-2.0.3.jar                     |[Let's Do] Bakery             |bakery                        |2.0.3               |DONE      |Manifest: NOSIGNATURE         letsdo-bloomingnature-forge-1.0.9.jar             |[Let's Do] BloomingNature     |bloomingnature                |1.0.9               |DONE      |Manifest: NOSIGNATURE         dtbloomingnature-1.20.1-forge-1.0.2.jar           |Dynamic Trees for BloomingNatu|dtbloomingnature              |1.0.2               |DONE      |Manifest: NOSIGNATURE         letsdo-brewery-forge-2.0.3.jar                    |[Let's Do] Brewery            |brewery                       |2.0.3               |DONE      |Manifest: NOSIGNATURE         letsdo-meadow-forge-1.3.19.jar                    |[Let's Do] Meadow             |meadow                        |1.3.19              |DONE      |Manifest: NOSIGNATURE         AI-Improvements-1.20-0.5.2.jar                    |AI-Improvements               |aiimprovements                |0.5.2               |DONE      |Manifest: NOSIGNATURE         cupboard-1.20.1-2.7.jar                           |Cupboard utilities            |cupboard                      |1.20.1-2.7          |DONE      |Manifest: NOSIGNATURE         bamboodelight-1.0.5-1.20.1.jar                    |Bamboo Delight                |bamboodelight                 |1.0.5-1.20.1        |DONE      |Manifest: NOSIGNATURE         The_Undergarden-1.20.1-0.8.14.jar                 |The Undergarden               |undergarden                   |0.8.14              |DONE      |Manifest: NOSIGNATURE         emi-letsdo-compat-1.3.jar                         |emi-letsdo-compat             |emi_letsdo_compat             |1.3                 |DONE      |Manifest: NOSIGNATURE         dtmeadow-1.20.1-forge-1.1-beta.jar                |Dynamic Trees for Meadow      |dtmeadow                      |1.1-beta            |DONE      |Manifest: NOSIGNATURE         Towns-and-Towers-1.12-Fabric+Forge.jar            |Towns and Towers              |t_and_t                       |0.0NONE             |DONE      |Manifest: NOSIGNATURE         quark_delight_1.0.0_forge_1.20.1.jar              |Quark Delight                 |quarkdelight                  |1.0.0               |DONE      |Manifest: NOSIGNATURE         BetterAdvancements-Forge-1.20.1-0.4.2.10.jar      |Better Advancements           |betteradvancements            |0.4.2.10            |DONE      |Manifest: NOSIGNATURE         raccompat-1.20.1-0.1.3.jar                        |RAC-Compat                    |raccompat                     |0.1.3               |DONE      |Manifest: NOSIGNATURE         amendments-1.20-1.2.12.jar                        |Amendments                    |amendments                    |1.20-1.2.12         |DONE      |Manifest: NOSIGNATURE         sophisticatedstorage-1.20.1-0.10.50.955.jar       |Sophisticated Storage         |sophisticatedstorage          |0.10.50.955         |DONE      |Manifest: NOSIGNATURE         OctoLib-FORGE-0.4.2+1.20.1.jar                    |OctoLib                       |octolib                       |0.4.2               |DONE      |Manifest: NOSIGNATURE         veggiesdelight-1.4.2.jar                          |Veggies Delight               |veggiesdelight                |1.4.2               |DONE      |Manifest: NOSIGNATURE         common-networking-forge-1.0.5-1.20.1.jar          |Common Networking             |commonnetworking              |1.0.5-1.20.1        |DONE      |Manifest: NOSIGNATURE         CuriosQuarkOBP-1.20.1-1.2.5.jar                   |Curios Quark Oddities Backpack|curiosquarkobp                |1.2.5               |DONE      |Manifest: NOSIGNATURE         tetracelium-1.20.1-1.3.1.jar                      |tetracelium                   |tetracelium                   |1.3.1               |DONE      |Manifest: NOSIGNATURE         waystones-forge-1.20-14.1.6.jar                   |Waystones                     |waystones                     |14.1.6              |DONE      |Manifest: NOSIGNATURE         Clumps-forge-1.20.1-12.0.0.4.jar                  |Clumps                        |clumps                        |12.0.0.4            |DONE      |Manifest: NOSIGNATURE         YungsCaveBiomes-1.20.1-Forge-2.0.1.jar            |YUNG's Cave Biomes            |yungscavebiomes               |1.20.1-Forge-2.0.1  |DONE      |Manifest: NOSIGNATURE         dtvinery-1.20.1-forge-1.1.jar                     |Dynamic Trees for Vinery      |dtvinery                      |1.1                 |DONE      |Manifest: NOSIGNATURE         comforts-forge-6.4.0+1.20.1.jar                   |Comforts                      |comforts                      |6.4.0+1.20.1        |DONE      |Manifest: NOSIGNATURE         artifacts-forge-9.5.13.jar                        |Artifacts                     |artifacts                     |9.5.13              |DONE      |Manifest: NOSIGNATURE         YungsBetterDesertTemples-1.20-Forge-3.0.3.jar     |YUNG's Better Desert Temples  |betterdeserttemples           |1.20-Forge-3.0.3    |DONE      |Manifest: NOSIGNATURE         ExplorersCompass-1.20.1-1.3.3-forge.jar           |Explorer's Compass            |explorerscompass              |1.20.1-1.3.3-forge  |DONE      |Manifest: NOSIGNATURE         blueprint-1.20.1-7.1.0.jar                        |Blueprint                     |blueprint                     |7.1.0               |DONE      |Manifest: NOSIGNATURE         upgrade_aquatic-1.20.1-6.0.1.jar                  |Upgrade Aquatic               |upgrade_aquatic               |6.0.1               |DONE      |Manifest: NOSIGNATURE         DynamicTreesUpgradeAquatic-1.20.1-1.2.0.jar       |Dynamic Trees for Upgrade Aqua|dtupgradeaquatic              |1.20.1-1.2.0        |DONE      |Manifest: NOSIGNATURE         neapolitan-1.20.1-5.0.0.jar                       |Neapolitan                    |neapolitan                    |5.0.0               |DONE      |Manifest: NOSIGNATURE         DynamicTreesNeapolitan-1.20.1-1.3.2.jar           |Dynamic Trees for Neapolitan  |dtneapolitan                  |1.20.1-1.3.2        |DONE      |Manifest: NOSIGNATURE         autumnity-1.20.1-5.0.1.jar                        |Autumnity                     |autumnity                     |5.0.1               |DONE      |Manifest: NOSIGNATURE         DynamicTreesAutumnity-1.20.1-1.3.2.jar            |Dynamic Trees for Autumnity   |dtautumnity                   |1.20.1-1.3.2        |DONE      |Manifest: NOSIGNATURE         valkyrienrelogs-0.3.0-forge.jar                   |Valkyrien Relogs              |valkyrienrelogs               |0.3.0-forge         |DONE      |Manifest: NOSIGNATURE         doaddonfluids-forge-1.3.0.jar                     |[Let's Do Addon] Fluids       |doaddonfluids                 |1.3.0               |DONE      |Manifest: NOSIGNATURE         CoffeeDelight-Forge-1.20.1-1.4-Fix.jar            |Coffee Delight                |coffee_delight                |1.4                 |DONE      |Manifest: NOSIGNATURE         moredelight-24.11.06-1.20-forge.jar               |More Delight                  |moredelight                   |24.11.06-1.20-forge |DONE      |Manifest: NOSIGNATURE         skinlayers3d-forge-1.7.2-mc1.20.1.jar             |3d-Skin-Layers                |skinlayers3d                  |1.7.2               |DONE      |Manifest: NOSIGNATURE         forgottenrecipes-forge-1.20-1.2.0.jar             |Forgotten Recipes             |forgottenrecipes              |1.2.0               |DONE      |Manifest: NOSIGNATURE         friendsandfoes-forge-mc1.20.1-3.0.6.jar           |Friends & Foes                |friendsandfoes                |3.0.6               |DONE      |Manifest: NOSIGNATURE         supplementariesdelight-1.0.1-1.20.1.jar           |Supplementaries Delight       |supplementariesdelight        |1.0.1-1.20.1        |DONE      |Manifest: NOSIGNATURE         delightfulsandwich-1.20.1.jar                     |Delightful Sandwiches         |delightfulsandwich            |1.20.1              |DONE      |Manifest: NOSIGNATURE         tetrasdelight-1.20.1-1.jar                        |Tetra's Delight               |tetrasdelight                 |1.20.1-1            |DONE      |Manifest: NOSIGNATURE         JustEnoughBeacons-Forge-1.19+-1.1.2.jar           |JustEnoughBeacons             |just_enough_beacons           |1.1.2               |DONE      |Manifest: NOSIGNATURE         alexscaves-2.0.2.jar                              |Alex's Caves                  |alexscaves                    |2.0.2               |DONE      |Manifest: NOSIGNATURE         tact-1.2.1+1.20.1.jar                             |TACT                          |tact                          |1.2.1               |DONE      |Manifest: NOSIGNATURE         curios_compat_1_20_1.jar                          |CuriosCompat                  |curioscompat                  |1.0.0               |DONE      |Manifest: NOSIGNATURE         moonlight-1.20-2.13.33-forge.jar                  |Moonlight Library             |moonlight                     |1.20-2.13.33        |DONE      |Manifest: NOSIGNATURE         ratsdelight-1.0.1.1-1.20.1.jar                    |Rats Delight                  |ratsdelight                   |1.0.1.1-1.20.1      |DONE      |Manifest: NOSIGNATURE         mixinsquared-forge-0.1.2-beta.5.jar               |MixinSquared                  |mixinsquared                  |0.1.2-beta.5        |DONE      |Manifest: NOSIGNATURE         Jade-1.20.1-forge-11.11.1.jar                     |Jade                          |jade                          |11.11.1+forge       |DONE      |Manifest: NOSIGNATURE         l2harvester-0.0.4.jar                             |L2Harvester                   |l2harvester                   |0.0.4               |DONE      |Manifest: NOSIGNATURE         undergardenpatch-1.4.0-1.20.1.jar                 |Undergarden-Tetra Patch       |undergardenpatch              |1.4.0-1.20.1        |DONE      |Manifest: NOSIGNATURE         nethersdelight-1.20.1-4.0.jar                     |Nether's Delight              |nethersdelight                |1.20.1-4.0          |DONE      |Manifest: NOSIGNATURE         lootintegrations_yungs-1.2.jar                    |lootintegrations_yungs mod    |lootintegrations_yungs        |1                   |DONE      |Manifest: NOSIGNATURE         DynamicTreesAlexsMobs-1.20.1-1.0.0.jar            |Dynamic Trees for Alex's Mobs |dtalexsmobs                   |1.20.1-1.0.0        |DONE      |Manifest: NOSIGNATURE         naturalistdelight-1.0.3-1.20.1.jar                |Naturalist Delight            |naturalistdelight             |1.0.3-1.20.1        |DONE      |Manifest: NOSIGNATURE         Quark-4.0-460.jar                                 |Quark                         |quark                         |4.0-460             |DONE      |Manifest: NOSIGNATURE         supplementaries-1.20-3.1.11.jar                   |Supplementaries               |supplementaries               |1.20-3.1.11         |DONE      |Manifest: NOSIGNATURE         ascended_quark-1.20.1-1.1.1.jar                   |Ascended Quark                |ascended_quark                |1.1.1               |DONE      |Manifest: NOSIGNATURE         st_wqc-1.20.1-1.1.jar                             |Woodworks Quark Compat (WQC)  |st_wqc                        |1.1                 |DONE      |Manifest: NOSIGNATURE         suppsquared-1.20-1.1.18.jar                       |Supplementaries Squared       |suppsquared                   |1.20-1.1.18         |DONE      |Manifest: NOSIGNATURE         DynamicTreesQuark-1.20.1-2.5.3.jar                |Dynamic Trees for Quark       |dtquark                       |1.20.1-2.5.3        |DONE      |Manifest: NOSIGNATURE         packedup-0.5.3-beta.jar                           |Packed Up                     |packedup                      |0.5.3-beta          |DONE      |Manifest: NOSIGNATURE         mutil-1.20.1-6.1.1.jar                            |mutil                         |mutil                         |6.1.1               |DONE      |Manifest: NOSIGNATURE         woodworkers_delight-0.1.0-alpha.jar               |Woodworker's Delight          |woodworkers_delight           |0.1.0               |DONE      |Manifest: NOSIGNATURE         CroptopiaDelight-1.20.1_1.2.2-forge.jar           |Croptopia Delight             |croptopia_delight             |1.0                 |DONE      |Manifest: NOSIGNATURE         barbequesdelight-1.0.5.jar                        |Barbeque's Delight            |barbequesdelight              |1.0.5               |DONE      |Manifest: NOSIGNATURE         miners_delight-1.20.1-1.2.3.jar                   |Miner's Delight               |miners_delight                |1.20.1-1.2.3        |DONE      |Manifest: NOSIGNATURE         MyNethersDelight-1.20.1-0.1.7.5.jar               |My Nether's Delight           |mynethersdelight              |1.20.1-1.7.5        |DONE      |Manifest: NOSIGNATURE         Delightful-1.20.1-3.6.1.jar                       |Delightful                    |delightful                    |3.6.1               |DONE      |Manifest: NOSIGNATURE         modonomicon-1.20.1-forge-1.77.3.jar               |Modonomicon                   |modonomicon                   |1.77.3              |DONE      |Manifest: NOSIGNATURE         minecolonies-1.20.1-1.1.759-snapshot.jar          |MineColonies                  |minecolonies                  |1.20.1-1.1.759-snaps|DONE      |Manifest: NOSIGNATURE         colony_curios-1.0.0.jar                           |Minecolonies Curios Compat    |colony_curios                 |1.0.0               |DONE      |Manifest: NOSIGNATURE         MineColonies_Tweaks-1.20.1-2.39.jar               |Tweaks addon for MineColonies |minecolonies_tweaks           |2.39                |DONE      |Manifest: NOSIGNATURE         MineColonies_Compatibility-1.20.1-2.48.jar        |Compatibility addon for MineCo|minecolonies_compatibility    |2.48                |DONE      |Manifest: NOSIGNATURE         MineColonies_LetsDo-1.20.1-1.7.jar                |Let's Do addon for MineColonie|minecolonies_letsdo           |1.7                 |DONE      |Manifest: NOSIGNATURE         JadeColonies-1.20.1-1.4.2.jar                     |JadeColonies                  |jadecolonies                  |1.4.2               |DONE      |Manifest: NOSIGNATURE         letsdo-wildernature-forge-1.0.3.jar               |[Let's Do] Wilder Nature      |wildernature                  |1.0.3               |DONE      |Manifest: NOSIGNATURE         emi_enchanting-0.1.2+1.20.1+forge.jar             |EMI Enchanting                |emi_enchanting                |0.1.2+1.20.1+forge  |DONE      |Manifest: NOSIGNATURE         alexsdelight-1.5.jar                              |Alex's Delight                |alexsdelight                  |1.5                 |DONE      |Manifest: NOSIGNATURE         ferritecore-6.0.1-forge.jar                       |Ferrite Core                  |ferritecore                   |6.0.1               |DONE      |Manifest: 41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a         Pehkui Auto Resize-1.0.0.jar                      |Pehkui Auto Resize            |pehkuiautoresize              |1.0.0               |DONE      |Manifest: NOSIGNATURE         justzoom_forge_2.0.0_MC_1.20.1.jar                |Just Zoom                     |justzoom                      |2.0.0               |DONE      |Manifest: NOSIGNATURE         rarcompat-1.20.1-0.1.7.jar                        |RAR-Compat                    |rarcompat                     |0.1.7               |DONE      |Manifest: NOSIGNATURE         CrabbersDelight-1.20.1-1.1.7c.jar                 |Crabber's Delight             |crabbersdelight               |1.1.7c              |DONE      |Manifest: NOSIGNATURE         expandability-forge-9.0.4.jar                     |ExpandAbility                 |expandability                 |9.0.4               |DONE      |Manifest: NOSIGNATURE     Crash Report UUID: 7d6ca960-ad0a-4721-ad20-2beb9a2f4839     FML: 47.3     Forge: net.minecraftforge:47.3.0
    • Add client and server log after such a disconnect
    • yeah but the probleme its when i join it i got disconect imediatly  
    • If it is no lagging ingame, you can ignore this message
  • Topics

×
×
  • Create New...

Important Information

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