Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[1.10.2] Give equipment (armor + hands) to a custom Entity through a GUI ?


Major Squirrel
 Share

Recommended Posts

Good evening,

 

I am trying to set up a GUI to equip my custom Entity, meaning giving it some armor pieces or items in hands.

 

Here is how it looks like right now :

 

xGjrCzY.png

 

ContainerNPCInventory:

public class                ContainerNPCInventory extends Container {

    private static final EntityEquipmentSlot[]  VALID_EQUIPMENT_SLOTS = new EntityEquipmentSlot[] {
            EntityEquipmentSlot.HEAD,
            EntityEquipmentSlot.CHEST,
            EntityEquipmentSlot.LEGS,
            EntityEquipmentSlot.FEET
    };

    private final EntityNPCDialog   entityNPC;
    private Iterable<ItemStack>     inventoryArmor;
    private Iterable<ItemStack>     heldEquipment;

    private final InventoryPlayer   playerInventory;
    private InventoryBasic          entityInventory;

    public                  ContainerNPCInventory(EntityPlayer playerIn, EntityNPCDialog entityNPC) {
        this.entityNPC = entityNPC;
        this.inventoryArmor = entityNPC.getArmorInventoryList();
        this.heldEquipment = entityNPC.getHeldEquipment();

        this.playerInventory = playerIn.inventory;
        this.entityInventory = new InventoryBasic("NPC Inventory", true,
                Iterables.size(this.inventoryArmor) + Iterables.size(this.heldEquipment));
        this.entityInventory.addInventoryChangeListener(entityNPC);

        for (int index = 0; index < 4; ++index) {
            final EntityEquipmentSlot   equipmentSlot = ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[index];

            this.addSlotToContainer(new Slot(this.entityInventory, index, 8, 8 + index * 18) {

                @Override
                public boolean  isItemValid(@Nullable ItemStack stack) {
                    return (stack != null && stack.getItem().isValidArmor(stack, equipmentSlot, entityNPC));
                }

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

                @Nullable
                @Override
                public String   getSlotTexture() {
                    return (ItemArmor.EMPTY_SLOT_NAMES[equipmentSlot.getIndex()]);
                }
            });
        }

        this.addSlotToContainer(new Slot(this.entityInventory, 4, 77, );

        this.addSlotToContainer(new Slot(this.entityInventory, 5, 95,  {

            @Nullable
            @Override
            public String   getSlotTexture() {
                return ("minecraft:items/empty_armor_slot_shield");
            }
        });

        for (int index = 0; index < 9; ++index) {
            this.addSlotToContainer(new Slot(this.playerInventory, index, 9 + index * 18, 112));
        }
    }

    @Override
    public boolean          canInteractWith(EntityPlayer playerIn) {
        return (true);
    }
}

 

EntityNPCDialog:

public class                EntityNPCDialog extends EntityLiving implements IInventoryChangedListener {

//    private static final DataParameter<Integer> TEXTURE_INDEX = EntityDataManager.<Integer>createKey(EntityNPCDialog.class, DataSerializers.VARINT);

    public                  EntityNPCDialog(World worldIn) {
        super(worldIn);
    }

    @Override
    protected void          initEntityAI() {
        super.initEntityAI();

        this.tasks.addTask(0, new EntityAISwimming(this));
        this.tasks.addTask(1, new EntityAIWatchClosest(this, EntityPlayer.class, 16.0F, 42.0F));
        this.tasks.addTask(2, new EntityAILookIdle(this));
    }

    @Override
    public boolean          canBePushed() {
        return (false);
    }

    @Override
    public boolean          isPushedByWater() {
        return (false);
    }

    @Override
    protected boolean       canDespawn() {
        return(false);
    }

    @Override
    public void             addVelocity(double x, double y, double z) {}

    @Override
    public boolean          canRiderInteract() {
        return (false);
    }

    @Override
    public boolean          isEntityInvulnerable(DamageSource source) {
        return (false);
    }

    @Override
    public boolean          isPotionApplicable(PotionEffect potioneffectIn) {
        return (false);
    }

    @Override
    public boolean          isImmuneToExplosions() {
        return (false);
    }

    @Nullable
    @Override
    protected SoundEvent    getAmbientSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Nullable
    @Override
    protected SoundEvent    getHurtSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Nullable
    @Override
    protected SoundEvent    getDeathSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getFallSound(int heightIn) {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getSwimSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getSplashSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    public static ThreadDownloadImageData   getDownloadImageSkin(ResourceLocation resourceLocationIn) {
        TextureManager          textureManager = Minecraft.getMinecraft().getTextureManager();
        ThreadDownloadImageData threadDownloadImageData;

        threadDownloadImageData = new ThreadDownloadImageData(null, "http://imgur.com/Z0pbA3P.png", DefaultNPCSkin.getDefaultSkin(), new ImageBufferDownload() {

            @Override
            public BufferedImage    parseUserSkin(BufferedImage image) {
                return (image);
            }

        });

        textureManager.loadTexture(resourceLocationIn, threadDownloadImageData);

        return (threadDownloadImageData);
    }

    private void            updateNPCSlots(InventoryBasic inventoryBasic) {
        if (!this.worldObj.isRemote) {
            this.setItemStackToSlot(EntityEquipmentSlot.HEAD, inventoryBasic.getStackInSlot(0));
            this.setItemStackToSlot(EntityEquipmentSlot.CHEST, inventoryBasic.getStackInSlot(1));
            this.setItemStackToSlot(EntityEquipmentSlot.LEGS, inventoryBasic.getStackInSlot(2));
            this.setItemStackToSlot(EntityEquipmentSlot.FEET, inventoryBasic.getStackInSlot(3));
            this.setItemStackToSlot(EntityEquipmentSlot.MAINHAND, inventoryBasic.getStackInSlot(4));
            this.setItemStackToSlot(EntityEquipmentSlot.OFFHAND, inventoryBasic.getStackInSlot(5));
        }
    }

    @Override
    public void             onInventoryChanged(InventoryBasic inventoryBasic) {
        this.updateNPCSlots(inventoryBasic);
    }
}

 

I must admit I am really confused. I got inspired by the GuiContainerCreative, ContainerHorseInventory (the container for horses) and EntityZombie, but it seems that I am going in the wrong way. What I would like to achieve is that, when I place an item in the Slots of my container, it updates the equipment and hands ItemStack arrays of my Entity (+ rendering the items on the entity, like Zombies or Skeletons but this should work since my Entity model extends from ModelBiped).

 

I think I am complicating the task for no reason. Could you guys highlight me on what should I achieve this ?

 

Thank you for your time. :)

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

Good evening,

 

After checking my code again, I don't really understand why it does not work at all. The EntityLivingBase#setItemStackToSlot(EntityEquipmentSlot slotIn, @Nullable ItemStack stack) method should work, but in my case I think I'm not using it in the right way.

 

Basically, I've made some simple tests to check if my entity could currently hold those items. One of this test is very simplistic: when I proceed a right-click on my entity with an equipment item, I call the method above from the server.

 

NPCInteractEvent:

    @SubscribeEvent
    public void     onEntityNPCInteract(PlayerInteractEvent.EntityInteract event) {
        ItemStack   heldItem = event.getEntityPlayer().getHeldItem(EnumHand.MAIN_HAND);
        ItemBase    npcManager = CraftAndConquerItems.npcManager;

        if (event.getTarget() instanceof EntityNPCDialog && event.getHand().equals(EnumHand.MAIN_HAND) && heldItem != null) {
            if (!event.getWorld().isRemote) {
                if (heldItem.getItem().equals(npcManager))
                    event.getEntityPlayer().openGui(CraftAndConquer.instance, GuiHandler.CAC_NPC_GUI, event.getWorld(), event.getTarget().getEntityId(), 0, 0);
                else if (heldItem.getItem().equals(Items.DIAMOND_HELMET))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.HEAD, heldItem);
                else if (heldItem.getItem().equals(Items.DIAMOND_CHESTPLATE))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.CHEST, heldItem);
                else if (heldItem.getItem().equals(Items.DIAMOND_LEGGINGS))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.LEGS, heldItem);
                else if (heldItem.getItem().equals(Items.DIAMOND_BOOTS))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.FEET, heldItem);
                else if (heldItem.getItem().equals(Items.DIAMOND_SWORD))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.MAINHAND, heldItem);
                else if (heldItem.getItem().equals(Items.SHIELD))
                    event.getTarget().setItemStackToSlot(EntityEquipmentSlot.OFFHAND, heldItem);
            }
        }
    }

 

The event does actually work, even when I disconnect/reconnect, the equipment has been successfully saved in NBTTags, here is the result:

 

width=800 height=433https://images.discordapp.net/.eJwFwVEOgyAMANC7cABqO4vM2xAkaNSWQM0-lt19733d0y-3ut2sjRVgO0bWvvlh2lMtvqrWq6R2DJ_1hmSW8n4XsQEUkAnDRMSMFJjeQAu9GJc4R8LIEyLBI6foR3yT6n5_BBkixQ.vHGe_Qq0t2Fo_YJzemzOELu6gjU?width=1250&height=677[/img]

 

But still, through a GUI, my code does not work. What is strange is that, when those entities are wearing the equipment in the event andler way, it does not appear in the GUI:

 

NhUKOBC.png

 

I don't really want to add an Inventory in my Entity class, since I only want to access to the existing inventoryHands and inventoryArmor fields of the EntityLiving class. I don't see the point to add an Inventory that includes what already exists in their own way. I feel that this is something stupid that I am missing, but I don't see what.

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

What do you think this does,

this.entityInventory = new InventoryBasic("NPC Inventory", true,
                Iterables.size(this.inventoryArmor) + Iterables.size(this.heldEquipment));

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

What do you think this does,

this.entityInventory = new InventoryBasic("NPC Inventory", true,
                Iterables.size(this.inventoryArmor) + Iterables.size(this.heldEquipment));

 

It does create an empty InventoryBasic, which I use it to make the link between the already-existing inventoryHands and inventoryArmor fields from LivingEntity and my Container, but it does not seem to work at all.  ;D I use them because Slots don't support Iterable<ItemStack> to be constructed.

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

Create a custom Inventory that does then.

 

What do you mean by creating a "custom Inventory" ? Is the InventoryBasic not sufficient for this kind of things ?

 

Also, I am surprised that nobody tried to develop this in Forge. I searched few minutes on google and different forge forums and I have not been able to find a single topic talking about this.  :-[

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

Create a custom Inventory that does then.

 

What do you mean by creating a "custom Inventory" ? Is the InventoryBasic not sufficient for this kind of things ?

 

Also, I am surprised that nobody tried to develop this in Forge. I searched few minutes on google and different forge forums and I have not been able to find a single topic talking about this.  :-[

Create a class that extends InventoryBasic. Then in the constructor have it pass ItemStack Arrays and loop through them and add them to the already existing array with setInventorySlotContents or addItem.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Good evening,

 

So I tried the suggestion of Animefan8888:

 

Create a class that extends InventoryBasic. Then in the constructor have it pass ItemStack Arrays and loop through them and add them to the already existing array with setInventorySlotContents or addItem.

 

Here is the code.

 

NPCInventoryBasic:

public class    NPCInventoryBasic extends InventoryBasic {

    public      NPCInventoryBasic(Iterable<ItemStack> inventoryArmor, Iterable<ItemStack> inventoryHands) {
        super("NPC Inventory Basic", true, Iterables.size(inventoryArmor) + Iterables.size(inventoryHands));

        Iterable<ItemStack> equipment = Iterables.concat(inventoryArmor, inventoryHands);

        for (int index = 0; index < Iterables.size(inventoryArmor) + Iterables.size(inventoryHands); ++index) {
            this.setInventorySlotContents(index, Iterables.get(equipment, index));
        }
    }
}

 

ContainerNPCInventory:

public class                ContainerNPCInventory extends Container {

    private static final EntityEquipmentSlot[]  VALID_EQUIPMENT_SLOTS = new EntityEquipmentSlot[] {
            EntityEquipmentSlot.HEAD,
            EntityEquipmentSlot.CHEST,
            EntityEquipmentSlot.LEGS,
            EntityEquipmentSlot.FEET
    };

    private EntityNPCDialog         entityNPC;

    private final InventoryPlayer   playerInventory;
    private NPCInventoryBasic       entityInventory;

    public                  ContainerNPCInventory(EntityPlayer playerIn, EntityNPCDialog entityNPC) {
        Iterable<ItemStack> inventoryArmor;
        Iterable<ItemStack> heldEquipment;

        this.entityNPC = entityNPC;
        inventoryArmor = entityNPC.getArmorInventoryList();
        heldEquipment = entityNPC.getHeldEquipment();

        if (!playerIn.worldObj.isRemote) {
            inventoryArmor.forEach(armor -> CraftAndConquer.logger.log(Level.INFO, "[ARMOR] I am:\t" + (armor != null ? armor.getDisplayName() : "null")));
            heldEquipment.forEach(hand -> CraftAndConquer.logger.log(Level.INFO, "[HANDS] I am:\t" + (hand != null ? hand.getDisplayName() : "null")));
        }


        this.playerInventory = playerIn.inventory;
        this.entityInventory = new NPCInventoryBasic(inventoryArmor, heldEquipment);
        //this.entityInventory.addInventoryChangeListener(this.entityNPC);

        for (int index = 0; index < 4; ++index) {
            final EntityEquipmentSlot   equipmentSlot = ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[index];

            this.addSlotToContainer(new Slot(this.entityInventory, index, 8, 8 + index * 18) {

                @Override
                public void onSlotChanged() {
                    entityNPC.setItemStackToSlot(equipmentSlot, this.getStack());
                    super.onSlotChanged();
                }

                @Override
                public boolean  isItemValid(@Nullable ItemStack stack) {
                    return (stack != null && stack.getItem().isValidArmor(stack, equipmentSlot, entityNPC));
                }

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

                @Nullable
                @Override
                public String   getSlotTexture() {
                    return (ItemArmor.EMPTY_SLOT_NAMES[equipmentSlot.getIndex()]);
                }
            });
        }

        this.addSlotToContainer(new Slot(this.entityInventory, 4, 77,  {

            @Override
            public void onSlotChanged() {
                entityNPC.setItemStackToSlot(EntityEquipmentSlot.MAINHAND, this.getStack());
                super.onSlotChanged();
            }
        });

        this.addSlotToContainer(new Slot(this.entityInventory, 5, 95,  {

            @Override
            public void onSlotChanged() {
                entityNPC.setItemStackToSlot(EntityEquipmentSlot.OFFHAND, this.getStack());
                super.onSlotChanged();
            }

            @Nullable
            @Override
            public String   getSlotTexture() {
                return ("minecraft:items/empty_armor_slot_shield");
            }
        });

        for (int index = 0; index < 9; ++index) {
            this.addSlotToContainer(new Slot(this.playerInventory, index, 9 + index * 18, 112));
        }
    }

    @Override
    public boolean          canInteractWith(EntityPlayer playerIn) {
        return (true);
    }
}

 

I think it works.

 

tPGMmUl.png

 

Well, it "half" works.

 

bIdQzbF.png

 

Wtf haha. When I place the equipment in the different slots, it updates the entity correctly as it equips and renders all the stuff nicely. But when I leave the GUI and open it again, this kind of thing happens as above (meaning, all the armor pieces are reversed, but not the hands). I just don't understand why, the indexes of the EntityEquipmentSlot enums are correct, the slots in my container didn't change, so what could happen ??

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

Minecraft started it's IDs for armor at zero = to boots, and so on upwards. I know a little strange right.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Minecraft started it's IDs for armor at zero = to boots, and so on upwards. I know a little strange right.

 

g1352129205367343592.jpg

 

I figured it out by myself and your comment confirmed what I noticed, thanks !

 

I managed to make it work without a custom inventory and by using EntityLiving#getItemStackFromSlot(EntityEquipmentSlot slotIn) and EntityLiving#setItemStackToSlot(EntityEquipmentSlot slotIn, @Nullable ItemStack stack) instead of going through the Iterable<ItemStack>.

 

EntityNPCDialog:

public class                EntityNPCDialog extends EntityLiving {

//    private static final DataParameter<Integer> TEXTURE_INDEX = EntityDataManager.<Integer>createKey(EntityNPCDialog.class, DataSerializers.VARINT);

    public                  EntityNPCDialog(World worldIn) {
        super(worldIn);
    }

    @Override
    protected void          initEntityAI() {
        super.initEntityAI();

        this.tasks.addTask(0, new EntityAISwimming(this));
        this.tasks.addTask(1, new EntityAIWatchClosest(this, EntityPlayer.class, 16.0F, 42.0F));
        this.tasks.addTask(2, new EntityAILookIdle(this));
    }

    @Override
    public boolean          canBePushed() {
        return (false);
    }

    @Override
    public boolean          isPushedByWater() {
        return (false);
    }

    @Override
    protected boolean       canDespawn() {
        return(false);
    }

    @Override
    public void             addVelocity(double x, double y, double z) {}

    @Override
    public boolean          canRiderInteract() {
        return (false);
    }

    @Override
    public boolean          isEntityInvulnerable(DamageSource source) {
        return (false);
    }

    @Override
    public boolean          isPotionApplicable(PotionEffect potioneffectIn) {
        return (false);
    }

    @Override
    public boolean          isImmuneToExplosions() {
        return (false);
    }

    @Nullable
    @Override
    protected SoundEvent    getAmbientSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Nullable
    @Override
    protected SoundEvent    getHurtSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Nullable
    @Override
    protected SoundEvent    getDeathSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getFallSound(int heightIn) {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getSwimSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

    @Override
    protected SoundEvent    getSplashSound() {
        return (CraftAndConquerSounds.NPCDialogSoundEvent);
    }

//    public static ThreadDownloadImageData   getDownloadImageSkin(ResourceLocation resourceLocationIn) {
//        TextureManager          textureManager = Minecraft.getMinecraft().getTextureManager();
//        ThreadDownloadImageData threadDownloadImageData;
//
//        threadDownloadImageData = new ThreadDownloadImageData(null, "http://imgur.com/Z0pbA3P.png", DefaultNPCSkin.getDefaultSkin(), new ImageBufferDownload() {
//
//            @Override
//            public BufferedImage    parseUserSkin(BufferedImage image) {
//                return (image);
//            }
//
//        });
//
//        textureManager.loadTexture(resourceLocationIn, threadDownloadImageData);
//
//        return (threadDownloadImageData);
//    }
}

 

ContainerNPCInventory:

public class                ContainerNPCInventory extends Container {

    public static final EntityEquipmentSlot[]   VALID_EQUIPMENT_SLOTS = new EntityEquipmentSlot[] {
            EntityEquipmentSlot.HEAD,
            EntityEquipmentSlot.CHEST,
            EntityEquipmentSlot.LEGS,
            EntityEquipmentSlot.FEET,
            EntityEquipmentSlot.MAINHAND,
            EntityEquipmentSlot.OFFHAND
    };

    private EntityNPCDialog         entityNPC;

    private final InventoryPlayer   playerInventory;
    private InventoryBasic          entityInventory;

    public                  ContainerNPCInventory(EntityPlayer playerIn, EntityNPCDialog entityNPC) {
        this.entityNPC = entityNPC;


        this.playerInventory = playerIn.inventory;
        this.entityInventory = new InventoryBasic("NPC Inventory", true, ContainerNPCInventory.VALID_EQUIPMENT_SLOTS.length);
        for (int index = 0; index < ContainerNPCInventory.VALID_EQUIPMENT_SLOTS.length; ++index) {
            this.entityInventory.setInventorySlotContents(index, entityNPC.getItemStackFromSlot(ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[index]));
        }

        for (int index = 0; index < 4; ++index) {
            final EntityEquipmentSlot   equipmentSlot = ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[index];

            this.addSlotToContainer(new Slot(this.entityInventory, index, 8, 8 + index * 18) {

                @Override
                public void onSlotChanged() {
                    entityNPC.setItemStackToSlot(equipmentSlot, this.getStack());
                    super.onSlotChanged();
                }

                @Override
                public boolean  isItemValid(@Nullable ItemStack stack) {
                    return (stack != null && stack.getItem().isValidArmor(stack, equipmentSlot, entityNPC));
                }

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

                @Nullable
                @Override
                public String   getSlotTexture() {
                    return (ItemArmor.EMPTY_SLOT_NAMES[equipmentSlot.getIndex()]);
                }
            });
        }

        this.addSlotToContainer(new Slot(this.entityInventory, 4, 77,  {

            @Override
            public void onSlotChanged() {
                entityNPC.setItemStackToSlot(ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[4], this.getStack());
                super.onSlotChanged();
            }
        });

        this.addSlotToContainer(new Slot(this.entityInventory, 5, 95,  {

            @Override
            public void onSlotChanged() {
                entityNPC.setItemStackToSlot(ContainerNPCInventory.VALID_EQUIPMENT_SLOTS[5], this.getStack());
                super.onSlotChanged();
            }

            @SideOnly(Side.CLIENT)
            @Nullable
            @Override
            public String   getSlotTexture() {
                return ("minecraft:items/empty_armor_slot_shield");
            }
        });

        for (int index = 0; index < 9; ++index) {
            this.addSlotToContainer(new Slot(this.playerInventory, index, 9 + index * 18, 112));
        }
    }

    @Override
    public boolean          canInteractWith(EntityPlayer playerIn) {
        return (true);
    }
}

 

It seems to work on multiplayer, I tested and I didn't have any crash. Also, the server stops correctly and restarts correctly with the correct equipement on the Entity.

 

One last question though: when putting a debug message in Slot#onSlotChanged() method, I noticed that this method was called multiple times, either client side or server side. Why is that ? And does it influence the Entity stats when I put the equipment once ? (like summing the armor stats because the method is called multiple times)

Squirrel ! Squirrel ! Squirrel !

Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • 1.16.5 forge server I used for me and a friend doesnt work. Un/Reinstalled Java 8 64bits and thats when it didnt work. Everything except this 1.16.5 forge server. All my other server versions work. (1.5.2 ~ 1.16.4) RLCRAFT modded server 1.12.2 works. Debug log: https://github.com/telodxpd/stress.git Crash log: C:\Users\User\Desktop\1.16.5 forge>"C:\Program Files\Java\jre1.8.0_321\bin\java.exe" -Xmx3G -jar forge.jar 2022-01-19 11:03:39,915 main WARN Advanced terminal features are not available in this environment [11:03:39] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--gameDir, ., --launchTarget, fmlserver, --fml.forgeVersion, 36.2.8, --fml.mcpVersion, 20210115.111550, --fml.mcVersion, 1.16.5, --fml.forgeGroup, net.minecraftforge] [11:03:40] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 8.0.9+86+master.3cf110c starting: java version 1.8.0_321 by Oracle Corporation [11:03:40] [main/INFO] [ne.mi.fm.lo.FixSSL/CORE]: Added Lets Encrypt root certificates as additional trust [11:03:40] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.4 Source=file:/C:/Users/User/Desktop/1.16.5%20forge/libraries/org/spongepowered/mixin/0.8.4/mixin-0.8.4.jar Service=ModLauncher Env=SERVER [11:03:41] [main/INFO] [cp.mo.mo.LaunchServiceHandler/MODLAUNCHER]: Launching target 'fmlserver' with arguments [--gameDir, .] [11:03:41] [main/ERROR] [mixin/]: Error loading companion plugin class [me.shedaniel.architectury.plugin.forge.ArchitecturyMixinPlugin] for mixin config [architectury.mixins.json]. The plugin may be out of date: NoSuchMethodError:sun.security.util.ManifestEntryVerifier.<init>(Ljava/util/jar/Manifest;)V java.lang.NoSuchMethodError: sun.security.util.ManifestEntryVerifier.<init>(Ljava/util/jar/Manifest;)V         at cpw.mods.modlauncher.SecureJarHandler.createCodeSource(SecureJarHandler.java:66) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:275) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {}         at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321] {}         at java.lang.Class.forName0(Native Method) ~[?:1.8.0_321] {}         at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_321] {}         at org.spongepowered.asm.service.modlauncher.ModLauncherClassProvider.findClass(ModLauncherClassProvider.java:76) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.PluginHandle.<init>(PluginHandle.java:96) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinConfig.onSelect(MixinConfig.java:706) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinProcessor.selectConfigs(MixinProcessor.java:498) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinProcessor.select(MixinProcessor.java:460) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinProcessor.checkSelect(MixinProcessor.java:438) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:290) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) ~[mixin-0.8.4.jar:0.8.4+Jenkins-b308.git-2accda5000f7602229606b39437565542cc6fba4] {}         at cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:154) ~[modlauncher-8.0.9.jar:8.0.9+86+master.3cf110c] {}         at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {}         at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321] {}         at java.lang.Class.forName0(Native Method) ~[?:1.8.0_321] {}         at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_321] {}         at net.minecraftforge.fml.loading.FMLServerLaunchProvider.lambda$launchService$0(FMLServerLaunchProvider.java:51) ~[forge.jar:36.2] {}         at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {}         at net.minecraftforge.server.ServerMain$Runner.runLauncher(ServerMain.java:63) [forge.jar:?] {}         at net.minecraftforge.server.ServerMain$Runner.access$100(ServerMain.java:60) [forge.jar:?] {}         at net.minecraftforge.server.ServerMain.main(ServerMain.java:57) [forge.jar:?] {} [11:03:41] [main/FATAL] [ne.mi.fm.lo.RuntimeDistCleaner/DISTXFORM]: Attempted to load class net/minecraft/client/gui/screen/CreateWorldScreen for invalid dist DEDICATED_SERVER [11:03:41] [main/WARN] [mixin/]: Error loading class: net/minecraft/client/gui/screen/CreateWorldScreen (java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/screen/CreateWorldScreen for invalid dist DEDICATED_SERVER) [11:03:41] [main/WARN] [mixin/]: @Mixin target net.minecraft.client.gui.screen.CreateWorldScreen was not found mixins.defaultoptions.json:CreateWorldScreenAccessor [11:03:41] [main/FATAL] [ne.mi.fm.lo.RuntimeDistCleaner/DISTXFORM]: Attempted to load class net/minecraft/client/GameSettings for invalid dist DEDICATED_SERVER [11:03:41] [main/WARN] [mixin/]: Error loading class: net/minecraft/client/GameSettings (java.lang.RuntimeException: Attempted to load class net/minecraft/client/GameSettings for invalid dist DEDICATED_SERVER) [11:03:41] [main/WARN] [mixin/]: @Mixin target net.minecraft.client.GameSettings was not found mixins.defaultoptions.json:GameSettingsMixin Exception in thread "main" [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]: java.lang.NoSuchMethodError: sun.security.util.ManifestEntryVerifier.<init>(Ljava/util/jar/Manifest;)V [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.SecureJarHandler.createCodeSource(SecureJarHandler.java:66) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:275) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at java.lang.ClassLoader.loadClass(Unknown Source) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at java.lang.Class.forName0(Native Method) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at java.lang.Class.forName(Unknown Source) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at net.minecraftforge.fml.loading.FMLServerLaunchProvider.lambda$launchService$0(FMLServerLaunchProvider.java:51) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at net.minecraftforge.server.ServerMain$Runner.runLauncher(ServerMain.java:63) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at net.minecraftforge.server.ServerMain$Runner.access$100(ServerMain.java:60) [11:03:41] [main/INFO] [STDERR/]: [java.lang.ThreadGroup:uncaughtException:-1]:         at net.minecraftforge.server.ServerMain.main(ServerMain.java:57) C:\Users\User\Desktop\1.16.5 forge>PAUSE
    • Amazing Players, Staff and Server.. I been playing on this server for a few years now and all the others don't come close to how much fun I have on here.. 
    • Yeah I realize I have a lot of mods. and that also might be my problem.  
    • So when I try to scope with a gun in a server it will say saving game then crash   ---- Minecraft Crash Report ---- // I let you down. Sorry :( Time: 1/18/22 7:57 PM Description: Unexpected error java.lang.ArrayIndexOutOfBoundsException: 9     at net.minecraft.client.MouseHelper.localvar$zhh001$sensitivity(MouseHelper.java:1044) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_198028_a(MouseHelper.java:244) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_198022_b(MouseHelper.java:232) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_228033_f_(MouseHelper.java:177) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper$$Lambda$10564/1266407562.run(Unknown Source) ~[?:?] {}     at net.minecraft.util.concurrent.ThreadTaskExecutor.execute(SourceFile:94) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.client.MouseHelper.func_228032_e_(MouseHelper.java:176) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper$$Lambda$10338/1089852811.invoke(Unknown Source) ~[?:?] {}     at org.lwjgl.glfw.GLFWCursorPosCallbackI.callback(GLFWCursorPosCallbackI.java:37) ~[lwjgl-glfw-3.2.2.jar:build 10] {}     at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.2.2.jar:build 10] {}     at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3101) ~[lwjgl-glfw-3.2.2.jar:build 10] {}     at com.mojang.blaze3d.systems.RenderSystem.flipFrame(SourceFile:102) ~[?:?] {re:classloading,re:mixin}     at net.minecraft.client.MainWindow.func_227802_e_(MainWindow.java:305) ~[?:?] {re:classloading,pl:runtimedistcleaner:A,re:mixin,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:997) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:outer_end.mixins.json:BackgroundMusicMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:outer_end.mixins.json:BackgroundMusicMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {re:computing_frames}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) [forge-1.16.5-36.2.9.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$486/396821493.call(Unknown Source) [forge-1.16.5-36.2.9.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at net.minecraft.client.MouseHelper.localvar$zhh001$sensitivity(MouseHelper.java:1044) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_198028_a(MouseHelper.java:244) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_198022_b(MouseHelper.java:232) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper.func_228033_f_(MouseHelper.java:177) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper$$Lambda$10564/1266407562.run(Unknown Source) ~[?:?] {}     at net.minecraft.util.concurrent.ThreadTaskExecutor.execute(SourceFile:94) ~[?:?] {re:mixin,pl:accesstransformer:B,re:computing_frames,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B}     at net.minecraft.client.MouseHelper.func_228032_e_(MouseHelper.java:176) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:cgm.mixins.json:client.MouseHelperMixin,pl:mixin:APP:tac.mixins.json:client.MouseHelperMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.MouseHelper$$Lambda$10338/1089852811.invoke(Unknown Source) ~[?:?] {}     at org.lwjgl.glfw.GLFWCursorPosCallbackI.callback(GLFWCursorPosCallbackI.java:37) ~[lwjgl-glfw-3.2.2.jar:build 10] {}     at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.2.2.jar:build 10] {}     at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3101) ~[lwjgl-glfw-3.2.2.jar:build 10] {}     at com.mojang.blaze3d.systems.RenderSystem.flipFrame(SourceFile:102) ~[?:?] {re:classloading,re:mixin} -- Affected level -- Details:     All players: 1 total; [ClientPlayerEntity['Asuramaru_Tempes'/14455, l='ClientLevel', x=462.70, y=79.00, z=530.76]]     Chunk stats: Client Chunk Cache: 729, 441     Level dimension: minecraft:overworld     Level spawn location: World: (-224,63,176), Chunk: (at 0,3,0 in -14,11; contains blocks -224,0,176 to -209,255,191), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)     Level time: 3196542 game time, 3556298 day time     Server brand: forge     Server type: Non-integrated multiplayer server Stacktrace:     at net.minecraft.client.world.ClientWorld.func_72914_a(ClientWorld.java:447) ~[?:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:abnormals_core.mixins.json:client.ClientWorldMixin,pl:mixin:APP:endergetic.mixins.json:ClientWorldMixin,pl:mixin:APP:architectury.mixins.json:MixinClientLevel,pl:mixin:APP:enhancedcelestials.mixins.json:client.MixinClientWorld,pl:mixin:APP:create.mixins.json:BreakProgressMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2030) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:outer_end.mixins.json:BackgroundMusicMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:628) [?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:abnormals_core.mixins.json:client.MinecraftMixin,pl:mixin:APP:outer_end.mixins.json:BackgroundMusicMixin,pl:mixin:APP:flywheel.mixins.json:ShaderCloseMixin,pl:mixin:APP:create.mixins.json:WindowResizeMixin,pl:mixin:A,pl:runtimedistcleaner:A}     at net.minecraft.client.main.Main.main(Main.java:184) [?:?] {re:classloading,pl:runtimedistcleaner:A}     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] {}     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] {}     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] {}     at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] {re:computing_frames}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) [forge-1.16.5-36.2.9.jar:36.2] {}     at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$486/396821493.call(Unknown Source) [forge-1.16.5-36.2.9.jar:36.2] {}     at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {}     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {} -- System Details -- Details:     Minecraft Version: 1.16.5     Minecraft Version ID: 1.16.5     Operating System: Windows 10 (amd64) version 10.0     Java Version: 1.8.0_51, Oracle Corporation     Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation     Memory: 506481952 bytes (483 MB) / 2147483648 bytes (2048 MB) up to 2147483648 bytes (2048 MB)     CPUs: 8     JVM Flags: 10 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -XX:+IgnoreUnrecognizedVMOptions -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M     ModLauncher: 8.0.9+86+master.3cf110c     ModLauncher launch target: fmlclient     ModLauncher naming: srg     ModLauncher services:          /mixin-0.8.4.jar mixin PLUGINSERVICE          /eventbus-4.0.0.jar eventbus PLUGINSERVICE          /forge-1.16.5-36.2.9.jar object_holder_definalize PLUGINSERVICE          /forge-1.16.5-36.2.9.jar runtime_enum_extender PLUGINSERVICE          /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE          /forge-1.16.5-36.2.9.jar capability_inject_definalize PLUGINSERVICE          /forge-1.16.5-36.2.9.jar runtimedistcleaner PLUGINSERVICE          /mixin-0.8.4.jar mixin TRANSFORMATIONSERVICE          /forge-1.16.5-36.2.9.jar fml TRANSFORMATIONSERVICE      FML: 36.2     Forge: net.minecraftforge:36.2.9     FML Language Providers:          javafml@36.2         minecraft@1     Mod List:          mowziesmobs-1.5.19.jar                            |Mowzie's Mobs                 |mowziesmobs                   |1.5.19              |DONE      |Manifest: NOSIGNATURE         cgm-1.1.0-1.16.5.jar                              |MrCrayfish's Gun Mod          |cgm                           |1.1.0               |DONE      |Manifest: NOSIGNATURE         brewevolution0.2.1.jar                            |Brewevolution                 |brewevolution                 |0.2.1               |DONE      |Manifest: NOSIGNATURE         jei-1.16.5-7.7.1.139.jar                          |Just Enough Items             |jei                           |7.7.1.139           |DONE      |Manifest: NOSIGNATURE         Pehkui-3.1.01.16.5-forge.jar                      |Pehkui                        |pehkui                        |3.1.0+1.16.5-forge  |DONE      |Manifest: NOSIGNATURE         abnormals_core-1.16.5-3.3.0.jar                   |Abnormals Core                |abnormals_core                |3.3.0               |DONE      |Manifest: NOSIGNATURE         seals-1.16.3-2.1.2.jar                            |Seals                         |seals                         |2.1.2               |DONE      |Manifest: NOSIGNATURE         caelus-forge-1.16.5-2.1.3.2.jar                   |Caelus API                    |caelus                        |1.16.5-2.1.3.2      |DONE      |Manifest: NOSIGNATURE         timeless_and_classics-gun_mod-0.1.4.1-1.16.5.jar  |Timeless and Classics         |tac                           |1.0.0               |DONE      |Manifest: NOSIGNATURE         Waystones_1.16.5-7.6.4.jar                        |Waystones                     |waystones                     |7.6.4               |DONE      |Manifest: NOSIGNATURE         citadel-1.8.1-1.16.5.jar                          |Citadel                       |citadel                       |1.8.1               |DONE      |Manifest: NOSIGNATURE         alexsmobs-1.12.1.jar                              |Alex's Mobs                   |alexsmobs                     |1.12.1              |DONE      |Manifest: NOSIGNATURE         NaturesCompass-1.16.5-1.9.0.jar                   |Nature's Compass              |naturescompass                |1.16.5-1.9.0        |DONE      |Manifest: NOSIGNATURE         Artifacts-1.16.5-2.10.4.jar                       |Artifacts                     |artifacts                     |1.16.5-2.10.4       |DONE      |Manifest: NOSIGNATURE         configured-1.5.1-1.16.5.jar                       |Configured                    |configured                    |1.5.1               |DONE      |Manifest: NOSIGNATURE         additional-guns-0.4.2-1.16.5.jar                  |Additional Guns               |additionalguns                |0.4.2               |DONE      |Manifest: NOSIGNATURE         OuterEnd-0.2.14.jar                               |The Outer End                 |outer_end                     |0.2.9               |DONE      |Manifest: NOSIGNATURE         decorative_blocks-1.16.4-1.7.2.jar                |Decorative Blocks             |decorative_blocks             |1.7.2               |DONE      |Manifest: NOSIGNATURE         DungeonCrawl-1.16.5-2.3.5.jar                     |Dungeon Crawl                 |dungeoncrawl                  |2.3.5               |DONE      |Manifest: NOSIGNATURE         sophisticatedbackpacks-1.16.5-3.15.1.503.jar      |Sophisticated Backpacks       |sophisticatedbackpacks        |1.16.5-3.15.1.503   |DONE      |Manifest: NOSIGNATURE         iceandfire-2.1.9-1.16.5.jar                       |Ice and Fire                  |iceandfire                    |2.1.9-1.16.5        |DONE      |Manifest: NOSIGNATURE         walljump-forge-1.16.4-1.3.7.jar                   |Wall-Jump!                    |walljump                      |1.16.4-1.3.7        |DONE      |Manifest: NOSIGNATURE         forge-1.16.5-36.2.9-universal.jar                 |Forge                         |forge                         |36.2.9              |DONE      |Manifest: 22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90         supplementaries-1.16.5-0.18.0.jar                 |Supplementaries               |supplementaries               |0.18.0              |DONE      |Manifest: NOSIGNATURE         selene-1.16.5-1.9.0.jar                           |Selene                        |selene                        |1.16.5-1.0          |DONE      |Manifest: NOSIGNATURE         antiqueatlas-6.0.1-forge-mc1.16.5.jar             |Antique Atlas                 |antiqueatlas                  |6.0.1-forge-mc1.16.5|DONE      |Manifest: NOSIGNATURE         collection-of-singiro-1.0.3d.jar                  |Collection of Singiro         |collectionofsingiro           |1.0                 |DONE      |Manifest: NOSIGNATURE         forge-1.16.5-36.2.9-client.jar                    |Minecraft                     |minecraft                     |1.16.5              |DONE      |Manifest: NOSIGNATURE         upgrade_aquatic-1.16.5-3.1.2.jar                  |Upgrade Aquatic               |upgrade_aquatic               |3.1.2               |DONE      |Manifest: NOSIGNATURE         endergetic-1.16.4-3.0.0.jar                       |The Endergetic Expansion      |endergetic                    |3.0.0               |DONE      |Manifest: NOSIGNATURE         FarmersDelight-1.16.5-0.5.4.jar                   |Farmer's Delight              |farmersdelight                |1.16.5-0.5.4        |DONE      |Manifest: NOSIGNATURE         voicechat-forge-1.16.5-1.8.0.jar                  |Simple Voice Chat             |voicechat                     |1.16.5-1.8.0        |DONE      |Manifest: NOSIGNATURE         decorative_blocks_abnormals-1.2.jar               |Decorative Blocks Abnormals   |decorative_blocks_abnormals   |1.2                 |DONE      |Manifest: NOSIGNATURE         astikorcarts-1.16.5-1.1.1.jar                     |AstikorCarts                  |astikorcarts                  |1.1.1               |DONE      |Manifest: NOSIGNATURE         flywheel-1.16-0.2.5.jar                           |Flywheel                      |flywheel                      |1.16-0.2.5          |DONE      |Manifest: NOSIGNATURE         create-mc1.16.5_v0.3.2g.jar                       |Create                        |create                        |v0.3.2g             |DONE      |Manifest: NOSIGNATURE         curios-forge-1.16.5-4.0.7.0.jar                   |Curios API                    |curios                        |1.16.5-4.0.7.0      |DONE      |Manifest: NOSIGNATURE         SpartanShields-1.16.5-2.1.2.jar                   |Spartan Shields               |spartanshields                |2.1.2               |DONE      |Manifest: NOSIGNATURE         Patchouli-1.16.4-53.2.jar                         |Patchouli                     |patchouli                     |1.16.4-53.2         |DONE      |Manifest: NOSIGNATURE         Origins-1.16.5-0.7.3.9-forge.jar                  |Origins                       |origins                       |0.7.3.9             |DONE      |Manifest: NOSIGNATURE         Mantle-1.16.5-1.6.147.jar                         |Mantle                        |mantle                        |1.6.147             |DONE      |Manifest: NOSIGNATURE         Inspirations-1.16.5-1.2.3.38.jar                  |Inspirations                  |inspirations                  |1.2.3.38            |DONE      |Manifest: NOSIGNATURE         AutoRegLib-1.6-49.jar                             |AutoRegLib                    |autoreglib                    |1.6-49              |DONE      |Manifest: NOSIGNATURE         Quark-r2.4-321.jar                                |Quark                         |quark                         |r2.4-321            |DONE      |Manifest: NOSIGNATURE         sit-1.16.5-v1.3.1.jar                             |Sit                           |sit                           |v1.3.1              |DONE      |Manifest: NOSIGNATURE         obfuscate-0.6.2-1.16.3.jar                        |Obfuscate                     |obfuscate                     |0.6.2               |DONE      |Manifest: e1:59:1a:56:ec:97:b3:d0:b3:4b:25:06:1f:83:b0:f4:fd:0c:24:e3:6d:ea:94:b1:9f:22:b0:38:13:60:88:ea         SpartanWeaponry-1.16.4-2.1.0-beta-4.jar           |Spartan Weaponry              |spartanweaponry               |2.1.0 beta 4        |DONE      |Manifest: NOSIGNATURE         nethers_delight-2.1.jar                           |Nethers Delight               |nethers_delight               |2.1                 |DONE      |Manifest: NOSIGNATURE         cfm-7.0.0pre22-1.16.3.jar                         |MrCrayfish's Furniture Mod    |cfm                           |7.0.0-pre22         |DONE      |Manifest: NOSIGNATURE         architectury-1.28.48.jar                          |Architectury                  |architectury                  |1.28.48             |DONE      |Manifest: NOSIGNATURE         cloth-config-4.13.49-forge.jar                    |Cloth Config v4 API           |cloth-config                  |4.13.49             |DONE      |Manifest: NOSIGNATURE         enhancedcelestials-2.0.9-1.16.5.jar               |Enhanced Celestials           |enhancedcelestials            |2.0.9-1.16.5        |DONE      |Manifest: NOSIGNATURE         smallships-1.16.5-1.10.3.jar                      |Small Ships Mod               |smallships                    |1.10.3              |DONE      |Manifest: NOSIGNATURE         expandability-2.0.1-forge.jar                     |ExpandAbility                 |expandability                 |2.0.1               |DONE      |Manifest: NOSIGNATURE         DynamicTrees-1.16.5-0.10.0-Beta26.jar             |Dynamic Trees                 |dynamictrees                  |1.16.5-0.10.0-Beta26|DONE      |Manifest: NOSIGNATURE         DarkPaintings-1.16.5-6.0.10.jar                   |DarkPaintings                 |darkpaintings                 |6.0.10              |DONE      |Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5     Crash Report UUID: 8297032c-df60-44be-a1d5-e8795f15a658     Patchouli open book context: n/a     Launched Version: 1.16.5-forge-36.2.9     Backend library: LWJGL version 3.2.2 build 10     Backend API: Intel(R) UHD Graphics GL version 4.6.0 - Build 26.20.100.7985, Intel     GL Caps: Using framebuffer using OpenGL 3.0     Using VBOs: Yes     Is Modded: Definitely; Client brand changed to 'forge'     Type: Client (map_client.txt)     Graphics mode: fast     Resource Packs: vanilla, file/3.0.3v_VisualEnchantments.zip     Current Language: English (US)     CPU: 8x Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz
    • Every time I play on my Aternos server which is running forge 1.18.1 (39.0.44), I get an: Internal Error: java.net.SocketExecption, however the strange part is, when I join my friend's server, which is running Spigot, it works just fine. My Forge client is running 39.0.17 by the way, however it is also on 1.18.1. The weird thing is, my friend (running the same version of forge and Minecraft) can join just fine and it works every time for him, we have the same exact mods installed too, so, I don't know why it's not working. If anyone knows, please help! Also, just a few days prior, when the "Shrink" mod wasn't installed, I could join just fine, and it worked.
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

By using this site, you agree to our Privacy Policy.