Jump to content

Recommended Posts

Posted

Hello! Essentially I am trying to replicate something similar to the Endermans anger proc for looking at them to my mob LimeEntity. I want to make LimeEntity play the 'waveAnimation' file i made in blockbench whenever the player looks at him. I was trying to understand the Endermans code and having trouble.

I just want to feel out if this would be an easy-ish task. 

Here is my code on my Entity thus far, below all this code is the Enderman code.

package net.jacobgari.sgslimemod.entity.custom;

import net.jacobgari.sgslimemod.entity.ModEntities;
import net.minecraft.network.syncher.EntityDataAccessor;
import net.minecraft.network.syncher.EntityDataSerializers;
import net.minecraft.network.syncher.SynchedEntityData;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.world.entity.*;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.ai.goal.*;
import net.minecraft.world.entity.animal.Animal;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.level.Level;
import net.minecraft.world.phys.Vec3;
import org.jetbrains.annotations.Nullable;


public class LimeEntity extends TamableAnimal {
    
    private static final EntityDataAccessor<Boolean> WAVING =
            SynchedEntityData.defineId(LimeEntity.class, EntityDataSerializers.BOOLEAN);

    public LimeEntity(EntityType<? extends Animal> pEntityType, Level pLevel) {
        super((EntityType<? extends TamableAnimal>) pEntityType, pLevel);
    }


    public final AnimationState idleAnimationState = new AnimationState();
    private int idleAnimationTimeout = 0;

    public final AnimationState waveAnimationState = new AnimationState();
    private int waveAnimationTimeout = 0;





    @Override
    public void tick() {
        super.tick();

        if (this.level().isClientSide()) {
            setupAnimationStates();
        }
    }

    private void setupAnimationStates() {
        if (this.idleAnimationTimeout <= 0) {
            this.idleAnimationTimeout = this.random.nextInt(40) + 80;
            this.idleAnimationState.start(this.tickCount);
        } else {
            --this.idleAnimationTimeout;
        }

        if (this.isWaving() && waveAnimationTimeout <= 0) {
            waveAnimationTimeout = 50;
            waveAnimationState.start(this.tickCount);
        } else {
            --this.waveAnimationTimeout;
        }

        if (!this.isWaving()) {
            waveAnimationState.stop();
        }

    }

    @Override
    protected void updateWalkAnimation(float pPartialTick) {
        float f;
        if (this.getPose() == Pose.STANDING) {
            f = Math.min(pPartialTick * 6F, 1f);
        } else {
            f = 0f;
        }

        this.walkAnimation.update(f, 0.2f);

    }

    public void setWaving(boolean waving) {
        this.entityData.set(WAVING, waving);
    }

    @Override
    protected void defineSynchedData() {
        super.defineSynchedData();
        this.entityData.define(WAVING, false);
    }

    public boolean isWaving() {
        return this.entityData.get(WAVING);
    }

    





    @Override
    protected void registerGoals() {
        this.goalSelector.addGoal(0, new FloatGoal(this));

        this.goalSelector.addGoal(1, new LookAtPlayerGoal(this, Player.class, 8.0f));
        this.goalSelector.addGoal(2, new TemptGoal(this, 1.15D, Ingredient.of(Items.SAND), false));

        this.goalSelector.addGoal(3, new SitWhenOrderedToGoal(this));

        this.goalSelector.addGoal(4, new FollowOwnerGoal(this, 1.0D, 10.0F, 2.0F, false));

        this.goalSelector.addGoal(5, new FollowParentGoal(this, 1.1D));

        this.goalSelector.addGoal(6, new BreedGoal(this, 1.15D));

        this.goalSelector.addGoal(7, new WaterAvoidingRandomStrollGoal(this, 1.1D));

        this.goalSelector.addGoal(8, new RandomLookAroundGoal(this));

    }

    public static AttributeSupplier.Builder createAttributes() {
        return Animal.createLivingAttributes()
                .add(Attributes.MAX_HEALTH, 20D)
                .add(Attributes.FOLLOW_RANGE, 24D)
                .add(Attributes.MOVEMENT_SPEED, 0.3D)
                .add(Attributes.ATTACK_DAMAGE, 4f);
    }


    @Override
    public @Nullable AgeableMob getBreedOffspring(ServerLevel pLevel, AgeableMob pOtherParent) {
        return ModEntities.LIME.get().create(pLevel);
    }

    @Override
    public boolean isFood(ItemStack pStack) {
        return pStack.is(Items.SAND);
    }
    

}

package net.minecraft.world.entity.monster;

import java.util.EnumSet;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import java.util.function.Predicate;
import javax.annotation.Nullable;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.core.particles.ParticleTypes;
import net.minecraft.core.registries.Registries;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.NbtUtils;
import net.minecraft.network.syncher.EntityDataAccessor;
import net.minecraft.network.syncher.EntityDataSerializers;
import net.minecraft.network.syncher.SynchedEntityData;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.tags.BlockTags;
import net.minecraft.tags.DamageTypeTags;
import net.minecraft.tags.FluidTags;
import net.minecraft.util.Mth;
import net.minecraft.util.RandomSource;
import net.minecraft.util.TimeUtil;
import net.minecraft.util.valueproviders.UniformInt;
import net.minecraft.world.damagesource.DamageSource;
import net.minecraft.world.effect.MobEffectInstance;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.EntityDimensions;
import net.minecraft.world.entity.EntityType;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.NeutralMob;
import net.minecraft.world.entity.Pose;
import net.minecraft.world.entity.ai.attributes.AttributeInstance;
import net.minecraft.world.entity.ai.attributes.AttributeModifier;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
import net.minecraft.world.entity.ai.goal.FloatGoal;
import net.minecraft.world.entity.ai.goal.Goal;
import net.minecraft.world.entity.ai.goal.LookAtPlayerGoal;
import net.minecraft.world.entity.ai.goal.MeleeAttackGoal;
import net.minecraft.world.entity.ai.goal.RandomLookAroundGoal;
import net.minecraft.world.entity.ai.goal.WaterAvoidingRandomStrollGoal;
import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal;
import net.minecraft.world.entity.ai.goal.target.NearestAttackableTargetGoal;
import net.minecraft.world.entity.ai.goal.target.ResetUniversalAngerTargetGoal;
import net.minecraft.world.entity.ai.targeting.TargetingConditions;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.entity.projectile.ThrownPotion;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.alchemy.Potion;
import net.minecraft.world.item.alchemy.PotionUtils;
import net.minecraft.world.item.alchemy.Potions;
import net.minecraft.world.item.enchantment.Enchantments;
import net.minecraft.world.level.ClipContext;
import net.minecraft.world.level.GameRules;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.gameevent.GameEvent;
import net.minecraft.world.level.pathfinder.BlockPathTypes;
import net.minecraft.world.level.storage.loot.LootParams;
import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
import net.minecraft.world.phys.AABB;
import net.minecraft.world.phys.BlockHitResult;
import net.minecraft.world.phys.Vec3;

public class EnderMan extends Monster implements NeutralMob {
   private static final UUID SPEED_MODIFIER_ATTACKING_UUID = UUID.fromString("020E0DFB-87AE-4653-9556-831010E291A0");
   private static final AttributeModifier SPEED_MODIFIER_ATTACKING = new AttributeModifier(SPEED_MODIFIER_ATTACKING_UUID, "Attacking speed boost", (double)0.15F, AttributeModifier.Operation.ADDITION);
   private static final int DELAY_BETWEEN_CREEPY_STARE_SOUND = 400;
   private static final int MIN_DEAGGRESSION_TIME = 600;
   private static final EntityDataAccessor<Optional<BlockState>> DATA_CARRY_STATE = SynchedEntityData.defineId(EnderMan.class, EntityDataSerializers.OPTIONAL_BLOCK_STATE);
   private static final EntityDataAccessor<Boolean> DATA_CREEPY = SynchedEntityData.defineId(EnderMan.class, EntityDataSerializers.BOOLEAN);
   private static final EntityDataAccessor<Boolean> DATA_STARED_AT = SynchedEntityData.defineId(EnderMan.class, EntityDataSerializers.BOOLEAN);
   private int lastStareSound = Integer.MIN_VALUE;
   private int targetChangeTime;
   private static final UniformInt PERSISTENT_ANGER_TIME = TimeUtil.rangeOfSeconds(20, 39);
   private int remainingPersistentAngerTime;
   @Nullable
   private UUID persistentAngerTarget;

   public EnderMan(EntityType<? extends EnderMan> pEntityType, Level pLevel) {
      super(pEntityType, pLevel);
      this.setMaxUpStep(1.0F);
      this.setPathfindingMalus(BlockPathTypes.WATER, -1.0F);
   }

   protected void registerGoals() {
      this.goalSelector.addGoal(0, new FloatGoal(this));
      this.goalSelector.addGoal(1, new EnderMan.EndermanFreezeWhenLookedAt(this));
      this.goalSelector.addGoal(2, new MeleeAttackGoal(this, 1.0D, false));
      this.goalSelector.addGoal(7, new WaterAvoidingRandomStrollGoal(this, 1.0D, 0.0F));
      this.goalSelector.addGoal(8, new LookAtPlayerGoal(this, Player.class, 8.0F));
      this.goalSelector.addGoal(8, new RandomLookAroundGoal(this));
      this.goalSelector.addGoal(10, new EnderMan.EndermanLeaveBlockGoal(this));
      this.goalSelector.addGoal(11, new EnderMan.EndermanTakeBlockGoal(this));
      this.targetSelector.addGoal(1, new EnderMan.EndermanLookForPlayerGoal(this, this::isAngryAt));
      this.targetSelector.addGoal(2, new HurtByTargetGoal(this));
      this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, Endermite.class, true, false));
      this.targetSelector.addGoal(4, new ResetUniversalAngerTargetGoal<>(this, false));
   }

   public static AttributeSupplier.Builder createAttributes() {
      return Monster.createMonsterAttributes().add(Attributes.MAX_HEALTH, 40.0D).add(Attributes.MOVEMENT_SPEED, (double)0.3F).add(Attributes.ATTACK_DAMAGE, 7.0D).add(Attributes.FOLLOW_RANGE, 64.0D);
   }

   /**
    * Sets the active target the Goal system uses for tracking
    */
   public void setTarget(@Nullable LivingEntity pLivingEntity) {
      AttributeInstance attributeinstance = this.getAttribute(Attributes.MOVEMENT_SPEED);
      if (pLivingEntity == null) {
         this.targetChangeTime = 0;
         this.entityData.set(DATA_CREEPY, false);
         this.entityData.set(DATA_STARED_AT, false);
         attributeinstance.removeModifier(SPEED_MODIFIER_ATTACKING);
      } else {
         this.targetChangeTime = this.tickCount;
         this.entityData.set(DATA_CREEPY, true);
         if (!attributeinstance.hasModifier(SPEED_MODIFIER_ATTACKING)) {
            attributeinstance.addTransientModifier(SPEED_MODIFIER_ATTACKING);
         }
      }

      super.setTarget(pLivingEntity); //Forge: Moved down to allow event handlers to write data manager values.
   }

   protected void defineSynchedData() {
      super.defineSynchedData();
      this.entityData.define(DATA_CARRY_STATE, Optional.empty());
      this.entityData.define(DATA_CREEPY, false);
      this.entityData.define(DATA_STARED_AT, false);
   }

   public void startPersistentAngerTimer() {
      this.setRemainingPersistentAngerTime(PERSISTENT_ANGER_TIME.sample(this.random));
   }

   public void setRemainingPersistentAngerTime(int pTime) {
      this.remainingPersistentAngerTime = pTime;
   }

   public int getRemainingPersistentAngerTime() {
      return this.remainingPersistentAngerTime;
   }

   public void setPersistentAngerTarget(@Nullable UUID pTarget) {
      this.persistentAngerTarget = pTarget;
   }

   @Nullable
   public UUID getPersistentAngerTarget() {
      return this.persistentAngerTarget;
   }

   public void playStareSound() {
      if (this.tickCount >= this.lastStareSound + 400) {
         this.lastStareSound = this.tickCount;
         if (!this.isSilent()) {
            this.level().playLocalSound(this.getX(), this.getEyeY(), this.getZ(), SoundEvents.ENDERMAN_STARE, this.getSoundSource(), 2.5F, 1.0F, false);
         }
      }

   }

   public void onSyncedDataUpdated(EntityDataAccessor<?> pKey) {
      if (DATA_CREEPY.equals(pKey) && this.hasBeenStaredAt() && this.level().isClientSide) {
         this.playStareSound();
      }

      super.onSyncedDataUpdated(pKey);
   }

   public void addAdditionalSaveData(CompoundTag pCompound) {
      super.addAdditionalSaveData(pCompound);
      BlockState blockstate = this.getCarriedBlock();
      if (blockstate != null) {
         pCompound.put("carriedBlockState", NbtUtils.writeBlockState(blockstate));
      }

      this.addPersistentAngerSaveData(pCompound);
   }

   /**
    * (abstract) Protected helper method to read subclass entity data from NBT.
    */
   public void readAdditionalSaveData(CompoundTag pCompound) {
      super.readAdditionalSaveData(pCompound);
      BlockState blockstate = null;
      if (pCompound.contains("carriedBlockState", 10)) {
         blockstate = NbtUtils.readBlockState(this.level().holderLookup(Registries.BLOCK), pCompound.getCompound("carriedBlockState"));
         if (blockstate.isAir()) {
            blockstate = null;
         }
      }

      this.setCarriedBlock(blockstate);
      this.readPersistentAngerSaveData(this.level(), pCompound);
   }

   /**
    * Checks to see if this enderman should be attacking this player
    */
   boolean isLookingAtMe(Player pPlayer) {
      ItemStack itemstack = pPlayer.getInventory().armor.get(3);
      if (net.minecraftforge.common.ForgeHooks.shouldSuppressEnderManAnger(this, pPlayer, itemstack)) {
         return false;
      } else {
         Vec3 vec3 = pPlayer.getViewVector(1.0F).normalize();
         Vec3 vec31 = new Vec3(this.getX() - pPlayer.getX(), this.getEyeY() - pPlayer.getEyeY(), this.getZ() - pPlayer.getZ());
         double d0 = vec31.length();
         vec31 = vec31.normalize();
         double d1 = vec3.dot(vec31);
         return d1 > 1.0D - 0.025D / d0 ? pPlayer.hasLineOfSight(this) : false;
      }
   }

   protected float getStandingEyeHeight(Pose pPose, EntityDimensions pSize) {
      return 2.55F;
   }

   /**
    * Called every tick so the entity can update its state as required. For example, zombies and skeletons use this to
    * react to sunlight and start to burn.
    */
   public void aiStep() {
      if (this.level().isClientSide) {
         for(int i = 0; i < 2; ++i) {
            this.level().addParticle(ParticleTypes.PORTAL, this.getRandomX(0.5D), this.getRandomY() - 0.25D, this.getRandomZ(0.5D), (this.random.nextDouble() - 0.5D) * 2.0D, -this.random.nextDouble(), (this.random.nextDouble() - 0.5D) * 2.0D);
         }
      }

      this.jumping = false;
      if (!this.level().isClientSide) {
         this.updatePersistentAnger((ServerLevel)this.level(), true);
      }

      super.aiStep();
   }

   public boolean isSensitiveToWater() {
      return true;
   }

   protected void customServerAiStep() {
      if (this.level().isDay() && this.tickCount >= this.targetChangeTime + 600) {
         float f = this.getLightLevelDependentMagicValue();
         if (f > 0.5F && this.level().canSeeSky(this.blockPosition()) && this.random.nextFloat() * 30.0F < (f - 0.4F) * 2.0F) {
            this.setTarget((LivingEntity)null);
            this.teleport();
         }
      }

      super.customServerAiStep();
   }

   /**
    * Teleport the enderman to a random nearby position
    */
   protected boolean teleport() {
      if (!this.level().isClientSide() && this.isAlive()) {
         double d0 = this.getX() + (this.random.nextDouble() - 0.5D) * 64.0D;
         double d1 = this.getY() + (double)(this.random.nextInt(64) - 32);
         double d2 = this.getZ() + (this.random.nextDouble() - 0.5D) * 64.0D;
         return this.teleport(d0, d1, d2);
      } else {
         return false;
      }
   }

   /**
    * Teleport the enderman to another entity
    */
   boolean teleportTowards(Entity pTarget) {
      Vec3 vec3 = new Vec3(this.getX() - pTarget.getX(), this.getY(0.5D) - pTarget.getEyeY(), this.getZ() - pTarget.getZ());
      vec3 = vec3.normalize();
      double d0 = 16.0D;
      double d1 = this.getX() + (this.random.nextDouble() - 0.5D) * 8.0D - vec3.x * 16.0D;
      double d2 = this.getY() + (double)(this.random.nextInt(16) - 8) - vec3.y * 16.0D;
      double d3 = this.getZ() + (this.random.nextDouble() - 0.5D) * 8.0D - vec3.z * 16.0D;
      return this.teleport(d1, d2, d3);
   }

   /**
    * Teleport the enderman
    */
   private boolean teleport(double pX, double pY, double pZ) {
      BlockPos.MutableBlockPos blockpos$mutableblockpos = new BlockPos.MutableBlockPos(pX, pY, pZ);

      while(blockpos$mutableblockpos.getY() > this.level().getMinBuildHeight() && !this.level().getBlockState(blockpos$mutableblockpos).blocksMotion()) {
         blockpos$mutableblockpos.move(Direction.DOWN);
      }

      BlockState blockstate = this.level().getBlockState(blockpos$mutableblockpos);
      boolean flag = blockstate.blocksMotion();
      boolean flag1 = blockstate.getFluidState().is(FluidTags.WATER);
      if (flag && !flag1) {
         net.minecraftforge.event.entity.EntityTeleportEvent.EnderEntity event = net.minecraftforge.event.ForgeEventFactory.onEnderTeleport(this, pX, pY, pZ);
         if (event.isCanceled()) return false;
         Vec3 vec3 = this.position();
         boolean flag2 = this.randomTeleport(event.getTargetX(), event.getTargetY(), event.getTargetZ(), true);
         if (flag2) {
            this.level().gameEvent(GameEvent.TELEPORT, vec3, GameEvent.Context.of(this));
            if (!this.isSilent()) {
               this.level().playSound((Player)null, this.xo, this.yo, this.zo, SoundEvents.ENDERMAN_TELEPORT, this.getSoundSource(), 1.0F, 1.0F);
               this.playSound(SoundEvents.ENDERMAN_TELEPORT, 1.0F, 1.0F);
            }
         }

         return flag2;
      } else {
         return false;
      }
   }

   protected SoundEvent getAmbientSound() {
      return this.isCreepy() ? SoundEvents.ENDERMAN_SCREAM : SoundEvents.ENDERMAN_AMBIENT;
   }

   protected SoundEvent getHurtSound(DamageSource pDamageSource) {
      return SoundEvents.ENDERMAN_HURT;
   }

   protected SoundEvent getDeathSound() {
      return SoundEvents.ENDERMAN_DEATH;
   }

   protected void dropCustomDeathLoot(DamageSource pSource, int pLooting, boolean pRecentlyHit) {
      super.dropCustomDeathLoot(pSource, pLooting, pRecentlyHit);
      BlockState blockstate = this.getCarriedBlock();
      if (blockstate != null) {
         ItemStack itemstack = new ItemStack(Items.DIAMOND_AXE);
         itemstack.enchant(Enchantments.SILK_TOUCH, 1);
         LootParams.Builder lootparams$builder = (new LootParams.Builder((ServerLevel)this.level())).withParameter(LootContextParams.ORIGIN, this.position()).withParameter(LootContextParams.TOOL, itemstack).withOptionalParameter(LootContextParams.THIS_ENTITY, this);

         for(ItemStack itemstack1 : blockstate.getDrops(lootparams$builder)) {
            this.spawnAtLocation(itemstack1);
         }
      }

   }

   public void setCarriedBlock(@Nullable BlockState pState) {
      this.entityData.set(DATA_CARRY_STATE, Optional.ofNullable(pState));
   }

   @Nullable
   public BlockState getCarriedBlock() {
      return this.entityData.get(DATA_CARRY_STATE).orElse((BlockState)null);
   }

   /**
    * Called when the entity is attacked.
    */
   public boolean hurt(DamageSource pSource, float pAmount) {
      if (this.isInvulnerableTo(pSource)) {
         return false;
      } else {
         boolean flag = pSource.getDirectEntity() instanceof ThrownPotion;
         if (!pSource.is(DamageTypeTags.IS_PROJECTILE) && !flag) {
            boolean flag2 = super.hurt(pSource, pAmount);
            if (!this.level().isClientSide() && !(pSource.getEntity() instanceof LivingEntity) && this.random.nextInt(10) != 0) {
               this.teleport();
            }

            return flag2;
         } else {
            boolean flag1 = flag && this.hurtWithCleanWater(pSource, (ThrownPotion)pSource.getDirectEntity(), pAmount);

            for(int i = 0; i < 64; ++i) {
               if (this.teleport()) {
                  return true;
               }
            }

            return flag1;
         }
      }
   }

   private boolean hurtWithCleanWater(DamageSource pSource, ThrownPotion pPotion, float pAmount) {
      ItemStack itemstack = pPotion.getItem();
      Potion potion = PotionUtils.getPotion(itemstack);
      List<MobEffectInstance> list = PotionUtils.getMobEffects(itemstack);
      boolean flag = potion == Potions.WATER && list.isEmpty();
      return flag ? super.hurt(pSource, pAmount) : false;
   }

   public boolean isCreepy() {
      return this.entityData.get(DATA_CREEPY);
   }

   public boolean hasBeenStaredAt() {
      return this.entityData.get(DATA_STARED_AT);
   }

   public void setBeingStaredAt() {
      this.entityData.set(DATA_STARED_AT, true);
   }

   public boolean requiresCustomPersistence() {
      return super.requiresCustomPersistence() || this.getCarriedBlock() != null;
   }

   static class EndermanFreezeWhenLookedAt extends Goal {
      private final EnderMan enderman;
      @Nullable
      private LivingEntity target;

      public EndermanFreezeWhenLookedAt(EnderMan pEnderman) {
         this.enderman = pEnderman;
         this.setFlags(EnumSet.of(Goal.Flag.JUMP, Goal.Flag.MOVE));
      }

      /**
       * Returns whether execution should begin. You can also read and cache any state necessary for execution in this
       * method as well.
       */
      public boolean canUse() {
         this.target = this.enderman.getTarget();
         if (!(this.target instanceof Player)) {
            return false;
         } else {
            double d0 = this.target.distanceToSqr(this.enderman);
            return d0 > 256.0D ? false : this.enderman.isLookingAtMe((Player)this.target);
         }
      }

      /**
       * Execute a one shot task or start executing a continuous task
       */
      public void start() {
         this.enderman.getNavigation().stop();
      }

      /**
       * Keep ticking a continuous task that has already been started
       */
      public void tick() {
         this.enderman.getLookControl().setLookAt(this.target.getX(), this.target.getEyeY(), this.target.getZ());
      }
   }

   static class EndermanLeaveBlockGoal extends Goal {
      private final EnderMan enderman;

      public EndermanLeaveBlockGoal(EnderMan pEnderman) {
         this.enderman = pEnderman;
      }

      /**
       * Returns whether execution should begin. You can also read and cache any state necessary for execution in this
       * method as well.
       */
      public boolean canUse() {
         if (this.enderman.getCarriedBlock() == null) {
            return false;
         } else if (!net.minecraftforge.event.ForgeEventFactory.getMobGriefingEvent(this.enderman.level(), this.enderman)) {
            return false;
         } else {
            return this.enderman.getRandom().nextInt(reducedTickDelay(2000)) == 0;
         }
      }

      /**
       * Keep ticking a continuous task that has already been started
       */
      public void tick() {
         RandomSource randomsource = this.enderman.getRandom();
         Level level = this.enderman.level();
         int i = Mth.floor(this.enderman.getX() - 1.0D + randomsource.nextDouble() * 2.0D);
         int j = Mth.floor(this.enderman.getY() + randomsource.nextDouble() * 2.0D);
         int k = Mth.floor(this.enderman.getZ() - 1.0D + randomsource.nextDouble() * 2.0D);
         BlockPos blockpos = new BlockPos(i, j, k);
         BlockState blockstate = level.getBlockState(blockpos);
         BlockPos blockpos1 = blockpos.below();
         BlockState blockstate1 = level.getBlockState(blockpos1);
         BlockState blockstate2 = this.enderman.getCarriedBlock();
         if (blockstate2 != null) {
            blockstate2 = Block.updateFromNeighbourShapes(blockstate2, this.enderman.level(), blockpos);
            if (this.canPlaceBlock(level, blockpos, blockstate2, blockstate, blockstate1, blockpos1) && !net.minecraftforge.event.ForgeEventFactory.onBlockPlace(enderman, net.minecraftforge.common.util.BlockSnapshot.create(level.dimension(), level, blockpos1), net.minecraft.core.Direction.UP)) {
               level.setBlock(blockpos, blockstate2, 3);
               level.gameEvent(GameEvent.BLOCK_PLACE, blockpos, GameEvent.Context.of(this.enderman, blockstate2));
               this.enderman.setCarriedBlock((BlockState)null);
            }

         }
      }

      private boolean canPlaceBlock(Level pLevel, BlockPos pDestinationPos, BlockState pCarriedState, BlockState pDestinationState, BlockState pBelowDestinationState, BlockPos pBelowDestinationPos) {
         return pDestinationState.isAir() && !pBelowDestinationState.isAir() && !pBelowDestinationState.is(Blocks.BEDROCK) && !pBelowDestinationState.is(net.minecraftforge.common.Tags.Blocks.ENDERMAN_PLACE_ON_BLACKLIST) && pBelowDestinationState.isCollisionShapeFullBlock(pLevel, pBelowDestinationPos) && pCarriedState.canSurvive(pLevel, pDestinationPos) && pLevel.getEntities(this.enderman, AABB.unitCubeFromLowerCorner(Vec3.atLowerCornerOf(pDestinationPos))).isEmpty();
      }
   }

   static class EndermanLookForPlayerGoal extends NearestAttackableTargetGoal<Player> {
      private final EnderMan enderman;
      /** The player */
      @Nullable
      private Player pendingTarget;
      private int aggroTime;
      private int teleportTime;
      private final TargetingConditions startAggroTargetConditions;
      private final TargetingConditions continueAggroTargetConditions = TargetingConditions.forCombat().ignoreLineOfSight();
      private final Predicate<LivingEntity> isAngerInducing;

      public EndermanLookForPlayerGoal(EnderMan pEnderman, @Nullable Predicate<LivingEntity> pSelectionPredicate) {
         super(pEnderman, Player.class, 10, false, false, pSelectionPredicate);
         this.enderman = pEnderman;
         this.isAngerInducing = (p_269940_) -> {
            return (pEnderman.isLookingAtMe((Player)p_269940_) || pEnderman.isAngryAt(p_269940_)) && !pEnderman.hasIndirectPassenger(p_269940_);
         };
         this.startAggroTargetConditions = TargetingConditions.forCombat().range(this.getFollowDistance()).selector(this.isAngerInducing);
      }

      /**
       * Returns whether execution should begin. You can also read and cache any state necessary for execution in this
       * method as well.
       */
      public boolean canUse() {
         this.pendingTarget = this.enderman.level().getNearestPlayer(this.startAggroTargetConditions, this.enderman);
         return this.pendingTarget != null;
      }

      /**
       * Execute a one shot task or start executing a continuous task
       */
      public void start() {
         this.aggroTime = this.adjustedTickDelay(5);
         this.teleportTime = 0;
         this.enderman.setBeingStaredAt();
      }

      /**
       * Reset the task's internal state. Called when this task is interrupted by another one
       */
      public void stop() {
         this.pendingTarget = null;
         super.stop();
      }

      /**
       * Returns whether an in-progress EntityAIBase should continue executing
       */
      public boolean canContinueToUse() {
         if (this.pendingTarget != null) {
            if (!this.isAngerInducing.test(this.pendingTarget)) {
               return false;
            } else {
               this.enderman.lookAt(this.pendingTarget, 10.0F, 10.0F);
               return true;
            }
         } else {
            if (this.target != null) {
               if (this.enderman.hasIndirectPassenger(this.target)) {
                  return false;
               }

               if (this.continueAggroTargetConditions.test(this.enderman, this.target)) {
                  return true;
               }
            }

            return super.canContinueToUse();
         }
      }

      /**
       * Keep ticking a continuous task that has already been started
       */
      public void tick() {
         if (this.enderman.getTarget() == null) {
            super.setTarget((LivingEntity)null);
         }

         if (this.pendingTarget != null) {
            if (--this.aggroTime <= 0) {
               this.target = this.pendingTarget;
               this.pendingTarget = null;
               super.start();
            }
         } else {
            if (this.target != null && !this.enderman.isPassenger()) {
               if (this.enderman.isLookingAtMe((Player)this.target)) {
                  if (this.target.distanceToSqr(this.enderman) < 16.0D) {
                     this.enderman.teleport();
                  }

                  this.teleportTime = 0;
               } else if (this.target.distanceToSqr(this.enderman) > 256.0D && this.teleportTime++ >= this.adjustedTickDelay(30) && this.enderman.teleportTowards(this.target)) {
                  this.teleportTime = 0;
               }
            }

            super.tick();
         }

      }
   }

   static class EndermanTakeBlockGoal extends Goal {
      private final EnderMan enderman;

      public EndermanTakeBlockGoal(EnderMan pEnderman) {
         this.enderman = pEnderman;
      }

      /**
       * Returns whether execution should begin. You can also read and cache any state necessary for execution in this
       * method as well.
       */
      public boolean canUse() {
         if (this.enderman.getCarriedBlock() != null) {
            return false;
         } else if (!net.minecraftforge.event.ForgeEventFactory.getMobGriefingEvent(this.enderman.level(), this.enderman)) {
            return false;
         } else {
            return this.enderman.getRandom().nextInt(reducedTickDelay(20)) == 0;
         }
      }

      /**
       * Keep ticking a continuous task that has already been started
       */
      public void tick() {
         RandomSource randomsource = this.enderman.getRandom();
         Level level = this.enderman.level();
         int i = Mth.floor(this.enderman.getX() - 2.0D + randomsource.nextDouble() * 4.0D);
         int j = Mth.floor(this.enderman.getY() + randomsource.nextDouble() * 3.0D);
         int k = Mth.floor(this.enderman.getZ() - 2.0D + randomsource.nextDouble() * 4.0D);
         BlockPos blockpos = new BlockPos(i, j, k);
         BlockState blockstate = level.getBlockState(blockpos);
         Vec3 vec3 = new Vec3((double)this.enderman.getBlockX() + 0.5D, (double)j + 0.5D, (double)this.enderman.getBlockZ() + 0.5D);
         Vec3 vec31 = new Vec3((double)i + 0.5D, (double)j + 0.5D, (double)k + 0.5D);
         BlockHitResult blockhitresult = level.clip(new ClipContext(vec3, vec31, ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, this.enderman));
         boolean flag = blockhitresult.getBlockPos().equals(blockpos);
         if (blockstate.is(BlockTags.ENDERMAN_HOLDABLE) && flag) {
            level.removeBlock(blockpos, false);
            level.gameEvent(GameEvent.BLOCK_DESTROY, blockpos, GameEvent.Context.of(this.enderman, blockstate));
            this.enderman.setCarriedBlock(blockstate.getBlock().defaultBlockState());
         }

      }
   }
}

 

Join the conversation

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

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

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Thanks just with removing ctov it worked so i wont add the log.
    • Make a test without ctov first - then add the latest.log
    • Trying to mod a modpack for me and my friends, want to use cobble-mon and add a few handful of mods. Though I'm getting a full on crash.   ---- Minecraft Crash Report ---- // Why did you do that? Time: 2025-04-08 20:43:59 Description: Unexpected error java.lang.IllegalStateException: Cannot get config value before config is loaded.     at MC-BOOTSTRAP/com.google.common@32.1.2-jre/com.google.common.base.Preconditions.checkState(Preconditions.java:512) ~[guava-32.1.2-jre.jar%23118!/:?] {}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.common.ModConfigSpec$ConfigValue.getRaw(ModConfigSpec.java:1235) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.common.ModConfigSpec$ConfigValue.get(ModConfigSpec.java:1222) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading}     at TRANSFORMER/aether@1.5.8/com.aetherteam.aether.client.event.hooks.AudioHooks.tick(AudioHooks.java:97) ~[aether-1.21.1-1.5.8-neoforge.jar%23353!/:?] {re:classloading}     at TRANSFORMER/aether@1.5.8/com.aetherteam.aether.client.event.listeners.AudioListener.onClientTick(AudioListener.java:38) ~[aether-1.21.1-1.5.8-neoforge.jar%23353!/:?] {re:classloading}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.ConsumerEventHandler.invoke(ConsumerEventHandler.java:26) ~[bus-8.0.2.jar%23113!/:?] {}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:350) ~[bus-8.0.2.jar%23113!/:?] {}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:315) ~[bus-8.0.2.jar%23113!/:?] {}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.client.ClientHooks.fireClientTickPost(ClientHooks.java:1077) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading,pl:mixin:APP:azurelib.neo2.mixins.json:ClientHooksMixin from mod azurelib,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.ClientHooksMixin from mod sodium,pl:mixin:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.tick(Minecraft.java:1915) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.runTick(Minecraft.java:1161) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:807) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:classloading,pl:runtimedistcleaner:A}     at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.4.jar%23120!/:?] {}     at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {}     at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace:     at MC-BOOTSTRAP/com.google.common@32.1.2-jre/com.google.common.base.Preconditions.checkState(Preconditions.java:512) ~[guava-32.1.2-jre.jar%23118!/:?] {}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.common.ModConfigSpec$ConfigValue.getRaw(ModConfigSpec.java:1235) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.common.ModConfigSpec$ConfigValue.get(ModConfigSpec.java:1222) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading}     at TRANSFORMER/aether@1.5.8/com.aetherteam.aether.client.event.hooks.AudioHooks.tick(AudioHooks.java:97) ~[aether-1.21.1-1.5.8-neoforge.jar%23353!/:?] {re:classloading}     at TRANSFORMER/aether@1.5.8/com.aetherteam.aether.client.event.listeners.AudioListener.onClientTick(AudioListener.java:38) ~[aether-1.21.1-1.5.8-neoforge.jar%23353!/:?] {re:classloading}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.ConsumerEventHandler.invoke(ConsumerEventHandler.java:26) ~[bus-8.0.2.jar%23113!/:?] {}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:350) ~[bus-8.0.2.jar%23113!/:?] {}     at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:315) ~[bus-8.0.2.jar%23113!/:?] {}     at TRANSFORMER/neoforge@21.1.113/net.neoforged.neoforge.client.ClientHooks.fireClientTickPost(ClientHooks.java:1077) ~[neoforge-21.1.113-universal.jar%23350!/:?] {re:mixin,re:classloading,pl:mixin:APP:azurelib.neo2.mixins.json:ClientHooksMixin from mod azurelib,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.ClientHooksMixin from mod sodium,pl:mixin:A} -- Uptime -- Details:     JVM uptime: 32.907s     Wall uptime: 9.048s     High-res time: 29.780s     Client ticks: 1 ticks / 0.050s Stacktrace:     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.fillReport(Minecraft.java:2392) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.emergencySaveAndCrash(Minecraft.java:868) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:828) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:mixin,pl:accesstransformer:B,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick,xf:fml:xaeroworldmap:xaero_wm_minecraft_runtick_render_call,xf:fml:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_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:xaeroworldmap:xaero_wm_minecraftclient,xf:fml:xaerominimap:xaero_minecraftclient,pl:mixin:APP:owo.mixins.json:MinecraftClientMixin from mod owo,pl:mixin:APP:sodium-extra.mixins.json:core.MixinMinecraftClient from mod sodium_extra,pl:mixin:APP:sodium-extra.mixins.json:gui.MinecraftClientAccessor from mod sodium_extra,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:aether.mixins.json:client.accessor.MinecraftAccessor from mod aether,pl:mixin:APP:lambdynlights.mixins.json:MinecraftClientMixin from mod lambdynlights,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Images from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_Keybinds from mod iris,pl:mixin:APP:mixins.iris.json:MixinMinecraft_PipelineManagement from mod iris,pl:mixin:APP:bookshelf.mixins.json:access.client.AccessorMinecraft from mod bookshelf,pl:mixin:APP:fabric-screen-api-v1.mixins.json:MinecraftClientMixin from mod fabric_screen_api_v1,pl:mixin:APP:supplementaries-common.mixins.json:MinecraftMixin from mod supplementaries,pl:mixin:APP:konkrete.mixins.json:client.MixinMinecraft from mod konkrete,pl:mixin:APP:betterthirdperson.mixins.json:MinecraftClientMixin from mod betterthirdperson,pl:mixin:APP:accessories-common.mixins.json:client.MinecraftMixin from mod accessories,pl:mixin:APP:cumulus_menus.mixins.json:client.accessor.MinecraftAccessor from mod cumulus_menus,pl:mixin:APP:architectury.mixins.json:MixinMinecraft from mod architectury,pl:mixin:APP:dynamic_fps-common.mixins.json:MinecraftMixin from mod dynamic_fps,pl:mixin:APP:fabric-networking-api-v1.client.mixins.json:accessor.MinecraftClientAccessor from mod fabric_networking_api_v1,pl:mixin:APP:owo.mixins.json:ui.MinecraftClientMixin from mod owo,pl:mixin:APP:lithium-neoforge.mixins.json:startup.MinecraftMixin from mod lithium,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientAccessor from mod libbamboo,pl:mixin:APP:libbamboo-common.mixins.json:MinecraftClientMixin from mod libbamboo,pl:mixin:APP:fallingleaves.mixins.json:MinecraftClientMixin from mod fallingleaves,pl:mixin:APP:champions.mixins.json:MinecraftMixin from mod champions,pl:mixin:APP:azurelib.neo.mixins.json:MinecraftMixin from mod azurelib,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:ars_nouveau.mixins.json:light.ClientMixin from mod ars_nouveau,pl:mixin:APP:moonlight-common.mixins.json:MinecraftMixin from mod moonlight,pl:mixin:APP:iceberg.mixins.json:MinecraftMixin from mod iceberg,pl:mixin:APP:notenoughanimations.mixins.json:LivingRenderStateMixin from mod notenoughanimations,pl:mixin:APP:irons_spellbooks.mixins.json:MinecraftMixin from mod irons_spellbooks,pl:mixin:APP:fancymenu.mixins.json:client.IMixinMinecraft from mod fancymenu,pl:mixin:APP:fancymenu.mixins.json:client.MixinMinecraft from mod fancymenu,pl:mixin:APP:immediatelyfast-common.mixins.json:core.MixinMinecraftClient from mod immediatelyfast,pl:mixin:APP:yacl.mixins.json:MinecraftMixin from mod yet_another_config_lib_v3,pl:mixin:APP:fabric-events-interaction-v0.client.mixins.json:MinecraftClientMixin from mod fabric_events_interaction_v0,pl:mixin:APP:ars_nouveau.mixins.json:camera.MinecraftMixin from mod ars_nouveau,pl:mixin:A,pl:runtimedistcleaner:A}     at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[client-1.21.1-20240808.144430-srg.jar%23349!/:?] {re:classloading,pl:runtimedistcleaner:A}     at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {}     at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonClientLaunchHandler.runService(CommonClientLaunchHandler.java:32) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/fml_loader@4.0.35/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.35.jar%23132!/:4.0] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.4.jar%23120!/:?] {}     at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.4/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.4.jar%23120!/:?] {}     at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {}     at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} -- Last reload -- Details:     Reload number: 1     Reload reason: initial     Finished: No     Packs: vanilla -- Cobblemon -- Details:     Version: 1.6.1     Is Snapshot: false     Git Commit: c66de51 (https://gitlab.com/cable-mc/cobblemon/-/commit/c66de51e39dd5144bde3550f630b58f67a835b65)     Branch: HEAD -- System Details -- Details:     Minecraft Version: 1.21.1     Minecraft Version ID: 1.21.1     Operating System: Windows 10 (amd64) version 10.0     Java Version: 21.0.3, Microsoft     Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Microsoft     Memory: 212428424 bytes (202 MiB) / 1468006400 bytes (1400 MiB) up to 8858370048 bytes (8448 MiB)     CPUs: 8     Processor Vendor: GenuineIntel     Processor Name: Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz     Identifier: Intel64 Family 6 Model 158 Stepping 13     Microarchitecture: Coffee Lake     Frequency (GHz): 3.00     Number of physical packages: 1     Number of physical CPUs: 8     Number of logical CPUs: 8     Graphics card #0 name: NVIDIA GeForce GTX 1650     Graphics card #0 vendor: NVIDIA     Graphics card #0 VRAM (MiB): 4096.00     Graphics card #0 deviceId: VideoController1     Graphics card #0 versionInfo: 32.0.15.7216     Memory slot #0 capacity (MiB): 4096.00     Memory slot #0 clockSpeed (GHz): 2.67     Memory slot #0 type: DDR4     Memory slot #1 capacity (MiB): 8192.00     Memory slot #1 clockSpeed (GHz): 2.67     Memory slot #1 type: DDR4     Virtual memory max (MiB): 30610.79     Virtual memory used (MiB): 17996.76     Swap memory total (MiB): 18404.91     Swap memory used (MiB): 0.00     Space in storage for jna.tmpdir (MiB): available: 9858.71, total: 121486.35     Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): available: 9858.71, total: 121486.35     Space in storage for io.netty.native.workdir (MiB): available: 9858.71, total: 121486.35     Space in storage for java.io.tmpdir (MiB): available: 9858.71, total: 121486.35     Space in storage for workdir (MiB): available: 9858.71, total: 121486.35     JVM Flags: 4 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump -Xss1M -Xmx8448m -Xms256m     Loaded Shaderpack: (off)     Launched Version: neoforge-21.1.113     Launcher name: minecraft-launcher     Backend library: LWJGL version 3.3.3+5     Backend API: NVIDIA GeForce GTX 1650/PCIe/SSE2 GL version 4.6.0 NVIDIA 572.16, NVIDIA Corporation     Window size: 1024x768     GFLW Platform: win32     GL Caps: Using framebuffer using OpenGL 3.2     GL debug messages:      Is Modded: Definitely; Client brand changed to 'neoforge'     Universe: 400921fb54442d18     Type: Client (map_client.txt)     Graphics mode: fancy     Render Distance: 12/12 chunks     Resource Packs: vanilla     Current Language: en_us     Locale: en_US     System encoding: Cp1252     File encoding: UTF-8     CPU: 8x Intel(R) Core(TM) i7-9700 CPU @ 3.00GHz     ModLauncher: 11.0.4+main.d2e20e43     ModLauncher launch target: forgeclient     ModLauncher services:          sponge-mixin-0.15.2+mixin.0.8.7.jar mixin PLUGINSERVICE          loader-4.0.35.jar slf4jfixer PLUGINSERVICE          loader-4.0.35.jar runtime_enum_extender PLUGINSERVICE          at-modlauncher-10.0.1.jar accesstransformer PLUGINSERVICE          loader-4.0.35.jar runtimedistcleaner PLUGINSERVICE          modlauncher-11.0.4.jar mixin TRANSFORMATIONSERVICE          modlauncher-11.0.4.jar fml TRANSFORMATIONSERVICE      FML Language Providers:          kotlinforforge@5.7.0         __fabric_loader_bootstrap@2.5.29+0.16.0+1.21         javafml@4.0         lowcodefml@4.0         minecraft@4.0     Mod List:          accessories-neoforge-1.1.0-beta.34+1.21.1.jar     |Accessories                   |accessories                   |1.1.0-beta.34+1.21.1|Manifest: NOSIGNATURE         advancednetherite-neoforge-2.2.1-1.21.1.jar       |Advanced Netherite            |advancednetherite             |2.2.1               |Manifest: NOSIGNATURE         AI-Improvements-1.21-0.5.3.jar                    |AI-Improvements               |aiimprovements                |0.5.3               |Manifest: NOSIGNATURE         AmbientEnvironment-neoforge-1.21.1-18.0.0.2.jar   |AmbientEnvironment            |ambientenvironment            |18.0.0.2            |Manifest: NOSIGNATURE         Apotheosis-1.21.1-8.2.1.jar                       |Apotheosis                    |apotheosis                    |8.2.1               |Manifest: NOSIGNATURE         ApothicAttributes-1.21.1-2.7.0.jar                |Apothic Attributes            |apothic_attributes            |2.7.0               |Manifest: NOSIGNATURE         ApothicEnchanting-1.21.1-1.3.2.jar                |Apothic Enchanting            |apothic_enchanting            |1.3.2               |Manifest: NOSIGNATURE         ApothicSpawners-1.21.1-1.2.1.jar                  |Apothic Spawners              |apothic_spawners              |1.2.1               |Manifest: NOSIGNATURE         appleskin-neoforge-mc1.21-3.0.5.jar               |AppleSkin                     |appleskin                     |3.0.5+mc1.21        |Manifest: NOSIGNATURE         Aquaculture-1.21.1-2.7.14.jar                     |Aquaculture 2                 |aquaculture                   |2.7.14              |Manifest: NOSIGNATURE         aquaculturedelight-1.2.0-neoforge-1.21.1.jar      |Aquaculture Delight           |aquaculturedelight            |1.2.0               |Manifest: NOSIGNATURE         architectury-13.0.8-neoforge.jar                  |Architectury                  |architectury                  |13.0.8              |Manifest: NOSIGNATURE         armoroftheages-neoforge-1.21.1-1.5.3.jar          |Armor of the Ages             |armoroftheages                |1.5.3               |Manifest: NOSIGNATURE         ars_nouveau-1.21.1-5.8.0-all.jar                  |Ars Nouveau                   |ars_nouveau                   |5.8.0               |Manifest: NOSIGNATURE         artifacts-neoforge-12.1.5.jar                     |Artifacts                     |artifacts                     |12.1.5              |Manifest: NOSIGNATURE         azurelib-neo-1.21.1-3.0.11.jar                    |AzureLib                      |azurelib                      |3.0.11              |Manifest: NOSIGNATURE         bwncr-neoforge-1.21.1-3.20.2.jar                  |Bad Wither No Cookie Reloaded |bwncr                         |3.20.2              |Manifest: NOSIGNATURE         bakery_villager_trader-1.2.0-neoforge-1.21.1.jar  |Bakery Villager Trader        |bakery_villager_trader        |1.2.0               |Manifest: NOSIGNATURE         balm-neoforge-1.21.1-21.0.23.jar                  |Balm                          |balm                          |21.0.23             |Manifest: NOSIGNATURE         BetterAdvancements-NeoForge-1.21.1-0.4.3.21.jar   |Better Advancements           |betteradvancements            |0.4.3.21            |Manifest: NOSIGNATURE         BetterPingDisplay-1.21.1-1.1.jar                  |Better Ping Display           |betterpingdisplay             |1.1                 |Manifest: NOSIGNATURE         BetterThirdPerson-neoforge-1.9.0.jar              |Better Third Person           |betterthirdperson             |1.9.0               |Manifest: NOSIGNATURE         BHMenu-NeoForge-1.21-2.4.3.jar                    |BHMenu                        |bhmenu                        |2.4.3               |Manifest: NOSIGNATURE         bookshelf-neoforge-1.21.1-21.1.43.jar             |Bookshelf                     |bookshelf                     |21.1.43             |Manifest: NOSIGNATURE         caelus-neoforge-7.0.1+1.21.1.jar                  |Caelus API                    |caelus                        |7.0.1+1.21.1        |Manifest: NOSIGNATURE         champions-neoforge-1.21.1-2.1.11.0.jar            |Champions Unofficial          |champions                     |1.21.1-2.1.11.0     |Manifest: NOSIGNATURE         chat_heads-0.13.13-neoforge-1.21.jar              |Chat Heads                    |chat_heads                    |0.13.13             |Manifest: NOSIGNATURE         cherishedworlds-neoforge-10.1.0+1.21.1.jar        |Cherished Worlds              |cherishedworlds               |10.1.0+1.21.1       |Manifest: NOSIGNATURE         cloth-config-15.0.140-neoforge.jar                |Cloth Config v15 API          |cloth_config                  |15.0.140            |Manifest: NOSIGNATURE         Clumps-neoforge-1.21.1-19.0.0.1.jar               |Clumps                        |clumps                        |19.0.0.1            |Manifest: NOSIGNATURE         Cobblemon-neoforge-1.6.1+1.21.1.jar               |Cobblemon                     |cobblemon                     |1.6.1+1.21.1        |Manifest: NOSIGNATURE         cobblemon-capturexp-1.6-neoforge-1.0.1.jar        |Cobblemon Capture XP          |capture_xp                    |1.6-neoforge-1.0.1  |Manifest: NOSIGNATURE         cobblemon-counter-1.6-neoforge-1.3.4.jar          |Cobblemon Counter             |cobbled_counter               |1.6-neoforge-1.3.4  |Manifest: NOSIGNATURE         cobblemon-spawn-notification-1.6-neoforge-1.0.1.ja|Cobblemon Spawn Notification  |spawn_notification            |1.6-neoforge-1.0.1  |Manifest: NOSIGNATURE         cobblemon-unchained-1.6-neoforge-1.0.2.jar        |Cobblemon Unchained           |unchained                     |1.6-neoforge-1.0.2  |Manifest: NOSIGNATURE         cobbleride-neoforge-0.2.2+1.21.1.jar              |Cobblemon: Ride On!           |cobbleride                    |0.2.2+1.21.1        |Manifest: NOSIGNATURE         Cobblepedia-NeoForge-0.7.0.jar                    |Cobblepedia                   |cobblepedia                   |0.7.0               |Manifest: NOSIGNATURE         collective-1.21.1-7.87.jar                        |Collective                    |collective                    |7.87                |Manifest: NOSIGNATURE         common-networking-neoforge-1.0.18-1.21.1.jar      |Common Networking             |commonnetworking              |1.0.18-1.21.1       |Manifest: NOSIGNATURE         Corgilib-NeoForge-1.21.1-5.0.0.3.jar              |CorgiLib                      |corgilib                      |5.0.0.3             |Manifest: NOSIGNATURE         coroutil-neoforge-1.21.0-1.3.8.jar                |CoroUtil                      |coroutil                      |1.21.0-1.3.8        |Manifest: NOSIGNATURE         craftingtweaks-neoforge-1.21.1-21.1.5.jar         |Crafting Tweaks               |craftingtweaks                |21.1.5              |Manifest: NOSIGNATURE         CraftPresence-2.5.3+1.21.1-neoforge.jar           |CraftPresence                 |craftpresence                 |2.5.3               |Manifest: NOSIGNATURE         cristellib-neoforge-1.2.8.jar                     |Cristel Lib                   |cristellib                    |1.2.8               |Manifest: NOSIGNATURE         cumulus_menus-1.21.1-2.0.5-neoforge.jar           |Cumulus                       |cumulus_menus                 |2.0.5               |Manifest: NOSIGNATURE         curios-neoforge-9.4.1+1.21.1.jar                  |Curios API                    |curios                        |9.4.1+1.21.1        |Manifest: NOSIGNATURE         deeperdarker-neoforge-1.21-1.3.4.jar              |Deeper and Darker             |deeperdarker                  |1.3.4               |Manifest: NOSIGNATURE         defaultoptions-neoforge-1.21.1-21.1.2.jar         |Default Options               |defaultoptions                |21.1.2              |Manifest: NOSIGNATURE         dismountentity-1.21.1-3.5.jar                     |Dismount Entity               |dismountentity                |3.5                 |Manifest: NOSIGNATURE         DungeonCrawl-NeoForge-1.21-2.3.15.jar             |Dungeon Crawl                 |dungeoncrawl                  |2.3.15              |Manifest: NOSIGNATURE         dynamiccrosshair-9.3+1.21.1-neoforge.jar          |Dynamic Crosshair             |dynamiccrosshair              |9.3                 |Manifest: NOSIGNATURE         dynamiccrosshair-9.3+1.21.1-neoforge-api.jar      |Dynamic Crosshair API         |dynamiccrosshairapi           |1.1                 |Manifest: NOSIGNATURE         dynamic-fps-3.7.7+minecraft-1.21.0-neoforge.jar   |Dynamic FPS                   |dynamic_fps                   |3.7.7               |Manifest: NOSIGNATURE         elytraslot-neoforge-9.0.2+1.21.1.jar              |Elytra Slot                   |elytraslot                    |9.0.2+1.21.1        |Manifest: NOSIGNATURE         enchdesc-neoforge-1.21.1-21.1.5.jar               |EnchantmentDescriptions       |enchdesc                      |21.1.5              |Manifest: NOSIGNATURE         enhanced_attack_indicator-1.1.1+1.21-forge.jar    |Enhanced Attack Indicator     |enhanced_attack_indicator     |1.1.1+1.21-forge    |Manifest: NOSIGNATURE         entityculling-neoforge-1.7.2-mc1.21.jar           |EntityCulling                 |entityculling                 |1.7.2               |Manifest: NOSIGNATURE         [1.21-neoforge]-Epic-Knights-9.23.jar             |Epic Knights: Shields, Armor a|magistuarmory                 |9.23                |Manifest: NOSIGNATURE         expandability-neoforge-12.0.0.jar                 |ExpandAbility                 |expandability                 |12.0.0              |Manifest: NOSIGNATURE         fallingleaves-1.21.1-2.5.0.jar                    |Fallingleaves                 |fallingleaves                 |2.5.0               |Manifest: NOSIGNATURE         fancymenu_neoforge_3.3.2_MC_1.21.1.jar            |FancyMenu                     |fancymenu                     |3.3.2               |Manifest: NOSIGNATURE         FarmersDelight-1.21.1-1.2.7.jar                   |Farmer's Delight              |farmersdelight                |1.2.7               |Manifest: NOSIGNATURE         ferritecore-7.0.2-neoforge.jar                    |Ferrite Core                  |ferritecore                   |7.0.2               |Manifest: 41:ce:50:66:d1:a0:05:ce:a1:0e:02:85:9b:46:64:e0:bf:2e:cf:60:30:9a:fe:0c:27:e0:63:66:9a:84:ce:8a         fabric-api-base-0.4.42+d1308dedd1.jar             |Forgified Fabric API Base     |fabric_api_base               |0.4.42+d1308dedd1   |Manifest: NOSIGNATURE         fabric-block-view-api-v2-1.0.10+9afaaf8c19.jar    |Forgified Fabric BlockView API|fabric_block_view_api_v2      |1.0.10+9afaaf8c19   |Manifest: NOSIGNATURE         fabric-command-api-v2-2.2.28+36d727be19.jar       |Forgified Fabric Command API (|fabric_command_api_v2         |2.2.28+36d727be19   |Manifest: NOSIGNATURE         fabric-events-interaction-v0-0.7.12+7b71cc1619.jar|Forgified Fabric Events Intera|fabric_events_interaction_v0  |0.7.12+7b71cc1619   |Manifest: NOSIGNATURE         fabric-networking-api-v1-4.2.2+a92978fd19.jar     |Forgified Fabric Networking AP|fabric_networking_api_v1      |4.2.2+a92978fd19    |Manifest: NOSIGNATURE         fabric-renderer-api-v1-3.4.0+acb05a3919.jar       |Forgified Fabric Renderer API |fabric_renderer_api_v1        |3.4.0+acb05a3919    |Manifest: NOSIGNATURE         fabric-rendering-v1-5.0.5+2df007aa19.jar          |Forgified Fabric Rendering (v1|fabric_rendering_v1           |5.0.5+2df007aa19    |Manifest: NOSIGNATURE         fabric-rendering-data-attachment-v1-0.3.48+73761d2|Forgified Fabric Rendering Dat|fabric_rendering_data_attachme|0.3.48+73761d2e19   |Manifest: NOSIGNATURE         fabric-screen-api-v1-2.0.24+79a4c2b0d1.jar        |Forgified Fabric Screen API (v|fabric_screen_api_v1          |2.0.24+79a4c2b0d1   |Manifest: NOSIGNATURE         framework-neoforge-1.21.1-0.9.4.jar               |Framework                     |framework                     |0.9.4               |Manifest: NOSIGNATURE         frost_aspect_new-1.0.0-neoforge-1.21.1.jar        |Frost aspect New              |frost_aspect_new              |1.0.0               |Manifest: NOSIGNATURE         fzzy_config-0.6.8+1.21+neoforge.jar               |Fzzy Config                   |fzzy_config                   |0.6.8+1.21+neoforge |Manifest: NOSIGNATURE         geckolib-neoforge-1.21.1-4.7.5.1.jar              |GeckoLib 4                    |geckolib                      |4.7.5.1             |Manifest: NOSIGNATURE         goblintraders-neoforge-1.21.1-1.11.1.jar          |Goblin Traders                |goblintraders                 |1.11.1              |Manifest: NOSIGNATURE         handcrafted-neoforge-1.21.1-4.0.3.jar             |Handcrafted                   |handcrafted                   |4.0.3               |Manifest: NOSIGNATURE         hwg-neoforge-1.21.1-3.0.4.jar                     |Happiness is a Warm Gun       |hwg                           |3.0.4               |Manifest: NOSIGNATURE         highlight-neoforge-1.21-3.0.0.jar                 |Highlight                     |highlight                     |3.0.0               |Manifest: NOSIGNATURE         Highlighter-1.21-neoforge-1.1.11.jar              |Highlighter                   |highlighter                   |1.1.11              |Manifest: NOSIGNATURE         Iceberg-1.21.1-neoforge-1.2.9.2.jar               |Iceberg                       |iceberg                       |1.2.9.2             |Manifest: NOSIGNATURE         illager_trader-3.0.0-neoforge-1.21.1.jar          |Illager Trader                |illager_trader                |3.0.0               |Manifest: NOSIGNATURE         ImmediatelyFast-NeoForge-1.3.4+1.21.1.jar         |ImmediatelyFast               |immediatelyfast               |1.3.4+1.21.1        |Manifest: NOSIGNATURE         InvMove-1.21-0.8.8-NeoForge.jar                   |InvMove                       |invmove                       |0.8.8               |Manifest: NOSIGNATURE         iris-neoforge-1.8.6+mc1.21.1.jar                  |Iris                          |iris                          |1.8.6+mc1.21.1      |Manifest: NOSIGNATURE         irons_spellbooks-1.21.1-3.11.0.jar                |Iron's Spells 'n Spellbooks   |irons_spellbooks              |1.21.1-3.11.0       |Manifest: NOSIGNATURE         jlme-Neoforge1.21.x-ver1.2.4.jar                  |Just a lot more enchantments  |jlme                          |1.2.1               |Manifest: NOSIGNATURE         jei-1.21.1-neoforge-19.21.0.247.jar               |Just Enough Items             |jei                           |19.21.0.247         |Manifest: NOSIGNATURE         Kobolds-3.0.7.jar                                 |Kobolds                       |kobolds                       |3.0.7               |Manifest: NOSIGNATURE         konkrete_neoforge_1.9.9_MC_1.21.jar               |Konkrete                      |konkrete                      |1.9.9               |Manifest: NOSIGNATURE         kffmod-5.7.0.jar                                  |Kotlin For Forge              |kotlinforforge                |5.7.0               |Manifest: NOSIGNATURE         KryptonFoxified-0.1.0+mc1.21.jar                  |KryptonFoxified               |krypton                       |0.1.0+mc1.21        |Manifest: NOSIGNATURE         kuma-api-neoforge-21.0.5-SNAPSHOT.jar             |KumaAPI                       |kuma_api                      |21.0.5-SNAPSHOT     |Manifest: NOSIGNATURE         L_Ender's Cataclysm-2.63-1.21.1.jar               |L_Ender's Cataclysm           |cataclysm                     |2.63-1.21.1         |Manifest: NOSIGNATURE         lambdynamiclights-3.1.4-neo-0+1.21.1.jar          |LambDynamicLights             |lambdynlights                 |3.1.4-neo-0+1.21.1  |Manifest: NOSIGNATURE         languagereload-neoforge-1.21.1-1.0.2.jar          |LanguageReload                |languagereload                |1.0.2               |Manifest: NOSIGNATURE         ls_spooky_music-1.0.1-neoforge-1.21.1.jar         |Leon's Spooky Music           |ls_spooky_music               |1.0.1               |Manifest: NOSIGNATURE         libbamboo-2.2+1.21.1-neoforge.jar                 |LibBamboo                     |libbamboo                     |2.2                 |Manifest: NOSIGNATURE         lithium-neoforge-0.14.7+mc1.21.1.jar              |Lithium                       |lithium                       |0.14.7+mc1.21.1     |Manifest: NOSIGNATURE         LongerChatHistory-neoforge-1.6.jar                |Longer Chat History           |longerchathistory             |1.6                 |Manifest: NOSIGNATURE         lootr-neoforge-1.21-1.10.35.91.jar                |Lootr                         |lootr                         |1.21-1.10.35.91     |Manifest: NOSIGNATURE         mcw-doors-1.1.2-mc1.21.1neoforge.jar              |Macaw's Doors                 |mcwdoors                      |1.1.2               |Manifest: NOSIGNATURE         mcw-fences-1.2.0-1.21.1neoforge.jar               |Macaw's Fences and Walls      |mcwfences                     |1.2.0               |Manifest: NOSIGNATURE         mcw-furniture-3.3.0-mc1.21.1neoforge.jar          |Macaw's Furniture             |mcwfurnitures                 |3.3.0               |Manifest: NOSIGNATURE         mcw-lights-1.1.1-mc1.21.1neoforge.jar             |Macaw's Lights and Lamps      |mcwlights                     |1.1.1               |Manifest: NOSIGNATURE         mcw-paths-1.1.0neoforge-mc1.21.1.jar              |Macaw's Paths and Pavings     |mcwpaths                      |1.1.0               |Manifest: NOSIGNATURE         mcw-roofs-2.3.1-mc1.21.1neoforge.jar              |Macaw's Roofs                 |mcwroofs                      |2.3.1               |Manifest: NOSIGNATURE         mcw-trapdoors-1.1.4-mc1.21.1neoforge.jar          |Macaw's Trapdoors             |mcwtrpdoors                   |1.1.4               |Manifest: NOSIGNATURE         mcw-windows-2.3.0-mc1.21.1neoforge.jar            |Macaw's Windows               |mcwwindows                    |2.3.2               |Manifest: NOSIGNATURE         melody_neoforge_1.0.10_MC_1.21.jar                |Melody                        |melody                        |1.0.10              |Manifest: NOSIGNATURE         client-1.21.1-20240808.144430-srg.jar             |Minecraft                     |minecraft                     |1.21.1              |Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f         enchantments_plus-1.11.0-neoforge-1.21.1.jar      |Mo'Enchantments               |enchantments_plus             |1.11.0              |Manifest: NOSIGNATURE         mvs-4.3.0-1.21.jar                                |Moog's Voyager Structures     |mvs                           |4.3.0-1.21          |Manifest: NOSIGNATURE         moonlight-1.21-2.18.5-neoforge.jar                |Moonlight Lib                 |moonlight                     |1.21-2.18.5         |Manifest: NOSIGNATURE         mushroom_villager_trader-1.1.0-neoforge-1.21.1.jar|Mushroom Villager Trader      |mushroom_villager_trader      |1.1.0               |Manifest: NOSIGNATURE         MythsAndLegends-neoforge-1.7.2-Hotfix.jar         |MythsAndLegends               |mythsandlegends               |1.7.2               |Manifest: NOSIGNATURE         NaturesCompass-1.21.1-3.0.3-neoforge.jar          |Nature's Compass              |naturescompass                |1.21.1-3.0.2-neoforg|Manifest: NOSIGNATURE         nebulus_desert_trader-1.0.6-neoforge-1.21.1.jar   |Nebulus_Desert_Trader         |nebulus_desert_trader         |1.0.6               |Manifest: NOSIGNATURE         neoforge-21.1.113-universal.jar                   |NeoForge                      |neoforge                      |21.1.113            |Manifest: NOSIGNATURE         netherportalfix-neoforge-1.21.1-21.1.1.jar        |NetherPortalFix               |netherportalfix               |21.1.1              |Manifest: NOSIGNATURE         nethervillagertrader-1.2.0-neoforge-1.21.1.jar    |NetherVillagerTrader          |nethervillagertrader          |1.2.0               |Manifest: NOSIGNATURE         nitrogen_internals-1.21.1-1.1.23-neoforge.jar     |Nitrogen                      |nitrogen_internals            |1.1.23              |Manifest: NOSIGNATURE         notenoughanimations-neoforge-1.9.3-mc1.21.jar     |NotEnoughAnimations           |notenoughanimations           |1.9.3               |Manifest: NOSIGNATURE         nuggets-neoforge-1.21-1.0.5.jar                   |Nuggets                       |nuggets                       |1.0.5               |Manifest: NOSIGNATURE         oceanvillagertrader-2.0.2-neoforge-1.21.1.jar     |OceanVillagerTrader           |oceanvillagertrader           |2.0.2               |Manifest: NOSIGNATURE         Oh-The-Biomes-Weve-Gone-NeoForge-2.3.12.jar       |Oh The Biomes We've Gone      |biomeswevegone                |2.3.12              |Manifest: NOSIGNATURE         Oh-The-Trees-Youll-Grow-neoforge-1.21.1-5.0.10.jar|Oh The Trees You'll Grow      |ohthetreesyoullgrow           |5.0.10              |Manifest: NOSIGNATURE         oracle_index-neoforge-0.2.0.jar                   |Oracle Index                  |oracle_index                  |0.2.0               |Manifest: NOSIGNATURE         owo-lib-neoforge-0.12.15.1-beta.2+1.21.jar        |oωo                           |owo                           |0.12.15.1-beta.2+1.2|Manifest: NOSIGNATURE         pamhc2crops-NEOFORGE-1.21.1-1.0.0.jar             |Pam's HarvestCraft - Crops    |pamhc2crops                   |1.0.0               |Manifest: NOSIGNATURE         pamhc2foodcore-NEOFORGE-1.21.1-1.0.0.jar          |Pam's HarvestCraft - Food Core|pamhc2foodcore                |1.0.0               |Manifest: NOSIGNATURE         pamhc2foodextended-NEOFORGE-1.21.1-1.0.0.jar      |Pam's HarvestCraft - Food Exte|pamhc2foodextended            |1.0.0               |Manifest: NOSIGNATURE         pamhc2trees-NEOFORGE-1.21.1-1.0.0.jar             |Pam's HarvestCraft - Trees    |pamhc2trees                   |1.0.0               |Manifest: NOSIGNATURE         Patchouli-1.21-88-NEOFORGE.jar                    |Patchouli                     |patchouli                     |1.21-88-NEOFORGE    |Manifest: NOSIGNATURE         Placebo-1.21.1-9.7.1.jar                          |Placebo                       |placebo                       |9.7.1               |Manifest: NOSIGNATURE         player-animation-lib-forge-2.0.1+1.21.1.jar       |Player Animator               |playeranimator                |2.0.1+1.21.1        |Manifest: NOSIGNATURE         prickle-neoforge-1.21.1-21.1.6.jar                |PrickleMC                     |prickle                       |21.1.6              |Manifest: NOSIGNATURE         pridelib-1.2.1+neo-t2+1.21.1.jar                  |Pride Lib                     |pride                         |1.2.1+neo-t2+1.21.1 |Manifest: NOSIGNATURE         rctmod-neoforge-1.21.1-0.14.3-beta.jar            |Radical Cobblemon Trainers    |rctmod                        |0.14.3-beta         |Manifest: NOSIGNATURE         rctapi-neoforge-1.21.1-0.10.15-beta.jar           |Radical Cobblemon Trainers API|rctapi                        |0.10.15-beta        |Manifest: NOSIGNATURE         reeses-sodium-options-neoforge-1.8.3+mc1.21.4.jar |Reese's Sodium Options        |reeses_sodium_options         |1.8.3+mc1.21.4      |Manifest: NOSIGNATURE         resourcefullib-neoforge-1.21-3.0.12.jar           |Resourceful Lib               |resourcefullib                |3.0.12              |Manifest: NOSIGNATURE         RoughlyEnoughItems-16.0.788-neoforge.jar          |Roughly Enough Items (REI)    |roughlyenoughitems            |16.0.788            |Manifest: NOSIGNATURE         RoughlyEnoughProfessions-neoforge-1.21.1-4.0.3.jar|Roughly Enough Professions    |roughlyenoughprofessions      |4.0.3               |Manifest: NOSIGNATURE         shulkerboxtooltip-neoforge-5.1.3+1.21.1.jar       |ShulkerBoxTooltip             |shulkerboxtooltip             |5.1.3+1.21.1        |Manifest: NOSIGNATURE         SimpleTMs-neoforge-2.1.1.jar                      |SimpleTMs                     |simpletms                     |2.1.1               |Manifest: NOSIGNATURE         simplyswords-neoforge-1.60.11-1.21.1.jar          |Simply Swords                 |simplyswords                  |1.60.11-1.21.1      |Manifest: NOSIGNATURE         sodium-neoforge-0.6.5+mc1.21.1.jar                |Sodium                        |sodium                        |0.6.5+mc1.21.1      |Manifest: NOSIGNATURE         sodium-extra-neoforge-0.6.0+mc1.21.1.jar          |Sodium Extra                  |sodium_extra                  |0.6.0+mc1.21.1      |Manifest: NOSIGNATURE         sodiumextras-neoforge-1.0.7-1.21.1.jar            |Sodium Extras                 |sodiumextras                  |1.0.6               |Manifest: NOSIGNATURE         sodiumleafculling-neoforge-1.0.0-1.21.1.jar       |Sodium Leaf Culling           |sodiumleafculling             |1.0.0               |Manifest: NOSIGNATURE         sodiumoptionsapi-neoforge-1.0.10-1.21.1.jar       |Sodium Options API            |sodiumoptionsapi              |1.0.10              |Manifest: NOSIGNATURE         sodiumoptionsmodcompat-neoforge-1.0.0-1.21.1.jar  |Sodium Options Mod Compat     |sodiumoptionsmodcompat        |1.0.0               |Manifest: NOSIGNATURE         sodium-shadowy-path-blocks-neoforge-4.0.0.jar     |Sodium Shadowy Path Blocks    |sspb                          |4.0.0               |Manifest: NOSIGNATURE         spruceui-5.1.0+neo-t0+1.21.1.jar                  |SpruceUI                      |spruceui                      |5.1.0+neo-t0+1.21.1 |Manifest: NOSIGNATURE         superflatworldnoslimes-1.21.1-3.4.jar             |Superflat World No Slimes     |superflatworldnoslimes        |3.4                 |Manifest: NOSIGNATURE         supplementaries-1.21-3.1.4-neoforge.jar           |Supplementaries               |supplementaries               |1.21-3.1.4          |Manifest: NOSIGNATURE         TaxWardenLegend+M.1.21.1+NeoF.1.0.5.jar           |Tax' Warden Legend            |taxwl                         |1.0.5               |Manifest: NOSIGNATURE         TerraBlender-neoforge-1.21.1-4.1.0.8.jar          |TerraBlender                  |terrablender                  |4.1.0.8             |Manifest: NOSIGNATURE         aether-1.21.1-1.5.8-neoforge.jar                  |The Aether                    |aether                        |1.5.8               |Manifest: NOSIGNATURE         The_Undergarden-1.21.1-0.8.22.jar                 |The Undergarden               |undergarden                   |0.8.22              |Manifest: NOSIGNATURE         tims-ultimately-comprehensive-cobblemon-edits-of-d|Tim's Ultimately Comprehensive|mr_tims_ultimatelycomprehensiv|1.6.1-1             |Manifest: NOSIGNATURE         t_and_t-neoforge-fabric-1.13.2.jar                |Towns and Towers              |t_and_t                       |1.13.2              |Manifest: NOSIGNATURE         travelersbackpack-neoforge-1.21.1-10.1.17.jar     |Traveler's Backpack           |travelersbackpack             |10.1.17             |Manifest: NOSIGNATURE         txnilib-neoforge-1.0.21-1.21.1.jar                |TxniLib                       |txnilib                       |1.0.21              |Manifest: NOSIGNATURE         undergardendelight-1.2.1-neoforge-1.21.1.jar      |Undergarden Delight           |undergardendelight            |1.2.1               |Manifest: NOSIGNATURE         UniLib-1.0.5+1.21.1-neoforge.jar                  |UniLib                        |unilib                        |1.0.5               |Manifest: NOSIGNATURE         visuality-forge-2.0.5.jar                         |Visuality: Reforged           |visuality                     |2.0.5               |Manifest: NOSIGNATURE         wardenhorn-1.10.3-neoforge-mc1.21.1.jar           |Warden Horn                   |wardenhorn                    |1.10.3              |Manifest: NOSIGNATURE         waystones-neoforge-1.21.1-21.1.13.jar             |Waystones                     |waystones                     |21.1.13             |Manifest: NOSIGNATURE         watut-neoforge-1.21.0-1.2.6.jar                   |What Are They Up To           |watut                         |1.21.0-1.2.6        |Manifest: NOSIGNATURE         DungeonsArise-1.21.x-2.1.64-release.jar           |When Dungeons Arise           |dungeons_arise                |2.1.64              |Manifest: NOSIGNATURE         Xaeros_Minimap_25.0.0_NeoForge_1.21.jar           |Xaero's Minimap               |xaerominimap                  |25.0.0              |Manifest: NOSIGNATURE         XaerosWorldMap_1.39.2_NeoForge_1.21.jar           |Xaero's World Map             |xaeroworldmap                 |1.39.2              |Manifest: NOSIGNATURE         yet_another_config_lib_v3-3.6.6+1.21.1-neoforge.ja|YetAnotherConfigLib           |yet_another_config_lib_v3     |3.6.6+1.21.1-neoforg|Manifest: NOSIGNATURE         YungsApi-1.21.1-NeoForge-5.1.4.jar                |YUNG's API                    |yungsapi                      |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterDesertTemples-1.21.1-NeoForge-4.1.5.jar|YUNG's Better Desert Temples  |betterdeserttemples           |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBetterDungeons-1.21.1-NeoForge-5.1.4.jar     |YUNG's Better Dungeons        |betterdungeons                |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterEndIsland-1.21.1-NeoForge-3.1.2.jar    |YUNG's Better End Island      |betterendisland               |1.21.1-NeoForge-3.1.|Manifest: NOSIGNATURE         YungsBetterJungleTemples-1.21.1-NeoForge-3.1.2.jar|YUNG's Better Jungle Temples  |betterjungletemples           |1.21.1-NeoForge-3.1.|Manifest: NOSIGNATURE         YungsBetterMineshafts-1.21.1-NeoForge-5.1.1.jar   |YUNG's Better Mineshafts      |bettermineshafts              |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterNetherFortresses-1.21.1-NeoForge-3.1.4.|YUNG's Better Nether Fortresse|betterfortresses              |1.21.1-NeoForge-3.1.|Manifest: NOSIGNATURE         YungsBetterOceanMonuments-1.21.1-NeoForge-4.1.2.ja|YUNG's Better Ocean Monuments |betteroceanmonuments          |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBetterStrongholds-1.21.1-NeoForge-5.1.3.jar  |YUNG's Better Strongholds     |betterstrongholds             |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsBetterWitchHuts-1.21.1-NeoForge-4.1.1.jar    |YUNG's Better Witch Huts      |betterwitchhuts               |1.21.1-NeoForge-4.1.|Manifest: NOSIGNATURE         YungsBridges-1.21.1-NeoForge-5.1.1.jar            |YUNG's Bridges                |yungsbridges                  |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsExtras-1.21.1-NeoForge-5.1.1.jar             |YUNG's Extras                 |yungsextras                   |1.21.1-NeoForge-5.1.|Manifest: NOSIGNATURE         YungsMenuTweaks-1.21.1-NeoForge-2.1.2.jar         |YUNG's Menu Tweaks            |yungsmenutweaks               |1.21.1-NeoForge-2.1.|Manifest: NOSIGNATURE     Crash Report UUID: 009118a2-8f7d-4412-9d17-f9c6d41d810e     FML: 4.0.35     NeoForge: 21.1.113 If I could get a fix on this, would love it. Thank you.
    • Can you upload full latest.log somewhere? Perhaps some interesting errors are reported just before the crash happens
  • Topics

×
×
  • Create New...

Important Information

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