Jump to content

Recommended Posts

  • Replies 50
  • Created
  • Last Reply

Top Posters In This Topic

Posted

I've added this:

if(!Minecraft.getMinecraft().theWorld.isRemote){
        		
        		System.out.print("On The Server");
        		
        	}

 

To my makeReplcement Method an it doesn't print anything. - How would i make it so it is running on the server and not the client side. Because I've been trying many things but I'm still having sync issues that creates the item in slot but when i try to take it it disappears(I'm guessing that these are client /server sync issues).

Posted

Minecraft.getMinecraft() ALWAYS returns the CLIENT world. Never use that unless you know for a fact that you are on the client side, such as in a gui.

 

I see now what you are asking, you're not sure what side you are on when you receive the packet, correct? That's determined by how you send the packet and parsed automatically by your packet handler, so if you send the packet to the server, you know it's received on the server.

 

You mentioned you read the packet handling tutorial, but I think you ought to read it again more carefully; the section titled "Sending the Packet" explicitly covers how to send a packet to the client or server.

 

Most packets are only used one-way, so you don't have to bother checking which side you are on, but if you are sending the same packet type to both sides at different times, then you can use the Player variable that is passed in to the packet handler to determine what side you are on, the same way you do everywhere else:

if (player.worldObj.isRemote) {
// you're on the client
} else { // if (!player.worldObj.isRemote) <-- notice the "!" there
// you're on the server
}

Posted

Ok - ive had another read over it and seem to have missed out on the:

Side side = FMLCommonHandler.instance().getEffectiveSide();
if (side == Side.SERVER) {
        // We are on the server side.
        EntityPlayerMP player = (EntityPlayerMP) playerEntity;
} else if (side == Side.CLIENT) {
        EntityClientPlayerMP player = (EntityClientPlayerMP) playerEntity;
        // We are on the client side.
} else {
        // We have an errornous state! 
}

.

But since this is in a custom methods to create and send the packet i don't have a playerEntity parameter. - Also if i can add this do i use:

player.sendQueue.addToSendQueue(packet);

or

PacketDispatcher.sendPacketToServer(Packet packet);

or can i use either. This is just really confusing and i just can't get it to work.

Posted

player.sendQueue.addToSendQueue(packet);

PacketDispatcher.sendPacketToServer(Packet packet);

 

Those are functionally equivalent, though I typically use the latter, for no particular reason. One may be more or less efficient than the other, I honestly have no idea, but they either one gets the job done.

 

If you're using a custom method to send the packet, you need to pass in an EntityPlayer to your method parameters or you have no way of sending the packet -> EXCEPT, you are on the client, right? Remember I told you never to use Minecraft.getMinecraft()? Well, you CAN use it on the client, so if you have no other way of getting a player object to your custom method - really, if you can, just pass a player in - if you have NO other way, then you can use this ON THE CLIENT ONLY (excuse the excessive caps, but people seem to get confused about this):

 

// this gives you the client side EntityPlayer object

// (actually EntityClientPlayerMP, but that can be used just like EntityPlayer)

 

Minecraft.getMinecraft().thePlayer

 

Remember, you can only do that on the client side, and it's better to pass in the player to your method if you can from an existing player object.

 

Posted

so do i need this code at all:

Side side = FMLCommonHandler.instance().getEffectiveSide();
if (side == Side.SERVER) {
        // We are on the server side.
        EntityPlayerMP player = (EntityPlayerMP) playerEntity;
} else if (side == Side.CLIENT) {
        EntityClientPlayerMP player = (EntityClientPlayerMP) playerEntity;
        // We are on the client side.
} else {
        // We have an errornous state! 
}

 

And i if i don't use that i can just use Minecraft.getMinecraft().thePlayer.sendQueue.addToSendQueue(packet)

because its the guy class which is on the client side?

Posted

Right, you don't need all that code there unless you're trying to send it to different sides and you don't have anything more sophisticated set up to handle it for you.

 

Instead of that super long bit with Minecraft.getMinecraft()..., why not just use "PacketDispatcher.sendPacketToServer(Packet packet);" ?

 

It's much shorter when you don't have a player instance readily available.

Posted

Ok I've got the other one now but get and error if i have PacketDispatcher.sendPacketToServer(Packet packet) with the two packets but if i just have one it works like the others where i cannot actually pick up the item

Posted

You need to do something like this:

// notice you have a Player object in the parameters no matter what side you are on
// that's your ticket to the world...
public void onPacketData(INetworkManager manager, Packet250CustomPayload packet, Player player) {
// packet received
// make sure it's the packet you want
// read in your data: item id, tile entity x, y, z
TileEntity te = player.worldObj.getTileEntity(x, y, z);
if (te instanceof YourTileEntity) {
((YourTileEntity) te).setInventorySlotContents(0, new ItemStack(itemID,1,0));
}
}

If you are still having problems after this, please post your packet handler code, and the code where you create and send the packet.

Posted

You need to do something like this:

// notice you have a Player object in the parameters no matter what side you are on
// that's your ticket to the world...
public void onPacketData(INetworkManager manager, Packet250CustomPayload packet, Player player) {
// packet received
// make sure it's the packet you want
// read in your data: item id, tile entity x, y, z
TileEntity te = player.worldObj.getTileEntity(x, y, z);
if (te instanceof YourTileEntity) {
((YourTileEntity) te).setInventorySlotContents(0, new ItemStack(itemID,1,0));
}
}

If you are still having problems after this, please post your packet handler code, and the code where you create and send the packet.

 

Ok i can see where i am probably going wrong. Where you have the Player player in the method params - when i try to access the world object it only comes up with basic class things like" wait(), equals(), getClass(), notify() etc...; so instead I've been using the Minecraft.getMinecraft.theWorld but that probably gets it on the client?

 

This is my code:

package net.PartyMod.Common;

import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;

import net.PartyMod.GUI.TileEntityRecordingUnit;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import cpw.mods.fml.common.network.IPacketHandler;
import cpw.mods.fml.common.network.Player;

public class PacketHandler implements IPacketHandler {

public int number;
public int PosX, PosY, PosZ;
TileEntityReplacer te = new TileEntityReplacer();

@Override
public void onPacketData(INetworkManager manager,
		Packet250CustomPayload par1, Player par2) {



	if (par1.channel.equals("UniqueModID")) {

		this.handlePacketData(par1);


	}
}

private void handlePacketData(Packet250CustomPayload par1) {
	DataInputStream In = new DataInputStream(new ByteArrayInputStream(par1.data));

	try {

		PosX = In.readInt();
		PosY = In.readInt();
		PosZ = In.readInt();

		number = In.readInt();

	} catch (IOException e) {
		e.printStackTrace();
		return;
	}

	TileEntity tile = Minecraft.getMinecraft().theWorld.getBlockTileEntity(PosX, PosY, PosZ);
	ItemStack e = ((TileEntityReplacer) tile).getStackInSlot(0);   	

	if (tile instanceof TileEntityReplacer) {
		((TileEntityReplacer) tile).setInventorySlotContents(0, new ItemStack(Item.appleGold, 1, 0));;      	
		((TileEntityReplacerUnit) tile).onInventoryChanged();
	}
}		

}

 

The number that is received is going to be used later to determine which button was pressed and what item to give.

 

And this is how i create and send the packet:

public void constructPacket(TileEntity te, int Number){

	int PosX = te.xCoord;
	int PosY = te.yCoord;
	int PosZ = te.zCoord;

	ByteArrayOutputStream bos = new ByteArrayOutputStream(;
        DataOutputStream os = new DataOutputStream(bos);
        try {
        	os.writeInt(PosX);
        	os.writeInt(PosY);
        	os.writeInt(PosZ);
                os.writeInt(buttonnumber);
        } catch (Exception ex) {
                ex.printStackTrace();
        }
        
        Packet250CustomPayload packet = new Packet250CustomPayload();
        packet.channel = "UniqueModID";
        packet.data = bos.toByteArray();
        packet.length = bos.size();
        
        PacketDispatcher.sendPacketToServer(packet);		
}

 

If i am correct and the problem is with getting the world object thru Minecraft.getMinecraft().theWorld Then how would i get the world if using the Player param doesn't work?

Posted

This is super basic Java - you have to pass the parameter yourself. Look at your method:

// you are passing the packet "par1", why not pass the player too?
this.handlePacketData(par1);

// here's your method, just add ", EntityPlayer player" inside it
private void handlePacketData(Packet250CustomPayload par1)

// now those two lines look like this
// (after renaming your parameters to meaningful names, which you should always do)
handlePacketData(packet, (EntityPlayer) player);

private void handlePacketData(Packet250CustomPayload packet, EntityPlayer player) {
// voila, you now have access to the server side player and therefore world objects
TileEntity te = player.worldObj.getBlockTileEntity(x, y, z);

// etc.
}

 

Please take some time, head over to Oracle's website, the New Boston, or wherever, and brush up on / learn more about Java. You will save yourself a ton of time and frustration that way.

Posted

Yea - its just something I've forgotten - Ive got around 2 and a half years of java experience under my belt but haven't been doing it much lately

 

Ive just tried that and now the item doesn't even appear at all

 

her is my code now:

package net.PartyMod.Common;

import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;

import net.PartyMod.GUI.TileEntityRecordingUnit;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.network.INetworkManager;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import cpw.mods.fml.common.network.IPacketHandler;
import cpw.mods.fml.common.network.Player;

public class PacketHandler implements IPacketHandler {

public int discNo;
public int PosX, PosY, PosZ;
TileEntityRecordingUnit te = new TileEntityRecordingUnit();

@Override
public void onPacketData(INetworkManager manager,
		Packet250CustomPayload par1, Player par2) {



	if (par1.channel.equals("PartyMod1")) {

		this.handlePacketData(par1, (EntityPlayer) par2);

	}
}

private void handlePacketData(Packet250CustomPayload par1, EntityPlayer player) {
	DataInputStream In = new DataInputStream(new ByteArrayInputStream(par1.data));

	try {

		PosX = In.readInt();
		PosY = In.readInt();
		PosZ = In.readInt();

		discNo = In.readInt();

	} catch (IOException e) {
		e.printStackTrace();
		return;
	}

	TileEntity tile = player.worldObj.getBlockTileEntity(PosX, PosY, PosZ);
	ItemStack e = ((TileEntityRecordingUnit) tile).getStackInSlot(0);   	

	System.out.print("Step 1");

	if (tile instanceof TileEntityRecordingUnit) {
		System.out.print("Step 2");
		((TileEntityRecordingUnit) tile).setInventorySlotContents(0, new ItemStack(Item.appleGold, 1, 0));;      	
		((TileEntityRecordingUnit) tile).onInventoryChanged();
	}
}		

}

 

Ive renamed the tile entity to my decided name of the block

Posted

This is my whole Gui class in which the packet is sent:

package net.PartyMod.GUI;

import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;

import net.PartyMod.Common.Common;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityClientPlayerMP;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiTextField;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.network.packet.Packet250CustomPayload;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;

import org.lwjgl.opengl.GL11;

import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.network.PacketDispatcher;
import cpw.mods.fml.relauncher.Side;

public class GuiRecordingUnit extends GuiContainer {

public GuiTextField text;
public boolean search = false;
public int songCount = 0;
public int discNo = 0;
public int buttonPage = 0;
public String searched = "";

protected TileEntityRecordingUnit tile;

public GuiRecordingUnit (InventoryPlayer inventoryPlayer,
		TileEntityRecordingUnit tileEntity) {
	super(new ContainerRecordingUnit(inventoryPlayer, tileEntity));
	tile = tileEntity;
}

@Override
public void initGui(){

	super.initGui();

	Minecraft.getMinecraft().thePlayer.addChatMessage("Thing " + buttonPage);

	this.buttonList.clear();

	for(int x = 0; x < 100; x++){
		this.buttonList.clear();
		if(buttonPage == 0){
			for(int y = 0; y < 10; y++){

				this.buttonList.add(new GuiButton(2 + y, guiLeft - 120 , guiTop + (y*18), 120, 17, Common.songs[y]));

			}

		}
		if(buttonPage == 1){
			for(int y = 0; y < 10; y++){

				this.buttonList.add(new GuiButton(10 + 2 + y, guiLeft - 120 , guiTop + (y*18), 120, 17, Common.songs[10 + y]));

			}

		}
		if(buttonPage == 2){
			for(int y = 0; y < 10; y++){

				this.buttonList.add(new GuiButton(20 + 2 + y, guiLeft - 120 , guiTop + (y*18), 120, 17, Common.songs[20 + y]));

			}

		}
		if(buttonPage == 3){
			for(int y = 0; y < 10; y++){

				this.buttonList.add(new GuiButton(30 + 2 + y, guiLeft - 120 , guiTop + (y*18), 120, 17, Common.songs[30 + y]));

			}

		}

	}




	this.buttonList.add(new GuiButton(0, guiLeft-120, guiTop - 21, 20, 20, "<"));
	this.buttonList.add(new GuiButton(1, guiLeft-20, guiTop - 21, 20, 20, ">"));


	text = new GuiTextField(fontRenderer, guiLeft + xSize + 14, guiTop + 15, 100, 13);
	text.setFocused(false);

}

public void keyTyped(char c, int i){

	super.keyTyped(c, i);
	text.textboxKeyTyped(c, i);

	if(search = true){

		searched = text.getText().toString();

	}

}

public void mouseClicked(int i, int j, int k){

	super.mouseClicked(i, j, k);
	text.mouseClicked(i, j, k);

	search = true;

}

public void actionPerformed(GuiButton b){

	EntityPlayerMP playerEntity;

	switch(b.id){

	case 0: if(buttonPage != 0){

		buttonPage--;
		this.buttonList.clear();
		this.initGui();

		break;

	}
	case 1: if(buttonPage !=10){

		buttonPage++;
		this.buttonList.clear();
		this.initGui();

		break;

	}
	}
	if(buttonPage == 0){

		switch(b.id){

		case 2:				

			discNo = 1;
			this.constructPacket(tile, discNo);

			break;

		case 3:

			discNo = 2;

			break;

		case 4:


			break;

		case 5:


			break;

		case 6:


			break;

		case 7:


			break;

		case 8:


			break;

		case 9:


			break;

		case 10:


			break;

		case 11:


			break;

		case 12:


			break;


		}
	}

        
        
        
}
public void constructPacket(TileEntity te, int discNumber){

	int PosX = te.xCoord;
	int PosY = te.yCoord;
	int PosZ = te.zCoord;

	ByteArrayOutputStream bos = new ByteArrayOutputStream(;
        DataOutputStream os = new DataOutputStream(bos);
        try {
        	os.writeInt(PosX);
        	os.writeInt(PosY);
        	os.writeInt(PosZ);
                os.writeInt(discNo);
        } catch (Exception ex) {
                ex.printStackTrace();
        }
        
        Packet250CustomPayload packet = new Packet250CustomPayload();
        packet.channel = "PartyMod1";
        packet.data = bos.toByteArray();
        packet.length = bos.size();
        
        PacketDispatcher.sendPacketToServer(packet);		
}


@Override
protected void drawGuiContainerForegroundLayer(int param1, int param2) {
	fontRenderer.drawString("Search For Songs", 195, 4, 1111111);
	fontRenderer.drawString("Recording Unit", 8, 6, 4210752);
	fontRenderer.drawString(StatCollector.translateToLocal("container.inventory"), 8, ySize - 96 + 2, 4210752);
}

@Override
protected void drawGuiContainerBackgroundLayer(float par1, int par2,
		int par3) {
	ResourceLocation textureFile = new ResourceLocation(Common.modid.toLowerCase(), "textures/gui/recordingunit.png");

	Minecraft.getMinecraft().getTextureManager().bindTexture(textureFile);

	GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
	int x = (this.width - xSize) /2;
	int y = (this.height - ySize) /2;
	this.drawTexturedModalRect(x, y, 0, 0, xSize, ySize);


	text.drawTextBox();
}


}

 

If you need more just let me know

Posted

Hm, well that looks okay actually. In your packet handler, you should remove the "public int posX, posY, posZ" fields and just use local integers in the method itself, as you don't really need them as class fields and certainly not public; it would be really bad if while you were handling the packet somewhere else in your code changed the values.

 

Anyway, it looks like your packets should work, so the problem is likely to be in your TileEntity class. Mind posting that?

Posted

ok - I've changed the integers even though i checked that they weren't being changed thru system prints

 

Heres the tile entity code - I haven't changed this much at all really:

package net.PartyMod.GUI;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;

public class TileEntityRecordingUnit extends TileEntity implements IInventory {

private ItemStack[] inv;

public TileEntityRecordingUnit() {
	inv = new ItemStack[1];
}

@Override
public void closeChest() {}

@Override
public ItemStack decrStackSize(int i, int j) {
	ItemStack stack = getStackInSlot(i);
	if (stack != null) {
		if (stack.stackSize <= j) {
			setInventorySlotContents(i, null);
		} else {
			stack = stack.splitStack(j);
			if (stack.stackSize == 0) {
				setInventorySlotContents(i,null);
			}
		}
	}
	return stack;
}

@Override
public String getInvName() {
	return "Recording Unit";
}

@Override
public int getInventoryStackLimit() {
	return 1;
}

@Override
public int getSizeInventory() {
	return inv.length;
}

@Override
public ItemStack getStackInSlot(int i) {
	return inv[i];
}

@Override
public ItemStack getStackInSlotOnClosing(int i) {
	ItemStack stack = getStackInSlot(i);
	if (stack != null) {
		setInventorySlotContents(i, null);
	}
	return stack;
}

@Override
public boolean isInvNameLocalized() {
	// TODO Auto-generated method stub
	return false;
}

@Override
public boolean isItemValidForSlot(int i, ItemStack itemstack) {
	// TODO Auto-generated method stub
	return false;
}

@Override
public boolean isUseableByPlayer(EntityPlayer entityplayer) {
	return worldObj.getBlockTileEntity(xCoord, yCoord, zCoord) == this && entityplayer.getDistanceSq(xCoord+0.5, yCoord+0.5, zCoord+0.5) < 64;
}

@Override
public void openChest() {}

@Override
public void setInventorySlotContents(int i, ItemStack itemstack) {
	inv[i] = itemstack;
	if (itemstack != null && itemstack.stackSize > getInventoryStackLimit()) {
		itemstack.stackSize = getInventoryStackLimit();			
	}
}

@Override public void readFromNBT(NBTTagCompound tagCompound) {
	super.readFromNBT(tagCompound);
	NBTTagList tagList = tagCompound.getTagList("Inventory");
	for (int i = 0; i < tagList.tagCount(); i++) {
		NBTTagCompound tag = (NBTTagCompound) tagList.tagAt(i);
		byte slot = tag.getByte("Slot");
		if (slot >= 0 && slot < inv.length) {
			inv[slot] = ItemStack.loadItemStackFromNBT(tag);
		}
	}
}

@Override public void writeToNBT(NBTTagCompound tagCompound) {
	super.writeToNBT(tagCompound);
	NBTTagList itemList = new NBTTagList();
	for (int i = 0; i < inv.length; i++) {
		ItemStack stack = inv[i];
		if (stack != null) {
			NBTTagCompound tag = new NBTTagCompound();
			tag.setByte("Slot", (byte)i);
			stack.writeToNBT(tag);
			itemList.appendTag(tag);
		}
	}
	tagCompound.setTag("Inventory", itemList);
}
}

 

Posted

Alright, that looks fine, too. If you put a println in your setInventorySlotContents method and print the stack, I'm sure you'll see it's correct. What happens if you press your button, close the inventory, and open it back up again? Is there an apple inside? Whether or not there is, it sounds like your problem is going to be in the Container class - are you using a Container?

 

You may want to change the following to return true, even though you are not using it directly:

@Override
public boolean isItemValidForSlot(int i, ItemStack itemstack) {
// TODO Auto-generated method stub
return false;
}

Posted

Ill add the system prints in and get back to you but ill post my container and Gui handler:

 

Container:

package net.PartyMod.GUI;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;

public class ContainerRecordingUnit extends Container {

        protected TileEntityRecordingUnit tileEntity;

        public ContainerRecordingUnit (InventoryPlayer inventoryPlayer, TileEntityRecordingUnit te){
                tileEntity = te;

                                addSlotToContainer(new Slot(tileEntity, 0, 44 , 35));
                bindPlayerInventory(inventoryPlayer);
        }

        @Override
        public boolean canInteractWith(EntityPlayer player) {
                return tileEntity.isUseableByPlayer(player);
        }


        protected void bindPlayerInventory(InventoryPlayer inventoryPlayer) {
                for (int i = 0; i < 3; i++) {
                        for (int j = 0; j < 9; j++) {
                                addSlotToContainer(new Slot(inventoryPlayer, j + i * 9 + 9,
                                                8 + j * 18, 84 + i * 18));
                        }
                }

                for (int i = 0; i < 9; i++) {
                        addSlotToContainer(new Slot(inventoryPlayer, i, 8 + i * 18, 142));
                }
        }

        @Override
        public ItemStack transferStackInSlot(EntityPlayer player, int slot) {
                ItemStack stack = null;
                Slot slotObject = (Slot) inventorySlots.get(slot);

                if (slotObject != null && slotObject.getHasStack()) {
                        ItemStack stackInSlot = slotObject.getStack();
                        stack = stackInSlot.copy();

                        if (slot < 9) {
                                if (!this.mergeItemStack(stackInSlot, 0, 35, true)) {
                                        return null;
                                }
                        }
                        //places it into the tileEntity is possible since its in the player inventory
                        else if (!this.mergeItemStack(stackInSlot, 0, 9, false)) {
                                return null;
                        }

                        if (stackInSlot.stackSize == 0) {
                                slotObject.putStack(null);
                        } else {
                                slotObject.onSlotChanged();
                        }

                        if (stackInSlot.stackSize == stack.stackSize) {
                                return null;
                        }
                        slotObject.onPickupFromSlot(player, stackInSlot);
                }
                return stack;
        }
      

}

 

and my Gui handler:

 

package net.PartyMod.GUI;

import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import cpw.mods.fml.common.network.IGuiHandler;

public class GuiHandler implements IGuiHandler {
        //returns an instance of the Container you made earlier
        @Override
        public Object getServerGuiElement(int id, EntityPlayer player, World world,
                        int x, int y, int z) {
        	
                
                TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
                if(tileEntity instanceof TileEntityRecordingUnit){
                        return new ContainerRecordingUnit(player.inventory, (TileEntityRecordingUnit) tileEntity);
                }
                return null;
                
                
        }

        //returns an instance of the Gui you made earlier
        @Override
        public Object getClientGuiElement(int id, EntityPlayer player, World world,
                        int x, int y, int z) {
        	
       
                TileEntity tileEntity = world.getBlockTileEntity(x, y, z);
                if(tileEntity instanceof TileEntityRecordingUnit){
                        return new GuiRecordingUnit(player.inventory, (TileEntityRecordingUnit) tileEntity);
                }
                return null;

        }
}

 

Thanks

Posted

That's all looking like it should as well. What happens if you increase the inventory stack max size from 1 to 64? Vanilla's slotClick method is a bit broken when it comes to stack sizes of 1. Here's a rewrite of that method that I wrote for my own use to stop the inventory from having weird ghost stacks and such behavior:

 

 

/**
 * Vanilla method fails to account for stacks of size one, as well as whether stack
 * is valid for slot
 */
@Override
protected boolean mergeItemStack(ItemStack itemstack, int start, int end, boolean backwards)
{
	boolean flag1 = false;
	int k = start;
	Slot slot;
	ItemStack itemstack1;

	if (backwards) { k = end - 1; }

	if (itemstack.isStackable()) {
		while (itemstack.stackSize > 0 && (!backwards && k < end || backwards && k >= start))
		{
			slot = (Slot) inventorySlots.get(k);
			itemstack1 = slot.getStack();

			if (!slot.isItemValid(itemstack)) {
				continue;
			}

			if (itemstack1 != null && itemstack1.itemID == itemstack.itemID && (!itemstack.getHasSubtypes() || itemstack.getItemDamage() == itemstack1.getItemDamage()) && ItemStack.areItemStackTagsEqual(itemstack, itemstack1))
			{
				int l = itemstack1.stackSize + itemstack.stackSize;

				if (l <= itemstack.getMaxStackSize() && l <= slot.getSlotStackLimit()) {
					itemstack.stackSize = 0;
					itemstack1.stackSize = l;
					pedestal.onInventoryChanged();
					flag1 = true;
				} else if (itemstack1.stackSize < itemstack.getMaxStackSize() && l < slot.getSlotStackLimit()) {
					itemstack.stackSize -= itemstack.getMaxStackSize() - itemstack1.stackSize;
					itemstack1.stackSize = itemstack.getMaxStackSize();
					pedestal.onInventoryChanged();
					flag1 = true;
				}
			}

			if (backwards) { --k; }

			else { ++k; }
		}
	}

	if (itemstack.stackSize > 0)
	{
		if (backwards) { k = end - 1; }

		else { k = start; }

		while (!backwards && k < end || backwards && k >= start) {
			slot = (Slot) inventorySlots.get(k);
			itemstack1 = slot.getStack();

			if (!slot.isItemValid(itemstack)) {
				continue;
			}

			if (itemstack1 == null) {
				int l = itemstack.stackSize;

				if (l <= slot.getSlotStackLimit()) {
					slot.putStack(itemstack.copy());
					itemstack.stackSize = 0;
					pedestal.onInventoryChanged();
					flag1 = true;
					break;
				} else {
					putStackInSlot(k, new ItemStack(itemstack.getItem(), slot.getSlotStackLimit(), itemstack.getItemDamage()));
					itemstack.stackSize -= slot.getSlotStackLimit();
					pedestal.onInventoryChanged();
					flag1 = true;
				}
			}

			if (backwards) { --k; }

			else { ++k; }
		}
	}

	return flag1;
}

 

That goes in the Container class. Who knows, maybe that's your issue? :P

Posted

Nope, don't think so, but that means the item IS getting set, but the container is not updating because you aren't using the Container to set the contents, you are doing it manually. This means you must manually tell the client about it as well - try overriding the getDescriptionPacket method in tile entity and you may get lucky; if not, you'll have to send a packet back to the client yourself (you can use the exact same packet) to have it update the contents on the client side, or (don't kill me diesieben!) you could 'set' the contents directly from the gui when you send the packet, as the contents will update automatically anyway the next time you open it.

 

That's not ideal, though, as if other players are using your container, they will never know about the contents you set, so if you care about other players seeing what you just put in your tile entity, you'll have to use PacketDispatcher.sendToAllAround with a range of about 64 (squared, so 8 not squared) to make sure anyone else that might be using your inventory are made aware of the changes. That's sent from the server, of course, to the player clients.

Posted

Considering that its not a container that is Meant to store things in, Ill get by just setting the Contents in the guy swell. If i get the time i can always add the code to send to the client as well. Also one quick thing (as its just probably using the method already built in I don't think i should open another topic for this) How would i check the slot for a certain item, Would i just use :

@Override
public ItemStack getStackInSlot(int i) {
	return inv[i];
}

 

or do i do something like:

ItemStack e = ((TileEntityRecordingUnit) tile).getStackInSlot(0);  
if(e == new ItemStack(Item.appleGold, 1, 0)){


}

 

If you can't help me with this its fine, You've helped me so much already, I can't thank you enough

Thanks Soooooooo much for your help.

Posted

You're welcome, and dear god no. Comparing with the == operator against a new ItemStack will always return false, because you are comparing identity as in the memory location, but how can a reference to an old location be identical to a new location?

 

Get the stack like you were, using ItemStack stack = ((YourInventory) te).getStackInSlot(i), then either compare the items in it OR compare to a new ItemStack using the stack1.isItemEqual(stack2):

ItemStack stack2 = new ItemStack(Item.whateverYouWantToCheckFor);
1. if (stack1.getItem() == stack2.getItem()) // you'll want to null check for stack1 if it is capable of being null
2. if (stack1.isItemEqual(stack2)) // again, null check
3. if (ItemStack.areItemStacksEqual(stack1, stack2)) // null check is inherent in the method

Of course, in case number 1, you really don't need to create a new itemstack at all, just compare the items directly:

if (stack != null && stack.getItem() == Item.whateverYouWant)

Guest
This topic is now closed to further replies.

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.