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

[1.8][SOLVED] Attribute Modifier Help


NovaViper
 Share

Recommended Posts

  • Replies 105
  • Created
  • Last Reply

Top Posters In This Topic

That method doesn't exist

Yes it does, it is a method of EntityPlayer. Unless your entity will be tameable by other types of mobs, then the only type of owner you will have is an EntityPlayer. Check the instance type and cast to EntityPlayer if you can, otherwise store getCustomNameTag() or whatever else you feel like.

Link to comment
Share on other sites

getOwner is an entity, not a EntityPlayer

.. That's what I just said... but you have a custom field, 'this.owner', which IS NOT the same as what is returned by EntityTameable#getOwner, and that is what I was asking about.

 

Anyway, it should be clear by now what you need to do; if not, I highly suggest you take some time to properly learn Java so that simple things like incorrect type parameters to a method (e.g. UUID instead of String) are no longer cause for concern.

Link to comment
Share on other sites

I know about the UUID, I was asking what to do with it since it clearly won't work for String.  But wouldn't using a differenent player conflinct since its not saving the actual owner?

Main Developer and Owner of Zero Quest

Visit the Wiki for more information

If I helped anyone, please give me a applaud and a thank you!

Link to comment
Share on other sites

I know about the UUID, I was asking what to do with it since it clearly won't work for String.  But wouldn't using a differenent player conflinct since its not saving the actual owner?

That's just flat out wrong. Did you not look at EntityTameable's code at all? It shows EXACTLY how to convert the UUID to String format so you can place it in DataWatcher or read/write as NBT.

 

The second question is a result of not understanding basic principles: the whole point of UUID is that it is UNIQUE, and the UUID for each player can always be used to retrieve that player instance from the world (if they are in the game).

Link to comment
Share on other sites

That didn't work, I get this error when entering the game

 

[15:51:27] [server thread/ERROR] [FML]: An Entity type common.zeroquest.entity.zertum.EntityZertum has thrown an exception trying to write state. It will not persist. Report this to the mod author
net.minecraft.util.ReportedException: Saving entity NBT
at net.minecraft.entity.Entity.writeToNBT(Entity.java:1637) ~[Entity.class:?]
at net.minecraft.entity.Entity.writeToNBTOptional(Entity.java:1563) ~[Entity.class:?]
at net.minecraft.world.chunk.storage.AnvilChunkLoader.writeChunkToNBT(AnvilChunkLoader.java:385) [AnvilChunkLoader.class:?]
at net.minecraft.world.chunk.storage.AnvilChunkLoader.saveChunk(AnvilChunkLoader.java:193) [AnvilChunkLoader.class:?]
at net.minecraft.world.gen.ChunkProviderServer.saveChunkData(ChunkProviderServer.java:266) [ChunkProviderServer.class:?]
at net.minecraft.world.gen.ChunkProviderServer.saveChunks(ChunkProviderServer.java:332) [ChunkProviderServer.class:?]
at net.minecraft.world.WorldServer.saveAllChunks(WorldServer.java:976) [WorldServer.class:?]
at net.minecraft.server.MinecraftServer.saveAllWorlds(MinecraftServer.java:419) [MinecraftServer.class:?]
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:147) [integratedServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_25]
Caused by: java.lang.NullPointerException
at common.zeroquest.entity.zertum.EntityZertumEntity.writeEntityToNBT(EntityZertumEntity.java:305) ~[EntityZertumEntity.class:?]
at net.minecraft.entity.Entity.writeToNBT(Entity.java:1620) ~[Entity.class:?]
... 10 more

Main Developer and Owner of Zero Quest

Visit the Wiki for more information

If I helped anyone, please give me a applaud and a thank you!

Link to comment
Share on other sites

Uhm guys, you know that UUID works only on server right?

Putting UUID into DataWatcher is simply wrong.

 

What is needed to be understood is the fact that both SERVER and CLIENT might NOT have the EntityPlayer owner constructed.

That is when you use virtual (fake) links like UUID or even direct names.

 

There are many ways of handling this, depending on what data about owneryou need, how fast and where (client or server), you might even need more than two fields. I will try to describe design:

EntityPlayer owner; // Which will be direct reference to owner on both server and client.
String ownerUUID; // Which is used when link between owner and tamed entity can't be found - e.g owner is offline (there is no EntityPlayer owner).
String ownerName; // This exists for client display purposes.

 

Now what should be saved?

NBT is server sided, inside saveNBT you need to save UUID of owner and ownerName field, why you will learn later.

There are few scenarios:

Both owner and tamed entity can be loaded by world, so ideally in that case you can get UUID directly from owner.getUUID()

Say that owner is logged out, but entity was loaded by world - well, then - you have your ownerUUID field, you save that.

In any case - you always save this ownerName field.

 

Inside loadNBT, you will be loading ownerName and the UUID.

Now what happens, as ststed before - entity might be loaded with owner online or not.

When owner is in world:

- You load UUID, read world#getPlayerEntityByUUID(uuid) and set EntityPlayer owner field.

- You also want to keep UUID loaded - you set ownerUUID field to one loaded.

- Now, since you have direct link to player, you can do owner.getDisplayName() and set ownerName field to it.

When owner is not in world - you can't load entity that is NOT there:

- In that case, you load both UUID and ownerName.

- Now, you don't have EntityPlayer, but you still was able to get the name of player (last name that he logged in on server, which might have changed since, that's why I noted that this is for display purposes).

 

What should be shared between client and server?

As stated before - UUID are ONLY server side, on client - they won't work. Ideally you need to send owner.getEntityId() and then on client, load that uwing world#getEntityFromId() (might be different name). Those IDs are shared between server and client and are only link between entities that you can make.

Now the problem is that, while the SERVER might have owner's entity constructed, CLIENT might not (out of visible range).

That is why you also want to be sharing ownerName field. So in the end you will always have owners name on all clients, even if that owner is logged out or out of range. Note that this name is ONLY for DISPLAYING purposes - e.g a TAG above head, or value in GUI.

 

Few last words:

This design is somewhat caching technique, whenever you can - you use EntityPlayer, when you can't you use UUID, when there is no Entity with present UUID, you reference the name directly.

 

Obviously, you might not need EntityPlayer owner, you can always get him directly (on server) from UUID, but I am optimalization-hype guy, why would you want to search by UUID if you can do that much faster :D (in my case I am using owner per-tick, so that was understandable).

 

Ideally - this system does not use DataWatchers, but direct dynamic packet-updates based on EntityTracker and StartTrackingEvent, if you would use DataWatchers then you totally don't need EntityPlayer field as it is stored as entityId inside watcher (but, is slower).

 

This is not by any means "you have to do it" but rather different angle at coding styles, understand the system and you will be able to code anything.

 

EDIT

And yeah - go read Tameable code, you might be also interested in EntityThrowable which uses direct naming (like in design above).

1.7.10 is no longer supported by forge, you are on your own.

Link to comment
Share on other sites

@Ernio EntityTameable stores the Yggdrasil converted UUID in DataWatcher which should then be usable just fine to retrieve the owner Entity whether on the client or the server. Otherwise, why would they bother storing it in DataWatcher if it only worked on the server?

 

It is sound to cache the owner entity once you have retrieved it, though, and you will need to store both the UUID and nickname, which we have discussed to death already in this thread.

Link to comment
Share on other sites

EntityTameable already stores the UUID though, what about the owner name?

That was what I had been telling you...

You should store the 'owner nickname' field with the UUID. You should also put that into the DataWatcher.

Also when the player logs in, you should reset the nickname from the player, since the nickname can be changed.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

I know but I don't know HOW do to it

You should be able to store the nickname field,

so I assume that you don't know how to reset the nickname when the player logs in.

.. and I just realized doing that in Entity#onUpdate will be better.

In the onUpdate, check if the player with the saved UUID exists in the world, and set the name field with the player's nickname.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

In my mind operating on UUIDs was alway near to String stuff, which as you might know are not very efficient to be don in tick-time and per-entity.

 

That is the reason I suggested storing direct link to owner entity.

 

As to better ways:

Assuming that your entity is COMMON (somewhere around squids number) you could use PlayerLoggedInEvent to fire update check on all loaded entities that are instance of YourEntity. Just saying - saves a lot of UUID ops.

 

Post what you got (entity).

1.7.10 is no longer supported by forge, you are on your own.

Link to comment
Share on other sites

In my mind operating on UUIDs was alway near to String stuff, which as you might know are not very efficient to be don in tick-time and per-entity.

 

That is the reason I suggested storing direct link to owner entity.

 

As to better ways:

Assuming that your entity is COMMON (somewhere around squids number) you could use PlayerLoggedInEvent to fire update check on all loaded entities that are instance of YourEntity. Just saying - saves a lot of UUID ops.

 

Post what you got (entity).

Oh I didn't know doing it on PlayerLoggedInEvent would be more efficient.

  (I assumed that his entity is extremely rare, and I realized that it wouldn't now)

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

Here is my entity code, and also, my entity is not rare, it spawns alot in a custom dimension I created.

 

package common.zeroquest.entity.zertum;

import java.util.HashMap;
import java.util.Map;

import net.minecraft.block.*;
import net.minecraft.block.material.*;
import net.minecraft.entity.*;
import net.minecraft.entity.ai.EntityAIAttackOnCollide;
import net.minecraft.entity.ai.EntityAIHurtByTarget;
import net.minecraft.entity.ai.EntityAILeapAtTarget;
import net.minecraft.entity.ai.EntityAILookIdle;
import net.minecraft.entity.ai.EntityAIMate;
import net.minecraft.entity.ai.EntityAISwimming;
import net.minecraft.entity.ai.EntityAIWander;
import net.minecraft.entity.ai.EntityAIWatchClosest;
import net.minecraft.entity.monster.*;
import net.minecraft.entity.passive.*;
import net.minecraft.entity.player.*;
import net.minecraft.entity.projectile.*;
import net.minecraft.init.*;
import net.minecraft.item.*;
import net.minecraft.nbt.*;
import net.minecraft.pathfinding.*;
import net.minecraft.potion.*;
import net.minecraft.util.*;
import net.minecraft.world.*;
import net.minecraftforge.fml.relauncher.*;
import common.zeroquest.*;
import common.zeroquest.core.helper.ChatHelper;
import common.zeroquest.entity.EntityCustomTameable;
import common.zeroquest.entity.ai.*;
import common.zeroquest.entity.util.*;
import common.zeroquest.inventory.*;
import common.zeroquest.lib.*;

public abstract class EntityZertumEntity extends EntityCustomTameable {
private float timeDogBegging;
private float prevTimeDogBegging;
public float headRotationCourse;
public float headRotationCourseOld;
public boolean isWet;
public boolean isShaking;
public float timeWolfIsShaking;
public float prevTimeWolfIsShaking;
private int hungerTick;
private int prevHungerTick;
private int healingTick;
private int prevHealingTick;
private int regenerationTick;
private int prevRegenerationTick;
public TalentUtil talents;
public LevelUtil levels;
public ModeUtil mode;
public CoordUtil coords;
public Map<String, Object> objects;
private boolean hasToy;
private float timeWolfIsHappy;
private float prevTimeWolfIsHappy;
private boolean isWolfHappy;
public boolean hiyaMaster;
private float mouthOpenness;
private float prevMouthOpenness;
private int openMouthCounter;

protected EntityAILeapAtTarget aiLeap = new EntityAILeapAtTarget(this, 0.4F);
public EntityAIWatchClosest aiStareAtPlayer = new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F);
public EntityAIWatchClosest aiGlareAtCreeper = new EntityAIWatchClosest(this, EntityCreeper.class, this.talents.getLevel("creeperspotter") * 6);
public EntityAIFetchBone aiFetchBone;

// data value IDs
/** DO NOT CHANGE! **/
public static final int INDEX_TAME = 16;
public static final int INDEX_COLLAR = 19;
public static final int INDEX_SADDLE = 20;
public static final int INDEX_EVOLVE = 25;
public static final int INDEX_MOUTH = 29;
public static final int INDEX_BEG = 30;

public EntityZertumEntity(World worldIn) {
	super(worldIn);
	this.objects = new HashMap<String, Object>();
	this.setSize(0.6F, 1.5F);
	((PathNavigateGround) this.getNavigator()).func_179690_a(true);
	this.tasks.addTask(1, new EntityAISwimming(this));
	this.tasks.addTask(2, this.aiSit);
	this.tasks.addTask(3, this.aiLeap);
	this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0D, true));
	this.tasks.addTask(5, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F));
	this.tasks.addTask(6, this.aiFetchBone = new EntityAIFetchBone(this, 1.0D, 0.5F, 20.0F));
	this.tasks.addTask(7, new EntityAIMate(this, 1.0D));
	this.tasks.addTask(8, new EntityAIWander(this, 1.0D));
	this.tasks.addTask(9, new EntityCustomAIBeg(this, 8.0F));
	this.tasks.addTask(10, aiStareAtPlayer);
	this.tasks.addTask(10, new EntityAILookIdle(this));
	this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this));
	this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this));
	this.targetTasks.addTask(3, new EntityAIModeAttackTarget(this));
	this.targetTasks.addTask(4, new EntityAIHurtByTarget(this, true));
	this.setTamed(false);
	this.setEvolved(false);
	this.inventory = new InventoryPack(this);
	this.targetTasks.addTask(6, new EntityAIRoundUp(this, EntityAnimal.class, 0, false));
	TalentHelper.onClassCreation(this);
}

@Override
public void applyEntityAttributes() {
	super.applyEntityAttributes();
	this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.30000001192092896);
	this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.wildHealth());
	this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.wildDamage());
	this.updateEntityAttributes();
}

public void updateEntityAttributes() {
	if (this.isTamed()) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth() + this.effectiveLevel());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

@Override
public void setTamed(boolean p_70903_1_) {
	super.setTamed(p_70903_1_);
	if (p_70903_1_) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

public double tamedHealth() { // TODO
	if (this instanceof EntityZertum || this instanceof EntityRedZertum) {
		return 35;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum || this instanceof EntityDestroZertum || this instanceof EntityDarkZertum) {
		return 40;
	}
	return 0;
}

public double tamedDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum) {
		return 8;
	}
	else if (this instanceof EntityDestroZertum) {
		return 10;
	}
	else if (this instanceof EntityDarkZertum) {
		return 12;
	}
	return 0;
}

public double evoHealth() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityIceZertum) {
		return 45;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityForisZertum || this instanceof EntityDestroZertum) {
		return 50;
	}
	else if (this instanceof EntityDarkZertum) {
		return 60;
	}
	return 0;
}

public double wildHealth() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityForisZertum) {
		return 25;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityDestroZertum || this instanceof EntityDarkZertum) {
		return 30;
	}
	else if (this instanceof EntityIceZertum) {
		return 35;
	}
	return 0;
}

public double wildDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum) {
		return 6;
	}
	else if (this instanceof EntityDestroZertum) {
		return 8;
	}
	else if (this instanceof EntityDarkZertum) {
		return 10;
	}
	return 0;
}

public double babyHealth() {
	return 11;
}

public double babyDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum) {
		return 2;
	}
	else if (this instanceof EntityIceZertum || this instanceof EntityForisZertum || this instanceof EntityDarkZertum) {
		return 4;
	}
	else if (this instanceof EntityDestroZertum) {
		return 3;
	}
	return 0;
}

/**
 * Sets the active target the Task system uses for tracking
 */
@Override
public void setAttackTarget(EntityLivingBase p_70624_1_) {
	super.setAttackTarget(p_70624_1_);
	if (p_70624_1_ == null) {
		this.setAngry(false);
	}
	else if (!this.isTamed()) {
		this.setAngry(true);
	}
}

@Override
public String getName() {
	String name = this.getZertumName();
	if (name != "" && this.isTamed()) {
		return name;
	}
	else {
		return super.getName();
	}
}

@Override
@SideOnly(Side.CLIENT)
public boolean getAlwaysRenderNameTagForRender() {
	return true;
}

@Override
protected void entityInit() { // TODO
	super.entityInit();
	this.talents = new TalentUtil(this);
	this.levels = new LevelUtil(this);
	this.mode = new ModeUtil(this);
	this.coords = new CoordUtil(this);

	this.dataWatcher.addObject(INDEX_COLLAR, new Byte((byte) EnumDyeColor.RED.getMetadata())); // Collar
	this.dataWatcher.addObject(INDEX_SADDLE, Byte.valueOf((byte) 0)); // Saddle
	this.dataWatcher.addObject(21, new String("")); // Dog Name
	this.dataWatcher.addObject(22, new String("")); // Talent Data
	this.dataWatcher.addObject(23, new Integer(Constants.hungerTicks)); // Dog
																		// Hunger
	this.dataWatcher.addObject(24, new String("0:0")); // Level Data
	this.dataWatcher.addObject(INDEX_EVOLVE, Byte.valueOf((byte) 0)); // Evolution
	this.dataWatcher.addObject(26, new Integer(0)); // Obey Others
	this.dataWatcher.addObject(27, new Integer(0)); // Dog Mode
	this.dataWatcher.addObject(28, "-1:-1:-1:-1:-1:-1"); // Dog Coordination
	this.dataWatcher.addObject(INDEX_MOUTH, Integer.valueOf(0)); // Mouth
	this.dataWatcher.addObject(INDEX_BEG, new Byte((byte) 0)); // Begging
}

@Override
public void writeEntityToNBT(NBTTagCompound tagCompound) {
	super.writeEntityToNBT(tagCompound);
	tagCompound.setBoolean("Angry", this.isAngry());
	tagCompound.setByte("CollarColor", (byte) this.getCollarColor().getDyeDamage());
	tagCompound.setBoolean("Saddle", this.isSaddled());
	tagCompound.setBoolean("Evolve", this.hasEvolved());

	tagCompound.setString("version", Constants.version);
	tagCompound.setString("dogName", this.getZertumName());
	tagCompound.setInteger("dogHunger", this.getDogHunger());
	tagCompound.setBoolean("willObey", this.willObeyOthers());
	tagCompound.setBoolean("dogBeg", this.isBegging());

	this.talents.writeTalentsToNBT(tagCompound);
	this.levels.writeTalentsToNBT(tagCompound);
	this.mode.writeToNBT(tagCompound);
	this.coords.writeToNBT(tagCompound);
	TalentHelper.writeToNBT(this, tagCompound);
}

@Override
public void readEntityFromNBT(NBTTagCompound tagCompound) {
	super.readEntityFromNBT(tagCompound);
	this.setAngry(tagCompound.getBoolean("Angry"));
	this.setSaddled(tagCompound.getBoolean("Saddle"));
	this.setEvolved(tagCompound.getBoolean("Evolve"));

	if (tagCompound.hasKey("CollarColor", 99)) {
		this.setCollarColor(EnumDyeColor.byDyeDamage(tagCompound.getByte("CollarColor")));
	}

	String lastVersion = tagCompound.getString("version");
	this.setZertumName(tagCompound.getString("dogName"));
	this.setDogHunger(tagCompound.getInteger("dogHunger"));
	this.setWillObeyOthers(tagCompound.getBoolean("willObey"));
	this.setBegging(tagCompound.getBoolean("dogBeg"));

	this.talents.readTalentsFromNBT(tagCompound);
	this.levels.readTalentsFromNBT(tagCompound);
	this.mode.readFromNBT(tagCompound);
	this.coords.readFromNBT(tagCompound);
	TalentHelper.readFromNBT(this, tagCompound);
}

@Override
protected void playStepSound(BlockPos p_180429_1_, Block p_180429_2_) {
	this.playSound("mob.wolf.step", 0.15F, 1.0F);
}

/**
 * Returns the sound this mob makes while it's alive.
 */
@Override
protected String getLivingSound() {
	this.openMouth();
	String sound = TalentHelper.getLivingSound(this);
	if (!"".equals(sound)) {
		return sound;
	}

	return this.isAngry() ? "mob.wolf.growl" : this.wantToHowl ? Sound.ZertumHowl
			: (this.rand.nextInt(3) == 0 ? (this.isTamed() && this.getHealth() <= 10.0F
					? "mob.wolf.whine" : "mob.wolf.panting") : "mob.wolf.bark");
}

/**
 * Returns the sound this mob makes when it is hurt.
 */
@Override
protected String getHurtSound() {
	this.openMouth();
	return "mob.wolf.hurt";
}

/**
 * Returns the sound this mob makes on death.
 */
@Override
protected String getDeathSound() {
	this.openMouth();
	return "mob.wolf.death";
}

/**
 * Returns the volume for the sounds this mob makes.
 */
@Override
public float getSoundVolume() {
	return 1F;
}

/**
 * Get number of ticks, at least during which the living entity will be
 * silent.
 */
@Override
public int getTalkInterval() {
	if ((Boolean) this.objects.get("canseecreeper") == true) {
		return 40;
	}
	else if (this.wantToHowl) {
		return 150;
	}
	else if (this.getHealth() <= 10) {
		return 20;
	}
	else {
		return 200;
	}
}

/**
 * Returns the item ID for the item the mob drops on death.
 */
@Override
protected void dropFewItems(boolean par1, int par2) {
	rare = rand.nextInt(20);
	{
		if (this.isBurning()) {
			this.dropItem(ModItems.zertumMeatCooked, 1);
		}
		else if (rare <= 12) {
			this.dropItem(ModItems.zertumMeatRaw, 1);
		}
		if (rare <= 6 && !this.isTamed() && !(this instanceof EntityDarkZertum)) {
			this.dropItem(ModItems.nileGrain, 1);
		}
		if (rare <= 6 && !this.isTamed() && (this instanceof EntityDarkZertum)) {
			this.dropItem(ModItems.darkGrain, 1);
		}
		if (this.isSaddled()) {
			this.dropItem(Items.saddle, 1);
		}
		else {

		}

	}
}

/**
 * Called frequently so the entity can update its state every tick as
 * required. For example, zombies and skeletons use this to react to
 * sunlight and start to burn.
 */
@Override
public void onLivingUpdate() // TODO
{
	super.onLivingUpdate();
	if (isServer() && this.isWet && !this.isShaking && !this.hasPath() && this.onGround) {
		this.isShaking = true;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
		this.worldObj.setEntityState(this, (byte) ;
	}

	if (Constants.IS_HUNGER_ON) {
		this.prevHungerTick = this.hungerTick;

		if (this.riddenByEntity == null && !this.isSitting()) {
			this.hungerTick += 1;
		}

		this.hungerTick += TalentHelper.onHungerTick(this, this.hungerTick - this.prevHungerTick);

		if (this.hungerTick > 400) {
			this.setDogHunger(this.getDogHunger() - 1);
			this.hungerTick -= 400;
		}
	}

	if (Constants.DEF_HEALING == true && !this.isChild() && this.getHealth() <= 10 && this.isTamed()) {
		this.addPotionEffect(new PotionEffect(Potion.regeneration.id, 200));
	}

	if (this.getHealth() != 1) {
		this.prevHealingTick = this.healingTick;
		this.healingTick += this.nourishment();

		if (this.healingTick >= 6000) {
			if (this.getHealth() < this.getMaxHealth()) {
				this.setHealth(this.getHealth() + 1);
			}

			this.healingTick = 0;
		}
	}

	if (this.getDogHunger() == 0 && this.worldObj.getWorldInfo().getWorldTime() % 100L == 0L && this.getHealth() > 1) {
		this.attackEntityFrom(DamageSource.generic, 1);
	}

	if (isServer() && this.getAttackTarget() == null && this.isAngry()) {
		this.setAngry(false);
	}

	if (Constants.DEF_HOWL == true) {
		if (this.isServer()) {
			if (this.worldObj.isDaytime() && this.isChild()) // TODO
			{
				wantToHowl = false;
			}
			else if (!this.isChild()) {
				wantToHowl = true;
			}
		}
	}
	TalentHelper.onLivingUpdate(this);
}

/**
 * Called to update the entity's position/logic.
 */
@Override
public void onUpdate() {
	super.onUpdate();
	this.prevTimeDogBegging = this.timeDogBegging;

	if (this.isBegging()) {
		this.timeDogBegging += (1.0F - this.timeDogBegging) * 0.4F;
	}
	else {
		this.timeDogBegging += (0.0F - this.timeDogBegging) * 0.4F;
	}

	if (this.openMouthCounter > 0 && ++this.openMouthCounter > 30) {
		this.openMouthCounter = 0;
		this.setHorseWatchableBoolean(128, false);
	}

	this.prevMouthOpenness = this.mouthOpenness;

	if (this.getHorseWatchableBoolean(128)) {
		this.mouthOpenness += (1.0F - this.mouthOpenness) * 0.7F + 0.05F;

		if (this.mouthOpenness > 1.0F) {
			this.mouthOpenness = 1.0F;
		}
	}
	else {
		this.mouthOpenness += (0.0F - this.mouthOpenness) * 0.7F - 0.05F;

		if (this.mouthOpenness < 0.0F) {
			this.mouthOpenness = 0.0F;
		}
	}
	this.headRotationCourseOld = this.headRotationCourse;

	if (this.func_70922_bv()) {
		this.headRotationCourse += (1.0F - this.headRotationCourse) * 0.4F;
	}
	else {
		this.headRotationCourse += (0.0F - this.headRotationCourse) * 0.4F;
	}

	if (this.isWet()) {
		this.isWet = true;
		this.isShaking = false;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
	}
	else if ((this.isWet || this.isShaking) && this.isShaking) {
		if (this.timeWolfIsShaking == 0.0F) {
			this.playSound("mob.wolf.shake", this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
		}

		this.prevTimeWolfIsShaking = this.timeWolfIsShaking;
		this.timeWolfIsShaking += 0.05F;

		if (this.prevTimeWolfIsShaking >= 2.0F) {
			if (this.rand.nextInt(15) < this.talents.getLevel("fishing") * 2) {
				if (this.rand.nextInt(15) < this.talents.getLevel("flamingelemental") * 2 && this instanceof EntityRedZertum) {
					if (isServer()) {
						dropItem(Items.cooked_fish, 1);
					}
				}
				else {
					if (isServer()) {
						dropItem(Items.fish, 1);
					}
				}
			}
			this.isWet = false;
			this.isShaking = false;
			this.prevTimeWolfIsShaking = 0.0F;
			this.timeWolfIsShaking = 0.0F;
		}

		if (this.timeWolfIsShaking > 0.4F) {
			float f = (float) this.getEntityBoundingBox().minY;
			int i = (int) (MathHelper.sin((this.timeWolfIsShaking - 0.4F) * (float) Math.PI) * 7.0F);

			for (int j = 0; j < i; ++j) {
				float f1 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F;
				float f2 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F;
				this.worldObj.spawnParticle(EnumParticleTypes.WATER_SPLASH, this.posX + f1, f + 0.8F, this.posZ + f2, this.motionX, this.motionY, this.motionZ, new int[0]);
			}
		}
	}

	if (this.rand.nextInt(200) == 0 && this.hasEvolved()) {
		this.hiyaMaster = true;
	}

	if (((this.isBegging()) || (this.hiyaMaster)) && (!this.isWolfHappy) && this.hasEvolved()) {
		this.isWolfHappy = true;
		this.timeWolfIsHappy = 0.0F;
		this.prevTimeWolfIsHappy = 0.0F;
	}
	else {
		hiyaMaster = false;
	}
	if (this.isWolfHappy) {
		if (this.timeWolfIsHappy % 1.0F == 0.0F) {
			if (!(this instanceof EntityMetalZertum)) {
				this.openMouth();
				this.worldObj.playSoundAtEntity(this, "mob.wolf.panting", this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
			}
			else if (this instanceof EntityMetalZertum) {
				this.openMouth();
				this.worldObj.playSoundAtEntity(this, Sound.MetalZertumPant, this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
			}
		}
		this.prevTimeWolfIsHappy = this.timeWolfIsHappy;
		this.timeWolfIsHappy += 0.05F;
		if (this.prevTimeWolfIsHappy >= 8.0F) {
			this.isWolfHappy = false;
			this.prevTimeWolfIsHappy = 0.0F;
			this.timeWolfIsHappy = 0.0F;
		}
	}

	if (this.isTamed()) {
		EntityPlayer player = (EntityPlayer) this.getOwner();

		if (player != null) {
			float distanceToOwner = player.getDistanceToEntity(this);

			if (distanceToOwner <= 2F && this.hasToy()) {
				if (isServer()) {
					this.entityDropItem(new ItemStack(ModItems.toy, 1, 1), 0.0F);
				}
				this.setHasToy(false);
			}
		}
	}
	TalentHelper.onUpdate(this);
}

public float getWagAngle(float f, float f1) {
	float f2 = (this.prevTimeWolfIsHappy + (this.timeWolfIsHappy - this.prevTimeWolfIsHappy) * f + f1) / 2.0F;
	if (f2 < 0.0F) {
		f2 = 0.0F;
	}
	else if (f2 > 2.0F) {
		f2 %= 2.0F;
	}
	return MathHelper.sin(f2 * (float) Math.PI * 11.0F) * 0.3F * (float) Math.PI;
}

@Override
public void moveEntityWithHeading(float strafe, float forward) {
	if (this.riddenByEntity instanceof EntityPlayer) {
		this.prevRotationYaw = this.rotationYaw = this.riddenByEntity.rotationYaw;
		this.rotationPitch = this.riddenByEntity.rotationPitch * 0.5F;
		this.setRotation(this.rotationYaw, this.rotationPitch);
		this.rotationYawHead = this.renderYawOffset = this.rotationYaw;
		strafe = ((EntityPlayer) this.riddenByEntity).moveStrafing * 0.5F;
		forward = ((EntityPlayer) this.riddenByEntity).moveForward;

		if (forward <= 0.0F) {
			forward *= 0.25F;
		}

		if (this.onGround) {
			if (forward > 0.0F) {
				float f2 = MathHelper.sin(this.rotationYaw * (float) Math.PI / 180.0F);
				float f3 = MathHelper.cos(this.rotationYaw * (float) Math.PI / 180.0F);
				this.motionX += -0.4F * f2 * 0.15F; // May change
				this.motionZ += 0.4F * f3 * 0.15F;
			}
		}

		this.stepHeight = 1.0F;
		this.jumpMovementFactor = this.getAIMoveSpeed() * 0.2F;

		if (isServer()) {
			this.setAIMoveSpeed((float) this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).getAttributeValue() / 4);
			super.moveEntityWithHeading(strafe, forward);
		}

		if (this.onGround) {
			// this.jumpPower = 0.0F;
			// this.setHorseJumping(false);
		}

		this.prevLimbSwingAmount = this.limbSwingAmount;
		double d0 = this.posX - this.prevPosX;
		double d1 = this.posZ - this.prevPosZ;
		float f4 = MathHelper.sqrt_double(d0 * d0 + d1 * d1) * 4.0F;

		if (f4 > 1.0F) {
			f4 = 1.0F;
		}

		this.limbSwingAmount += (f4 - this.limbSwingAmount) * 0.4F;
		this.limbSwing += this.limbSwingAmount;
	}
	else {
		this.stepHeight = 0.5F;
		this.jumpMovementFactor = 0.02F;
		super.moveEntityWithHeading(strafe, forward);
	}
}

@Override
public float getAIMoveSpeed() { // TODO
	double speed = this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).getAttributeValue();
	speed += TalentHelper.addToMoveSpeed(this);

	if ((!(this.getAttackTarget() instanceof EntityZertumEntity) && !(this.getAttackTarget() instanceof EntityPlayer)) || this.riddenByEntity instanceof EntityPlayer) {
		if (this.levels.getLevel() == Constants.maxLevel && this.hasEvolved()) {
			speed += 0.4D;
		}
		else if (this.hasEvolved() && this.levels.getLevel() != Constants.maxLevel) {
			speed += 0.4D;
		}
	}

	if (this.riddenByEntity instanceof EntityPlayer) {
		speed /= 4;
	}

	return (float) speed;
}

public float getAIAttackDamage() {
	double damage = this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue();
	damage += TalentHelper.addToAttackDamage(this);

	if ((!(this.getAttackTarget() instanceof EntityZertumEntity) && !(this.getAttackTarget() instanceof EntityPlayer))) {
		if (this.levels.getLevel() == Constants.maxLevel && this.hasEvolved()) {
			damage += 2.0D;
		}
		else if (this.hasEvolved() && this.levels.getLevel() != Constants.maxLevel) {
			damage += 2.0D;
		}
	}
	return (float) damage;
}

@Override
public void fall(float distance, float damageMultiplier) {
	if (distance > 1.0F) {
		this.playSound("game.neutral.hurt.fall.small", 0.4F, 1.0F);
	}

	int i = MathHelper.ceiling_float_int(((distance * 0.5F - 3.0F) - TalentHelper.fallProtection(this)) * damageMultiplier);

	if (i > 0 && !TalentHelper.isImmuneToFalls(this)) {
		this.attackEntityFrom(DamageSource.fall, i);

		if (this.riddenByEntity != null) {
			this.riddenByEntity.attackEntityFrom(DamageSource.fall, i);
		}

		Block block = this.worldObj.getBlockState(new BlockPos(this.posX, this.posY - 0.2D - this.prevRotationYaw, this.posZ)).getBlock();

		if (block.getMaterial() != Material.air && !this.isSilent()) {
			Block.SoundType soundtype = block.stepSound;
			this.worldObj.playSoundAtEntity(this, soundtype.getStepSound(), soundtype.getVolume() * 0.5F, soundtype.getFrequency() * 0.75F);
		}
	}
}

@SideOnly(Side.CLIENT)
public boolean isWolfWet() {
	return this.isWet;
}

@SideOnly(Side.CLIENT)
public float getShadingWhileWet(float p_70915_1_) {
	return 0.75F + (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70915_1_) / 2.0F * 0.25F;
}

@SideOnly(Side.CLIENT)
public float getShakeAngle(float p_70923_1_, float p_70923_2_) {
	float f2 = (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70923_1_ + p_70923_2_) / 1.8F;

	if (f2 < 0.0F) {
		f2 = 0.0F;
	}
	else if (f2 > 1.0F) {
		f2 = 1.0F;
	}

	return MathHelper.sin(f2 * (float) Math.PI) * MathHelper.sin(f2 * (float) Math.PI * 11.0F) * 0.15F * (float) Math.PI;
}

@SideOnly(Side.CLIENT)
public float getInterestedAngle(float partialTickTime) {
	return (this.prevTimeDogBegging + (this.timeDogBegging - this.prevTimeDogBegging) * partialTickTime) * 0.15F * (float) Math.PI;
}

@Override
public float getEyeHeight() {
	return this.height * 0.8F;
}

@Override
public int getVerticalFaceSpeed() {
	return this.isSitting() ? 20 : super.getVerticalFaceSpeed();
}

@Override
public boolean attackEntityFrom(DamageSource damageSource, float damage) {
	if (this.isEntityInvulnerable(damageSource)) {
		return false;
	}
	else {
		if (!TalentHelper.attackEntityFrom(this, damageSource, damage)) {
			return false;
		}

		Entity entity = damageSource.getEntity();
		this.aiSit.setSitting(false);

		if (entity != null && !(entity instanceof EntityPlayer) && !(entity instanceof EntityArrow)) {
			damage = (damage + 1.0F) / 2.0F;
		}

		return super.attackEntityFrom(damageSource, damage);
	}
}

@Override
public boolean attackEntityAsMob(Entity entity) { // TODO
	if (!TalentHelper.shouldDamageMob(this, entity)) {
		return false;
	}

	int damage = (int) (4 + (this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getBaseValue()) / 2);
	damage = TalentHelper.attackEntityAsMob(this, entity, damage);

	if (entity instanceof EntityZombie) {
		((EntityZombie) entity).setAttackTarget(this);
	}

	return entity.attackEntityFrom(DamageSource.causeMobDamage(this), damage);
}

/**
 * Called when the mob's health reaches 0.
 */
@Override
public void onDeath(DamageSource par1DamageSource) {
	super.onDeath(par1DamageSource);

	if (par1DamageSource.getEntity() instanceof EntityPlayer) {
		EntityPlayer entityplayer = (EntityPlayer) par1DamageSource.getEntity();
		{
			entityplayer.triggerAchievement(ModAchievements.ZertKill);
			this.dropChestItems();

		}
	}
}

@Override
protected boolean isMovementBlocked() {
	return this.isPlayerSleeping() || this.ridingEntity != null || this.riddenByEntity instanceof EntityPlayer || super.isMovementBlocked();
}

@Override
public double getYOffset() {
	return this.ridingEntity instanceof EntityPlayer ? 0.5D : 0.0D;
}

@Override
public boolean isPotionApplicable(PotionEffect potionEffect) {
	if (this.getHealth() <= 1) {
		return false;
	}

	if (!TalentHelper.isPostionApplicable(this, potionEffect)) {
		return false;
	}

	return true;
}

@Override
public void setFire(int amount) {
	if (TalentHelper.setFire(this, amount)) {
		super.setFire(amount);
	}
}

public int foodValue(ItemStack stack) {
	if (stack == null || stack.getItem() == null) {
		return 0;
	}

	int foodValue = 0;

	Item item = stack.getItem();

	if (stack.getItem() != Items.rotten_flesh && item instanceof ItemFood) {
		ItemFood itemfood = (ItemFood) item;

		if (itemfood.isWolfsFavoriteMeat()) {
			foodValue = 40;
		}
	}

	foodValue = TalentHelper.changeFoodValue(this, stack, foodValue);

	return foodValue;
}

public int masterOrder() { // TODO
	int order = 0;
	EntityPlayer player = (EntityPlayer) this.getOwner();

	if (player != null) {

		float distanceAway = player.getDistanceToEntity(this);
		ItemStack itemstack = player.inventory.getCurrentItem();

		if (itemstack != null && (itemstack.getItem() instanceof ItemTool) && distanceAway <= 20F) {
			order = 1;
		}

		if (itemstack != null && ((itemstack.getItem() instanceof ItemSword) || (itemstack.getItem() instanceof ItemBow))) {
			order = 2;
		}

		if (itemstack != null && itemstack.getItem() == Items.wheat) {
			order = 3;
		}

		if (itemstack != null && itemstack.getItem() == Items.bone) {
			order = 4;
		}
	}

	return order;
}

@Override
public boolean canBreatheUnderwater() {
	return TalentHelper.canBreatheUnderwater(this);
}

@Override
public boolean canInteract(EntityPlayer player) {
	return this.isOwner(player) || this.willObeyOthers();
}

public int nourishment() {
	int amount = 0;

	if (this.getDogHunger() > 0) {
		amount = 40 + 4 * (this.effectiveLevel() + 1);

		if (isSitting() && this.talents.getLevel("rapidregen") == 5) {
			amount += 20 + 2 * (this.effectiveLevel() + 1);
		}

		if (!this.isSitting()) {
			amount *= 5 + this.talents.getLevel("rapidregen");
			amount /= 10;
		}
	}

	return amount;
}

public int effectiveLevel() { // TODO
	return (this.levels.getLevel()) / 10;
}

public String getZertumName() {
	return this.dataWatcher.getWatchableObjectString(21);
}

public void setZertumName(String var1) {
	this.dataWatcher.updateObject(21, var1);
}

public void setWillObeyOthers(boolean flag) {
	this.dataWatcher.updateObject(26, flag ? 1 : 0);
}

public boolean willObeyOthers() {
	return this.dataWatcher.getWatchableObjectInt(26) != 0;
}

public int points() {
	return this.levels.getLevel() + (this.getGrowingAge() < 0 ? 0 : 20);
}

public int spendablePoints() {
	return this.points() - this.usedPoints();
}

public int usedPoints() {
	return TalentHelper.getUsedPoints(this);
}

public int deductive(int level) {
	byte byte0 = 0;
	switch (level) {
		case 1:
			return 1;
		case 2:
			return 3;
		case 3:
			return 5;
		case 4:
			return 7;
		case 5:
			return 9;
		default:
			return 0;
	}
}

public int getDogHunger() {
	return this.dataWatcher.getWatchableObjectInt(23);
}

public void setDogHunger(int par1) {
	this.dataWatcher.updateObject(23, MathHelper.clamp_int(par1, 0, Constants.hungerTicks));
}

@Override
public boolean func_142018_a(EntityLivingBase entityToAttack, EntityLivingBase owner) {
	if (TalentHelper.canAttackEntity(this, entityToAttack)) {
		return true;
	}

	if (!(entityToAttack instanceof EntityCreeper) && !(entityToAttack instanceof EntityGhast)) {
		if (entityToAttack instanceof EntityZertumEntity) {
			EntityZertumEntity entityZertum = (EntityZertumEntity) entityToAttack;

			if (entityZertum.isTamed() && entityZertum.getOwner() == owner) {
				return false;
			}
		}

		return entityToAttack instanceof EntityPlayer && owner instanceof EntityPlayer && !((EntityPlayer) owner).canAttackPlayer((EntityPlayer) entityToAttack)
				? false
				: !(entityToAttack instanceof EntityHorse) || !((EntityHorse) entityToAttack).isTame();
	}
	else {
		return false;
	}
}

@Override
public boolean canAttackClass(Class p_70686_1_) {
	if (TalentHelper.canAttackClass(this, p_70686_1_)) {
		return true;
	}

	return super.canAttackClass(p_70686_1_);
}

public void setHasToy(boolean hasBone) {
	this.hasToy = hasBone;
}

public boolean hasToy() {
	return this.hasToy;
}

/**
 * Gets the pitch of living sounds in living entities.
 */
@Override
public float getPitch() {
	if (!this.isChild()) {
		return super.getSoundPitch();
	}
	else {
		return super.getSoundPitch() * 1;
	}
}

@Override
@SideOnly(Side.CLIENT)
public void handleHealthUpdate(byte p_70103_1_) {
	if (p_70103_1_ ==  {
		this.isShaking = true;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
	}
	else {
		super.handleHealthUpdate(p_70103_1_);
	}
}

/**
 * Checks if the parameter is an item which this animal can be fed to breed
 * it (wheat, carrots or seeds depending on the animal type)
 */
@Override
public boolean isBreedingItem(ItemStack itemstack) {
	return itemstack == null ? false : itemstack.getItem() == ModItems.dogTreat;
}

@Override
public int getMaxSpawnedInChunk() {
	return 8;
}

public boolean isAngry() {
	return (this.dataWatcher.getWatchableObjectByte(INDEX_TAME) & 2) != 0;
}

public void setAngry(boolean p_70916_1_) {
	byte b0 = this.dataWatcher.getWatchableObjectByte(INDEX_TAME);

	if (p_70916_1_) {
		this.dataWatcher.updateObject(INDEX_TAME, Byte.valueOf((byte) (b0 | 2)));
	}
	else {
		this.dataWatcher.updateObject(INDEX_TAME, Byte.valueOf((byte) (b0 & -3)));
	}
}

public EnumDyeColor getCollarColor() {
	return EnumDyeColor.byDyeDamage(this.dataWatcher.getWatchableObjectByte(INDEX_COLLAR) & 15);
}

public void setCollarColor(EnumDyeColor collarcolor) {
	this.dataWatcher.updateObject(INDEX_COLLAR, Byte.valueOf((byte) (collarcolor.getDyeDamage() & 15)));
}

public boolean isSaddled() {
	return (this.dataWatcher.getWatchableObjectByte(INDEX_SADDLE) & 1) != 0;
}

public void setSaddled(boolean p_70900_1_) {
	if (p_70900_1_) {
		this.dataWatcher.updateObject(INDEX_SADDLE, Byte.valueOf((byte) 1));
	}
	else {
		this.dataWatcher.updateObject(INDEX_SADDLE, Byte.valueOf((byte) 0));
	}
}

private boolean getHorseWatchableBoolean(int p_110233_1_) {
	return (this.dataWatcher.getWatchableObjectInt(INDEX_MOUTH) & p_110233_1_) != 0;
}

private void setHorseWatchableBoolean(int p_110208_1_, boolean p_110208_2_) {
	int j = this.dataWatcher.getWatchableObjectInt(INDEX_MOUTH);

	if (p_110208_2_) {
		this.dataWatcher.updateObject(INDEX_MOUTH, Integer.valueOf(j | p_110208_1_));
	}
	else {
		this.dataWatcher.updateObject(INDEX_MOUTH, Integer.valueOf(j & ~p_110208_1_));
	}
}

@SideOnly(Side.CLIENT)
public float func_110201_q(float p_110201_1_) {
	return this.prevMouthOpenness + (this.mouthOpenness - this.prevMouthOpenness) * p_110201_1_;
}

public void openMouth() {
	if (isServer()) {
		this.openMouthCounter = 1;
		this.setHorseWatchableBoolean(128, true);
	}
}

/**
 * Determines if an entity can be despawned, used on idle far away entities
 */
@Override
protected boolean canDespawn() {
	return !this.isTamed() && this.ticksExisted > 2400;
}

@Override
public boolean allowLeashing() {
	return !this.isAngry() && super.allowLeashing();
}

public void setBegging(boolean flag) {
	this.dataWatcher.updateObject(INDEX_BEG, Byte.valueOf((byte) (flag ? 1 : 0)));
}

public boolean isBegging() {
	return this.dataWatcher.getWatchableObjectByte(INDEX_BEG) == 1;
}

public boolean hasEvolved() // TODO
{
	return (this.dataWatcher.getWatchableObjectByte(INDEX_EVOLVE) & 1) != 0;
}

public void evolveBoolean(boolean p_70900_1_) {
	if (p_70900_1_) {
		this.dataWatcher.updateObject(INDEX_EVOLVE, Byte.valueOf((byte) 1));
	}
	else {
		this.dataWatcher.updateObject(INDEX_EVOLVE, Byte.valueOf((byte) 0));
	}
}

public void setEvolved(boolean p_70900_1_) {
	this.evolveBoolean(p_70900_1_);
	if (p_70900_1_) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

public void evolveOnClient(EntityPlayer player) {
	this.setEvolved(true);
	this.worldObj.playBroadcastSound(1013, new BlockPos(this), 0);
	player.addChatMessage(ChatHelper.getChatComponent(EnumChatFormatting.GREEN + this.getZertumName() + " has been evolved!"));
}

public void evolveOnServer(EntityZertumEntity entity, EntityPlayer player) {
	entity.setEvolved(true);
	entity.worldObj.playBroadcastSound(1013, new BlockPos(entity), 0);
	player.addChatMessage(ChatHelper.getChatComponent(EnumChatFormatting.GREEN + entity.getZertumName() + " has been evolved!"));
}
}

Main Developer and Owner of Zero Quest

Visit the Wiki for more information

If I helped anyone, please give me a applaud and a thank you!

Link to comment
Share on other sites

Here is my entity code, and also, my entity is not rare, it spawns alot in a custom dimension I created.

 

package common.zeroquest.entity.zertum;

import java.util.HashMap;
import java.util.Map;

import net.minecraft.block.*;
import net.minecraft.block.material.*;
import net.minecraft.entity.*;
import net.minecraft.entity.ai.EntityAIAttackOnCollide;
import net.minecraft.entity.ai.EntityAIHurtByTarget;
import net.minecraft.entity.ai.EntityAILeapAtTarget;
import net.minecraft.entity.ai.EntityAILookIdle;
import net.minecraft.entity.ai.EntityAIMate;
import net.minecraft.entity.ai.EntityAISwimming;
import net.minecraft.entity.ai.EntityAIWander;
import net.minecraft.entity.ai.EntityAIWatchClosest;
import net.minecraft.entity.monster.*;
import net.minecraft.entity.passive.*;
import net.minecraft.entity.player.*;
import net.minecraft.entity.projectile.*;
import net.minecraft.init.*;
import net.minecraft.item.*;
import net.minecraft.nbt.*;
import net.minecraft.pathfinding.*;
import net.minecraft.potion.*;
import net.minecraft.util.*;
import net.minecraft.world.*;
import net.minecraftforge.fml.relauncher.*;
import common.zeroquest.*;
import common.zeroquest.core.helper.ChatHelper;
import common.zeroquest.entity.EntityCustomTameable;
import common.zeroquest.entity.ai.*;
import common.zeroquest.entity.util.*;
import common.zeroquest.inventory.*;
import common.zeroquest.lib.*;

public abstract class EntityZertumEntity extends EntityCustomTameable {
private float timeDogBegging;
private float prevTimeDogBegging;
public float headRotationCourse;
public float headRotationCourseOld;
public boolean isWet;
public boolean isShaking;
public float timeWolfIsShaking;
public float prevTimeWolfIsShaking;
private int hungerTick;
private int prevHungerTick;
private int healingTick;
private int prevHealingTick;
private int regenerationTick;
private int prevRegenerationTick;
public TalentUtil talents;
public LevelUtil levels;
public ModeUtil mode;
public CoordUtil coords;
public Map<String, Object> objects;
private boolean hasToy;
private float timeWolfIsHappy;
private float prevTimeWolfIsHappy;
private boolean isWolfHappy;
public boolean hiyaMaster;
private float mouthOpenness;
private float prevMouthOpenness;
private int openMouthCounter;

protected EntityAILeapAtTarget aiLeap = new EntityAILeapAtTarget(this, 0.4F);
public EntityAIWatchClosest aiStareAtPlayer = new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F);
public EntityAIWatchClosest aiGlareAtCreeper = new EntityAIWatchClosest(this, EntityCreeper.class, this.talents.getLevel("creeperspotter") * 6);
public EntityAIFetchBone aiFetchBone;

// data value IDs
/** DO NOT CHANGE! **/
public static final int INDEX_TAME = 16;
public static final int INDEX_COLLAR = 19;
public static final int INDEX_SADDLE = 20;
public static final int INDEX_EVOLVE = 25;
public static final int INDEX_MOUTH = 29;
public static final int INDEX_BEG = 30;

public EntityZertumEntity(World worldIn) {
	super(worldIn);
	this.objects = new HashMap<String, Object>();
	this.setSize(0.6F, 1.5F);
	((PathNavigateGround) this.getNavigator()).func_179690_a(true);
	this.tasks.addTask(1, new EntityAISwimming(this));
	this.tasks.addTask(2, this.aiSit);
	this.tasks.addTask(3, this.aiLeap);
	this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0D, true));
	this.tasks.addTask(5, new EntityAIFollowOwner(this, 1.0D, 10.0F, 2.0F));
	this.tasks.addTask(6, this.aiFetchBone = new EntityAIFetchBone(this, 1.0D, 0.5F, 20.0F));
	this.tasks.addTask(7, new EntityAIMate(this, 1.0D));
	this.tasks.addTask(8, new EntityAIWander(this, 1.0D));
	this.tasks.addTask(9, new EntityCustomAIBeg(this, 8.0F));
	this.tasks.addTask(10, aiStareAtPlayer);
	this.tasks.addTask(10, new EntityAILookIdle(this));
	this.targetTasks.addTask(1, new EntityAIOwnerHurtByTarget(this));
	this.targetTasks.addTask(2, new EntityAIOwnerHurtTarget(this));
	this.targetTasks.addTask(3, new EntityAIModeAttackTarget(this));
	this.targetTasks.addTask(4, new EntityAIHurtByTarget(this, true));
	this.setTamed(false);
	this.setEvolved(false);
	this.inventory = new InventoryPack(this);
	this.targetTasks.addTask(6, new EntityAIRoundUp(this, EntityAnimal.class, 0, false));
	TalentHelper.onClassCreation(this);
}

@Override
public void applyEntityAttributes() {
	super.applyEntityAttributes();
	this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.30000001192092896);
	this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.wildHealth());
	this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.wildDamage());
	this.updateEntityAttributes();
}

public void updateEntityAttributes() {
	if (this.isTamed()) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth() + this.effectiveLevel());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

@Override
public void setTamed(boolean p_70903_1_) {
	super.setTamed(p_70903_1_);
	if (p_70903_1_) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

public double tamedHealth() { // TODO
	if (this instanceof EntityZertum || this instanceof EntityRedZertum) {
		return 35;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum || this instanceof EntityDestroZertum || this instanceof EntityDarkZertum) {
		return 40;
	}
	return 0;
}

public double tamedDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum) {
		return 8;
	}
	else if (this instanceof EntityDestroZertum) {
		return 10;
	}
	else if (this instanceof EntityDarkZertum) {
		return 12;
	}
	return 0;
}

public double evoHealth() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityIceZertum) {
		return 45;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityForisZertum || this instanceof EntityDestroZertum) {
		return 50;
	}
	else if (this instanceof EntityDarkZertum) {
		return 60;
	}
	return 0;
}

public double wildHealth() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityForisZertum) {
		return 25;
	}
	else if (this instanceof EntityMetalZertum || this instanceof EntityDestroZertum || this instanceof EntityDarkZertum) {
		return 30;
	}
	else if (this instanceof EntityIceZertum) {
		return 35;
	}
	return 0;
}

public double wildDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum || this instanceof EntityIceZertum || this instanceof EntityForisZertum) {
		return 6;
	}
	else if (this instanceof EntityDestroZertum) {
		return 8;
	}
	else if (this instanceof EntityDarkZertum) {
		return 10;
	}
	return 0;
}

public double babyHealth() {
	return 11;
}

public double babyDamage() {
	if (this instanceof EntityZertum || this instanceof EntityRedZertum || this instanceof EntityMetalZertum) {
		return 2;
	}
	else if (this instanceof EntityIceZertum || this instanceof EntityForisZertum || this instanceof EntityDarkZertum) {
		return 4;
	}
	else if (this instanceof EntityDestroZertum) {
		return 3;
	}
	return 0;
}

/**
 * Sets the active target the Task system uses for tracking
 */
@Override
public void setAttackTarget(EntityLivingBase p_70624_1_) {
	super.setAttackTarget(p_70624_1_);
	if (p_70624_1_ == null) {
		this.setAngry(false);
	}
	else if (!this.isTamed()) {
		this.setAngry(true);
	}
}

@Override
public String getName() {
	String name = this.getZertumName();
	if (name != "" && this.isTamed()) {
		return name;
	}
	else {
		return super.getName();
	}
}

@Override
@SideOnly(Side.CLIENT)
public boolean getAlwaysRenderNameTagForRender() {
	return true;
}

@Override
protected void entityInit() { // TODO
	super.entityInit();
	this.talents = new TalentUtil(this);
	this.levels = new LevelUtil(this);
	this.mode = new ModeUtil(this);
	this.coords = new CoordUtil(this);

	this.dataWatcher.addObject(INDEX_COLLAR, new Byte((byte) EnumDyeColor.RED.getMetadata())); // Collar
	this.dataWatcher.addObject(INDEX_SADDLE, Byte.valueOf((byte) 0)); // Saddle
	this.dataWatcher.addObject(21, new String("")); // Dog Name
	this.dataWatcher.addObject(22, new String("")); // Talent Data
	this.dataWatcher.addObject(23, new Integer(Constants.hungerTicks)); // Dog
																		// Hunger
	this.dataWatcher.addObject(24, new String("0:0")); // Level Data
	this.dataWatcher.addObject(INDEX_EVOLVE, Byte.valueOf((byte) 0)); // Evolution
	this.dataWatcher.addObject(26, new Integer(0)); // Obey Others
	this.dataWatcher.addObject(27, new Integer(0)); // Dog Mode
	this.dataWatcher.addObject(28, "-1:-1:-1:-1:-1:-1"); // Dog Coordination
	this.dataWatcher.addObject(INDEX_MOUTH, Integer.valueOf(0)); // Mouth
	this.dataWatcher.addObject(INDEX_BEG, new Byte((byte) 0)); // Begging
}

@Override
public void writeEntityToNBT(NBTTagCompound tagCompound) {
	super.writeEntityToNBT(tagCompound);
	tagCompound.setBoolean("Angry", this.isAngry());
	tagCompound.setByte("CollarColor", (byte) this.getCollarColor().getDyeDamage());
	tagCompound.setBoolean("Saddle", this.isSaddled());
	tagCompound.setBoolean("Evolve", this.hasEvolved());

	tagCompound.setString("version", Constants.version);
	tagCompound.setString("dogName", this.getZertumName());
	tagCompound.setInteger("dogHunger", this.getDogHunger());
	tagCompound.setBoolean("willObey", this.willObeyOthers());
	tagCompound.setBoolean("dogBeg", this.isBegging());

	this.talents.writeTalentsToNBT(tagCompound);
	this.levels.writeTalentsToNBT(tagCompound);
	this.mode.writeToNBT(tagCompound);
	this.coords.writeToNBT(tagCompound);
	TalentHelper.writeToNBT(this, tagCompound);
}

@Override
public void readEntityFromNBT(NBTTagCompound tagCompound) {
	super.readEntityFromNBT(tagCompound);
	this.setAngry(tagCompound.getBoolean("Angry"));
	this.setSaddled(tagCompound.getBoolean("Saddle"));
	this.setEvolved(tagCompound.getBoolean("Evolve"));

	if (tagCompound.hasKey("CollarColor", 99)) {
		this.setCollarColor(EnumDyeColor.byDyeDamage(tagCompound.getByte("CollarColor")));
	}

	String lastVersion = tagCompound.getString("version");
	this.setZertumName(tagCompound.getString("dogName"));
	this.setDogHunger(tagCompound.getInteger("dogHunger"));
	this.setWillObeyOthers(tagCompound.getBoolean("willObey"));
	this.setBegging(tagCompound.getBoolean("dogBeg"));

	this.talents.readTalentsFromNBT(tagCompound);
	this.levels.readTalentsFromNBT(tagCompound);
	this.mode.readFromNBT(tagCompound);
	this.coords.readFromNBT(tagCompound);
	TalentHelper.readFromNBT(this, tagCompound);
}

@Override
protected void playStepSound(BlockPos p_180429_1_, Block p_180429_2_) {
	this.playSound("mob.wolf.step", 0.15F, 1.0F);
}

/**
 * Returns the sound this mob makes while it's alive.
 */
@Override
protected String getLivingSound() {
	this.openMouth();
	String sound = TalentHelper.getLivingSound(this);
	if (!"".equals(sound)) {
		return sound;
	}

	return this.isAngry() ? "mob.wolf.growl" : this.wantToHowl ? Sound.ZertumHowl
			: (this.rand.nextInt(3) == 0 ? (this.isTamed() && this.getHealth() <= 10.0F
					? "mob.wolf.whine" : "mob.wolf.panting") : "mob.wolf.bark");
}

/**
 * Returns the sound this mob makes when it is hurt.
 */
@Override
protected String getHurtSound() {
	this.openMouth();
	return "mob.wolf.hurt";
}

/**
 * Returns the sound this mob makes on death.
 */
@Override
protected String getDeathSound() {
	this.openMouth();
	return "mob.wolf.death";
}

/**
 * Returns the volume for the sounds this mob makes.
 */
@Override
public float getSoundVolume() {
	return 1F;
}

/**
 * Get number of ticks, at least during which the living entity will be
 * silent.
 */
@Override
public int getTalkInterval() {
	if ((Boolean) this.objects.get("canseecreeper") == true) {
		return 40;
	}
	else if (this.wantToHowl) {
		return 150;
	}
	else if (this.getHealth() <= 10) {
		return 20;
	}
	else {
		return 200;
	}
}

/**
 * Returns the item ID for the item the mob drops on death.
 */
@Override
protected void dropFewItems(boolean par1, int par2) {
	rare = rand.nextInt(20);
	{
		if (this.isBurning()) {
			this.dropItem(ModItems.zertumMeatCooked, 1);
		}
		else if (rare <= 12) {
			this.dropItem(ModItems.zertumMeatRaw, 1);
		}
		if (rare <= 6 && !this.isTamed() && !(this instanceof EntityDarkZertum)) {
			this.dropItem(ModItems.nileGrain, 1);
		}
		if (rare <= 6 && !this.isTamed() && (this instanceof EntityDarkZertum)) {
			this.dropItem(ModItems.darkGrain, 1);
		}
		if (this.isSaddled()) {
			this.dropItem(Items.saddle, 1);
		}
		else {

		}

	}
}

/**
 * Called frequently so the entity can update its state every tick as
 * required. For example, zombies and skeletons use this to react to
 * sunlight and start to burn.
 */
@Override
public void onLivingUpdate() // TODO
{
	super.onLivingUpdate();
	if (isServer() && this.isWet && !this.isShaking && !this.hasPath() && this.onGround) {
		this.isShaking = true;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
		this.worldObj.setEntityState(this, (byte) ;
	}

	if (Constants.IS_HUNGER_ON) {
		this.prevHungerTick = this.hungerTick;

		if (this.riddenByEntity == null && !this.isSitting()) {
			this.hungerTick += 1;
		}

		this.hungerTick += TalentHelper.onHungerTick(this, this.hungerTick - this.prevHungerTick);

		if (this.hungerTick > 400) {
			this.setDogHunger(this.getDogHunger() - 1);
			this.hungerTick -= 400;
		}
	}

	if (Constants.DEF_HEALING == true && !this.isChild() && this.getHealth() <= 10 && this.isTamed()) {
		this.addPotionEffect(new PotionEffect(Potion.regeneration.id, 200));
	}

	if (this.getHealth() != 1) {
		this.prevHealingTick = this.healingTick;
		this.healingTick += this.nourishment();

		if (this.healingTick >= 6000) {
			if (this.getHealth() < this.getMaxHealth()) {
				this.setHealth(this.getHealth() + 1);
			}

			this.healingTick = 0;
		}
	}

	if (this.getDogHunger() == 0 && this.worldObj.getWorldInfo().getWorldTime() % 100L == 0L && this.getHealth() > 1) {
		this.attackEntityFrom(DamageSource.generic, 1);
	}

	if (isServer() && this.getAttackTarget() == null && this.isAngry()) {
		this.setAngry(false);
	}

	if (Constants.DEF_HOWL == true) {
		if (this.isServer()) {
			if (this.worldObj.isDaytime() && this.isChild()) // TODO
			{
				wantToHowl = false;
			}
			else if (!this.isChild()) {
				wantToHowl = true;
			}
		}
	}
	TalentHelper.onLivingUpdate(this);
}

/**
 * Called to update the entity's position/logic.
 */
@Override
public void onUpdate() {
	super.onUpdate();
	this.prevTimeDogBegging = this.timeDogBegging;

	if (this.isBegging()) {
		this.timeDogBegging += (1.0F - this.timeDogBegging) * 0.4F;
	}
	else {
		this.timeDogBegging += (0.0F - this.timeDogBegging) * 0.4F;
	}

	if (this.openMouthCounter > 0 && ++this.openMouthCounter > 30) {
		this.openMouthCounter = 0;
		this.setHorseWatchableBoolean(128, false);
	}

	this.prevMouthOpenness = this.mouthOpenness;

	if (this.getHorseWatchableBoolean(128)) {
		this.mouthOpenness += (1.0F - this.mouthOpenness) * 0.7F + 0.05F;

		if (this.mouthOpenness > 1.0F) {
			this.mouthOpenness = 1.0F;
		}
	}
	else {
		this.mouthOpenness += (0.0F - this.mouthOpenness) * 0.7F - 0.05F;

		if (this.mouthOpenness < 0.0F) {
			this.mouthOpenness = 0.0F;
		}
	}
	this.headRotationCourseOld = this.headRotationCourse;

	if (this.func_70922_bv()) {
		this.headRotationCourse += (1.0F - this.headRotationCourse) * 0.4F;
	}
	else {
		this.headRotationCourse += (0.0F - this.headRotationCourse) * 0.4F;
	}

	if (this.isWet()) {
		this.isWet = true;
		this.isShaking = false;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
	}
	else if ((this.isWet || this.isShaking) && this.isShaking) {
		if (this.timeWolfIsShaking == 0.0F) {
			this.playSound("mob.wolf.shake", this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
		}

		this.prevTimeWolfIsShaking = this.timeWolfIsShaking;
		this.timeWolfIsShaking += 0.05F;

		if (this.prevTimeWolfIsShaking >= 2.0F) {
			if (this.rand.nextInt(15) < this.talents.getLevel("fishing") * 2) {
				if (this.rand.nextInt(15) < this.talents.getLevel("flamingelemental") * 2 && this instanceof EntityRedZertum) {
					if (isServer()) {
						dropItem(Items.cooked_fish, 1);
					}
				}
				else {
					if (isServer()) {
						dropItem(Items.fish, 1);
					}
				}
			}
			this.isWet = false;
			this.isShaking = false;
			this.prevTimeWolfIsShaking = 0.0F;
			this.timeWolfIsShaking = 0.0F;
		}

		if (this.timeWolfIsShaking > 0.4F) {
			float f = (float) this.getEntityBoundingBox().minY;
			int i = (int) (MathHelper.sin((this.timeWolfIsShaking - 0.4F) * (float) Math.PI) * 7.0F);

			for (int j = 0; j < i; ++j) {
				float f1 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F;
				float f2 = (this.rand.nextFloat() * 2.0F - 1.0F) * this.width * 0.5F;
				this.worldObj.spawnParticle(EnumParticleTypes.WATER_SPLASH, this.posX + f1, f + 0.8F, this.posZ + f2, this.motionX, this.motionY, this.motionZ, new int[0]);
			}
		}
	}

	if (this.rand.nextInt(200) == 0 && this.hasEvolved()) {
		this.hiyaMaster = true;
	}

	if (((this.isBegging()) || (this.hiyaMaster)) && (!this.isWolfHappy) && this.hasEvolved()) {
		this.isWolfHappy = true;
		this.timeWolfIsHappy = 0.0F;
		this.prevTimeWolfIsHappy = 0.0F;
	}
	else {
		hiyaMaster = false;
	}
	if (this.isWolfHappy) {
		if (this.timeWolfIsHappy % 1.0F == 0.0F) {
			if (!(this instanceof EntityMetalZertum)) {
				this.openMouth();
				this.worldObj.playSoundAtEntity(this, "mob.wolf.panting", this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
			}
			else if (this instanceof EntityMetalZertum) {
				this.openMouth();
				this.worldObj.playSoundAtEntity(this, Sound.MetalZertumPant, this.getSoundVolume(), (this.rand.nextFloat() - this.rand.nextFloat()) * 0.2F + 1.0F);
			}
		}
		this.prevTimeWolfIsHappy = this.timeWolfIsHappy;
		this.timeWolfIsHappy += 0.05F;
		if (this.prevTimeWolfIsHappy >= 8.0F) {
			this.isWolfHappy = false;
			this.prevTimeWolfIsHappy = 0.0F;
			this.timeWolfIsHappy = 0.0F;
		}
	}

	if (this.isTamed()) {
		EntityPlayer player = (EntityPlayer) this.getOwner();

		if (player != null) {
			float distanceToOwner = player.getDistanceToEntity(this);

			if (distanceToOwner <= 2F && this.hasToy()) {
				if (isServer()) {
					this.entityDropItem(new ItemStack(ModItems.toy, 1, 1), 0.0F);
				}
				this.setHasToy(false);
			}
		}
	}
	TalentHelper.onUpdate(this);
}

public float getWagAngle(float f, float f1) {
	float f2 = (this.prevTimeWolfIsHappy + (this.timeWolfIsHappy - this.prevTimeWolfIsHappy) * f + f1) / 2.0F;
	if (f2 < 0.0F) {
		f2 = 0.0F;
	}
	else if (f2 > 2.0F) {
		f2 %= 2.0F;
	}
	return MathHelper.sin(f2 * (float) Math.PI * 11.0F) * 0.3F * (float) Math.PI;
}

@Override
public void moveEntityWithHeading(float strafe, float forward) {
	if (this.riddenByEntity instanceof EntityPlayer) {
		this.prevRotationYaw = this.rotationYaw = this.riddenByEntity.rotationYaw;
		this.rotationPitch = this.riddenByEntity.rotationPitch * 0.5F;
		this.setRotation(this.rotationYaw, this.rotationPitch);
		this.rotationYawHead = this.renderYawOffset = this.rotationYaw;
		strafe = ((EntityPlayer) this.riddenByEntity).moveStrafing * 0.5F;
		forward = ((EntityPlayer) this.riddenByEntity).moveForward;

		if (forward <= 0.0F) {
			forward *= 0.25F;
		}

		if (this.onGround) {
			if (forward > 0.0F) {
				float f2 = MathHelper.sin(this.rotationYaw * (float) Math.PI / 180.0F);
				float f3 = MathHelper.cos(this.rotationYaw * (float) Math.PI / 180.0F);
				this.motionX += -0.4F * f2 * 0.15F; // May change
				this.motionZ += 0.4F * f3 * 0.15F;
			}
		}

		this.stepHeight = 1.0F;
		this.jumpMovementFactor = this.getAIMoveSpeed() * 0.2F;

		if (isServer()) {
			this.setAIMoveSpeed((float) this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).getAttributeValue() / 4);
			super.moveEntityWithHeading(strafe, forward);
		}

		if (this.onGround) {
			// this.jumpPower = 0.0F;
			// this.setHorseJumping(false);
		}

		this.prevLimbSwingAmount = this.limbSwingAmount;
		double d0 = this.posX - this.prevPosX;
		double d1 = this.posZ - this.prevPosZ;
		float f4 = MathHelper.sqrt_double(d0 * d0 + d1 * d1) * 4.0F;

		if (f4 > 1.0F) {
			f4 = 1.0F;
		}

		this.limbSwingAmount += (f4 - this.limbSwingAmount) * 0.4F;
		this.limbSwing += this.limbSwingAmount;
	}
	else {
		this.stepHeight = 0.5F;
		this.jumpMovementFactor = 0.02F;
		super.moveEntityWithHeading(strafe, forward);
	}
}

@Override
public float getAIMoveSpeed() { // TODO
	double speed = this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).getAttributeValue();
	speed += TalentHelper.addToMoveSpeed(this);

	if ((!(this.getAttackTarget() instanceof EntityZertumEntity) && !(this.getAttackTarget() instanceof EntityPlayer)) || this.riddenByEntity instanceof EntityPlayer) {
		if (this.levels.getLevel() == Constants.maxLevel && this.hasEvolved()) {
			speed += 0.4D;
		}
		else if (this.hasEvolved() && this.levels.getLevel() != Constants.maxLevel) {
			speed += 0.4D;
		}
	}

	if (this.riddenByEntity instanceof EntityPlayer) {
		speed /= 4;
	}

	return (float) speed;
}

public float getAIAttackDamage() {
	double damage = this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getAttributeValue();
	damage += TalentHelper.addToAttackDamage(this);

	if ((!(this.getAttackTarget() instanceof EntityZertumEntity) && !(this.getAttackTarget() instanceof EntityPlayer))) {
		if (this.levels.getLevel() == Constants.maxLevel && this.hasEvolved()) {
			damage += 2.0D;
		}
		else if (this.hasEvolved() && this.levels.getLevel() != Constants.maxLevel) {
			damage += 2.0D;
		}
	}
	return (float) damage;
}

@Override
public void fall(float distance, float damageMultiplier) {
	if (distance > 1.0F) {
		this.playSound("game.neutral.hurt.fall.small", 0.4F, 1.0F);
	}

	int i = MathHelper.ceiling_float_int(((distance * 0.5F - 3.0F) - TalentHelper.fallProtection(this)) * damageMultiplier);

	if (i > 0 && !TalentHelper.isImmuneToFalls(this)) {
		this.attackEntityFrom(DamageSource.fall, i);

		if (this.riddenByEntity != null) {
			this.riddenByEntity.attackEntityFrom(DamageSource.fall, i);
		}

		Block block = this.worldObj.getBlockState(new BlockPos(this.posX, this.posY - 0.2D - this.prevRotationYaw, this.posZ)).getBlock();

		if (block.getMaterial() != Material.air && !this.isSilent()) {
			Block.SoundType soundtype = block.stepSound;
			this.worldObj.playSoundAtEntity(this, soundtype.getStepSound(), soundtype.getVolume() * 0.5F, soundtype.getFrequency() * 0.75F);
		}
	}
}

@SideOnly(Side.CLIENT)
public boolean isWolfWet() {
	return this.isWet;
}

@SideOnly(Side.CLIENT)
public float getShadingWhileWet(float p_70915_1_) {
	return 0.75F + (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70915_1_) / 2.0F * 0.25F;
}

@SideOnly(Side.CLIENT)
public float getShakeAngle(float p_70923_1_, float p_70923_2_) {
	float f2 = (this.prevTimeWolfIsShaking + (this.timeWolfIsShaking - this.prevTimeWolfIsShaking) * p_70923_1_ + p_70923_2_) / 1.8F;

	if (f2 < 0.0F) {
		f2 = 0.0F;
	}
	else if (f2 > 1.0F) {
		f2 = 1.0F;
	}

	return MathHelper.sin(f2 * (float) Math.PI) * MathHelper.sin(f2 * (float) Math.PI * 11.0F) * 0.15F * (float) Math.PI;
}

@SideOnly(Side.CLIENT)
public float getInterestedAngle(float partialTickTime) {
	return (this.prevTimeDogBegging + (this.timeDogBegging - this.prevTimeDogBegging) * partialTickTime) * 0.15F * (float) Math.PI;
}

@Override
public float getEyeHeight() {
	return this.height * 0.8F;
}

@Override
public int getVerticalFaceSpeed() {
	return this.isSitting() ? 20 : super.getVerticalFaceSpeed();
}

@Override
public boolean attackEntityFrom(DamageSource damageSource, float damage) {
	if (this.isEntityInvulnerable(damageSource)) {
		return false;
	}
	else {
		if (!TalentHelper.attackEntityFrom(this, damageSource, damage)) {
			return false;
		}

		Entity entity = damageSource.getEntity();
		this.aiSit.setSitting(false);

		if (entity != null && !(entity instanceof EntityPlayer) && !(entity instanceof EntityArrow)) {
			damage = (damage + 1.0F) / 2.0F;
		}

		return super.attackEntityFrom(damageSource, damage);
	}
}

@Override
public boolean attackEntityAsMob(Entity entity) { // TODO
	if (!TalentHelper.shouldDamageMob(this, entity)) {
		return false;
	}

	int damage = (int) (4 + (this.getEntityAttribute(SharedMonsterAttributes.attackDamage).getBaseValue()) / 2);
	damage = TalentHelper.attackEntityAsMob(this, entity, damage);

	if (entity instanceof EntityZombie) {
		((EntityZombie) entity).setAttackTarget(this);
	}

	return entity.attackEntityFrom(DamageSource.causeMobDamage(this), damage);
}

/**
 * Called when the mob's health reaches 0.
 */
@Override
public void onDeath(DamageSource par1DamageSource) {
	super.onDeath(par1DamageSource);

	if (par1DamageSource.getEntity() instanceof EntityPlayer) {
		EntityPlayer entityplayer = (EntityPlayer) par1DamageSource.getEntity();
		{
			entityplayer.triggerAchievement(ModAchievements.ZertKill);
			this.dropChestItems();

		}
	}
}

@Override
protected boolean isMovementBlocked() {
	return this.isPlayerSleeping() || this.ridingEntity != null || this.riddenByEntity instanceof EntityPlayer || super.isMovementBlocked();
}

@Override
public double getYOffset() {
	return this.ridingEntity instanceof EntityPlayer ? 0.5D : 0.0D;
}

@Override
public boolean isPotionApplicable(PotionEffect potionEffect) {
	if (this.getHealth() <= 1) {
		return false;
	}

	if (!TalentHelper.isPostionApplicable(this, potionEffect)) {
		return false;
	}

	return true;
}

@Override
public void setFire(int amount) {
	if (TalentHelper.setFire(this, amount)) {
		super.setFire(amount);
	}
}

public int foodValue(ItemStack stack) {
	if (stack == null || stack.getItem() == null) {
		return 0;
	}

	int foodValue = 0;

	Item item = stack.getItem();

	if (stack.getItem() != Items.rotten_flesh && item instanceof ItemFood) {
		ItemFood itemfood = (ItemFood) item;

		if (itemfood.isWolfsFavoriteMeat()) {
			foodValue = 40;
		}
	}

	foodValue = TalentHelper.changeFoodValue(this, stack, foodValue);

	return foodValue;
}

public int masterOrder() { // TODO
	int order = 0;
	EntityPlayer player = (EntityPlayer) this.getOwner();

	if (player != null) {

		float distanceAway = player.getDistanceToEntity(this);
		ItemStack itemstack = player.inventory.getCurrentItem();

		if (itemstack != null && (itemstack.getItem() instanceof ItemTool) && distanceAway <= 20F) {
			order = 1;
		}

		if (itemstack != null && ((itemstack.getItem() instanceof ItemSword) || (itemstack.getItem() instanceof ItemBow))) {
			order = 2;
		}

		if (itemstack != null && itemstack.getItem() == Items.wheat) {
			order = 3;
		}

		if (itemstack != null && itemstack.getItem() == Items.bone) {
			order = 4;
		}
	}

	return order;
}

@Override
public boolean canBreatheUnderwater() {
	return TalentHelper.canBreatheUnderwater(this);
}

@Override
public boolean canInteract(EntityPlayer player) {
	return this.isOwner(player) || this.willObeyOthers();
}

public int nourishment() {
	int amount = 0;

	if (this.getDogHunger() > 0) {
		amount = 40 + 4 * (this.effectiveLevel() + 1);

		if (isSitting() && this.talents.getLevel("rapidregen") == 5) {
			amount += 20 + 2 * (this.effectiveLevel() + 1);
		}

		if (!this.isSitting()) {
			amount *= 5 + this.talents.getLevel("rapidregen");
			amount /= 10;
		}
	}

	return amount;
}

public int effectiveLevel() { // TODO
	return (this.levels.getLevel()) / 10;
}

public String getZertumName() {
	return this.dataWatcher.getWatchableObjectString(21);
}

public void setZertumName(String var1) {
	this.dataWatcher.updateObject(21, var1);
}

public void setWillObeyOthers(boolean flag) {
	this.dataWatcher.updateObject(26, flag ? 1 : 0);
}

public boolean willObeyOthers() {
	return this.dataWatcher.getWatchableObjectInt(26) != 0;
}

public int points() {
	return this.levels.getLevel() + (this.getGrowingAge() < 0 ? 0 : 20);
}

public int spendablePoints() {
	return this.points() - this.usedPoints();
}

public int usedPoints() {
	return TalentHelper.getUsedPoints(this);
}

public int deductive(int level) {
	byte byte0 = 0;
	switch (level) {
		case 1:
			return 1;
		case 2:
			return 3;
		case 3:
			return 5;
		case 4:
			return 7;
		case 5:
			return 9;
		default:
			return 0;
	}
}

public int getDogHunger() {
	return this.dataWatcher.getWatchableObjectInt(23);
}

public void setDogHunger(int par1) {
	this.dataWatcher.updateObject(23, MathHelper.clamp_int(par1, 0, Constants.hungerTicks));
}

@Override
public boolean func_142018_a(EntityLivingBase entityToAttack, EntityLivingBase owner) {
	if (TalentHelper.canAttackEntity(this, entityToAttack)) {
		return true;
	}

	if (!(entityToAttack instanceof EntityCreeper) && !(entityToAttack instanceof EntityGhast)) {
		if (entityToAttack instanceof EntityZertumEntity) {
			EntityZertumEntity entityZertum = (EntityZertumEntity) entityToAttack;

			if (entityZertum.isTamed() && entityZertum.getOwner() == owner) {
				return false;
			}
		}

		return entityToAttack instanceof EntityPlayer && owner instanceof EntityPlayer && !((EntityPlayer) owner).canAttackPlayer((EntityPlayer) entityToAttack)
				? false
				: !(entityToAttack instanceof EntityHorse) || !((EntityHorse) entityToAttack).isTame();
	}
	else {
		return false;
	}
}

@Override
public boolean canAttackClass(Class p_70686_1_) {
	if (TalentHelper.canAttackClass(this, p_70686_1_)) {
		return true;
	}

	return super.canAttackClass(p_70686_1_);
}

public void setHasToy(boolean hasBone) {
	this.hasToy = hasBone;
}

public boolean hasToy() {
	return this.hasToy;
}

/**
 * Gets the pitch of living sounds in living entities.
 */
@Override
public float getPitch() {
	if (!this.isChild()) {
		return super.getSoundPitch();
	}
	else {
		return super.getSoundPitch() * 1;
	}
}

@Override
@SideOnly(Side.CLIENT)
public void handleHealthUpdate(byte p_70103_1_) {
	if (p_70103_1_ ==  {
		this.isShaking = true;
		this.timeWolfIsShaking = 0.0F;
		this.prevTimeWolfIsShaking = 0.0F;
	}
	else {
		super.handleHealthUpdate(p_70103_1_);
	}
}

/**
 * Checks if the parameter is an item which this animal can be fed to breed
 * it (wheat, carrots or seeds depending on the animal type)
 */
@Override
public boolean isBreedingItem(ItemStack itemstack) {
	return itemstack == null ? false : itemstack.getItem() == ModItems.dogTreat;
}

@Override
public int getMaxSpawnedInChunk() {
	return 8;
}

public boolean isAngry() {
	return (this.dataWatcher.getWatchableObjectByte(INDEX_TAME) & 2) != 0;
}

public void setAngry(boolean p_70916_1_) {
	byte b0 = this.dataWatcher.getWatchableObjectByte(INDEX_TAME);

	if (p_70916_1_) {
		this.dataWatcher.updateObject(INDEX_TAME, Byte.valueOf((byte) (b0 | 2)));
	}
	else {
		this.dataWatcher.updateObject(INDEX_TAME, Byte.valueOf((byte) (b0 & -3)));
	}
}

public EnumDyeColor getCollarColor() {
	return EnumDyeColor.byDyeDamage(this.dataWatcher.getWatchableObjectByte(INDEX_COLLAR) & 15);
}

public void setCollarColor(EnumDyeColor collarcolor) {
	this.dataWatcher.updateObject(INDEX_COLLAR, Byte.valueOf((byte) (collarcolor.getDyeDamage() & 15)));
}

public boolean isSaddled() {
	return (this.dataWatcher.getWatchableObjectByte(INDEX_SADDLE) & 1) != 0;
}

public void setSaddled(boolean p_70900_1_) {
	if (p_70900_1_) {
		this.dataWatcher.updateObject(INDEX_SADDLE, Byte.valueOf((byte) 1));
	}
	else {
		this.dataWatcher.updateObject(INDEX_SADDLE, Byte.valueOf((byte) 0));
	}
}

private boolean getHorseWatchableBoolean(int p_110233_1_) {
	return (this.dataWatcher.getWatchableObjectInt(INDEX_MOUTH) & p_110233_1_) != 0;
}

private void setHorseWatchableBoolean(int p_110208_1_, boolean p_110208_2_) {
	int j = this.dataWatcher.getWatchableObjectInt(INDEX_MOUTH);

	if (p_110208_2_) {
		this.dataWatcher.updateObject(INDEX_MOUTH, Integer.valueOf(j | p_110208_1_));
	}
	else {
		this.dataWatcher.updateObject(INDEX_MOUTH, Integer.valueOf(j & ~p_110208_1_));
	}
}

@SideOnly(Side.CLIENT)
public float func_110201_q(float p_110201_1_) {
	return this.prevMouthOpenness + (this.mouthOpenness - this.prevMouthOpenness) * p_110201_1_;
}

public void openMouth() {
	if (isServer()) {
		this.openMouthCounter = 1;
		this.setHorseWatchableBoolean(128, true);
	}
}

/**
 * Determines if an entity can be despawned, used on idle far away entities
 */
@Override
protected boolean canDespawn() {
	return !this.isTamed() && this.ticksExisted > 2400;
}

@Override
public boolean allowLeashing() {
	return !this.isAngry() && super.allowLeashing();
}

public void setBegging(boolean flag) {
	this.dataWatcher.updateObject(INDEX_BEG, Byte.valueOf((byte) (flag ? 1 : 0)));
}

public boolean isBegging() {
	return this.dataWatcher.getWatchableObjectByte(INDEX_BEG) == 1;
}

public boolean hasEvolved() // TODO
{
	return (this.dataWatcher.getWatchableObjectByte(INDEX_EVOLVE) & 1) != 0;
}

public void evolveBoolean(boolean p_70900_1_) {
	if (p_70900_1_) {
		this.dataWatcher.updateObject(INDEX_EVOLVE, Byte.valueOf((byte) 1));
	}
	else {
		this.dataWatcher.updateObject(INDEX_EVOLVE, Byte.valueOf((byte) 0));
	}
}

public void setEvolved(boolean p_70900_1_) {
	this.evolveBoolean(p_70900_1_);
	if (p_70900_1_) {
		if (!this.isChild() && !this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.tamedHealth() + this.effectiveLevel());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.tamedDamage());
		}
		else if (!this.isChild() && this.hasEvolved()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.evoHealth());
		}
		else {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
	else {
		if (this.isChild()) {
			this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(this.babyHealth());
			this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(this.babyDamage());
		}
	}
}

public void evolveOnClient(EntityPlayer player) {
	this.setEvolved(true);
	this.worldObj.playBroadcastSound(1013, new BlockPos(this), 0);
	player.addChatMessage(ChatHelper.getChatComponent(EnumChatFormatting.GREEN + this.getZertumName() + " has been evolved!"));
}

public void evolveOnServer(EntityZertumEntity entity, EntityPlayer player) {
	entity.setEvolved(true);
	entity.worldObj.playBroadcastSound(1013, new BlockPos(entity), 0);
	player.addChatMessage(ChatHelper.getChatComponent(EnumChatFormatting.GREEN + entity.getZertumName() + " has been evolved!"));
}
}

First, you should make the entity save and load the UUID of the owner.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

How do I do so exactly? There's already something that Minecraft has that relates with the UUID

Ernio already told you how to do that..

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Link to comment
Share on other sites

I'm talking about saving and loading the UUID

We've already explained that several times... please read every response again. Everything you need has been explained, both here and in the vanilla code.

 

And why are you still fixated on the UUID? That's taken care of by EntityTameable, aren't you trying to save / load a String for the nickname?

Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

 Share




  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • Hi, in 1.18 when saving your TE/BEs you should be using saveAdditional instead of save like what Vanilla does, since the latter is not always called and is only being used to store essential data... It can be a huge problem when porting your older mod to the latest version as all TE/BEs will lose their data.   Took me a while to find the problem and I think it may be helpful for those who faces similar issues.  
    • Check the certificate on your phone.
    • Hello There! In today's episode of Hunger Games Logan and I are on that map where basically one wrong step and you are in the void but we pretty much sweep the entire game pretty swiftly we even make it to an area at spawn from up until this moment we didn't even know about! But as you can tell by the title something hilarious happens at the end! There are some pretty funny moments in this video that I know you guys are gonna love! I hope you all enjoy this video and if you did please consider subscribing and liking the video while you are at it!  
    • container@pterodactyl~ Server marked as offline... [Pterodactyl Daemon]: Updating process configuration files... [Pterodactyl Daemon]: Ensuring file permissions are set correctly, this could take a few seconds... container@pterodactyl~ Server marked as starting... [Pterodactyl Daemon]: Pulling Docker container image, this could take a few minutes to complete... [Pterodactyl Daemon]: Finished pulling Docker container image container@pterodactyl~ java -version openjdk version "1.8.0_312" OpenJDK Runtime Environment (build 1.8.0_312-b07) OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode) container@pterodactyl~ java -Xms128M -Xmx10023M -Dterminal.jline=false -Dterminal.ansi=true -jar forge-1.16.5-36.2.20.jar [10:33:59] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--gameDir, ., --launchTarget, fmlserver, --fml.forgeVersion, 36.2.20, --fml.mcpVersion, 20210115.111550, --fml.mcVersion, 1.16.5, --fml.forgeGroup, net.minecraftforge] [10:33:59] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 8.0.9+86+master.3cf110c starting: java version 1.8.0_312 by Oracle Corporation [10:33:59] [main/INFO] [ne.mi.fm.lo.FixSSL/CORE]: Added Lets Encrypt root certificates as additional trust [10:33:59] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.4 Source=file:/home/container/libraries/org/spongepowered/mixin/0.8.4/mixin-0.8.4.jar Service=ModLauncher Env=SERVER [10:33:59] [main/WARN] [ne.mi.fm.lo.FMLConfig/CORE]: Configuration file /home/container/config/fml.toml is not correct. Correcting [10:33:59] [main/WARN] [ne.mi.fm.lo.FMLConfig/CORE]: Incorrect key [defaultConfigPath] was corrected from null to defaultconfigs [10:34:01] [main/INFO] [STDERR/]: [org.antlr.v4.runtime.ConsoleErrorListener:syntaxError:38]: line 1:0 token recognition error at: '~' [10:34:02] [main/ERROR] [mixin/]: Mixin config fancymenu.general.mixin.json does not specify "minVersion" property [10:34:02] [main/INFO] [mixin/]: Successfully loaded Mixin Connector [me.treyruffy.betterf3.betterf3forge.BetterF3MixinConnector] [10:34:02] [main/INFO] [mixin/]: Successfully loaded Mixin Connector [vazkii.botania.common.MixinConnector] [10:34:02] [main/INFO] [mixin/]: Successfully loaded Mixin Connector [vazkii.patchouli.common.MixinConnector] [10:34:02] [main/INFO] [mixin/]: Successfully loaded Mixin Connector [com.meteor.extrabotany.common.MixinConnector] [10:34:02] [main/INFO] [BetterF3/]: Invoking Mixin Connector [10:34:02] [main/INFO] [cp.mo.mo.LaunchServiceHandler/MODLAUNCHER]: Launching target 'fmlserver' with arguments [--gameDir, .] [10:34:02] [main/WARN] [mixin/]: Reference map 'outer_end.refmap.json' for jellyfishing.mixins.json could not be read. If this is a development environment you can ignore this message [10:34:02] [main/WARN] [mixin/]: Reference map 'classes.refmap.json' for classes.mixins.json could not be read. If this is a development environment you can ignore this message [10:34:02] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching LivingEntity#attackEntityFrom [10:34:02] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching LivingEntity#blockUsingShield [10:34:02] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching LivingEntity#applyPotionDamageCalculations [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching RepairContainer#updateRepairOutput [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Successfully removed the anvil level cap. [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching RepairContainer#updateRepairOutput [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Successfully allowed nbt-unbreakable items in the anvil. [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching net/minecraft/inventory/container/RepairContainer [10:34:03] [main/WARN] [mixin/]: Error loading class: net/minecraft/client/renderer/entity/layers/CapeLayer (java.lang.ClassNotFoundException: null) [10:34:03] [main/WARN] [mixin/]: @Mixin target net.minecraft.client.renderer.entity.layers.CapeLayer was not found origins.mixins.json:CapeFeatureRendererMixin [10:34:03] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching ItemStack#onItemUse [10:34:03] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching DataPackRegistries#<init> [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching Item#getItemEnchantability [10:34:03] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching LootTableManager#apply [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching EnchantmentHelper#getEnchantmentModifierDamage [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching EnchantmentHelper#getModifierForCreature [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching EnchantmentHelper#applyThornEnchantments [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching EnchantmentHelper#applyArthropodEnchantments [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching buildEnchantmentList for the Enchantability affix. [10:34:03] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching EnchantmentHelper#getEnchantmentDatas [10:34:04] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching TemptGoal#isTempting [10:34:04] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching Item#getItemEnchantability [10:34:05] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching LivingEntity#attackEntityFrom [10:34:05] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching LivingEntity#blockUsingShield [10:34:05] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching LivingEntity#applyPotionDamageCalculations [10:34:06] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching SharedMonsterAttributes#readAttributeModifier [10:34:06] [main/INFO] [FerriteCore - class definer/]: Using Java 8 class definer [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching SharedMonsterAttributes#readAttributeModifier [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching RepairContainer#updateRepairOutput [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Successfully removed the anvil level cap. [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching RepairContainer#updateRepairOutput [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Successfully allowed nbt-unbreakable items in the anvil. [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching net/minecraft/inventory/container/RepairContainer [10:34:07] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching CampfireTileEntity#findMatchingRecipe [10:34:08] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching TemptGoal#isTempting [10:34:09] [main/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching ItemStack#onItemUse [10:34:10] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching ItemArrow#isInfinite [10:34:11] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching net/minecraft/item/EnchantedBookItem [10:34:11] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching CrossbowItem#onItemRightClick [10:34:11] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching CrossbowItem#fireProjectile [10:34:11] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching FishingBobberEntity#catchingFish [10:34:11] [main/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching net/minecraft/loot/functions/EnchantRandomly [10:34:12] [main/INFO] [ne.mi.re.GameData/]: Potentially Dangerous alternative prefix `citadel` for name `debug`, expected `minecraft`. This could be a intended override, but in most cases indicates a broken mod. [10:34:12] [main/INFO] [ne.mi.re.GameData/]: Potentially Dangerous alternative prefix `citadel` for name `citadel_book`, expected `minecraft`. This could be a intended override, but in most cases indicates a broken mod. [10:34:12] [main/INFO] [ne.mi.re.GameData/]: Potentially Dangerous alternative prefix `citadel` for name `effect_item`, expected `minecraft`. This could be a intended override, but in most cases indicates a broken mod. [10:34:12] [main/INFO] [ne.mi.re.GameData/]: Potentially Dangerous alternative prefix `citadel` for name `fancy_item`, expected `minecraft`. This could be a intended override, but in most cases indicates a broken mod. [10:34:12] [modloading-worker-3/WARN] [ReAuth/]: ######################################### [10:34:12] [modloading-worker-3/WARN] [ReAuth/]: #      ReAuth was loaded on Server      # [10:34:12] [modloading-worker-3/WARN] [ReAuth/]: # Consider removing it to save some RAM # [10:34:12] [modloading-worker-3/WARN] [ReAuth/]: ######################################### [10:34:12] [modloading-worker-1/INFO] [co.ne.in.InfernalExpansion/]: Infernal Expansion: Blocks Registered! [10:34:12] [modloading-worker-2/FATAL] [ne.mi.fm.lo.RuntimeDistCleaner/DISTXFORM]: Attempted to load class net/minecraft/client/gui/widget/Widget for invalid dist DEDICATED_SERVER [10:34:12] [modloading-worker-2/ERROR] [ne.mi.fm.ja.FMLModContainer/LOADING]: Failed to register automatic subscribers. ModID: hiddenrecipebook, class com.natamus.hiddenrecipebook.Main java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/widget/Widget for invalid dist DEDICATED_SERVER         at net.minecraftforge.fml.loading.RuntimeDistCleaner.processClassWithFlags(RuntimeDistCleaner.java:71) ~[forge-1.16.5-36.2.20.jar:36.2] {}         at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {re:classloading}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {re:classloading}         at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_312] {}         at java.lang.Class.forName0(Native Method) ~[?:1.8.0_312] {}         at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.AutomaticEventSubscriber.lambda$inject$6(AutomaticEventSubscriber.java:75) ~[forge:?] {re:classloading}         at java.util.ArrayList.forEach(ArrayList.java:1259) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.AutomaticEventSubscriber.inject(AutomaticEventSubscriber.java:62) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:91) ~[forge:36.2] {re:classloading}         at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading}         at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) [?:1.8.0_312] {}         at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) [?:1.8.0_312] {}         at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) [?:1.8.0_312] {}         at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) [?:1.8.0_312] {}         at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) [?:1.8.0_312] {}         at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175) [?:1.8.0_312] {} [10:34:12] [modloading-worker-1/INFO] [co.ne.in.InfernalExpansion/]: Infernal Expansion: Items Registered! [10:34:12] [modloading-worker-1/INFO] [co.ne.in.InfernalExpansion/]: Infernal Expansion: Entity Types Registered! [10:34:12] [modloading-worker-1/INFO] [co.ne.in.InfernalExpansion/]: Infernal Expansion: Painting Types Registered! [10:34:12] [modloading-worker-1/INFO] [co.ne.in.InfernalExpansion/]: Infernal Expansion: Tile Entity Types Registered! [10:34:13] [modloading-worker-2/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching DataPackRegistries#<init> [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/jeresources.toml is not correct. Correcting [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key itemsPerColumn was corrected from null to its default, 4.  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key itemsPerRow was corrected from null to its default, 4.  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key diyData was corrected from null to its default, true.  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key showDevData was corrected from null to its default, false.  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key enchantsBlacklist was corrected from null to its default, [flimflam, soulBound].  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key hiddenTabs was corrected from null to its default, [].  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key dimensionsBlacklist was corrected from null to its default, [-11].  [10:34:13] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key disableLootManagerReloading was corrected from null to its default, false.  [10:34:13] [modloading-worker-2/INFO] [STDOUT/]: [de.keksuccino.konkrete.Konkrete:<init>:53]: ## WARNING ## 'Konkrete' is a client mod and has no effect when loaded on a server! [10:34:13] [modloading-worker-1/INFO] [ne.mi.co.Co.placebo/COREMODLOG]: Patching LootTableManager#apply [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Setting up config paths... [10:34:13] [modloading-worker-1/INFO] [mo.al.si.SimpleCoreLib/]: Hello from SimpleCoreLib! [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Bee Registry Initialized... [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Trait Registry Initialized... [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Bee Registration Enabled... [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/resourcefulbees/common.toml is not correct. Correcting [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.generateDefaults was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.generateBiomeDictionaries was corrected from null to its default, false.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.useForgeBiomeDictionaries was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.enableEasterEggBees was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.enableCustomPatreonBees was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.smokerDurability was corrected from null to its default, 1000.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.beepediaHideLocked was corrected from null to its default, false.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.honeyProcessTime was corrected from null to its default, 5.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.congealerTimeMultiplier was corrected from null to its default, 4.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key General Options.maxHoneyPipeFlow was corrected from null to its default, 250.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Recipe Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Recipe Options.centrifugeRecipes was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Recipe Options.honeycombBlockRecipes was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.globalCentrifugeRecipeTime was corrected from null to its default, 200.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.multiblockRecipeTimeReduction was corrected from null to its default, 150.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.maxCentrifugeRf was corrected from null to its default, 10000.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.centrifugeRfPerTick was corrected from null to its default, 30.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.mechanicalCentrifugePlayerExhaustion was corrected from null to its default, 0.1.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.multiblockRecipesOnly was corrected from null to its default, false.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Centrifuge Options.maxCentrifugeReceiveRate was corrected from null to its default, 1.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.honeyFillAmount was corrected from null to its default, 10.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.honeyDrainAmount was corrected from null to its default, 5.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.energyFillAmount was corrected from null to its default, 125.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.energyTransferAmount was corrected from null to its default, 100.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.maxEnergyCapacity was corrected from null to its default, 100000.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Generator Options.maxTankCapacity was corrected from null to its default, 10000.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconCalmingValue was corrected from null to its default, 2.0.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconWaterBreathingValue was corrected from null to its default, 1.5.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconFireResistanceValue was corrected from null to its default, 2.0.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconRegenerationValue was corrected from null to its default, 2.5.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconRangeMultiplier was corrected from null to its default, 0.33.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconBaseDrain was corrected from null to its default, 1.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Ender Beecon Options.beeconPullAmount was corrected from null to its default, 250.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Beehive Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Beehive Options.hiveMaxBees was corrected from null to its default, 4.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Beehive Options.hiveMaxCombs was corrected from null to its default, 5.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Beehive Options.allowShears was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierOneApiaryOutput was corrected from null to its default, COMB.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierOneApiaryQuantity was corrected from null to its default, 8.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierTwoApiaryOutput was corrected from null to its default, COMB.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierTwoApiaryQuantity was corrected from null to its default, 16.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierThreeApiaryOutput was corrected from null to its default, BLOCK.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierThreeApiaryQuantity was corrected from null to its default, 4.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierFourApiaryOutput was corrected from null to its default, BLOCK.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.tierFourApiaryQuantity was corrected from null to its default, 8.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.apiaryMaxBees was corrected from null to its default, 9.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Apiary Options.apiaryMaxBreedTime was corrected from null to its default, 2400.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options.generateBeeNests was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options.beesMoreCommonInFlowerForests was corrected from null to its default, 4.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options.overworld_nest_generation_chance was corrected from null to its default, 48.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options.nether_nest_generation_chance was corrected from null to its default, 8.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Spawning Options.end_nest_generation_chance was corrected from null to its default, 32.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.global_bee_size_modifier was corrected from null to its default, 1.0.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.global_child_size_modifier was corrected from null to its default, 1.0.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.beeDiesFromSting was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.beesInflictPoison was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.beeDiesInVoid was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.use_experimental_manual_mode was corrected from null to its default, false.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Bee Options.beeAuraRange was corrected from null to its default, 10.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honeycomb Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honeycomb Options.honeycombHunger was corrected from null to its default, 1.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honeycomb Options.honeycombSaturation was corrected from null to its default, 0.6.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Options.generateHoneyFluids was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Options.generateHoneyBlocks was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Honey Options.honeyBlockRecipes was corrected from null to its default, true.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mod Options was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:13] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mod Options.bypassPerformantCheck was corrected from null to its default, false.  [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Building Biome Dictionary... [10:34:13] [modloading-worker-3/INFO] [io.gi.ap.or.Origins/]: Origins 0.7.3.1 is initializing. Have fun! [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Registering Custom Bees... [10:34:13] [modloading-worker-0/INFO] [co.re.re.ResourcefulBees/]: Registering Custom Honeys.. [10:34:13] [modloading-worker-2/INFO] [betterstrongholds/]: Creating directory for additional Better Strongholds configuration at /home/container/config/betterstrongholds/forge-1_16 [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading config. [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/forestcraft.toml is not correct. Correcting [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.beehive was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.crystal_biome was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.cicadas was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dogs was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.blueberry was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.sharp_leaves was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.thunder_birds was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.terror_birds was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.deers was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.deep_rock was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.night_watchers was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.gem_golems was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.spore_mush was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.spore_zombie was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.snowberry was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.fossil was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.bones was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.light_bulbs was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dandelion_hills was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dandelions was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dandelion_fields was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.iguana_king_nests was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.crocus_flowers was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.krocks was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.bakudans was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.sea_sponges was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.air_suckers was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.niter_ores was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.sulfur_ores was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.sky_fragments was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dirt_piles was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.mesa_piles was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.crystal_biome_rarity was corrected from null to its default, 30.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.cicadas_rarity was corrected from null to its default, 10.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.desert_bones_rarity was corrected from null to its default, 50.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.fossil_rarity was corrected from null to its default, 50.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dogs_lair_min was corrected from null to its default, 4.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.dogs_lair_max was corrected from null to its default, 8.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.sky_fragment_rarity was corrected from null to its default, 5.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.spore_mush_rarity was corrected from null to its default, 4.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key generation.night_watchers_rarity was corrected from null to its default, 5.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key mechanics was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key mechanics.flint_and_steel was corrected from null to its default, false.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key mechanics.default_fishing was corrected from null to its default, false.  [10:34:14] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key mechanics.need_bait was corrected from null to its default, true.  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading sounds. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading effects. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading items. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading fluids. [10:34:14] [modloading-worker-3/INFO] [KubeJS/]: Looking for KubeJS plugins... [10:34:14] [modloading-worker-3/INFO] [KubeJS/]: Found kubejs plugin [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading blocks. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading tile entities. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading entities. [10:34:14] [modloading-worker-3/INFO] [KubeJS/]: Done in 0 s [10:34:14] [modloading-worker-3/INFO] [KubeJS/]: Loaded common.properties [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/undefeatables-common.toml is not correct. Correcting [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.healthPerTier was corrected from null to its default, 150.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.attackDamagePerTier was corrected from null to its default, 3.5.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.armorPerTier was corrected from null to its default, 7.5.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.armorToughnessPerTier was corrected from null to its default, 5.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.spawningChance was corrected from null to its default, 1.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key common.spawningChanceIn was corrected from null to its default, 250.  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading structures. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading features. [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/waystones-server.toml is not correct. Correcting [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.baseXpCost was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.baseXpCost.inverseXpCost was corrected from null to its default, false.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.baseXpCost.blocksPerXPLevel was corrected from null to its default, 1000.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.baseXpCost.minimumXpCost was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.baseXpCost.maximumXpCost was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.waystoneToWaystone was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.waystoneToWaystone.waystoneXpCostMultiplier was corrected from null to its default, 1.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.waystoneToWaystone.sharestoneXpCostMultiplier was corrected from null to its default, 1.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.waystoneToWaystone.portstoneXpCostMultiplier was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpPlate was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpPlate.warpPlateXpCostMultiplier was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpPlate.warpPlateUseTime was corrected from null to its default, 20.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.inventoryButton was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.inventoryButton.inventoryButton was corrected from null to its default, NONE.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.inventoryButton.inventoryButtonXpCostMultiplier was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.inventoryButton.inventoryButtonCooldown was corrected from null to its default, 300.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.globalWaystones was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.globalWaystones.globalWaystonesXpCostMultiplier was corrected from null to its default, 1.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.globalWaystones.globalWaystoneCooldownMultiplier was corrected from null to its default, 1.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.globalWaystones.globalWaystoneRequiresCreative was corrected from null to its default, true.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpStone was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpStone.warpStoneXpCostMultiplier was corrected from null to its default, 0.0.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpStone.warpStoneCooldown was corrected from null to its default, 300.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.warpStone.warpStoneUseTime was corrected from null to its default, 32.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.scrolls was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.scrolls.scrollUseTime was corrected from null to its default, 32.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.dimensionalWarp was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.dimensionalWarp.dimensionalWarp was corrected from null to its default, ALLOW.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.dimensionalWarp.dimensionalWarpXpCost was corrected from null to its default, 3.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.leashedMobs was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.leashedMobs.transportLeashed was corrected from null to its default, true.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.leashedMobs.transportLeashedDimensional was corrected from null to its default, true.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.leashedMobs.costPerLeashed was corrected from null to its default, 1.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.leashedMobs.leashedBlacklist was corrected from null to its default, [minecraft:wither].  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.restrictions was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.restrictions.restrictRenameToOwner was corrected from null to its default, false.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.restrictions.restrictToCreative was corrected from null to its default, false.  [10:34:14] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key server.restrictions.generatedWaystonesUnbreakable was corrected from null to its default, false.  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading potions. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading containers. [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/invtweaks-client.toml is not correct. Correcting [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key sorting was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Loading particles. [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key sorting.category was corrected from null to its default, [SimpleCommentedConfig:{name=sword, spec=[/instanceof:net.minecraft.item.SwordItem]}, SimpleCommentedConfig:{name=axe, spec=[/instanceof:net.minecraft.item.AxeItem]}, SimpleCommentedConfig:{name=pickaxe, spec=[/instanceof:net.minecraft.item.PickaxeItem]}, SimpleCommentedConfig:{name=shovel, spec=[/instanceof:net.minecraft.item.ShovelItem]}, SimpleCommentedConfig:{name=acceptableFood, spec=[/instanceof:net.minecraft.item.Food; !minecraft:rotten_flesh; !minecraft:spider_eye; !minecraft:poisonous_potato; !minecraft:pufferfish]}, SimpleCommentedConfig:{name=torch, spec=[minecraft:torch]}, SimpleCommentedConfig:{name=cheapBlocks, spec=[/tag:minecraft:cobblestone, /tag:minecraft:dirt]}, SimpleCommentedConfig:{name=blocks, spec=[/instanceof:net.minecraft.item.BlockItem]}].  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key sorting.rules was corrected from null to its default, [D /LOCKED, A1-C9 /OTHER].  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key sorting.containerOverrides was corrected from null to its default, [SimpleCommentedConfig:{containerClass=com.tfar.craftingstation.CraftingStationContainer, sortRange=}, SimpleCommentedConfig:{containerClass=tfar.dankstorage.container.DankContainers, sortRange=}, SimpleCommentedConfig:{containerClass=mcjty.rftoolsutility.modules.crafter.blocks.CrafterContainer, sortRange=}, SimpleCommentedConfig:{containerClass=appeng.container.implementations.InterfaceTerminalContainer, sortRange=}, SimpleCommentedConfig:{containerClass=appeng.container.implementations.CraftingTermContainer, sortRange=}, SimpleCommentedConfig:{containerClass=appeng.container.implementations.PatternTermContainer, sortRange=}, SimpleCommentedConfig:{containerClass=appeng.container.implementations.WirelessTermContainer, sortRange=}].  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup biome generator. [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key tweaks was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key tweaks.autoRefill was corrected from null to its default, true.  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key tweaks.quickView was corrected from null to its default, true.  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key tweaks.enableSort was corrected from null to its default, 3.  [10:34:14] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key tweaks.enableButtons was corrected from null to its default, 3.  [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup item events. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup spawn entity events. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup entity events. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup food events. [10:34:14] [modloading-worker-2/INFO] [STDOUT/]: [org.astemir.forestcraft.ForestCraft:log:111]: Setup main events. [10:34:14] [modloading-worker-2/INFO] [Dungeon Crawl/]: Here we go! Launching Dungeon Crawl 2.2.4... [10:34:14] [modloading-worker-2/INFO] [Dungeon Crawl/]: net.minecraft.world.gen.feature.StructureFeature@2fdf1b58 [10:34:14] [modloading-worker-2/INFO] [Dungeon Crawl/]: dungeoncrawl:dungeon [10:34:15] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/defaultconfigs/travel_anchors-server.toml is not correct. Correcting [10:34:15] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key travel-anchor-settings was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:15] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key travel-anchor-settings.maxAngle was corrected from null to its default, 30.0.  [10:34:15] [modloading-worker-1/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key travel-anchor-settings.maxDistance was corrected from null to its default, 64.0.  [10:34:15] [modloading-worker-1/ERROR] [toastcontrol/]: Running on a dedicated server, disabling mod. [10:34:15] [modloading-worker-0/INFO] [ne.mi.co.ForgeMod/FORGEMOD]: Forge mod loading, version 36.2.20, for MC 1.16.5 with MCP 20210115.111550 [10:34:15] [modloading-worker-0/INFO] [ne.mi.co.MinecraftForge/FORGE]: MinecraftForge v36.2.20 Initialized [10:34:15] [modloading-worker-3/INFO] [KubeJS Startup/]: Hello, World! (You will only see this line once in console, during startup) [10:34:15] [modloading-worker-3/INFO] [KubeJS Startup/]: Loaded script startup_scripts:script.js in 0.222 s [10:34:15] [modloading-worker-3/INFO] [KubeJS Startup/]: Loaded 1/1 KubeJS startup scripts in 0.588 s [10:34:15] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:t_corridor [10:34:15] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@630bff54 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:four_way_corridor_loot [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@4e6524b9 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:four_way_corridor [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@78d0e22e [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:ore_hold_1 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@65d6320a [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:straight_corridor [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@26ab80f [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:spiral_staircase [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@3a7ee3ea [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:t3_entrance [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@7cf58c12 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:mini_dungeon/library [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@7958fe4b [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:mini_dungeon/armoury [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@55a472c4 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:mini_dungeon/farm [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@755a5b12 [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:mini_dungeon/portal_nether [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@23faa7eb [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:217]: Loading schematic: bloodmagic:mini_dungeon/crypt [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:219]: Resulting dungeon: wayoftime.bloodmagic.structures.DungeonRoom@86c53ff [10:34:16] [modloading-worker-0/INFO] [STDOUT/]: [wayoftime.bloodmagic.structures.DungeonRoomLoader:loadDungeons:223]: # schematics: 12 [10:34:16] [modloading-worker-0/INFO] [io.gi.no.li.LibX/]: Config 'mythicbotany:config' does not exist. Creating default. [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:not' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:and' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:or' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:gear_type' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:material_count' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:material_ratio' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered condition serializer 'silentgear:primary_material' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:simple_trait' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:damage_type_trait' [10:34:16] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:durability_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:enchantment_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:nbt_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:potion_effect_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:stat_modifier_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:attribute_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:block_placer' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:block_filler' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:synergy' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:target_effect' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:bonus_drops' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:cancel_effects' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:self_repair' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgear:stellar' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'iafgear:dragon_damage_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'iafgear:phantasmal_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'iafgear:myrmex_damage_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'iafgear:defense_trait' [10:34:17] [modloading-worker-2/INFO] [Silent Gear/TraitManager]: Registered serializer 'iafgear:tide_guardian_trait' [10:34:17] [modloading-worker-2/INFO] [STDOUT/]: [yalter.mousetweaks.Logger:Log:6]: [Mouse Tweaks] Disabled because not running on the client. [10:34:17] [modloading-worker-3/INFO] [ctiers/]: Loading config: /home/container/config/ctiers-client.toml [10:34:17] [modloading-worker-3/INFO] [ctiers/]: Built config: /home/container/config/ctiers-client.toml [10:34:17] [modloading-worker-3/INFO] [ctiers/]: Loaded config: /home/container/config/ctiers-client.toml [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/ctiers-client.toml is not correct. Correcting [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3Mutliplier was corrected from null to its default, 2.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4Mutliplier was corrected from null to its default, 4.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5Mutliplier was corrected from null to its default, 8.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTierCreativeMutliplier was corrected from null to its default, 100.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3RecipeTime was corrected from null to its default, 0.333.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4RecipeTime was corrected from null to its default, 0.25.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5RecipeTime was corrected from null to its default, 0.125.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTierCreativeRecipeTime was corrected from null to its default, -1.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3RFPerBlockMutliplier was corrected from null to its default, 2.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4RFPerBlockMutliplier was corrected from null to its default, 4.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5RFPerBlockMutliplier was corrected from null to its default, 8.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3CapacityMutliplier was corrected from null to its default, 20.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4CapacityMutliplier was corrected from null to its default, 40.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5CapacityMutliplier was corrected from null to its default, 80.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3MaxTankCapacity was corrected from null to its default, 100000.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4MaxTankCapacity was corrected from null to its default, 200000.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5MaxTankCapacity was corrected from null to its default, 400000.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTierCreativeMaxTankCapacity was corrected from null to its default, 5000000.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier3ItemMaxStackSize was corrected from null to its default, 256.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier4ItemMaxStackSize was corrected from null to its default, 512.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTier5ItemMaxStackSize was corrected from null to its default, 1024.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTierCreativeItemMaxStackSize was corrected from null to its default, 16384.  [10:34:17] [modloading-worker-3/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key centrifugeTierCreativeSize was corrected from null to its default, true.  [10:34:17] [modloading-worker-1/INFO] [co.si.cr.re.re.AbstractRegistrate/]: Detected new forge version, registering events reflectively. [10:34:18] [modloading-worker-3/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching vazkii/quark/content/tools/module/AncientTomesModule [10:34:18] [modloading-worker-3/INFO] [ne.mi.co.Co.apotheosis/COREMODLOG]: Patching vazkii/quark/content/tools/item/AncientTomeItem [10:34:18] [modloading-worker-0/INFO] [io.gi.dr.to.TopAddons/]: Registered addon Forge [10:34:18] [modloading-worker-0/INFO] [io.gi.dr.to.TopAddons/]: Registered addon Vanilla [10:34:18] [modloading-worker-0/INFO] [io.gi.dr.to.TopAddons/]: Registered addon Storage Drawers [10:34:18] [modloading-worker-0/INFO] [io.gi.dr.to.TopAddons/]: Registered addon Bloodmagic [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: ****************************************************************************************** [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: WorldEdit CUI Forge Edition 3 version 3.0.9 for Minecraft 1.16.5 [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: Built with forge 36.0.13 [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: Environment : [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:                OS :Linux (amd64)  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:                Java: 1.8.0_312 [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:                Language :null_en [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: ****************************************************************************************** [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]:  [10:34:18] [modloading-worker-0/INFO] [worldeditcuife3/]: WorldEdit CUI Forge Edition 3 is loading ... [10:34:18] [modloading-worker-0/INFO] [STDOUT/]: [de.keksuccino.fancymenu.FancyMenu:<init>:94]: ## WARNING ## 'FancyMenu' is a client mod and has no effect when loaded on a server! [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/magma_monsters-common.toml is not correct. Correcting [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_ow_spawns was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_min_spawn_size_ow was corrected from null to its default, 1.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_max_spawn_size_ow was corrected from null to its default, 3.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_chance_ow was corrected from null to its default, 20.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_nether_spawns was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_min_spawn_size_n was corrected from null to its default, 1.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_max_spawn_size_n was corrected from null to its default, 3.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_chance_n was corrected from null to its default, 20.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_max_y was corrected from null to its default, 63.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_burns_blocks was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_health was corrected from null to its default, 25.0.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_attack_damage was corrected from null to its default, 4.0.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_slowness_effect was corrected from null to its default, 5.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Settings.magma_monster_dimensions was corrected from null to its default, [].  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_ow_spawns was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_min_spawn_size_ow was corrected from null to its default, 1.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_max_spawn_size_ow was corrected from null to its default, 3.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_chance_ow was corrected from null to its default, 20.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_nether_spawns was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_min_spawn_size_n was corrected from null to its default, 1.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_max_spawn_size_n was corrected from null to its default, 3.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_chance_n was corrected from null to its default, 20.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_max_y was corrected from null to its default, 63.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_burns_blocks was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_health was corrected from null to its default, 15.0.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_attack_damage was corrected from null to its default, 2.0.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_slowness_effect was corrected from null to its default, 5.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Magma Monster Grunt Settings.magma_monster_grunt_dimensions was corrected from null to its default, [].  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/appleskin-client.toml is not correct. Correcting [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showFoodValuesInTooltip was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showFoodValuesInTooltipAlways was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showSaturationHudOverlay was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showFoodValuesHudOverlay was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showFoodExhaustionHudUnderlay was corrected from null to its default, true.  [10:34:18] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key client.showFoodStatsInDebugOverlay was corrected from null to its default, true.  [10:34:19] [modloading-worker-0/INFO] [Silent's Gems/]: Detected Silent Gear! [10:34:19] [modloading-worker-0/INFO] [Silent Gear/PartManager]: Registered part serializer 'silentgear:compound_part' [10:34:19] [modloading-worker-0/INFO] [Silent Gear/PartManager]: Registered part serializer 'silentgear:misc_upgrade' [10:34:19] [modloading-worker-0/INFO] [Silent Gear/PartManager]: Registered part serializer 'silentgems:gear_soul' [10:34:19] [modloading-worker-0/INFO] [Silent's Gems/]: Register part type PartType{name='silentgems:gear_soul'} [10:34:19] [modloading-worker-0/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgems:persistence' [10:34:19] [modloading-worker-0/INFO] [Silent Gear/TraitManager]: Registered serializer 'silentgems:runic' [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/lootbagmod-client.toml is not correct. Correcting [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Misc was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Misc.stacksize was corrected from null to its default, 15.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Misc.dropamount was corrected from null to its default, 10.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Misc.itemsininventory was corrected from null to its default, true.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Debug/Modpack tools was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Debug/Modpack tools.entityname was corrected from null to its default, false.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Debug/Modpack tools.itemsdropped was corrected from null to its default, false.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Debug/Modpack tools.itemsdroppedchat was corrected from null to its default, false.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Black And White Lists was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Black And White Lists.enablewhitelist was corrected from null to its default, false.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Black And White Lists.blacklist was corrected from null to its default, [lootbagmod:lootbag, minecraft:air, minecraft:command_block, minecraft:structure_block, minecraft:knowledge_book, minecraft:chain_command_block, minecraft:repeating_command_block, minecraft:barrier, minecraft:enchanted_book, minecraft:written_book, minecraft:potion, minecraft:splash_potion, minecraft:lingering_potion, minecraft:spawn_egg, minecraft:structure_void, minecraft:mob_spawner, minecraft:bedrock].  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Black And White Lists.whitelist was corrected from null to its default, [minecraft:stone, minecraft:nether_star].  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Tag List was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Tag List.taglist was corrected from null to its default, [minecraft:planks].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Configuration file /home/container/config/valhelsia_structures-common.toml is not correct. Correcting [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.global was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.global.flatness_delta was corrected from null to its default, 4.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.global.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.global.blacklisted_biomes was corrected from null to its default, [minecraft:ocean, minecraft:river, minecraft:frozen_ocean, minecraft:frozen_river, minecraft:beach, minecraft:deep_ocean, minecraft:snowy_beach, minecraft:warm_ocean, minecraft:lukewarm_ocean, minecraft:cold_ocean, minecraft:deep_warm_ocean, minecraft:deep_lukewarm_ocean, minecraft:deep_cold_ocean, minecraft:deep_frozen_ocean].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mod List was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.spawn_chance was corrected from null to its default, 0.5.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mod List.modlist was corrected from null to its default, [tconstruct].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.spacing was corrected from null to its default, 40.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.biome_categories was corrected from null to its default, [plains, forest, taiga].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Contains List was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.spawn_chance was corrected from null to its default, 0.6.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Contains List.contains was corrected from null to its default, [apples, creative].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.spacing was corrected from null to its default, 35.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Contains List.enablecontains was corrected from null to its default, false.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.biome_categories was corrected from null to its default, [plains, forest, taiga].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.castle_ruin.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.spawn_chance was corrected from null to its default, 0.7.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mob Drops was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.spacing was corrected from null to its default, 30.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mob Drops.mobdropslist was corrected from null to its default, [minecraft:blaze, minecraft:cave_spider, minecraft:creeper, minecraft:drowned, minecraft:elder_guardian, minecraft:enderman, minecraft:endermite, minecraft:evoker].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mob Drops.dropchance was corrected from null to its default, 10.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mob Drops.allHostileMobs was corrected from null to its default, false.  [10:34:19] [modloading-worker-0/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key Mob Drops.allNonHostileMobs was corrected from null to its default, false.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.biome_categories was corrected from null to its default, [desert].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.desert_house.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.spawn_chance was corrected from null to its default, 0.7.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.spacing was corrected from null to its default, 30.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.biome_categories was corrected from null to its default, [plains, forest, extreme_hills, taiga].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.forge.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.spawn_chance was corrected from null to its default, 0.7.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.spacing was corrected from null to its default, 30.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.biome_categories was corrected from null to its default, [plains, forest, extreme_hills, taiga].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.player_house.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.spawn_chance was corrected from null to its default, 0.7.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.spacing was corrected from null to its default, 30.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.biome_categories was corrected from null to its default, [plains, forest, extreme_hills, taiga, desert, mesa, savanna, jungle, icy, swamp, mushroom].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.spawner_dungeon.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.spawn_chance was corrected from null to its default, 0.8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.spacing was corrected from null to its default, 25.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.biome_categories was corrected from null to its default, [plains, forest, extreme_hills, taiga].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.tower_ruin.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.spawn_chance was corrected from null to its default, 0.85.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.spacing was corrected from null to its default, 25.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.separation was corrected from null to its default, 7.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.biome_categories was corrected from null to its default, [swamp].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.witch_hut.blacklisted_biomes was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree was corrected from null to its default, SimpleCommentedConfig:{}.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.generate was corrected from null to its default, true.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.spawn_chance was corrected from null to its default, 0.7.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.spacing was corrected from null to its default, 30.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.separation was corrected from null to its default, 8.  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.biome_categories was corrected from null to its default, [plains, forest].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.blacklisted_dimensions was corrected from null to its default, [].  [10:34:19] [modloading-worker-2/WARN] [ne.mi.co.ForgeConfigSpec/CORE]: Incorrect key structures.big_tree.blacklisted_biomes was corrected from null to its default, [].  [10:34:20] [main/FATAL] [ne.mi.fm.ModLoader/LOADING]: Failed to complete lifecycle event CONSTRUCT, 1 errors found [10:34:20] [main/FATAL] [ne.mi.co.ForgeMod/]: Preparing crash report with UUID 6c3efcc6-9cb7-40a0-be29-2bc9883ef268 [10:34:20] [main/INFO] [STDOUT/]: [net.minecraft.crash.CrashReport:func_85057_a:196]: Negative index in crash report handler (16/18) [10:34:20] [main/FATAL] [ne.mi.fm.se.ServerModLoader/]: Crash report saved to ./crash-reports/crash-2022-01-19_10.34.20-fml.txt ---- Minecraft Crash Report ---- // Sorry Time: 1/19/22 10:34 AM Description: Mod loading error has occurred java.lang.Exception: Mod Loading has failed         at net.minecraftforge.fml.CrashReportExtender.dumpModLoadingCrashReport(CrashReportExtender.java:85) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.server.ServerModLoader.load(ServerModLoader.java:51) ~[forge:?] {re:classloading}         at net.minecraft.server.Main.main(Main.java:95) ~[?:?] {re:classloading}         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_312] {}         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_312] {}         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_312] {}         at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.loading.FMLServerLaunchProvider.lambda$launchService$0(FMLServerLaunchProvider.java:51) ~[forge-1.16.5-36.2.20.jar:36.2] {}         at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {re:classloading}         at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {re:classloading}         at net.minecraftforge.server.ServerMain$Runner.runLauncher(ServerMain.java:63) [forge-1.16.5-36.2.20.jar:?] {}         at net.minecraftforge.server.ServerMain$Runner.access$100(ServerMain.java:60) [forge-1.16.5-36.2.20.jar:?] {}         at net.minecraftforge.server.ServerMain.main(ServerMain.java:57) [forge-1.16.5-36.2.20.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: main Stacktrace:         at net.minecraftforge.fml.loading.RuntimeDistCleaner.processClassWithFlags(RuntimeDistCleaner.java:71) ~[forge-1.16.5-36.2.20.jar:36.2] {} -- MOD hiddenrecipebook -- Details:         Mod File: hiddenrecipebook_1.16.5-2.0.jar         Failure message: Hidden Recipe Book (hiddenrecipebook) has failed to load correctly                 java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/widget/Widget for invalid dist DEDICATED_SERVER         Mod Version: 2.0         Mod Issue URL: https://github.com/ricksouth/serilum-mc-mods/labels/Mod: Hidden Recipe Book         Exception message: java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/widget/Widget for invalid dist DEDICATED_SERVER Stacktrace:         at net.minecraftforge.fml.loading.RuntimeDistCleaner.processClassWithFlags(RuntimeDistCleaner.java:71) ~[forge-1.16.5-36.2.20.jar:36.2] {}         at cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:85) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:265) ~[modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) ~[modlauncher-8.0.9.jar:?] {re:classloading}         at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) ~[modlauncher-8.0.9.jar:?] {re:classloading}         at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_312] {}         at java.lang.Class.forName0(Native Method) ~[?:1.8.0_312] {}         at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.AutomaticEventSubscriber.lambda$inject$6(AutomaticEventSubscriber.java:75) ~[forge:?] {re:classloading}         at java.util.ArrayList.forEach(ArrayList.java:1259) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.AutomaticEventSubscriber.inject(AutomaticEventSubscriber.java:62) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:91) ~[forge:36.2] {re:classloading}         at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[forge:?] {re:classloading}         at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) ~[?:1.8.0_312] {}         at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1632) ~[?:1.8.0_312] {}         at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_312] {}         at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) ~[?:1.8.0_312] {}         at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) ~[?:1.8.0_312] {}         at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175) ~[?:1.8.0_312] {} -- System Details -- Details:         Minecraft Version: 1.16.5         Minecraft Version ID: 1.16.5         Operating System: Linux (amd64) version 5.4.0-1060-gcp         Java Version: 1.8.0_312, Oracle Corporation         Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation         Memory: 274067552 bytes (261 MB) / 1315438592 bytes (1254 MB) up to 9343336448 bytes (8910 MB)         CPUs: 4         JVM Flags: 2 total; -Xms128M -Xmx10023M         ModLauncher: 8.0.9+86+master.3cf110c         ModLauncher launch target: fmlserver         ModLauncher naming: srg         ModLauncher services:                  /mixin-0.8.4.jar mixin PLUGINSERVICE                  /eventbus-4.0.0.jar eventbus PLUGINSERVICE                  /forge-1.16.5-36.2.20.jar object_holder_definalize PLUGINSERVICE                  /forge-1.16.5-36.2.20.jar runtime_enum_extender PLUGINSERVICE                  /accesstransformers-3.0.1.jar accesstransformer PLUGINSERVICE                  /forge-1.16.5-36.2.20.jar capability_inject_definalize PLUGINSERVICE                  /forge-1.16.5-36.2.20.jar runtimedistcleaner PLUGINSERVICE                  /mixin-0.8.4.jar mixin TRANSFORMATIONSERVICE                  /forge-1.16.5-36.2.20.jar fml TRANSFORMATIONSERVICE          FML: 36.2         Forge: net.minecraftforge:36.2.20         FML Language Providers:                  javafml@36.2                 minecraft@1         Mod List:                  infernal-expansion-forge-1.3.jar                  |Infernal Expansion            |infernalexp                   |Release 1.3         |CREATE_REG|Manifest: NOSIGNATURE                 CraftingAutomat-MC1.16.3-1.2.2.jar                |Crafting Automat              |craftingautomat               |1.2.2               |CREATE_REG|Manifest: NOSIGNATURE                 BetterF3-1.1.3-forge-1.16.5.jar                   |BetterF3 Forge                |betterf3forge                 |1.1.3               |CREATE_REG|Manifest: NOSIGNATURE                 curiousshulkerboxes-forge-1.16.5-4.0.1.0.jar      |Curious Shulker Boxes         |curiousshulkerboxes           |1.16.5-4.0.1.0      |CREATE_REG|Manifest: NOSIGNATURE                 CTM-MC1.16.1-1.1.2.6.jar                          |ConnectedTexturesMod          |ctm                           |MC1.16.1-1.1.2.6    |CREATE_REG|Manifest: NOSIGNATURE                 Controlling-7.0.0.20.jar                          |Controlling                   |controlling                   |7.0.0.20            |CREATE_REG|Manifest: NOSIGNATURE                 ReAuth-1.16-Forge-3.9.3.jar                       |ReAuth                        |reauth                        |3.9.3               |CREATE_REG|Manifest: 3d:06:1e:e5:da:e2:ff:ae:04:00:be:45:5b:ff:fd:70:65:00:67:0b:33:87:a6:5f:af:20:3c:b6:a1:35:ca:7e                 Placebo-1.16.5-4.6.0.jar                          |Placebo                       |placebo                       |4.6.0               |CREATE_REG|Manifest: NOSIGNATURE                 citadel-1.8.1-1.16.5.jar                          |Citadel                       |citadel                       |1.8.1               |CREATE_REG|Manifest: NOSIGNATURE                 YungsApi-1.16.4-Forge-6.jar                       |YUNG's API                    |yungsapi                      |1.16.4-Forge-6      |CREATE_REG|Manifest: NOSIGNATURE                 Powah-1.16.5-2.3.16.jar                           |Powah                         |powah                         |2.3.16              |CREATE_REG|Manifest: NOSIGNATURE                 hiddenrecipebook_1.16.5-2.0.jar                   |Hidden Recipe Book            |hiddenrecipebook              |2.0                 |ERROR     |Manifest: NOSIGNATURE                 MutantBeasts-1.16.4-1.1.3.jar                     |Mutant Beasts                 |mutantbeasts                  |1.16.4-1.1.3        |CREATE_REG|Manifest: d9:be:bd:b6:9a:e4:14:aa:05:67:fb:84:06:77:a0:c5:10:ec:27:15:1b:d6:c0:88:49:9a:ef:26:77:61:0b:5e                 Bookshelf-Forge-1.16.5-10.3.29.jar                |Bookshelf                     |bookshelf                     |10.3.29             |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 sophisticatedbackpacks-1.16.5-3.15.1.503.jar      |Sophisticated Backpacks       |sophisticatedbackpacks        |1.16.5-3.15.1.503   |CREATE_REG|Manifest: NOSIGNATURE                 randompatches-2.4.4-forge.jar                     |RandomPatches                 |randompatches                 |2.4.4-forge         |CREATE_REG|Manifest: 92:f6:29:d4:09:89:f5:f5:98:5e:20:34:31:d0:7b:58:22:06:bd:a5:d1:6a:92:6e:ac:3d:8d:18:c5:b2:5b:d7                 DarkUtilities-1.16.5-8.0.9.jar                    |Dark Utilities                |darkutils                     |8.0.9               |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 Apotheosis-1.16.5-4.8.4.jar                       |Apotheosis                    |apotheosis                    |4.8.4               |CREATE_REG|Manifest: NOSIGNATURE                 ProgressiveBosses-2.2.0-mc1.16.x.jar              |Progressive Bosses            |progressivebosses             |2.2.0               |CREATE_REG|Manifest: NOSIGNATURE                 Morpheus-1.16.5-4.2.70.jar                        |Morpheus                      |morpheus                      |4.2.70              |CREATE_REG|Manifest: NOSIGNATURE                 carryon-1.16.5-1.15.3.13.jar                      |Carry On                      |carryon                       |1.15.3.13           |CREATE_REG|Manifest: 8c:03:ac:7d:21:62:65:e2:83:91:f3:22:57:99:ed:75:78:1e:db:de:03:99:ef:53:3b:59:95:18:01:bc:84:a9                 JustEnoughResources-1.16.5-0.12.1.119.jar         |Just Enough Resources         |jeresources                   |0.12.1.119          |CREATE_REG|Manifest: NOSIGNATURE                 konkrete_1.1.6_MC_1.16.2-1.16.5.jar               |Konkrete                      |konkrete                      |1.1.6               |CREATE_REG|Manifest: NOSIGNATURE                 betterendforge-1.16.4-1.6.0.jar                   |BetterEnd Forge               |betterendforge                |1.16.4-1.6.0        |CREATE_REG|Manifest: NOSIGNATURE                 PrettyPipes-1.9.3.jar                             |Pretty Pipes                  |prettypipes                   |1.9.3               |CREATE_REG|Manifest: NOSIGNATURE                 structure_gel-1.16.5-1.7.8.jar                    |Structure Gel API             |structure_gel                 |1.7.8               |CREATE_REG|Manifest: NOSIGNATURE                 ResourcefulBees-1.16.5-0.10.4.jar                 |Resourceful Bees              |resourcefulbees               |1.16.5-0.10.4       |CREATE_REG|Manifest: NOSIGNATURE                 witheranforge-1.0.3.jar                           |Witheran Origin               |witheranforge                 |1.0.3               |CREATE_REG|Manifest: NOSIGNATURE                 repurposed_structures-1.16.5-2.6.6-forge.jar      |Repurposed Structures         |repurposed_structures         |1.16.5-2.6.6-forge  |CREATE_REG|Manifest: NOSIGNATURE                 Lollipop-1.16.5-3.2.9.jar                         |Lollipop                      |lollipop                      |3.2.9               |CREATE_REG|Manifest: NOSIGNATURE                 SimpleCoreLib-1.16.5-2.0.7.5.jar                  |SimpleCoreLib                 |simplecorelib                 |1.16.5-2.0.7.5      |CREATE_REG|Manifest: NOSIGNATURE                 dungeons_plus-1.16.5-1.1.5.jar                    |Dungeons Plus                 |dungeons_plus                 |1.1.5               |CREATE_REG|Manifest: NOSIGNATURE                 Botania-1.16.5-420.1.jar                          |Botania                       |botania                       |1.16.5-420.1        |CREATE_REG|Manifest: NOSIGNATURE                 spark-forge.jar                                   |spark                         |spark                         |1.5.2               |CREATE_REG|Manifest: NOSIGNATURE                 CNB-1.16.3_5-1.2.11.jar                           |Creatures and Beasts          |cnb                           |1.2.11              |CREATE_REG|Manifest: NOSIGNATURE                 playerex-1.1.8-1.16.5.jar                         |Player Ex                     |playerex                      |1.1.8               |CREATE_REG|Manifest: NOSIGNATURE                 curios-forge-1.16.5-4.0.5.3.jar                   |Curios API                    |curios                        |1.16.5-4.0.5.3      |CREATE_REG|Manifest: NOSIGNATURE                 Patchouli-1.16.4-53.2.jar                         |Patchouli                     |patchouli                     |1.16.4-53.2         |CREATE_REG|Manifest: NOSIGNATURE                 Origins-1.16.5-0.7.3.1-forge.jar                  |Origins                       |origins                       |0.7.3.1             |CREATE_REG|Manifest: NOSIGNATURE                 collective-1.16.5-2.26.jar                        |Collective                    |collective                    |2.26                |CREATE_REG|Manifest: NOSIGNATURE                 OreExcavation-1.8.157.jar                         |Ore Excavation                |oreexcavation                 |1.8.157             |CREATE_REG|Manifest: e7:68:1c:0d:b9:7e:cf:f8:f3:40:9c:84:c5:39:d7:a4:59:78:b0:6b:c3:fd:b7:4f:69:18:a3:88:e3:76:8c:3f                 Platypuses 1.16.5-1.2.5.jar                       |Platypus                      |platypus                      |1.2.5               |CREATE_REG|Manifest: NOSIGNATURE                 relicex-1.0.0-1.16.4.jar                          |Relic Ex                      |relicex                       |1.0.0               |CREATE_REG|Manifest: NOSIGNATURE                 BetterStrongholds-1.16.4-1.1.jar                  |YUNG's Better Strongholds     |betterstrongholds             |1.16.4-1.1          |CREATE_REG|Manifest: NOSIGNATURE                 Runelic-1.16.5-7.0.1.jar                          |Runelic                       |runelic                       |7.0.1               |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 worldedit-mod-7.2.5-dist.jar                      |WorldEdit                     |worldedit                     |7.2.5+57d5ac9       |CREATE_REG|Manifest: NOSIGNATURE                 constructionwand-1.16.5-2.2.jar                   |Construction Wand             |constructionwand              |1.16.5-2.2          |CREATE_REG|Manifest: NOSIGNATURE                 sapience-1.16.4-1.1.1.jar                         |Sapience                      |sapience                      |1.1.1               |CREATE_REG|Manifest: NOSIGNATURE                 Project_MMO-1.16.5-3.67.4.jar                     |Project MMO                   |pmmo                          |1.16.5-3.67.4       |CREATE_REG|Manifest: NOSIGNATURE                 architectury-1.17.20-forge.jar                    |Architectury                  |architectury                  |1.17.20             |CREATE_REG|Manifest: NOSIGNATURE                 ExtraBotany-r1.2-68.jar                           |ExtraBotany                   |extrabotany                   |1.0                 |CREATE_REG|Manifest: NOSIGNATURE                 curiouselytra-forge-1.16.5-4.0.2.3.jar            |Curious Elytra                |curiouselytra                 |1.16.5-4.0.2.3      |CREATE_REG|Manifest: NOSIGNATURE                 AI-Improvements-1.16.2-0.3.0.jar                  |AI-Improvements               |aiimprovements                |0.3.0               |CREATE_REG|Manifest: NOSIGNATURE                 forestcraft-1.52.jar                              |Astemir Forest Craft          |forestcraft                   |1.52                |CREATE_REG|Manifest: NOSIGNATURE                 cloth-config-4.11.26-forge.jar                    |Cloth Config v4 API           |cloth-config                  |4.11.26             |CREATE_REG|Manifest: NOSIGNATURE                 FastLeafDecay-v25.jar                             |FastLeafDecay                 |fastleafdecay                 |v25                 |CREATE_REG|Manifest: NOSIGNATURE                 geckolib-forge-1.16.5-3.0.59.jar                  |GeckoLib                      |geckolib3                     |3.0.59              |CREATE_REG|Manifest: NOSIGNATURE                 SaveMyStronghold-1.16.4-1.0.jar                   |Save My Stronghold!           |savemystronghold              |1.16.4-1.0          |CREATE_REG|Manifest: NOSIGNATURE                 rhino-1605.1.0-build.4.jar                        |Rhino                         |rhino                         |1605.1.0-build.4    |CREATE_REG|Manifest: NOSIGNATURE                 mowziesmobs-1.5.19.jar                            |Mowzie's Mobs                 |mowziesmobs                   |1.5.19              |CREATE_REG|Manifest: NOSIGNATURE                 jei-1.16.5-7.7.1.144.jar                          |Just Enough Items             |jei                           |7.7.1.144           |CREATE_REG|Manifest: NOSIGNATURE                 kubejs-forge-1605.3.10-build.16.jar               |KubeJS                        |kubejs                        |1605.3.10-build.16  |CREATE_REG|Manifest: NOSIGNATURE                 genesis_forge_1.1.jar                             |Genesis v0.4.3                |genesis                       |v0.4.3              |CREATE_REG|Manifest: NOSIGNATURE                 AttributeFix-1.16.5-10.1.3.jar                    |AttributeFix                  |attributefix                  |10.1.3              |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 the-conjurer-1.16.4-1.0.13.jar                    |The Conjurer                  |conjurer_illager              |1.0.13              |CREATE_REG|Manifest: NOSIGNATURE                 Jellyfishing-1.6.9.jar                            |Jellyfishing                  |jellyfishing                  |1.6.8               |CREATE_REG|Manifest: NOSIGNATURE                 caelus-forge-1.16.5-2.1.3.0.jar                   |Caelus API                    |caelus                        |1.16.5-2.1.3.0      |CREATE_REG|Manifest: NOSIGNATURE                 Undefeatables 1.4.jar                             |Undefeatables                 |undefeatables                 |1.4                 |CREATE_REG|Manifest: NOSIGNATURE                 invtweaks-1.16.4-1.0.1.jar                        |Inventory Tweaks Renewed      |invtweaks                     |1.16.4-1.0.1        |CREATE_REG|Manifest: NOSIGNATURE                 Waystones_1.16.5-7.6.3.jar                        |Waystones                     |waystones                     |7.6.3               |CREATE_REG|Manifest: NOSIGNATURE                 journeymap-1.16.5-5.7.3.jar                       |Journeymap                    |journeymap                    |5.7.3               |CREATE_REG|Manifest: NOSIGNATURE                 comforts-forge-1.16.5-4.0.0.4.jar                 |Comforts                      |comforts                      |1.16.5-4.0.0.4      |CREATE_REG|Manifest: NOSIGNATURE                 NaturesCompass-1.16.5-1.9.0.jar                   |Nature's Compass              |naturescompass                |1.16.5-1.9.0        |CREATE_REG|Manifest: NOSIGNATURE                 SimpleStorageNetwork-1.16.5-1.3.5.jar             |Simple Storage Network        |storagenetwork                |1.16.5-1.3.5        |CREATE_REG|Manifest: 1f:47:ac:b1:61:82:96:b8:47:19:16:d2:61:81:11:60:3a:06:4b:61:31:56:7d:44:31:1e:0c:6f:22:5b:4c:ed                 configured-1.0.2-1.16.3.jar                       |Configured                    |configured                    |1.0.2               |CREATE_REG|Manifest: NOSIGNATURE                 LibX-1.16.3-1.0.76.jar                            |LibX                          |libx                          |1.16.3-1.0.76       |CREATE_REG|Manifest: NOSIGNATURE                 DungeonCrawl-1.16.3-2.2.4.jar                     |Dungeon Crawl                 |dungeoncrawl                  |2.2.4               |CREATE_REG|Manifest: NOSIGNATURE                 curioofundying-forge-1.16.5-5.2.0.0.jar           |Curio of Undying              |curioofundying                |1.16.5-5.2.0.0      |CREATE_REG|Manifest: NOSIGNATURE                 BadMobs-1.16.5-9.0.3.jar                          |BadMobs                       |badmobs                       |9.0.3               |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 TravelAnchors-2.4.jar                             |Travel Anchors                |travel_anchors                |2.4                 |CREATE_REG|Manifest: NOSIGNATURE                 lazydfu-0.1.3.jar                                 |LazyDFU                       |lazydfu                       |0.1.3               |CREATE_REG|Manifest: NOSIGNATURE                 outvoted-1.16.5-1.2.4.jar                         |Outvoted                      |outvoted                      |1.2.4               |CREATE_REG|Manifest: NOSIGNATURE                 bedspreads-forge-1.16.5-5.1.0.2.jar               |Bedspreads                    |bedspreads                    |1.16.5-5.1.0.2      |CREATE_REG|Manifest: NOSIGNATURE                 iceandfire-2.1.9-1.16.5.jar                       |Ice and Fire                  |iceandfire                    |2.1.9-1.16.5        |CREATE_REG|Manifest: NOSIGNATURE                 Toast-Control-1.16.4-4.3.1.jar                    |Toast Control                 |toastcontrol                  |4.3.1               |CREATE_REG|Manifest: NOSIGNATURE                 JEITweaker-1.16.5-1.0.1.27.jar                    |JEI Tweaker                   |jeitweaker                    |1.0.1.27            |CREATE_REG|Manifest: NOSIGNATURE                 customfov-forge-1.16.5-5.1.0.1.jar                |Custom FoV                    |customfov                     |1.16.5-5.1.0.1      |CREATE_REG|Manifest: NOSIGNATURE                 CraftTweaker-1.16.5-7.1.2.489.jar                 |CraftTweaker                  |crafttweaker                  |7.1.2.489           |CREATE_REG|Manifest: NOSIGNATURE                 forge-1.16.5-36.2.20-universal.jar                |Forge                         |forge                         |36.2.20             |CREATE_REG|Manifest: 22:af:21:d8:19:82:7f:93:94:fe:2b:ac:b7:e4:41:57:68:39:87:b1:a7:5c:c6:44:f9:25:74:21:14:f5:0d:90                 BloodMagic-1.16.4-3.1.7-27.jar                    |Blood Magic                   |bloodmagic                    |1.16.4-3.1.7-27     |CREATE_REG|Manifest: NOSIGNATURE                 DynamicSurroundings-1.16.4-4.0.4.2.jar            |§3Dynamic Surroundings        |dsurround                     |1.16.4-4.0.4.2      |CREATE_REG|Manifest: b4:98:14:b9:76:55:25:4f:e5:5f:4d:71:90:87:43:5b:f9:d5:3a:02:60:42:5e:da:1f:15:9c:ff:be:a9:7c:77                 LootBag-1.16.5-1.1.1.jar                          |Loot Bag                      |lootbag                       |1.16.5-1.1.1        |CREATE_REG|Manifest: NOSIGNATURE                 ironchest-1.16.5-11.2.21.jar                      |Iron Chests                   |ironchest                     |1.16.5-11.2.21      |CREATE_REG|Manifest: NOSIGNATURE                 MythicBotany-1.16.5-1.4.19.jar                    |MythicBotany                  |mythicbotany                  |1.16.5-1.4.19       |CREATE_REG|Manifest: NOSIGNATURE                 forge-1.16.5-36.2.20-server.jar                   |Minecraft                     |minecraft                     |1.16.5              |CREATE_REG|Manifest: NOSIGNATURE                 cofh_core-1.16.5-1.4.0.6.jar                      |CoFH Core                     |cofh_core                     |1.4.0.6             |CREATE_REG|Manifest: 75:0b:cc:9b:64:2e:9b:c4:41:d1:95:00:71:ee:87:1a:b3:5e:4b:da:8e:e8:39:00:fd:5d:e5:9c:40:42:33:09                 TConstruct-1.16.5-3.3.2.324.jar                   |Tinkers' Construct            |tconstruct                    |3.3.2.324           |CREATE_REG|Manifest: NOSIGNATURE                 EnchantmentDescriptions-1.16.5-7.0.18.jar         |EnchantmentDescriptions       |enchdesc                      |7.0.18              |CREATE_REG|Manifest: eb:c4:b1:67:8b:f9:0c:db:dc:4f:01:b1:8e:61:64:39:4c:10:85:0b:a6:c4:c7:48:f0:fa:95:f2:cb:08:3a:e5                 theoneprobe-1.16-3.1.4.jar                        |The One Probe                 |theoneprobe                   |1.16-3.1.4          |CREATE_REG|Manifest: NOSIGNATURE                 pandoras_creatures-1.16.3-2.0.1.jar               |Pandoras Creatures            |pandoras_creatures            |1.16.3-2.0.1        |CREATE_REG|Manifest: NOSIGNATURE                 Netherrocks-1.16.5-2.3.5.4.jar                    |SimpleOres:Netherrocks        |netherrocks                   |1.16.5-2.3.5.4      |CREATE_REG|Manifest: NOSIGNATURE                 SilentMechanisms-1.16.3-1.0.1+77.jar              |Silent's Mechanisms           |silents_mechanisms            |1.0.1+77            |CREATE_REG|Manifest: NOSIGNATURE                 silent-gear-1.16.5-2.6.26.jar                     |Silent Gear                   |silentgear                    |2.6.26              |CREATE_REG|Manifest: NOSIGNATURE                 iafgear-1.16.3-1.0.2.jar                          |DragonGear                    |iafgear                       |1.16.3-1.0.2        |CREATE_REG|Manifest: NOSIGNATURE                 MouseTweaks-2.14-mc1.16.2.jar                     |Mouse Tweaks                  |mousetweaks                   |2.14                |CREATE_REG|Manifest: NOSIGNATURE                 ImmersiveEngineering-1.16.5-5.0.7-143.jar         |Immersive Engineering         |immersiveengineering          |1.16.5-5.0.7-143    |CREATE_REG|Manifest: 44:39:94:cf:1d:8c:be:3c:7f:a9:ee:f4:1e:63:a5:ac:61:f9:c2:87:d5:5b:d9:d6:8c:b5:3e:96:5d:8e:3f:b7                 Classes-1.16.5-2.0.4.3.jar                        |Classes                       |classes                       |1.16.3-1.3.0        |CREATE_REG|Manifest: NOSIGNATURE                 silent-lib-1.16.3-4.9.6.jar                       |Silent Lib                    |silentlib                     |4.9.6               |CREATE_REG|Manifest: NOSIGNATURE                 ctiers-1.16.5-1.31.jar                            |Centrifuge Tiers              |ctiers                        |1.16.5-1.31         |CREATE_REG|Manifest: NOSIGNATURE                 pipez-1.16.5-1.2.7.jar                            |Pipez                         |pipez                         |1.16.5-1.2.7        |CREATE_REG|Manifest: NOSIGNATURE                 flywheel-1.16-0.2.5.jar                           |Flywheel                      |flywheel                      |1.16-0.2.5          |CREATE_REG|Manifest: NOSIGNATURE                 create-mc1.16.5_v0.3.2g.jar                       |Create                        |create                        |v0.3.2g             |CREATE_REG|Manifest: NOSIGNATURE                 Mantle-1.16.5-1.6.152.jar                         |Mantle                        |mantle                        |1.6.152             |CREATE_REG|Manifest: NOSIGNATURE                 gravestone-1.16.5-1.0.7.jar                       |Gravestone Mod                |gravestone                    |1.16.5-1.0.7        |CREATE_REG|Manifest: NOSIGNATURE                 polymorph-forge-1.16.5-0.24.jar                   |Polymorph                     |polymorph                     |1.16.5-0.24         |CREATE_REG|Manifest: NOSIGNATURE                 AutoRegLib-1.6-49.jar                             |AutoRegLib                    |autoreglib                    |1.6-49              |CREATE_REG|Manifest: NOSIGNATURE                 Quark-r2.4-321.jar                                |Quark                         |quark                         |r2.4-321            |CREATE_REG|Manifest: NOSIGNATURE                 materialis-1.16.5-2.4.2.jar                       |Materialis                    |materialis                    |1.16.5-2.4.2        |CREATE_REG|Manifest: NOSIGNATURE                 StorageDrawers-1.16.3-8.5.0.jar                   |Storage Drawers               |storagedrawers                |8.5.0               |CREATE_REG|Manifest: NOSIGNATURE                 topaddons-1.16.5-2.1.5-beta.jar                   |TOP Addons                    |topaddons                     |1.16.5-2.1.5-beta   |CREATE_REG|Manifest: NOSIGNATURE                 backpacked-1.10.1-1.16.3.jar                      |Backpacked                    |backpacked                    |1.10.1              |CREATE_REG|Manifest: NOSIGNATURE                 backpacker-1.3.1-1.16.3.jar                       |Backpacker                    |backpacker                    |1.3.1               |CREATE_REG|Manifest: NOSIGNATURE                 WorldEdit-CUI-FE3-1.16.5-3.0.9.jar                |WorldEdit CUI Forge Edition 3 |worldeditcuife3               |3.0.9               |CREATE_REG|Manifest: NOSIGNATURE                 fancymenu_2.0.7_MC_1.16.2-1.16.5.jar              |FancyMenu                     |fancymenu                     |2.0.7               |CREATE_REG|Manifest: NOSIGNATURE                 HunterIllager-1.16.5-1.1.0.jar                    |Hunter Illager                |hunterillager                 |1.16.5-1.1.0        |CREATE_REG|Manifest: NOSIGNATURE                 illagersweararmor-1.0.4.jar                       |Illagers Wear Armor           |illagersweararmor             |1.0.4               |CREATE_REG|Manifest: NOSIGNATURE                 MagmaMonsters-0.5.3.jar                           |MagmaMonsters                 |magma_monsters                |0.5.3               |CREATE_REG|Manifest: NOSIGNATURE                 AppleSkin-mc1.16.2-forge-1.0.14.jar               |AppleSkin                     |appleskin                     |1.0.14              |CREATE_REG|Manifest: NOSIGNATURE                 mobcatcher-3.2.jar                                |Mob Catcher                   |mobcatcher                    |3.2                 |CREATE_REG|Manifest: NOSIGNATURE                 ferritecore-2.0.4-forge.jar                       |Ferrite Core                  |ferritecore                   |2.0.4               |CREATE_REG|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                 Aquaculture-1.16.5-2.1.21.jar                     |Aquaculture 2                 |aquaculture                   |1.16.5-2.1.21       |CREATE_REG|Manifest: NOSIGNATURE                 SilentGems-1.16.3-3.7.15.jar                      |Silent's Gems 3               |silentgems                    |3.7.15              |CREATE_REG|Manifest: NOSIGNATURE                 CosmeticArmorReworked-1.16.5-v2.jar               |CosmeticArmorReworked         |cosmeticarmorreworked         |1.16.5-v2           |CREATE_REG|Manifest: 5e:ed:25:99:e4:44:14:c0:dd:89:c1:a9:4c:10:b5:0d:e4:b1:52:50:45:82:13:d8:d0:32:89:67:56:57:01:53                 valhelsia_core-16.0.10.jar                        |Valhelsia Core                |valhelsia_core                |16.0.10             |CREATE_REG|Manifest: NOSIGNATURE                 valhelsia_structures-1.16.5-0.1.6.jar             |Valhelsia Structures          |valhelsia_structures          |1.16.5-0.1.6        |CREATE_REG|Manifest: NOSIGNATURE                 lootbagmod-1.16.5-2.4.0.jar                       |Loot Bag Mod                  |lootbagmod                    |1.16.5-2.4.0        |CREATE_REG|Manifest: NOSIGNATURE         Crash Report UUID: 6c3efcc6-9cb7-40a0-be29-2bc9883ef268[10:34:20] [main/FATAL] [minecraft/Main]: Failed to start the minecraft server net.minecraftforge.fml.LoadingFailedException: Loading errors encountered: [         Hidden Recipe Book (hiddenrecipebook) has failed to load correctly §7java.lang.RuntimeException: Attempted to load class net/minecraft/client/gui/widget/Widget for invalid dist DEDICATED_SERVER ]         at net.minecraftforge.fml.ModLoader.waitForTransition(ModLoader.java:269) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.ModLoader.dispatchAndHandleError(ModLoader.java:236) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.ModLoader.gatherAndInitializeMods(ModLoader.java:194) ~[forge:?] {re:classloading}         at net.minecraftforge.fml.server.ServerModLoader.load(ServerModLoader.java:44) ~[forge:?] {re:classloading}         at net.minecraft.server.Main.main(Main.java:95) ~[?:?] {re:classloading}         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_312] {}         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_312] {}         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_312] {}         at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_312] {}         at net.minecraftforge.fml.loading.FMLServerLaunchProvider.lambda$launchService$0(FMLServerLaunchProvider.java:51) ~[forge-1.16.5-36.2.20.jar:36.2] {}         at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?] {}         at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?] {re:classloading}         at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?] {re:classloading}         at net.minecraftforge.server.ServerMain$Runner.runLauncher(ServerMain.java:63) [forge-1.16.5-36.2.20.jar:?] {}         at net.minecraftforge.server.ServerMain$Runner.access$100(ServerMain.java:60) [forge-1.16.5-36.2.20.jar:?] {}         at net.minecraftforge.server.ServerMain.main(ServerMain.java:57) [forge-1.16.5-36.2.20.jar:?] {} container@pterodactyl~ Server marked as offline... [Pterodactyl Daemon]: ---------- Detected server process in a crashed state! ---------- [Pterodactyl Daemon]: Exit code: 0 [Pterodactyl Daemon]: Out of memory: false [Pterodactyl Daemon]: Aborting automatic restart, last crash occurred less than 60 seconds ago.  
    • Hello,  everytime i start any modpack on MultiMC it gives me a whole set of errors. I've got no idea what i can do to fix this. Here is my log. MultiMC version: 0.6.14-3001 Launched instance in online mode authserver.mojang.com resolves to:     [13.227.199.74] session.minecraft.net resolves to:     [52.21.65.46, 34.205.58.168, 3.213.200.53] textures.minecraft.net resolves to:     [65.9.82.114, 65.9.82.27, 65.9.82.56, 65.9.82.87] api.mojang.com resolves to:     [52.222.138.66] Minecraft folder is: C:/Users/31625/Documents/MultiMC/instances/Vault Hunters - Official Modpack/minecraft Java path is: C:/Program Files (x86)/Common Files/Oracle/Java/javapath/javaw.exe Checking Java version... Java is version 1.8.0_321, using 64-bit architecture, from Oracle Corporation. Main Class:   io.github.zekerzhayard.forgewrapper.installer.Main Native path:   C:/Users/31625/Documents/MultiMC/instances/Vault Hunters - Official Modpack/natives Traits: traits XR:Initial traits FirstThreadOnMacOS Libraries:   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/patchy/1.3.9/patchy-1.3.9.jar   C:/Users/31625/Documents/MultiMC/libraries/oshi-project/oshi-core/1.1/oshi-core-1.1.jar   C:/Users/31625/Documents/MultiMC/libraries/net/java/dev/jna/jna/4.4.0/jna-4.4.0.jar   C:/Users/31625/Documents/MultiMC/libraries/net/java/dev/jna/platform/3.4.0/platform-3.4.0.jar   C:/Users/31625/Documents/MultiMC/libraries/com/ibm/icu/icu4j/66.1/icu4j-66.1.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/javabridge/1.0.22/javabridge-1.0.22.jar   C:/Users/31625/Documents/MultiMC/libraries/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar   C:/Users/31625/Documents/MultiMC/libraries/io/netty/netty-all/4.1.25.Final/netty-all-4.1.25.Final.jar   C:/Users/31625/Documents/MultiMC/libraries/com/google/guava/guava/21.0/guava-21.0.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar   C:/Users/31625/Documents/MultiMC/libraries/commons-io/commons-io/2.5/commons-io-2.5.jar   C:/Users/31625/Documents/MultiMC/libraries/commons-codec/commons-codec/1.10/commons-codec-1.10.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/brigadier/1.0.17/brigadier-1.0.17.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/datafixerupper/4.0.26/datafixerupper-4.0.26.jar   C:/Users/31625/Documents/MultiMC/libraries/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/authlib/2.1.28/authlib-2.1.28.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar   C:/Users/31625/Documents/MultiMC/libraries/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar   C:/Users/31625/Documents/MultiMC/libraries/it/unimi/dsi/fastutil/8.2.1/fastutil-8.2.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/logging/log4j/log4j-api/2.16.0/log4j-api-2.16.0.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/logging/log4j/log4j-core/2.16.0/log4j-core-2.16.0.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/text2speech/1.11.3/text2speech-1.11.3.jar   C:/Users/31625/Documents/MultiMC/libraries/io/github/zekerzhayard/ForgeWrapper/mmc3/ForgeWrapper-mmc3.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/forge/1.16.5-36.2.23/forge-1.16.5-36.2.23-launcher.jar   C:/Users/31625/Documents/MultiMC/libraries/org/ow2/asm/asm/9.1/asm-9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/ow2/asm/asm-commons/9.1/asm-commons-9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/ow2/asm/asm-tree/9.1/asm-tree-9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/ow2/asm/asm-util/9.1/asm-util-9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/ow2/asm/asm-analysis/9.1/asm-analysis-9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/cpw/mods/modlauncher/8.0.9/modlauncher-8.0.9.jar   C:/Users/31625/Documents/MultiMC/libraries/cpw/mods/grossjava9hacks/1.3.3/grossjava9hacks-1.3.3.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/accesstransformers/3.0.1/accesstransformers-3.0.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/antlr/antlr4-runtime/4.9.1/antlr4-runtime-4.9.1.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/eventbus/4.0.0/eventbus-4.0.0.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/forgespi/3.2.0/forgespi-3.2.0.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/coremods/4.0.6/coremods-4.0.6.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/unsafe/0.2.0/unsafe-0.2.0.jar   C:/Users/31625/Documents/MultiMC/libraries/com/electronwill/night-config/core/3.6.3/core-3.6.3.jar   C:/Users/31625/Documents/MultiMC/libraries/com/electronwill/night-config/toml/3.6.3/toml-3.6.3.jar   C:/Users/31625/Documents/MultiMC/libraries/org/jline/jline/3.12.1/jline-3.12.1.jar   C:/Users/31625/Documents/MultiMC/libraries/org/apache/maven/maven-artifact/3.6.3/maven-artifact-3.6.3.jar   C:/Users/31625/Documents/MultiMC/libraries/net/jodah/typetools/0.8.3/typetools-0.8.3.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecrell/terminalconsoleappender/1.2.0/terminalconsoleappender-1.2.0.jar   C:/Users/31625/Documents/MultiMC/libraries/org/spongepowered/mixin/0.8.4/mixin-0.8.4.jar   C:/Users/31625/Documents/MultiMC/libraries/net/minecraftforge/nashorn-core-compat/15.1.1.1/nashorn-core-compat-15.1.1.1.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/minecraft/1.16.5/minecraft-1.16.5-client.jar Native libraries:   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-windows.jar   C:/Users/31625/Documents/MultiMC/libraries/com/mojang/text2speech/1.11.3/text2speech-1.11.3-natives-windows.jar Mods:   [✔️] appleskin-forge-mc1.16.x-2.2.0   [✔️] appliedenergistics2-8.4.6   [✔️] archers_paradox-1.16.5-1.4.0.1   [✔️] architectury-1.28.48   [✔️] AutoRegLib-1.6-49   [✔️] blockcarpentry-1.16-0.4.0   [✔️] Bookshelf-Forge-1.16.5-10.3.29   [✔️] Botania-1.16.5-420.1   [✔️] buildinggadgets-1.16.5-3.8.2   [✔️] byg-1.3.5   [✔️] camera-1.16.5-1.0.14   [✔️] Clumps-6.0.0.27   [✔️] cofh_core-1.16.5-1.4.0.6   [✔️] comforts-forge-1.16.5-4.0.1.3   [✔️] Compressium-1.16.5-1.2.3   [✔️] Controlling-7.0.0.28   [✔️] CookingForBlockheads_1.16.5-9.3.4   [✔️] corpse-1.16.5-1.0.6   [✔️] CraftTweaker-1.16.5-7.1.2.487   [✔️] create-mc1.16.5_v0.3.2g   [✔️] CreateTweaker-1.0.0.26   [✔️] Cucumber-1.16.5-4.1.12   [✔️] curios-forge-1.16.5-4.0.5.2   [✔️] dankstorage-3.19   [✔️] DarkUtilities-1.16.3-6.0.3   [✔️] decorative_blocks-1.16.4-1.7.2   [✔️] DimStorage-1.16.5-4.4.1   [✔️] easy_villagers-1.16.5-1.0.11   [✔️] elevatorid-1.16.5-1.7.13   [✔️] EnderMail-1.16.5-1.2.2   [✔️] engineersdecor-1.16.5-1.1.15   [✔️] entitydetectors-1.16.4-1.1.0.1   [✔️] enviromats-1.16.5-2.0.9.0   [✔️] fairylights-4.0.5-1.16.5   [✔️] FastWorkbench-1.16.5-4.6.1   [✔️] FluxNetworks-1.16.5-6.1.7.12   [✔️] flywheel-1.16-0.2.5   [✔️] framedcompactdrawers-1.16-2.2.1   [✔️] ftb-backups-2.1.2.2   [✔️] ftb-library-forge-1605.3.4-build.90   [✔️] furniture-7.0.0-pre19-1.16.3   [✔️] Hwyla-forge-1.10.11-B78_1.16.2   [✔️] ImmersiveEngineering-1.16.5-5.0.7-143   [✔️] industrial-foregoing-1.16.5-3.2.14.6-14   [✔️] invtweaks-1.16.4-1.0.1   [✔️] ironchest-1.16.5-11.2.21   [✔️] ironfurnaces-1.16.5-2.7.7   [✔️] IronJetpacks-1.16.5-4.2.3   [✔️] iskallutilities-1.4   [✔️] ispawner-0.1.7-forge   [✔️] jei-1.16.5-7.7.1.139   [✔️] jeiintegration_1.16.5-7.0.1.15   [✔️] JEITweaker-1.16.5-1.1.0.49   [✔️] JustEnoughResources-1.16.5-0.12.1.133   [✔️] Lollipop-1.16.5-3.2.9   [✔️] masonry-1.16.3-0.3.6   [✔️] mcjtylib-1.16-5.1.2   [✔️] mcw-bridges-2.0.1-mc1.16.5   [✔️] mcw-doors-1.0.5-mc1.16.5   [✔️] mcw-furniture-2.0.1-mc1.16.5   [✔️] mcw-roofs-2.0.1-mc1.16.5-4   [✔️] mcw-windows-2.0.2-mc1.16.5   [✔️] Mekanism-1.16.5-10.1.1.456   [✔️] MekanismGenerators-1.16.5-10.1.1.456   [✔️] metalbarrels-1.16.2-3.3b   [✔️] mininggadgets-1.7.5   [✔️] MmmMmmMmmMmm-1.16.5-1.3.1   [✔️] modular-routers-1.16.5-7.4.0-55   [✔️] Morpheus-1.16.5-4.2.70   [✔️] MouseTweaks-2.14-mc1.16.2   [✔️] movingelevators-1.2.34-mc1.16.5   [✔️] neoncraft-2.1   [✔️] OpenLoader-1.16.5-9.0.3   [✔️] Patchouli-1.16.4-53.2   [✔️] Placebo-1.16.5-4.6.1   [✔️] platforms-1.16-1.7.12   [✔️] Powah-1.16.5-2.3.16   [✔️] PrettyPipes-1.9.5   [✔️] Quark-r2.4-321   [✔️] rangedpumps-0.8.2   [✔️] refinedstorage-1.9.15   [✔️] refinedstorageaddons-0.7.3   [✔️] rftoolsbase-1.16-2.1.1   [✔️] rftoolsbuilder-1.16-3.1.4   [✔️] rftoolspower-1.16-3.0.11   [✔️] rftoolsstorage-1.16-2.0.15   [✔️] rftoolsutility-1.16-3.1.7   [✔️] rsgauges-1.16.5-1.2.13   [✔️] rsrequestify-1.16.5-2.1.4   [✔️] Runelic-1.16.5-7.0.2   [✔️] selene-1.16.5-1.9.0   [✔️] shetiphiancore-1.16-3.8.6   [✔️] simplybackpacks-1.16.5-2.0.1-build.27   [✔️] simplylight-1.16.5-1.4.0-build.24   [✔️] snad-1.0.9-forge   [✔️] storage_overhaul-1.16.5-1.0.4   [✔️] StorageDrawers-1.16.3-8.5.0   [✔️] supermartijn642corelib-1.0.16-mc1.16.5   [✔️] supplementaries-1.16.5-0.18.0   [✔️] the_vault-1.7.0p1.12.1   [✔️] thermal_expansion-1.16.5-1.4.1.3   [✔️] thermal_foundation-1.16.5-1.4.1.7   [✔️] titanium-1.16.5-3.2.8.4-10   [✔️] torchmaster-2.3.8   [✔️] torohealth-1.16.4-forge-4   [✔️] trashcans-1.0.11-mc1.16   [✔️] u_team_core-1.16.5-3.2.1.196   [✔️] useful_railroads-1.16.5-1.4.6.38   [✔️] valkyrielib-1.16.5-3.0.9.5   [✔️] Waddles-1.16.5-0.8.13   [✔️] Waystones_1.16.5-7.6.4   [✔️] Xaeros_Minimap_21.14.1_Forge_1.16.5   [✔️] XaerosWorldMap_1.16.0_Forge_1.16.5   [✔️] xnet-1.16-3.0.15 Params:   --username  --version MultiMC5 --gameDir C:/Users/31625/Documents/MultiMC/instances/Vault Hunters - Official Modpack/minecraft --assetsDir C:/Users/31625/Documents/MultiMC/assets --assetIndex 1.16 --uuid  --accessToken  --userType  --versionType release --launchTarget fmlclient --fml.forgeVersion 36.2.23 --fml.mcVersion 1.16.5 --fml.forgeGroup net.minecraftforge --fml.mcpVersion 20210115.111550 Window size: 854 x 480 Java Arguments: [-XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump, -Xms512m, -Xmx8192m, -Duser.language=en] Minecraft process ID: 1932 Using onesix launcher. Checking: MC_SLIM Checking: MAPPINGS Checking: MC_EXTRA Checking: PATCHED Checking: MC_SRG 2022-01-19 11:35:45,095 main WARN Advanced terminal features are not available in this environment [11:35:45] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--username, zBqdger, --version, MultiMC5, --gameDir, C:/Users/31625/Documents/MultiMC/instances/Vault Hunters - Official Modpack/minecraft, --assetsDir, C:/Users/31625/Documents/MultiMC/assets, --assetIndex, 1.16, --uuid, <PROFILE ID>, --accessToken, ????????, --userType, msa, --versionType, release, --launchTarget, fmlclient, --fml.forgeVersion, 36.2.23, --fml.mcVersion, 1.16.5, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20210115.111550, --width, 854, --height, 480] [11:35:45] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 8.0.9+86+master.3cf110c starting: java version 1.8.0_321 by Oracle Corporation [11:35:45] [main/INFO] [ne.mi.fm.lo.FixSSL/CORE]: Added Lets Encrypt root certificates as additional trust [11:35:45] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.4 Source=file:/C:/Users/31625/Documents/MultiMC/libraries/org/spongepowered/mixin/0.8.4/mixin-0.8.4.jar Service=ModLauncher Env=CLIENT [11:35:47] [main/INFO] [STDERR/]: [org.antlr.v4.runtime.ConsoleErrorListener:syntaxError:38]: line 1:0 token recognition error at: '~' [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:213]: Failed to start Minecraft: [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]: java.lang.reflect.InvocationTargetException [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at java.lang.reflect.Method.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:210) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:245) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at org.multimc.EntryPoint.listen(EntryPoint.java:143) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launch:245]:     at org.multimc.EntryPoint.main(EntryPoint.java:34) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]: Caused by: java.lang.reflect.InvocationTargetException [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     at java.lang.reflect.Method.invoke(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     at io.github.zekerzhayard.forgewrapper.installer.Main.main(Main.java:57) [11:35:48] [main/INFO] [STDERR/]: [org.multimc.onesix.OneSixLauncher:launchWithMainClass:214]:     ... 8 more [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]: Caused by: java.lang.NoSuchMethodError: sun.security.util.ManifestEntryVerifier.<init>(Ljava/util/jar/Manifest;)V [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.SecureJarHandler.createCodeSource(SecureJarHandler.java:66) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.TransformingClassLoader$DelegatedClassLoader.findClass(TransformingClassLoader.java:275) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:136) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.TransformingClassLoader.loadClass(TransformingClassLoader.java:98) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at java.lang.ClassLoader.loadClass(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at java.lang.Class.forName0(Native Method) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at java.lang.Class.forName(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.service.modlauncher.ModLauncherClassProvider.findClass(ModLauncherClassProvider.java:67) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.platform.MixinConnectorManager.loadConnectors(MixinConnectorManager.java:70) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.platform.MixinConnectorManager.inject(MixinConnectorManager.java:59) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.platform.MixinPlatformManager.inject(MixinPlatformManager.java:196) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.MixinBootstrap.inject(MixinBootstrap.java:202) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.initializeLaunch(MixinLaunchPluginLegacy.java:201) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at org.spongepowered.asm.launch.MixinLaunchPluginLegacy.initializeLaunch(MixinLaunchPluginLegacy.java:195) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.LaunchPluginHandler.lambda$announceLaunch$9(LaunchPluginHandler.java:97) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at java.util.HashMap.forEach(Unknown Source) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.LaunchPluginHandler.announceLaunch(LaunchPluginHandler.java:97) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:52) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [11:35:48] [main/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:-1]:     ... 13 more [11:35:48] [main/INFO] [STDOUT/]: [org.multimc.EntryPoint:main:37]: Exiting with -1 Process exited with code -1. Clipboard copy at: 19 Jan 2022 11:35:55 +0100  
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

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