Jump to content

Recommended Posts

Posted

Yes, that is exactly what I meant -- create scale fields and add the scaling before the actual rendering/calllist.

 

I'll probably add another constructor that passes the scale factors in at time of construction, but that is just a style thing.

 

I think the additional cool thing about this is that it will allow you to dynamically scale any piece parts without having to separate the model -- seems that would be useful for many interesting or improved animations (real animators actually squash and stretch their models quite a bit (i.e. imagine something jumping and landing).

 

The other thing I plan to do: for the actual Model class create a convertToChild() method to use instead of addChild().  Imagine if you could take the Techne output and not have to adjust the rotation points and rotations when making them into children.  The only trick is that in order to support multiple levels I think you have to crawl up the parent hierarchy to calculate the absolute values of the parent's rotation point and rotation angle.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

I skipped the constructor at first because I didn't look around to make sure nothing else was calling it.  There probably isn't, but the minecraft coders are an odd bunch.

 

However, nothing wrong with setting two constructors.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Ok, I did some curvefitting, but can't figure out the basis for the value.

 

The formula is offset = 1.5 - (1.5 * shrink). 

 

I tested various values from 0.5 down to 0.25 and it works well. 

 

What I can't figure out is the 1.5.  Why is it that number?  Tried relating it to pixel size and the original height of the mob, but that didn't work.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

What I can't figure out is the 1.5.  Why is it that number?  Tried relating it to pixel size and the original height of the mob, but that didn't work.

 

I think I just figured it out -- the model 0, 0, 0 position is actually 24 pixels above ground (to prove this go to Techne and create a block at 0, 0, 0.  Since a block is 16 pixels, 24 would be 1.5 blocks high.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

You can use glScalef before rendering to change overall model size.

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

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

Posted

Abastro,

that is part of what we are talking about.  The discussion you are seeing now is how to get the feet to be on the ground again.  There is always the brute force way, but we were looking for an automatic way to do it so that the code scaled easily.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Delpi, do you agree that the 1.5 probably is explained by the explanation I proposed?  (1.5 is due to 0, 0, 0 point of model being at 24 pixels above ground.)

 

The thing we need to think through is where this offset is in the order of the actual operations.  Does the scale happen around the 0, 0, 0 point of the model?  I kind of expect that it does not because otherwise the model wouldn't "move" so much when scaled.  So is the scaling actually happening around the point on the ground (1.5 down in Y direction)?

 

In other words, should you scale then translate, or translate then scale?  I've always just mucked around to correct the offset manually ...

 

What's your understanding?

 

I'm also wondering if doing the scaling in the preRenderCallback() behaves any differently.  It's possible (I haven't had time to trace the implementation) that that is called inside the translation.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

Agree on the basis of the 1.5.

 

The translate has to be before the scale.  I tried it the other way and the math is different.  Could proably figure it out but probably not worth it.  Can't think of a reason why would care which order it was in.

 

Haven't looked at the rendercallback at all yet.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Can't think of a reason why would care which order it was in.

 

It matters because any point away from the origin of the scale will also get scaled.  If you have a model that is 1 pixel offset from the origin and call the scale for 2x, the model will then be 2 pixels away (in addition to being bigger).  If you want to scale something but keep it in its current postion you need to translate to origin of the scaling reference, scale, then translate back.  Otherwise the model's relative origin will move during the scaling.  Basically, scaling something that isn't at the origin of the scaling system will also cause translation.  Not sure if that was clear ...

 

Note that we have an additional problem to consider in our case -- we want the feet/base of our model to still touch the ground after the scaling.  So we can't just move the model back to original translation, but rather we need to do the scaled translation.  This is what you found in your formula -- i.e. you had to scale the second translation.

 

So what I think we need to do:

- original model starts at 1.5blocks above ground.

- need to move model down 1.5blocks such that origin is at the ground

- scale the model

- move the model up by 1.5*scaleFactor (since you're trying to get the feet of the scaled model back up to the ground level)

 

That is pretty much what you found out, and so I'm just explaining why it makes sense.  I think.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

You are right.  If you don't use the same center of 24 would cause issues, but could just change the 1.5 to what makes sense.

 

 

I'm not sure about that last line in the order.

 

I used the formula, scaled it, and things looked good.

 

On close inspection, the feet might have been slightly in the ground, but was very very slight.  When I get home tonight, i'll test if raising it by what you said fixes it.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Then why you are trying to scale the each model, not just scale up the whole model?

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

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

Posted

I appreciate the interest, but if you would go back and read the chain from the start.  I don't think you have a complete picture yet.

 

I am scaling the entire entity and res positioning its feet on the ground.

 

I am scaling certain individual parts to avoid skin ripples.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Here is my current version after all the discussion.  Works great.

 

 

 

@SideOnly(Side.CLIENT)

public class ModelRaptor extends ModelBase {

 

// Setup Tail angles

float tail_angle = 0.0F;

float tail_angle_incriment = 0.0005F;

float tail_angle_limit = 0.05F;

float tail_angle_growth = 0.2F;

int tail_angle_direction = 1;

 

// Setup Camo

boolean camo = false;

 

// Setup models

ModelRenderer head;

    ModelRenderer headb;

    ModelRenderer headuppera;

    ModelRenderer headupperb;

    MyModelRenderer headlowera;

    MyModelRenderer headlowerb;

    ModelRenderer tongue;

    ModelRenderer body;

    MyModelRenderer neck;

    ModelRenderer rightarm;

    ModelRenderer righthanda;

    ModelRenderer righthandb;

    ModelRenderer leftarm;

    ModelRenderer lefthanda;

    ModelRenderer lefthandb;

    ModelRenderer leftleg;

    MyModelRenderer leftlegb;

    ModelRenderer leftlegc;

    ModelRenderer leftfoottoe2b;

    ModelRenderer leftfoottoe1b;

    ModelRenderer leftfoottoe2a;

    ModelRenderer leftfoottoe1a;

    ModelRenderer leftfoot;

    ModelRenderer rightleg;

    MyModelRenderer rightlegb;

    ModelRenderer rightlegc;

    ModelRenderer rightfoottoe1a;

    ModelRenderer rightfoottoe2b;

    ModelRenderer rightfoottoe2a;

    ModelRenderer rightfoottoe1b;

    ModelRenderer rightfoot;

    ModelRenderer taila;

    ModelRenderer tailb;

    ModelRenderer tailc;

    ModelRenderer taild;

    ModelRenderer taile;

    ModelRenderer tooth1a;

    ModelRenderer tooth2a;

    ModelRenderer tooth1b;

    ModelRenderer tooth2b;

    ModelRenderer tooth1c;

    ModelRenderer tooth2c;

    ModelRenderer tooth1d;

    ModelRenderer tooth2d;

    ModelRenderer tooth1e;

    ModelRenderer tooth2e;

    ModelRenderer tooth1f;

    ModelRenderer tooth2f;

    ModelRenderer tooth1g;

    ModelRenderer tooth2g;

    ModelRenderer tooth1h;

    ModelRenderer tooth2h;

    ModelRenderer tooth1i;

    ModelRenderer tooth2i;

    ModelRenderer tooth1j;

    ModelRenderer tooth2j;

    ModelRenderer tooth1k;

    ModelRenderer tooth2k;

    ModelRenderer tooth1l;

    ModelRenderer tooth2l;

    ModelRenderer tooth1m;

    ModelRenderer tooth2m;

    ModelRenderer tooth1n;

    ModelRenderer tooth2n;

    ModelRenderer tooth1o;

    ModelRenderer tooth2o;

 

    public ModelRaptor() {

   

    textureWidth = 256;

        textureHeight = 256;

       

       

        // Head

       

        head = new ModelRenderer(this, 0, 0);

        head.addBox(-4F, -13F, -9F, 8, 7, 8);

        head.setRotationPoint(0F, 0F, -15F);

        head.setTextureSize(256, 256);

        head.mirror = true;

        setRotation(head, 0F, 0F, 0F);

       

        headb = new ModelRenderer(this, 40, 0);

        headb.addBox(-3F, -14F, -8F, 6, 1, 6);

        headb.setRotationPoint(0F, 0F, 0F);

        headb.setTextureSize(256, 256);

        headb.mirror = true;

        setRotation(headb, 0F, 0F, 0F);

        head.addChild(headb);

 

        neck = new MyModelRenderer(this, 50, 55);

        neck.addBox(-4F, -11F, -2F, 8, 12, 6);

        neck.setRotationPoint(0F, 0F, 0F);

        neck.setTextureSize(64, 32);

        neck.mirror = true;

        setRotation(neck, 0.4363323F, 0F, 0F);

        neck.MyScale(0.995F, 1.0F, 1.0F);

        head.addChild(neck);

       

       

        // Upper Jaw

       

        headuppera = new ModelRenderer(this, 0, 20);

        headuppera.addBox(-4F, -12F, -20F, 8, 1, 11);

        headuppera.setRotationPoint(0F, 0F, 0F);

        headuppera.setTextureSize(256, 256);

        headuppera.mirror = true;

        setRotation(headuppera, 0F, 0F, 0F);

        head.addChild(headuppera);

       

        headupperb = new ModelRenderer(this, 45, 20);

        headupperb.addBox(-4F, -11F, -21F, 8, 1, 12);

        headupperb.setRotationPoint(0F, 0F, 0F);

        headupperb.setTextureSize(256, 256);

        headupperb.mirror = true;

        setRotation(headupperb, 0F, 0F, 0F);

        headuppera.addChild(headupperb);

       

       

        // Lower Jaw       

        headlowera = new MyModelRenderer(this, 0, 35);

        headlowera.addBox(-4F, -9.5F, -19.2F, 8, 1, 12);

        headlowera.setRotationPoint(0F, 0F, 0F);

        headlowera.setTextureSize(256, 256);

        headlowera.mirror = true;

        setRotation(headlowera, 0.1919862F, 0F, 0F);

        headlowera.MyScale(0.995F, 1.0F, 1.0F);

        head.addChild(headlowera);

       

        headlowerb = new MyModelRenderer(this, 45, 35);

        headlowerb.addBox(-4F, -8.5F, -13.2F, 8, 1, 6);

        headlowerb.setRotationPoint(0F, 0, 0F);

        headlowerb.setTextureSize(256, 256);

        headlowerb.mirror = true;

        setRotation(headlowerb, 0.1919862F - headlowera.rotateAngleX, 0F, 0F);

        headlowera.addChild(headlowerb);

        headlowerb.MyScale(0.995F, 1.0F, 1.0F);

       

        tongue = new ModelRenderer(this, 80, 35);

        tongue.addBox(-2F, -9.7F, -17.2F, 4, 1, 10);

        tongue.setRotationPoint(0F, 0F, 0F);

        tongue.setTextureSize(256, 256);

        tongue.mirror = true;

        setRotation(tongue, 0.1919862F - headlowera.rotateAngleX, 0F, 0F);

        headlowera.addChild(tongue);

       

       

        // Body

       

        body = new ModelRenderer(this, 0, 55);

        body.addBox(-6F, -17F, -8F, 12, 21, 8);

        body.setRotationPoint(0F, 0F, 0F);

        body.setTextureSize(256, 256);

        body.mirror = true;

        setRotation(body, 1.308997F, 0F, 0F);     

       

        // Right Arm

       

        rightarm = new ModelRenderer(this, 150, 50);

        rightarm.addBox(-2F, -1F, -1F, 2, 12, 2);

        rightarm.setRotationPoint(-6F, 0F, -16F);

        rightarm.setTextureSize(256, 256);

        rightarm.mirror = true;

        setRotation(rightarm, -0.7853982F, 0F, 0F);

               

        righthanda = new ModelRenderer(this, 170, 50);

        righthanda.addBox(-4.5F, 9F, -0.5F, 1, 4, 1);

        righthanda.setRotationPoint(0F, 0F, 0F);

        righthanda.setTextureSize(256, 256);

        righthanda.mirror = true;

        setRotation(righthanda, degToRad(0), degToRad(6), degToRad(-21));

        rightarm.addChild(righthanda);

       

        righthandb = new ModelRenderer(this, 180, 50);

        righthandb.addBox(1.0F, 10F, 0F, 1, 4, 1);

        righthandb.setRotationPoint(0F, 0F, 0F);

        righthandb.setTextureSize(256, 256);

        righthandb.mirror = true;

        setRotation(righthandb, degToRad(0), degToRad(0), degToRad(16));

        rightarm.addChild(righthandb);

       

       

        // Left Arm

       

        leftarm = new ModelRenderer(this, 150, 80);

        leftarm.addBox(0F, -1F, -1F, 2, 12, 2);

        leftarm.setRotationPoint(6F, 0F, -16F);

        leftarm.setTextureSize(256, 256);

        leftarm.mirror = true;

        setRotation(leftarm, -0.7853982F, 0F, 0F);

       

        lefthanda = new ModelRenderer(this, 170, 80);

        lefthanda.addBox(3F, 9F, 0F, 1, 4, 1);

        lefthanda.setRotationPoint(0F, 0F, 0F);

        lefthanda.setTextureSize(256, 256);

        lefthanda.mirror = true;

        setRotation(lefthanda, degToRad(0), degToRad(0), degToRad(16));

        leftarm.addChild(lefthanda);

       

        lefthandb = new ModelRenderer(this, 180, 80);

        lefthandb.addBox(-3F, 10F, -0.5F, 1, 4, 1);

        lefthandb.setRotationPoint(0F, 0F, 0F);

        lefthandb.setTextureSize(256, 256);

        lefthandb.mirror = true;

        setRotation(lefthandb, degToRad(0), degToRad(6), degToRad(-21));

        leftarm.addChild(lefthandb);

       

       

        // Left Leg

       

        leftleg = new ModelRenderer(this, 0, 120);

        leftleg.addBox(-3F, -2F, -2.5F, 3, 7, 5);

        leftleg.setRotationPoint(-6F, 2F, -3F);

        leftleg.setTextureSize(256, 256);

        leftleg.mirror = true;

        setRotation(leftleg, 0F, 0F, 0F);

       

        leftlegb = new MyModelRenderer(this, 0, 140);

        leftlegb.addBox(-3F, 0F, -5F, 3, 15, 4);

        leftlegb.setRotationPoint(0F, 0F, 0F);

        leftlegb.setTextureSize(256, 256);

        leftlegb.mirror = true;

        setRotation(leftlegb, 1.134464F - leftleg.rotateAngleX, 0F, 0F);

        leftlegb.MyScale(0.995F, 1.0F, 1.0F);

        leftleg.addChild(leftlegb);

       

        leftlegc = new ModelRenderer(this, 0, 165);

        leftlegc.addBox(-3F, 2.1F, 12F, 3, 15, 3);

        leftlegc.setRotationPoint(0F, 0F, 0F);

        leftlegc.setTextureSize(256, 256);

        leftlegc.mirror = true;

        setRotation(leftlegc, -0.4363323F, 0F, 0F);

        leftleg.addChild(leftlegc);

       

        leftfoottoe2b = new ModelRenderer(this, 37, 175);

        leftfoottoe2b.addBox(-4F, 20F, 0F, 1, 2, 1);

        leftfoottoe2b.setRotationPoint(0F, 0F, 0F);

        leftfoottoe2b.setTextureSize(256, 256);

        leftfoottoe2b.mirror = true;

        setRotation(leftfoottoe2b, 0F, 0F, 0F);

        leftleg.addChild(leftfoottoe2b);

       

        leftfoottoe1b = new ModelRenderer(this, 37, 165);

        leftfoottoe1b.addBox(0F, 20F, -2F, 1, 2, 2);

        leftfoottoe1b.setRotationPoint(0F, 0F, 0F);

        leftfoottoe1b.setTextureSize(256, 256);

        leftfoottoe1b.mirror = true;

        setRotation(leftfoottoe1b, 0F, 0F, 0F);

        leftleg.addChild(leftfoottoe1b);

       

        leftfoottoe2a = new ModelRenderer(this, 20, 175);

        leftfoottoe2a.addBox(-5F, 20F, 1F, 3, 2, 3);

        leftfoottoe2a.setRotationPoint(0F, 0F, 0F);

        leftfoottoe2a.setTextureSize(256, 256);

        leftfoottoe2a.mirror = true;

        setRotation(leftfoottoe2a, 0F, 0F, 0F);

        leftleg.addChild(leftfoottoe2a);

       

        leftfoottoe1a = new ModelRenderer(this, 20, 165);

        leftfoottoe1a.addBox(-1F, 20F, 0F, 3, 2, 4);

        leftfoottoe1a.setRotationPoint(0F, 0F, 0F);

        leftfoottoe1a.setTextureSize(256, 256);

        leftfoottoe1a.mirror = true;

        setRotation(leftfoottoe1a, 0F, 0F, 0F);

        leftleg.addChild(leftfoottoe1a);

       

        leftfoot = new ModelRenderer(this, 20, 140);

        leftfoot.addBox(-5F, 20F, 4F, 7, 2, 3);

        leftfoot.setRotationPoint(0F, 0F, 0F);

        leftfoot.setTextureSize(256, 256);

        leftfoot.mirror = true;

        setRotation(leftfoot, 0F, 0F, 0F);

        leftleg.addChild(leftfoot);

       

       

        // Right Leg

       

        rightleg = new ModelRenderer(this, 50, 120);

        rightleg.addBox(0F, -2F, -2.5F, 3, 7, 5);

        rightleg.setRotationPoint(6F, 2F, -3F);

        rightleg.setTextureSize(256, 256);

        rightleg.mirror = true;

        setRotation(rightleg, 0F, 0F, 0F);

       

        rightlegb = new MyModelRenderer(this, 50, 140);

        rightlegb.addBox(0F, 0F, -5F, 3, 15, 4);

        rightlegb.setRotationPoint(0F, 0F, 0F);

        rightlegb.setTextureSize(256, 256);

        rightlegb.mirror = true;

        setRotation(rightlegb, 1.134464F - rightleg.rotateAngleX, 0F, 0F);

        rightlegb.MyScale(0.995F, 1.0F, 1.0F);

        rightleg.addChild(rightlegb);

       

        rightlegc = new ModelRenderer(this, 50, 165);

        rightlegc.addBox(0F, 2.1F, 12F, 3, 15, 3);

        rightlegc.setRotationPoint(0F, 0F, 0F);

        rightlegc.setTextureSize(256, 256);

        rightlegc.mirror = true;

        setRotation(rightlegc, -0.4363323F, 0F, 0F);

        rightleg.addChild(rightlegc);

       

        rightfoottoe1a = new ModelRenderer(this, 70, 165);

        rightfoottoe1a.addBox(-2F, 20F, 0F, 3, 2, 4);

        rightfoottoe1a.setRotationPoint(0F, 0F, 0F);

        rightfoottoe1a.setTextureSize(256, 256);

        rightfoottoe1a.mirror = true;

        setRotation(rightfoottoe1a, 0F, 0F, 0F);

        rightleg.addChild(rightfoottoe1a);

       

        rightfoottoe2b = new ModelRenderer(this, 87, 175);

        rightfoottoe2b.addBox(3F, 20F, 0F, 1, 2, 1);

        rightfoottoe2b.setRotationPoint(0F, 0F, 0F);

        rightfoottoe2b.setTextureSize(256, 256);

        rightfoottoe2b.mirror = true;

        setRotation(rightfoottoe2b, 0F, 0F, 0F);

        rightleg.addChild(rightfoottoe2b);

       

        rightfoottoe2a = new ModelRenderer(this, 70, 175);

        rightfoottoe2a.addBox(2F, 20F, 1F, 3, 2, 3);

        rightfoottoe2a.setRotationPoint(0F, 0F, 0F);

        rightfoottoe2a.setTextureSize(256, 256);

        rightfoottoe2a.mirror = true;

        setRotation(rightfoottoe2a, 0F, 0F, 0F);

        rightleg.addChild(rightfoottoe2a);

       

        rightfoottoe1b = new ModelRenderer(this, 87, 165);

        rightfoottoe1b.addBox(-1F, 20F, -2F, 1, 2, 2);

        rightfoottoe1b.setRotationPoint(0F, 0F, 0F);

        rightfoottoe1b.setTextureSize(256, 256);

        rightfoottoe1b.mirror = true;

        setRotation(rightfoottoe1b, 0F, 0F, 0F);

        rightleg.addChild(rightfoottoe1b);

       

        rightfoot = new ModelRenderer(this, 70, 140);

        rightfoot.addBox(-2F, 20F, 4F, 7, 2, 3);

        rightfoot.setRotationPoint(0F, 0F, 0F);

        rightfoot.setTextureSize(256, 256);

        rightfoot.mirror = true;

        setRotation(rightfoot, 0F, 0F, 0F);

        rightleg.addChild(rightfoot);

       

       

        // Tail

       

        taila = new ModelRenderer(this, 0, 95);

        taila.addBox(-5F, 2F, -8F, 10, 10, 7);

        taila.setRotationPoint(0F, 0F, 0F);

        taila.setTextureSize(256, 256);

        taila.mirror = true;

        setRotation(taila, 1.500983F - body.rotateAngleX, 0F, 0F);

        body.addChild(taila);

       

        tailb = new ModelRenderer(this, 40, 95);

        tailb.addBox(-4F, 11F, -7F, 8, 10, 5);

        tailb.setRotationPoint(0F, 0F, 0F);

        tailb.setTextureSize(256, 256);

        tailb.mirror = true;

        setRotation(tailb, 1.500983F - body.rotateAngleX, 0F, 0F);

        body.addChild(tailb);

       

        tailc = new ModelRenderer(this, 70, 95);

        tailc.addBox(-3F, 20F, -6F, 6, 10, 3);

        tailc.setRotationPoint(0F, 0F, 0F);

        tailc.setTextureSize(256, 256);

        tailc.mirror = true;

        setRotation(tailc, 1.500983F - body.rotateAngleX, 0F, 0F);

        body.addChild(tailc);

       

        taild = new ModelRenderer(this, 95, 95);

        taild.addBox(-2F, 29F, -5F, 4, 5, 1);

        taild.setRotationPoint(0F, 0F, 0F);

        taild.setTextureSize(256, 256);

        taild.mirror = true;

        setRotation(taild, 1.500983F - body.rotateAngleX, 0F, 0F);

        body.addChild(taild);

       

        taile = new ModelRenderer(this, 110, 95);

        taile.addBox(-1F, 33F, -5F, 2, 5, 1);

        taile.setRotationPoint(0F, 0F, 0F);

        taile.setTextureSize(256, 256);

        taile.mirror = true;

        setRotation(taile, 1.500983F - body.rotateAngleX, 0F, 0F);

        body.addChild(taile);

       

       

        // Lower Jaw Teeth

       

        tooth1a = new ModelRenderer(this, 250, 0);

        tooth1a.addBox(-3.9F, -19.5F, -8.1F, 1, 1, 1);

        tooth1a.setRotationPoint(0F, 0F, 0F);

        tooth1a.setTextureSize(256, 256);

        tooth1a.mirror = true;

        setRotation(tooth1a, 0.9075712F - headlowera.rotateAngleX, 0F, 0F);       

        headlowera.addChild(tooth1a);

       

        tooth2a = new ModelRenderer(this, 250, 0);

        tooth2a.addBox(2.9F, -19.5F, -8.1F, 1, 1, 1);

        tooth2a.setRotationPoint(0F, 0F, 0F);

        tooth2a.setTextureSize(256, 256);

        tooth2a.mirror = true;

        setRotation(tooth2a, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2a);

       

        tooth1b = new ModelRenderer(this, 250, 0);

        tooth1b.addBox(-3.9F, -18.6F, -7.1F, 1, 1, 1);

        tooth1b.setRotationPoint(0F, 0F, 0F);

        tooth1b.setTextureSize(256, 256);

        tooth1b.mirror = true;

        setRotation(tooth1b, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1b);

       

        tooth2b = new ModelRenderer(this, 250, 0);

        tooth2b.addBox(2.9F, -18.6F, -7.1F, 1, 1, 1);

        tooth2b.setRotationPoint(0F, 0F, 0F);

        tooth2b.setTextureSize(256, 256);

        tooth2b.mirror = true;

        setRotation(tooth2b, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2b);

       

        tooth1c = new ModelRenderer(this, 250, 0);

        tooth1c.addBox(-3.9F, -17.7F, -6.1F, 1, 1, 1);

        tooth1c.setRotationPoint(0F, 0F, 0F);

        tooth1c.setTextureSize(256, 256);

        tooth1c.mirror = true;

        setRotation(tooth1c, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1c);

       

        tooth2c = new ModelRenderer(this, 250, 0);

        tooth2c.addBox(2.9F, -17.7F, -6.1F, 1, 1, 1);

        tooth2c.setRotationPoint(0F, 0F, 0F);

        tooth2c.setTextureSize(256, 256);

        tooth2c.mirror = true;

        setRotation(tooth2c, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2c);

       

        tooth1d = new ModelRenderer(this, 250, 0);

        tooth1d.addBox(-3.9F, -16.8F, -5.1F, 1, 1, 1);

        tooth1d.setRotationPoint(0F, 0F, 0F);

        tooth1d.setTextureSize(256, 256);

        tooth1d.mirror = true;

        setRotation(tooth1d, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1d);

       

        tooth2d = new ModelRenderer(this, 250, 0);

        tooth2d.addBox(2.9F, -16.8F, -5.1F, 1, 1, 1);

        tooth2d.setRotationPoint(0F, 0F, 0F);

        tooth2d.setTextureSize(256, 256);

        tooth2d.mirror = true;

        setRotation(tooth2d, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2d);

       

        tooth1e = new ModelRenderer(this, 250, 0);

        tooth1e.addBox(-3.9F, -15.9F, -4.1F, 1, 1, 1);

        tooth1e.setRotationPoint(0F, 0F, 0F);

        tooth1e.setTextureSize(256, 256);

        tooth1e.mirror = true;

        setRotation(tooth1e, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1e);

       

        tooth2e = new ModelRenderer(this, 250, 0);

        tooth2e.addBox(2.9F, -15.9F, -4.1F, 1, 1, 1);

        tooth2e.setRotationPoint(0F, 0F, 0F);

        tooth2e.setTextureSize(256, 256);

        tooth2e.mirror = true;

        setRotation(tooth2e, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2e);

       

        tooth1f = new ModelRenderer(this, 250, 0);

        tooth1f.addBox(-3.9F, -15F, -3.1F, 1, 1, 1);

        tooth1f.setRotationPoint(0F, 0F, 0F);

        tooth1f.setTextureSize(256, 256);

        tooth1f.mirror = true;

        setRotation(tooth1f, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1f);

       

        tooth2f = new ModelRenderer(this, 250, 0);

        tooth2f.addBox(2.9F, -15F, -3.1F, 1, 1, 1);

        tooth2f.setRotationPoint(0F, 0F, 0F);

        tooth2f.setTextureSize(256, 256);

        tooth2f.mirror = true;

        setRotation(tooth2f, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2f);

       

        tooth1g = new ModelRenderer(this, 250, 0);

        tooth1g.addBox(-3.9F, -14.1F, -2.1F, 1, 1, 1);

        tooth1g.setRotationPoint(0F, 0F, 0F);

        tooth1g.setTextureSize(256, 256);

        tooth1g.mirror = true;

        setRotation(tooth1g, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1g);

       

        tooth2g = new ModelRenderer(this, 250, 0);

        tooth2g.addBox(2.9F, -14.1F, -2.1F, 1, 1, 1);

        tooth2g.setRotationPoint(0F, 0F, 0F);

        tooth2g.setTextureSize(256, 256);

        tooth2g.mirror = true;

        setRotation(tooth2g, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2g);

       

        tooth1h = new ModelRenderer(this, 250, 0);

        tooth1h.addBox(-3.9F, -13.2F, -1.1F, 1, 1, 1);

        tooth1h.setRotationPoint(0F, 0F, 0F);

        tooth1h.setTextureSize(256, 256);

        tooth1h.mirror = true;

        setRotation(tooth1h, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth1h);

       

        tooth2h = new ModelRenderer(this, 250, 0);

        tooth2h.addBox(2.9F, -13.2F, -1.1F, 1, 1, 1);

        tooth2h.setRotationPoint(0F, 0F, 0F);

        tooth2h.setTextureSize(256, 256);

        tooth2h.mirror = true;

        setRotation(tooth2h, 0.9075712F - headlowera.rotateAngleX, 0F - headlowera.rotateAngleY, 0F - headlowera.rotateAngleZ); 

        headlowera.addChild(tooth2h);

       

       

        // Upper Jaw Teeth

       

        tooth1i = new ModelRenderer(this, 250, 0);

        tooth1i.addBox(-3.9F, -21.5F, -7.3F, 1, 1, 1);

        tooth1i.setRotationPoint(0F, 0F, 0F);

        tooth1i.setTextureSize(256, 256);

        tooth1i.mirror = true;

        setRotation(tooth1i, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1i);

       

        tooth2i = new ModelRenderer(this, 250, 0);

        tooth2i.addBox(2.9F, -21.5F, -7.3F, 1, 1, 1);

        tooth2i.setRotationPoint(0F, 0F, 0F);

        tooth2i.setTextureSize(256, 256);

        tooth2i.mirror = true;

        setRotation(tooth2i, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2i);

       

        tooth1j = new ModelRenderer(this, 250, 0);

        tooth1j.addBox(-3.9F, -20.5F, -6.3F, 1, 1, 1);

        tooth1j.setRotationPoint(0F, 0F, 0F);

        tooth1j.setTextureSize(256, 256);

        tooth1j.mirror = true;

        setRotation(tooth1j, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1j);

       

        tooth2j = new ModelRenderer(this, 250, 0);

        tooth2j.addBox(2.9F, -20.5F, -6.3F, 1, 1, 1);

        tooth2j.setRotationPoint(0F, 0F, 0F);

        tooth2j.setTextureSize(256, 256);

        tooth2j.mirror = true;

        setRotation(tooth2j, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2j);

       

        tooth1k = new ModelRenderer(this, 250, 0);

        tooth1k.addBox(-3.9F, -19.5F, -5.3F, 1, 1, 1);

        tooth1k.setRotationPoint(0F, 0F, 0F);

        tooth1k.setTextureSize(256, 256);

        tooth1k.mirror = true;

        setRotation(tooth1k, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1k);

       

        tooth2k = new ModelRenderer(this, 250, 0);

        tooth2k.addBox(2.9F, -19.5F, -5.3F, 1, 1, 1);

        tooth2k.setRotationPoint(0F, 0F, 0F);

        tooth2k.setTextureSize(256, 256);

        tooth2k.mirror = true;

        setRotation(tooth2k, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2k);

       

        tooth1l = new ModelRenderer(this, 250, 0);

        tooth1l.addBox(-3.9F, -18.5F, -4.3F, 1, 1, 1);

        tooth1l.setRotationPoint(0F, 0F, 0F);

        tooth1l.setTextureSize(256, 256);

        tooth1l.mirror = true;

        setRotation(tooth1l, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1l);

       

        tooth2l = new ModelRenderer(this, 250, 0);

        tooth2l.addBox(2.9F, -18.5F, -4.3F, 1, 1, 1);

        tooth2l.setRotationPoint(0F, 0F, 0F);

        tooth2l.setTextureSize(256, 256);

        tooth2l.mirror = true;

        setRotation(tooth2l, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2l);

       

        tooth1m = new ModelRenderer(this, 250, 0);

        tooth1m.addBox(-3.9F, -17.5F, -3.3F, 1, 1, 1);

        tooth1m.setRotationPoint(0F, 0F, 0F);

        tooth1m.setTextureSize(256, 256);

        tooth1m.mirror = true;

        setRotation(tooth1m, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1m);

       

        tooth2m = new ModelRenderer(this, 250, 0);

        tooth2m.addBox(2.9F, -17.5F, -3.3F, 1, 1, 1);

        tooth2m.setRotationPoint(0F, 0F, 0F);

        tooth2m.setTextureSize(256, 256);

        tooth2m.mirror = true;

        setRotation(tooth2m, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2m);

       

        tooth1n = new ModelRenderer(this, 250, 0);

        tooth1n.addBox(-3.9F, -16.5F, -2.3F, 1, 1, 1);

        tooth1n.setRotationPoint(0F, 0F, 0F);

        tooth1n.setTextureSize(256, 256);

        tooth1n.mirror = true;

        setRotation(tooth1n, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1n);

       

        tooth2n = new ModelRenderer(this, 250, 0);

        tooth2n.addBox(2.9F, -16.5F, -2.3F, 1, 1, 1);

        tooth2n.setRotationPoint(0F, 0F, 0F);

        tooth2n.setTextureSize(256, 256);

        tooth2n.mirror = true;

        setRotation(tooth2n, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2n);

       

        tooth1o = new ModelRenderer(this, 250, 0);

        tooth1o.addBox(-3.9F, -15.5F, -1.3F, 1, 1, 1);

        tooth1o.setRotationPoint(0F, 0F, 0F);

        tooth1o.setTextureSize(256, 256);

        tooth1o.mirror = true;

        setRotation(tooth1o, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth1o);

       

        tooth2o = new ModelRenderer(this, 250, 0);

        tooth2o.addBox(2.9F, -15.5F, -1.3F, 1, 1, 1);

        tooth2o.setRotationPoint(0F, 0F, 0F);

        tooth2o.setTextureSize(256, 256);

        tooth2o.mirror = true;

        setRotation(tooth2o, 0.7853982F, 0F, 0F);

        headuppera.addChild(tooth2o);

       

    }

 

    public void setRotation(ModelRenderer model, float x, float y, float z) {

   

        model.rotateAngleX = x;

        model.rotateAngleY = y;

        model.rotateAngleZ = z;

       

    }

 

    // f & f1 are some type of limb movement factors

   

    @Override

    public void setRotationAngles(float limb_angle, float limb_progress, float f2, float headY, float headX, float f5, Entity entity) {

        super.setRotationAngles(limb_angle, limb_progress, f2, headY, headX, f5, entity);

       

        // Handle Head Rotation

        head.rotateAngleY = headY / (180F / (float)Math.PI);

        head.rotateAngleX = headX / (180F / (float)Math.PI);

       

        // Handle Walking Animation

        float limb_angle_multiplier = 0.6662F;  // 0.6662F Original

        float limb_rotation_multiplier = 0.7F;  // 1.4F Original

             

        leftleg.rotateAngleX = MathHelper.cos(limb_angle * limb_angle_multiplier) * limb_rotation_multiplier * limb_progress;

        rightleg.rotateAngleX = MathHelper.cos(limb_angle * limb_angle_multiplier + (float)Math.PI) * limb_rotation_multiplier * limb_progress;

     

        // Handle Tail Wag Animation

        tail_angle = tail_angle  + tail_angle_incriment * tail_angle_direction;

        if (tail_angle >= tail_angle_limit) tail_angle_direction = -1;

        if (tail_angle <= (-tail_angle_limit)) tail_angle_direction = 1;

        //System.out.println("tail_angle of " + tail_angle);

       

        // Handle Jaw

        MyEntityRaptor raptor = (MyEntityRaptor) entity;

        float jaw_position = raptor.jaw_position();

       

        // Handle Tail Rotations

        taila.rotateAngleZ = body.rotateAngleZ + tail_angle * (1 + 0 * tail_angle_growth);

        tailb.rotateAngleZ = body.rotateAngleZ + tail_angle * (1 + 1 * tail_angle_growth);

        tailc.rotateAngleZ = body.rotateAngleZ + tail_angle * (1 + 2 * tail_angle_growth);

        taild.rotateAngleZ = body.rotateAngleZ + tail_angle * (1 + 3 * tail_angle_growth);

        taile.rotateAngleZ = body.rotateAngleZ + tail_angle * (1 + 4 * tail_angle_growth);

       

    }

   

    @Override

    public void render(Entity entity, float par2, float par3, float par4, float par5, float par6, float par7) {

   

    // Setup raptor

    MyEntityRaptor raptor = (MyEntityRaptor) entity;

   

    // Set Rotation

        this.setRotationAngles(par2, par3, par4, par5, par6, par7, entity);

       

        // Setup factors - can't just adjust this

        float shrink_factor = 2.0f;

       

        // Check for Child

        if (raptor.isChild()) shrink_factor = 3.0f;

 

        // Calculate Offset

        float shift_y = (24F /16F) - (1F / shrink_factor * 1.5F);

       

        // Initiate Matrix

        GL11.glPushMatrix();

       

        // Move the entity for the scale

        GL11.glTranslatef(0.0F, shift_y, 0.0F);

       

        // Set Scale       

        GL11.glScalef(1.0F / shrink_factor, 1.0F / shrink_factor, 1.0F / shrink_factor);

       

        // Render the Raptor

        this.head.render(par7);

 

        this.body.render(par7);

       

        this.leftarm.render(par7);

       

        this.rightarm.render(par7);

 

        this.leftleg.render(par7);

 

        this.rightleg.render(par7);

               

        // Finish Matrix

        GL11.glPopMatrix();

 

    }

   

    protected float degToRad(float degrees) {

   

        return degrees * (float)Math.PI / 180 ;

       

    }

   

}

 

 

 

Custom ModelRenderer

 

 

public class MyModelRenderer extends ModelRenderer {

 

// Setup Variables

  protected float MyScaleX = 1;

  protected float MyScaleY = 1;

  protected float MyScaleZ = 1;

 

  // Handle repeat variables

  protected int displayList;

  protected boolean compiled;

 

 

  public MyModelRenderer(ModelBase par1ModelBase, String par2Str) {

      super(par1ModelBase, par2Str);

       

  }

 

  public MyModelRenderer(ModelBase par1ModelBase) {

      super(par1ModelBase, null);

       

  }

 

  public MyModelRenderer(ModelBase par1ModelBase, int par2, int par3) { 

      this(par1ModelBase);

      this.setTextureOffset(par2, par3);

     

  }

 

  public void MyScale(float MyScaleX, float MyScaleY, float MyScaleZ) {

 

      // Set Variables

      this.MyScaleX = MyScaleX;

      this.MyScaleY = MyScaleY;

      this.MyScaleZ = MyScaleZ;

 

  }  

 

  protected void customCallList() {

 

      // Scale the render

      GL11.glScalef(1 * MyScaleX, 1 * MyScaleY, 1 * MyScaleZ);

     

      // Make the display call

      GL11.glCallList(this.displayList);

 

      // Remove the scale

      GL11.glScalef(1 / MyScaleX, 1 / MyScaleY, 1 / MyScaleZ);

     

  }

 

  @SideOnly(Side.CLIENT)

  private void compileDisplayList(float par1) {

 

      this.displayList = GLAllocation.generateDisplayLists(1);

      GL11.glNewList(this.displayList, GL11.GL_COMPILE);

      Tessellator tessellator = Tessellator.instance;

 

      for (int i = 0; i < this.cubeList.size(); ++i)

      {

          ((ModelBox)this.cubeList.get(i)).render(tessellator, par1);

      }

 

      GL11.glEndList();

      this.compiled = true;

     

  }

 

    @SideOnly(Side.CLIENT)

  @Override

    public void render(float par1)

    {

        if (!this.isHidden)

        {

            if (this.showModel)

            {

                if (!this.compiled)

                {

                    this.compileDisplayList(par1);

                }

 

                GL11.glTranslatef(this.offsetX, this.offsetY, this.offsetZ);

                int i;

 

                if (this.rotateAngleX == 0.0F && this.rotateAngleY == 0.0F && this.rotateAngleZ == 0.0F)

                {

                    if (this.rotationPointX == 0.0F && this.rotationPointY == 0.0F && this.rotationPointZ == 0.0F)

                    {

                        //GL11.glCallList(this.displayList);

                  customCallList();

 

                        if (this.childModels != null)

                        {

                            for (i = 0; i < this.childModels.size(); ++i)

                            {

                                ((ModelRenderer)this.childModels.get(i)).render(par1);

                            }

                        }

                    }

                    else

                    {

                        GL11.glTranslatef(this.rotationPointX * par1, this.rotationPointY * par1, this.rotationPointZ * par1);

                        //GL11.glCallList(this.displayList);

                  customCallList();

 

                        if (this.childModels != null)

                        {

                            for (i = 0; i < this.childModels.size(); ++i)

                            {

                                ((ModelRenderer)this.childModels.get(i)).render(par1);

                            }

                        }

 

                        GL11.glTranslatef(-this.rotationPointX * par1, -this.rotationPointY * par1, -this.rotationPointZ * par1);

                    }

                }

                else

                {

                    GL11.glPushMatrix();

                    GL11.glTranslatef(this.rotationPointX * par1, this.rotationPointY * par1, this.rotationPointZ * par1);

 

                    if (this.rotateAngleZ != 0.0F)

                    {

                        GL11.glRotatef(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);

                    }

 

                    if (this.rotateAngleY != 0.0F)

                    {

                        GL11.glRotatef(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);

                    }

 

                    if (this.rotateAngleX != 0.0F)

                    {

                        GL11.glRotatef(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);

                    }

 

                    //GL11.glCallList(this.displayList);

              customCallList();

 

                    if (this.childModels != null)

                    {

                        for (i = 0; i < this.childModels.size(); ++i)

                        {

                            ((ModelRenderer)this.childModels.get(i)).render(par1);

                        }

                    }

 

                    GL11.glPopMatrix();

                }

 

                GL11.glTranslatef(-this.offsetX, -this.offsetY, -this.offsetZ);

            }

        }

    }

 

  @SideOnly(Side.CLIENT)

  @Override

    public void renderWithRotation(float par1)

    {

        if (!this.isHidden)

        {

            if (this.showModel)

            {

                if (!this.compiled)

                {

                    this.compileDisplayList(par1);

                }

 

                GL11.glPushMatrix();

                GL11.glTranslatef(this.rotationPointX * par1, this.rotationPointY * par1, this.rotationPointZ * par1);

 

                if (this.rotateAngleY != 0.0F)

                {

                    GL11.glRotatef(this.rotateAngleY * (180F / (float)Math.PI), 0.0F, 1.0F, 0.0F);

                }

 

                if (this.rotateAngleX != 0.0F)

                {

                    GL11.glRotatef(this.rotateAngleX * (180F / (float)Math.PI), 1.0F, 0.0F, 0.0F);

                }

 

                if (this.rotateAngleZ != 0.0F)

                {

                    GL11.glRotatef(this.rotateAngleZ * (180F / (float)Math.PI), 0.0F, 0.0F, 1.0F);

                }

 

                //GL11.glCallList(this.displayList);

            customCallList();

                GL11.glPopMatrix();

            }

        }

    }

 

}

 

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Awesome.  I suggest that the setRotation() method be converted to use degrees as well (just takes a few minutes to update all the calls) -- as always just trying to protect your sanity!

 

I'm not sure about that last line in the order.  I used the formula, scaled it, and things looked good.

 

A formula is a series of steps - I was just using the concept of steps to explain why your formula should work.

 

In other words, your formula of: 1.5 - (1.5 * shrink) is exactly equivalent to me saying "take the steps to translate 1.5 then translate back by 1.5 times the scale factor."

 

It is great to have figured this out together.  I think now you can understand the powerful animation possibilities once you have the rotation points and hierarchy in proper place.

 

The only thing I still want to work on is to make the convertToChild() method so I can just take a Techne Java output as is and directly create the hierarchy without having to think much.  It should be pretty easy, provided you put the rotation points in the proper places in the Techne model.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

Yeh, that would make it a lot easier to have that method.

 

The one thing that I think will be really hard is the math for a child that is rotated.  Took some thinking to figure out the pattern of the teeth to the parent or the fingers to the hands.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Yeh, that would make it a lot easier to have that method.

 

The one thing that I think will be really hard is the math for a child that is rotated.  Took some thinking to figure out the pattern of the teeth to the parent or the fingers to the hands.

 

No, there shouldn't be any math.  I haven't looked at your model class yet, but I suspect you didn't entirely adjust all the rotation points properly.  The rotation points should be at the point of connection between the parts (in most cases).  So for the teeth it could be the center of each tooth, and then each tooth is attached at different point to the jaw.

 

If in Techne you already put those rotation points in proper place, there shouldn't be any issue.  They were all just rotated 45degrees, and it doesn't matter whether the jaw is also rotated relative to the head and the head is relative to the neck and the neck relative to the body and the body relative to the world -- shouldn't be any math except to set rotation to 45degrees.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

I missed something big here.

 

I set the rotation point for the tooth at 0,0,0 to be the same as its parent.  This of course made it so the axis's were not typical so it was rather complicated to get it in place.

 

If I read what you are saying and thinking back to the rest of the conversation, I set the rotation point to the center of the tooth relative to the rotation point of the parent object.  Because it is a child, it will rotate with the parent just fine.  If I tell the tooth to rotate after that for animation, it will rotate on its own point?

 

Did I get that right?  I hope so, because what I did was a PITA!

 

 

I can't play with it till tonight, but let be let me know if that is the right understanding or if I still have it wrong.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

People run into trouble because the placement can look correct even if the rotation point is wrong.  This is because the offsets can hide the problem.  I just made a quick vid (

) to show you this -- I move the rotation point and offset of the arm and the arm still seems to be in correct place -- but you can see the problem when you try to rotate it.  This is what you've done with the teeth.

 

The child will automatically rotate around the parent's rotation point.  You don't need to align the child and parents rotation points in any way (you only have to align them if you don't have hierarchy).  Any further rotation on the child itself will be around its own rotation point

 

This is only really critical for child pieces you plan to dynamically rotate.  If you've already figured out a combination of rotation points, offsets and rotations for the teeth that work, I would just leave them.    But for anything that will move dynamically (legs, tail, etc.) you need to ensure you get it right.

 

In my tutorial, I recommend adding spinX(), spinY() and spinZ() function to use for debugging.  You can call this right before the render and can pass a child piece to it.  The child piece will then rotate and you will quickly understand whether the rotation point is correct.

 

    // spin methods are good for testing and debug rotation points and offsets in the model
    protected void spinX(ModelRenderer model)
    {
        model.rotateAngleX += degToRad(0.5F);
    }
    
    protected void spinY(ModelRenderer model)
    {
        model.rotateAngleY += degToRad(0.5F);
    }
    
    protected void spinZ(ModelRenderer model)
    {
        model.rotateAngleZ += degToRad(0.5F);
    }

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

Okay, while I do want people to understand the concepts, I've come up with the (simple) convertToChild() method that will make taking the Techne Java output and creating hierarchy extremely easy.

 

The important thing is to first in Techne get the rotation points in right place (see the video I linked above).  Then export the Java and put it into your custom model class in Eclipse.

 

Then add the following method to your model class:

    // This is really useful for converting the source from a Techne model export
    // which will have absolute rotation points that need to be converted before
    // creating the addChild() relationship
    protected void convertToChild(ModelRenderer parParent, ModelRenderer parChild)
    {
    	// move child rotation point to be relative to parent
    	parChild.rotationPointX -= parParent.rotationPointX;
    	parChild.rotationPointY -= parParent.rotationPointY;
    	parChild.rotationPointZ -= parParent.rotationPointZ;
    	// make rotations relative to parent
    	parChild.rotateAngleX -= parParent.rotateAngleX;
    	parChild.rotateAngleY -= parParent.rotateAngleY;
    	parChild.rotateAngleZ -= parParent.rotateAngleZ;
    	// create relationship
    	parParent.addChild(parChild);
    }

 

Then call this method to create the hierarchy.  For example, I took the Techne default ModelBiped and output the Java then added this method, with the result being:

      head = new ModelRenderer(this, 0, 0);
      head.addBox(-4F, -8F, -4F, 8, 8, ;
      head.setRotationPoint(0F, 0F, 0F);
      head.setTextureSize(64, 32);
      head.mirror = true;
      setRotation(head, 0F, 0F, 0F);
      body = new ModelRenderer(this, 16, 16);
      body.addBox(-4F, 0F, -2F, 8, 12, 4);
      body.setRotationPoint(0F, 0F, 0F);
      body.setTextureSize(64, 32);
      body.mirror = true;
      setRotation(body, 0F, 0F, 0F);
      [color=blue]convertToChild(body, head);[/color]
      rightarm = new ModelRenderer(this, 40, 16);
      rightarm.addBox(-3F, -2F, -2F, 4, 12, 4);
      rightarm.setRotationPoint(-5F, 2F, 0F);
      rightarm.setTextureSize(64, 32);
      rightarm.mirror = true;
      setRotation(rightarm, 0F, 0F, 0F);
      [color=blue]convertToChild(body, rightarm);[/color]
      leftarm = new ModelRenderer(this, 40, 16);
      leftarm.addBox(-1F, -2F, -2F, 4, 12, 4);
      leftarm.setRotationPoint(5F, 2F, 0F);
      leftarm.setTextureSize(64, 32);
      leftarm.mirror = true;
      setRotation(leftarm, 0F, 0F, 0F);
      [color=blue]convertToChild(body, leftarm);[/color]
      rightleg = new ModelRenderer(this, 0, 16);
      rightleg.addBox(-2F, 0F, -2F, 4, 12, 4);
      rightleg.setRotationPoint(-2F, 12F, 0F);
      rightleg.setTextureSize(64, 32);
      rightleg.mirror = true;
      setRotation(rightleg, 0F, 0F, 0F);
      [color=blue]convertToChild(body, rightleg);[/color]
      leftleg = new ModelRenderer(this, 0, 16);
      leftleg.addBox(-2F, 0F, -2F, 4, 12, 4);
      leftleg.setRotationPoint(2F, 12F, 0F);
      leftleg.setTextureSize(64, 32);
      leftleg.mirror = true;
      setRotation(leftleg, 0F, 0F, 0F);
      [color=blue]convertToChild(body, leftleg);[/color]

 

Lastly, I got rid of the render calls for each child, and only called body.render(f5).

 

Hope this helps.  If you're getting tired of reworking your model, feel free to send me the Techne file and I'll be able to get it going pretty quickly.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

I'm going to keep messing with it.  Learning a lot which will help with some future ideas I have.

 

When I get home tonight, I'll play with the model and Tecne more. 

 

After that, I'll post th code.  If you don't mind, I'd appreciate you taking a look at it and seeing if anything else jumps out at you.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

I'm going to keep messing with it.  Learning a lot which will help with some future ideas I have.

 

When I get home tonight, I'll play with the model and Tecne more. 

 

After that, I'll post th code.  If you don't mind, I'd appreciate you taking a look at it and seeing if anything else jumps out at you.

 

Yes, it is worth understanding inside and out.

 

The only problem for you is you made a complicated model before fully understanding it, now the rework is extensive.  I was trying to fix just the teeth and it is a lot of work, after about half an hour on it I was only halfway there.

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

Hit a snag.  If your parent is rotated, things seem to get weird with the child setup.

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Got a workaround.  Your base parent can't be rotated or the child doesn't position right.  I created some dummy parts that were not rotated with dimensions of 0,0,0 and it fixed it.

 

Next issue is order that the convertToChild is run.

 

For example, if headb is a child of head is a child of neckbase.

 

You have to run convert on headb before you run it on head or it has already subracted the angles and positions and things get weird.

 

Any ideas?

Long time Bukkit & Forge Programmer

Happy to try and help

Posted

Got a workaround.  Your base parent can't be rotated or the child doesn't position right.  I created some dummy parts that were not rotated with dimensions of 0,0,0 and it fixed it.

 

Next issue is order that the convertToChild is run.

 

For example, if headb is a child of head is a child of neckbase.

 

You have to run convert on headb before you run it on head or it has already subracted the angles and positions and things get weird.

 

Any ideas?

 

Yeah, I was a bit worried about that part (converting multiple levels).  I think we'll have to keep track of the previous absolute position for each child as well.  Probably easiest to add that as fields in an extended ModelRenderer class, but could also just be some sort of array in the Model class.  So the convertToChild() would look at the parent's originalRotationPointX, originalRotationPointY, originalRotationPointZ for the purpose of the conversion.  That should solve it, right?

Check out my tutorials here: http://jabelarminecraft.blogspot.com/

Posted

So far just keeping track of the order seems to be working.  It means I put the convertToChild all together at the end.  Not that bad.

Long time Bukkit & Forge Programmer

Happy to try and help

Join the conversation

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

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

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • [23Nov2024 21:13:14.244] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:block 3687blue_skies:alchemist_trophy: 1378 3688blue_skies:alchemy_table: 1509 3689blue_skies:aquatic_slab: 1361 3690blue_skies:aquatic_stairs: 1359 3691blue_skies:aquatic_stone: 1357 3692blue_skies:aquatic_wall: 1363 3693blue_skies:aquite_block: 1199 3694blue_skies:arachnarch_trophy: 1380 3695blue_skies:bag_of_spoils: 1507 3696blue_skies:baneful_mushroom: 1120 3697blue_skies:black_fire: 1206 3698blue_skies:blaze_bud: 1111 3699blue_skies:blinding_slab: 1322 3700blue_skies:blinding_stairs: 1320 3701blue_skies:blinding_stone: 1316 3702blue_skies:blinding_stone_pillar: 1319 3703blue_skies:blinding_wall: 1324 3704blue_skies:blue_fire: 1205 3705blue_skies:bluebright_bookshelf: 1229 3706blue_skies:bluebright_button: 1278 3707blue_skies:bluebright_chest: 1073 3708blue_skies:bluebright_crafting_table: 1070 3709blue_skies:bluebright_door: 1221 3710blue_skies:bluebright_fence: 1243 3711blue_skies:bluebright_fence_gate: 1250 3712blue_skies:bluebright_hanging_sign: 1302 3713blue_skies:bluebright_ladder: 1236 3714blue_skies:bluebright_leaves: 1050 3715blue_skies:bluebright_log: 1051 3716blue_skies:bluebright_planks: 1055 3717blue_skies:bluebright_pressure_plate: 1268 3718blue_skies:bluebright_sapling: 1040 3719blue_skies:bluebright_sign: 1288 3720blue_skies:bluebright_slab: 1381 3721blue_skies:bluebright_stairs: 1442 3722blue_skies:bluebright_trapdoor: 1257 3723blue_skies:bluebright_vine: 1049 3724blue_skies:bluebright_wall_hanging_sign: 1309 3725blue_skies:bluebright_wall_sign: 1295 3726blue_skies:bluebright_wood: 1052 3727blue_skies:blush_blossom: 1022 3728blue_skies:brewberry_bush: 1043 3729blue_skies:bright_blinding_keystone: 1373 3730blue_skies:briskbloom: 1026 3731blue_skies:brittlebush: 1025 3732blue_skies:brumble: 1032 3733blue_skies:brumble_block: 1035 3734blue_skies:brumble_lantern: 1039 3735blue_skies:brumble_slab: 1397 3736blue_skies:brumble_stairs: 1458 3737blue_skies:brumble_vine: 1033 3738blue_skies:brumble_vine_top: 1034 3739blue_skies:brumble_wall: 1423 3740blue_skies:camellia: 1020 3741blue_skies:carved_blinding_stone: 1318 3742blue_skies:carved_nature_stonebrick: 1330 3743blue_skies:carved_poison_stonebrick: 1346 3744blue_skies:charoite_block: 1201 3745blue_skies:chilled_lily_pad: 1044 3746blue_skies:chillweed: 1024 3747blue_skies:chiseled_crystal_sandstone: 1157 3748blue_skies:chiseled_lunar_stonebrick: 1104 3749blue_skies:chiseled_midnight_sandstone: 1078 3750blue_skies:chiseled_polished_brumble: 1038 3751blue_skies:chiseled_turquoise_stonebrick: 1015 3752blue_skies:cinderstone: 1107 3753blue_skies:cinderstone_slab: 1416 3754blue_skies:cinderstone_stairs: 1475 3755blue_skies:cinderstone_wall: 1440 3756blue_skies:coarse_lunar_dirt: 1095 3757blue_skies:coarse_turquoise_dirt: 1007 3758blue_skies:comet_berry_pie: 1184 3759blue_skies:comet_bookshelf: 1235 3760blue_skies:comet_button: 1284 3761blue_skies:comet_chest: 1183 3762blue_skies:comet_crafting_table: 1182 3763blue_skies:comet_door: 1227 3764blue_skies:comet_fence: 1249 3765blue_skies:comet_fence_gate: 1256 3766blue_skies:comet_grass: 1172 3767blue_skies:comet_hanging_sign: 1308 3768blue_skies:comet_ladder: 1242 3769blue_skies:comet_leaves: 1175 3770blue_skies:comet_log: 1176 3771blue_skies:comet_planks: 1180 3772blue_skies:comet_pressure_plate: 1274 3773blue_skies:comet_sapling: 1181 3774blue_skies:comet_sign: 1294 3775blue_skies:comet_slab: 1387 3776blue_skies:comet_stairs: 1448 3777blue_skies:comet_trapdoor: 1263 3778blue_skies:comet_wall_hanging_sign: 1315 3779blue_skies:comet_wall_sign: 1301 3780blue_skies:comet_wood: 1177 3781blue_skies:cracked_lunar_stonebrick: 1103 3782blue_skies:cracked_lunar_stonebrick_slab: 1409 3783blue_skies:cracked_lunar_stonebrick_stairs: 1468 3784blue_skies:cracked_lunar_stonebrick_wall: 1434 3785blue_skies:cracked_turquoise_stonebrick: 1014 3786blue_skies:cracked_turquoise_stonebrick_slab: 1394 3787blue_skies:cracked_turquoise_stonebrick_stairs: 1453 3788blue_skies:cracked_turquoise_stonebrick_wall: 1422 3789blue_skies:crescent_fruit: 1187 3790blue_skies:crescent_fruit_leaves: 1186 3791blue_skies:crescent_fruit_sapling: 1185 3792blue_skies:cryo_roots: 1514 3793blue_skies:crystal_flower: 1110 3794blue_skies:crystal_glass: 1213 3795blue_skies:crystal_glass_pane: 1214 3796blue_skies:crystal_sand: 1155 3797blue_skies:crystal_sandstone: 1156 3798blue_skies:crystal_sandstone_pillar: 1160 3799blue_skies:crystal_sandstone_slab: 1410 3800blue_skies:crystal_sandstone_stairs: 1471 3801blue_skies:crystal_sandstone_wall: 1436 3802blue_skies:crystallized_button: 1285 3803blue_skies:crystallized_door: 1228 3804blue_skies:crystallized_grass: 1122 3805blue_skies:crystallized_leaves: 1147 3806blue_skies:crystallized_log: 1148 3807blue_skies:crystallized_planks: 1150 3808blue_skies:crystallized_pressure_plate: 1275 3809blue_skies:crystallized_slab: 1388 3810blue_skies:crystallized_stairs: 1449 3811blue_skies:crystallized_trapdoor: 1264 3812blue_skies:crystallized_wall: 1437 3813blue_skies:crystallized_wood: 1149 3814blue_skies:cut_crystal_sandstone: 1158 3815blue_skies:cut_crystal_sandstone_slab: 1413 3816blue_skies:cut_midnight_sandstone: 1079 3817blue_skies:cut_midnight_sandstone_slab: 1412 3818blue_skies:dawn_blinding_keystone: 1374 3819blue_skies:decaying_spike: 1162 3820blue_skies:diopside_block: 1200 3821blue_skies:dusk_bookshelf: 1233 3822blue_skies:dusk_button: 1282 3823blue_skies:dusk_chest: 1152 3824blue_skies:dusk_crafting_table: 1145 3825blue_skies:dusk_door: 1225 3826blue_skies:dusk_fence: 1247 3827blue_skies:dusk_fence_gate: 1254 3828blue_skies:dusk_hanging_sign: 1306 3829blue_skies:dusk_ladder: 1240 3830blue_skies:dusk_leaves: 1131 3831blue_skies:dusk_log: 1132 3832blue_skies:dusk_planks: 1136 3833blue_skies:dusk_pressure_plate: 1272 3834blue_skies:dusk_sapling: 1117 3835blue_skies:dusk_sign: 1292 3836blue_skies:dusk_slab: 1385 3837blue_skies:dusk_stairs: 1446 3838blue_skies:dusk_trapdoor: 1261 3839blue_skies:dusk_vine: 1130 3840blue_skies:dusk_wall_hanging_sign: 1313 3841blue_skies:dusk_wall_sign: 1299 3842blue_skies:dusk_wood: 1133 3843blue_skies:everbright_aquite_ore: 1085 3844blue_skies:everbright_charoite_ore: 1086 3845blue_skies:everbright_diopside_ore: 1083 3846blue_skies:everbright_emerald_ore: 1088 3847blue_skies:everbright_moonstone_ore: 1087 3848blue_skies:everbright_portal: 1217 3849blue_skies:everbright_pyrope_ore: 1084 3850blue_skies:everdawn_aquite_ore: 1167 3851blue_skies:everdawn_charoite_ore: 1168 3852blue_skies:everdawn_diopside_ore: 1165 3853blue_skies:everdawn_emerald_ore: 1170 3854blue_skies:everdawn_moonstone_ore: 1169 3855blue_skies:everdawn_portal: 1218 3856blue_skies:everdawn_pyrope_ore: 1166 3857blue_skies:falsite_block: 1195 3858blue_skies:falsite_ore: 1089 3859blue_skies:fiery_beans: 1512 3860blue_skies:flare_floret: 1112 3861blue_skies:food_prep_table: 1510 3862blue_skies:frose: 1027 3863blue_skies:frostbright_bookshelf: 1231 3864blue_skies:frostbright_button: 1280 3865blue_skies:frostbright_chest: 1075 3866blue_skies:frostbright_crafting_table: 1072 3867blue_skies:frostbright_door: 1223 3868blue_skies:frostbright_fence: 1245 3869blue_skies:frostbright_fence_gate: 1252 3870blue_skies:frostbright_hanging_sign: 1304 3871blue_skies:frostbright_ladder: 1238 3872blue_skies:frostbright_leaves: 1064 3873blue_skies:frostbright_log: 1065 3874blue_skies:frostbright_planks: 1069 3875blue_skies:frostbright_pressure_plate: 1270 3876blue_skies:frostbright_sapling: 1042 3877blue_skies:frostbright_sign: 1290 3878blue_skies:frostbright_slab: 1383 3879blue_skies:frostbright_stairs: 1444 3880blue_skies:frostbright_trapdoor: 1259 3881blue_skies:frostbright_vine: 1063 3882blue_skies:frostbright_wall_hanging_sign: 1311 3883blue_skies:frostbright_wall_sign: 1297 3884blue_skies:frostbright_wood: 1066 3885blue_skies:glimmer_reed: 1121 3886blue_skies:glowing_aquatic_slab: 1362 3887blue_skies:glowing_aquatic_stairs: 1360 3888blue_skies:glowing_aquatic_stone: 1358 3889blue_skies:glowing_aquatic_wall: 1364 3890blue_skies:glowing_blinding_slab: 1323 3891blue_skies:glowing_blinding_stairs: 1321 3892blue_skies:glowing_blinding_stone: 1317 3893blue_skies:glowing_blinding_wall: 1325 3894blue_skies:glowing_life_slab: 1370 3895blue_skies:glowing_life_stairs: 1368 3896blue_skies:glowing_life_stone: 1366 3897blue_skies:glowing_life_wall: 1372 3898blue_skies:glowing_nature_stone: 1327 3899blue_skies:glowing_nature_stone_slab: 1337 3900blue_skies:glowing_nature_stone_stairs: 1333 3901blue_skies:glowing_nature_stonebrick: 1329 3902blue_skies:glowing_nature_stonebrick_slab: 1339 3903blue_skies:glowing_nature_stonebrick_stairs: 1335 3904blue_skies:glowing_nature_stonebrick_wall: 1341 3905blue_skies:glowing_poison_stone: 1343 3906blue_skies:glowing_poison_stone_slab: 1353 3907blue_skies:glowing_poison_stone_stairs: 1349 3908blue_skies:horizonite_block: 1197 3909blue_skies:horizonite_forge: 1220 3910blue_skies:horizonite_ore: 1171 3911blue_skies:life_slab: 1369 3912blue_skies:life_stairs: 1367 3913blue_skies:life_stone: 1365 3914blue_skies:life_wall: 1371 3915blue_skies:lucentroot: 1115 3916blue_skies:lunar_bookshelf: 1232 3917blue_skies:lunar_button: 1281 3918blue_skies:lunar_chest: 1151 3919blue_skies:lunar_cobblestone: 1099 3920blue_skies:lunar_cobblestone_slab: 1405 3921blue_skies:lunar_cobblestone_stairs: 1469 3922blue_skies:lunar_cobblestone_wall: 1430 3923blue_skies:lunar_comet_grass_block: 1174 3924blue_skies:lunar_crafting_table: 1144 3925blue_skies:lunar_dirt: 1094 3926blue_skies:lunar_door: 1224 3927blue_skies:lunar_dripstone: 1161 3928blue_skies:lunar_farmland: 1097 3929blue_skies:lunar_fence: 1246 3930blue_skies:lunar_fence_gate: 1253 3931blue_skies:lunar_grass: 1091 3932blue_skies:lunar_grass_block: 1093 3933blue_skies:lunar_hanging_sign: 1305 3934blue_skies:lunar_ladder: 1239 3935blue_skies:lunar_leaves: 1124 3936blue_skies:lunar_lever: 1287 3937blue_skies:lunar_log: 1125 3938blue_skies:lunar_mud: 1096 3939blue_skies:lunar_planks: 1129 3940blue_skies:lunar_pressure_plate: 1271 3941blue_skies:lunar_sapling: 1116 3942blue_skies:lunar_sign: 1291 3943blue_skies:lunar_slab: 1384 3944blue_skies:lunar_stairs: 1445 3945blue_skies:lunar_stone: 1098 3946blue_skies:lunar_stone_button: 1277 3947blue_skies:lunar_stone_pressure_plate: 1267 3948blue_skies:lunar_stone_slab: 1404 3949blue_skies:lunar_stone_stairs: 1465 3950blue_skies:lunar_stonebrick: 1101 3951blue_skies:lunar_stonebrick_slab: 1407 3952blue_skies:lunar_stonebrick_stairs: 1466 3953blue_skies:lunar_stonebrick_wall: 1432 3954blue_skies:lunar_trapdoor: 1260 3955blue_skies:lunar_vine: 1123 3956blue_skies:lunar_wall_hanging_sign: 1312 3957blue_skies:lunar_wall_sign: 1298 3958blue_skies:lunar_wood: 1126 3959blue_skies:maple_bookshelf: 1234 3960blue_skies:maple_button: 1283 3961blue_skies:maple_chest: 1153 3962blue_skies:maple_crafting_table: 1146 3963blue_skies:maple_door: 1226 3964blue_skies:maple_fence: 1248 3965blue_skies:maple_fence_gate: 1255 3966blue_skies:maple_hanging_sign: 1307 3967blue_skies:maple_ladder: 1241 3968blue_skies:maple_leaves: 1138 3969blue_skies:maple_log: 1139 3970blue_skies:maple_planks: 1143 3971blue_skies:maple_pressure_plate: 1273 3972blue_skies:maple_sapling: 1118 3973blue_skies:maple_sign: 1293 3974blue_skies:maple_slab: 1386 3975blue_skies:maple_stairs: 1447 3976blue_skies:maple_trapdoor: 1262 3977blue_skies:maple_vine: 1137 3978blue_skies:maple_wall_hanging_sign: 1314 3979blue_skies:maple_wall_sign: 1300 3980blue_skies:maple_wood: 1140 3981blue_skies:midday_bayhop: 1028 3982blue_skies:midnight_glass: 1215 3983blue_skies:midnight_glass_pane: 1216 3984blue_skies:midnight_sand: 1076 3985blue_skies:midnight_sandstone: 1077 3986blue_skies:midnight_sandstone_pillar: 1081 3987blue_skies:midnight_sandstone_slab: 1395 3988blue_skies:midnight_sandstone_stairs: 1456 3989blue_skies:midnight_sandstone_wall: 1435 3990blue_skies:moonlit_bloom: 1109 3991blue_skies:moonlit_water_lily: 1119 3992blue_skies:moonstone: 1202 3993blue_skies:moonstone_block: 1193 3994blue_skies:moonstone_crystal: 1211 3995blue_skies:moonstone_lantern: 1203 3996blue_skies:moonstone_pressure_plate: 1265 3997blue_skies:mossy_lunar_cobblestone: 1100 3998blue_skies:mossy_lunar_cobblestone_slab: 1406 3999blue_skies:mossy_lunar_cobblestone_stairs: 1470 4000blue_skies:mossy_lunar_cobblestone_wall: 1431 4001blue_skies:mossy_lunar_stonebrick: 1102 4002blue_skies:mossy_lunar_stonebrick_slab: 1408 4003blue_skies:mossy_lunar_stonebrick_stairs: 1467 4004blue_skies:mossy_lunar_stonebrick_wall: 1433 4005blue_skies:mossy_turquoise_cobblestone: 1011 4006blue_skies:mossy_turquoise_cobblestone_slab: 1391 4007blue_skies:mossy_turquoise_cobblestone_stairs: 1455 4008blue_skies:mossy_turquoise_cobblestone_wall: 1419 4009blue_skies:mossy_turquoise_stonebrick: 1013 4010blue_skies:mossy_turquoise_stonebrick_slab: 1393 4011blue_skies:mossy_turquoise_stonebrick_stairs: 1452 4012blue_skies:mossy_turquoise_stonebrick_wall: 1421 4013blue_skies:muckweed: 1114 4014blue_skies:nature_keystone: 1375 4015blue_skies:nature_stone: 1326 4016blue_skies:nature_stone_pillar: 1331 4017blue_skies:nature_stone_slab: 1336 4018blue_skies:nature_stone_stairs: 1332 4019blue_skies:nature_stonebrick: 1328 4020blue_skies:nature_stonebrick_slab: 1338 4021blue_skies:nature_stonebrick_stairs: 1334 4022blue_skies:nature_stonebrick_wall: 1340 4023blue_skies:nightcress: 1113 4024blue_skies:pine_fruits: 1516 4025blue_skies:poison_keystone: 1376 4026blue_skies:poison_stone: 1342 4027blue_skies:poison_stone_pillar: 1347 4028blue_skies:poison_stone_slab: 1352 4029blue_skies:poison_stone_stairs: 1348 4030blue_skies:poison_stonebrick: 1344 4031blue_skies:poison_stonebrick_slab: 1354 4032blue_skies:poison_stonebrick_stairs: 1350 4033blue_skies:poison_stonebrick_wall: 1356 4034blue_skies:polar_posy: 1023 4035blue_skies:polished_brumble: 1036 4036blue_skies:polished_brumble_brick_slab: 1399 4037blue_skies:polished_brumble_brick_stairs: 1460 4038blue_skies:polished_brumble_brick_wall: 1425 4039blue_skies:polished_brumble_bricks: 1037 4040blue_skies:polished_brumble_slab: 1398 4041blue_skies:polished_brumble_stairs: 1459 4042blue_skies:polished_brumble_wall: 1424 4043blue_skies:polished_cinderstone: 1108 4044blue_skies:polished_cinderstone_slab: 1417 4045blue_skies:polished_cinderstone_stairs: 1476 4046blue_skies:polished_cinderstone_wall: 1441 4047blue_skies:polished_rimestone: 1019 4048blue_skies:polished_rimestone_slab: 1403 4049blue_skies:polished_rimestone_stairs: 1464 4050blue_skies:polished_rimestone_wall: 1429 4051blue_skies:polished_taratite: 1017 4052blue_skies:polished_taratite_slab: 1401 4053blue_skies:polished_taratite_stairs: 1462 4054blue_skies:polished_taratite_wall: 1427 4055blue_skies:polished_umber: 1106 4056blue_skies:polished_umber_slab: 1415 4057blue_skies:polished_umber_stairs: 1474 4058blue_skies:polished_umber_wall: 1439 4059blue_skies:potted_baneful_mushroom: 1477 4060blue_skies:potted_blaze_bud: 1491 4061blue_skies:potted_bluebright_sapling: 1496 4062blue_skies:potted_blush_blossom: 1483 4063blue_skies:potted_brewberry_bush: 1479 4064blue_skies:potted_briskbloom: 1482 4065blue_skies:potted_brittlebush: 1486 4066blue_skies:potted_camellia: 1480 4067blue_skies:potted_chillweed: 1485 4068blue_skies:potted_comet_sapling: 1502 4069blue_skies:potted_crescent_fruit_sapling: 1503 4070blue_skies:potted_crystal_flower: 1490 4071blue_skies:potted_dusk_sapling: 1500 4072blue_skies:potted_flare_floret: 1492 4073blue_skies:potted_frose: 1487 4074blue_skies:potted_frostbright_sapling: 1498 4075blue_skies:potted_lucentroot: 1495 4076blue_skies:potted_lunar_sapling: 1499 4077blue_skies:potted_maple_sapling: 1501 4078blue_skies:potted_midday_bayhop: 1488 4079blue_skies:potted_moonlit_bloom: 1489 4080blue_skies:potted_muckweed: 1494 4081blue_skies:potted_nightcress: 1493 4082blue_skies:potted_polar_posy: 1484 4083blue_skies:potted_snowbloom: 1481 4084blue_skies:potted_snowcap_mushroom: 1478 4085blue_skies:potted_starlit_sapling: 1497 4086blue_skies:pyrope_block: 1198 4087blue_skies:raw_aquite_block: 1191 4088blue_skies:raw_charoite_block: 1192 4089blue_skies:raw_falsite_block: 1188 4090blue_skies:raw_horizonite_block: 1190 4091blue_skies:raw_ventium_block: 1189 4092blue_skies:rimestone: 1018 4093blue_skies:rimestone_slab: 1402 4094blue_skies:rimestone_stairs: 1463 4095blue_skies:rimestone_wall: 1428 4096blue_skies:rough_poison_stonebrick: 1345 4097blue_skies:rough_poison_stonebrick_slab: 1355 4098blue_skies:rough_poison_stonebrick_stairs: 1351 4099blue_skies:scalefruits: 1515 4100blue_skies:sea_moss: 1029 4101blue_skies:sea_moss_block: 1030 4102blue_skies:sea_moss_carpet: 1031 4103blue_skies:smooth_crystal_sandstone: 1159 4104blue_skies:smooth_crystal_sandstone_slab: 1411 4105blue_skies:smooth_crystal_sandstone_stairs: 1472 4106blue_skies:smooth_midnight_sandstone: 1080 4107blue_skies:smooth_midnight_sandstone_slab: 1396 4108blue_skies:smooth_midnight_sandstone_stairs: 1457 4109blue_skies:snowbloom: 1021 4110blue_skies:snowcap_mushroom: 1046 4111blue_skies:snowcap_mushroom_block: 1047 4112blue_skies:snowcap_mushroom_stem: 1048 4113blue_skies:snowcap_oven: 1219 4114blue_skies:snowcap_pinhead: 1045 4115blue_skies:solnuts: 1513 4116blue_skies:spider_nest: 1164 4117blue_skies:spider_webbing: 1163 4118blue_skies:star_emitter: 1504 4119blue_skies:star_flare: 1204 4120blue_skies:starlit_bookshelf: 1230 4121blue_skies:starlit_button: 1279 4122blue_skies:starlit_chest: 1074 4123blue_skies:starlit_crafting_table: 1071 4124blue_skies:starlit_crusher_trophy: 1379 4125blue_skies:starlit_door: 1222 4126blue_skies:starlit_fence: 1244 4127blue_skies:starlit_fence_gate: 1251 4128blue_skies:starlit_hanging_sign: 1303 4129blue_skies:starlit_ladder: 1237 4130blue_skies:starlit_leaves: 1057 4131blue_skies:starlit_log: 1058 4132blue_skies:starlit_planks: 1062 4133blue_skies:starlit_pressure_plate: 1269 4134blue_skies:starlit_sapling: 1041 4135blue_skies:starlit_sign: 1289 4136blue_skies:starlit_slab: 1382 4137blue_skies:starlit_stairs: 1443 4138blue_skies:starlit_trapdoor: 1258 4139blue_skies:starlit_vine: 1056 4140blue_skies:starlit_wall_hanging_sign: 1310 4141blue_skies:starlit_wall_sign: 1296 4142blue_skies:starlit_wood: 1059 4143blue_skies:stripped_bluebright_log: 1053 4144blue_skies:stripped_bluebright_wood: 1054 4145blue_skies:stripped_comet_log: 1178 4146blue_skies:stripped_comet_wood: 1179 4147blue_skies:stripped_dusk_log: 1134 4148blue_skies:stripped_dusk_wood: 1135 4149blue_skies:stripped_frostbright_log: 1067 4150blue_skies:stripped_frostbright_wood: 1068 4151blue_skies:stripped_lunar_log: 1127 4152blue_skies:stripped_lunar_wood: 1128 4153blue_skies:stripped_maple_log: 1141 4154blue_skies:stripped_maple_wood: 1142 4155blue_skies:stripped_starlit_log: 1060 4156blue_skies:stripped_starlit_wood: 1061 4157blue_skies:summoner_trophy: 1377 4158blue_skies:summoning_table: 1508 4159blue_skies:sunstone_block: 1194 4160blue_skies:sunstone_crystal: 1212 4161blue_skies:tall_lunar_grass: 1092 4162blue_skies:tall_turquoise_grass: 1004 4163blue_skies:taratite: 1016 4164blue_skies:taratite_slab: 1400 4165blue_skies:taratite_stairs: 1461 4166blue_skies:taratite_wall: 1426 4167blue_skies:tool_box: 1506 4168blue_skies:trough: 1505 4169blue_skies:turquoise_cobblestone: 1010 4170blue_skies:turquoise_cobblestone_slab: 1390 4171blue_skies:turquoise_cobblestone_stairs: 1454 4172blue_skies:turquoise_cobblestone_wall: 1418 4173blue_skies:turquoise_comet_grass_block: 1173 4174blue_skies:turquoise_dirt: 1006 4175blue_skies:turquoise_dripstone: 1082 4176blue_skies:turquoise_farmland: 1008 4177blue_skies:turquoise_grass: 1003 4178blue_skies:turquoise_grass_block: 1005 4179blue_skies:turquoise_lever: 1286 4180blue_skies:turquoise_stone: 1009 4181blue_skies:turquoise_stone_button: 1276 4182blue_skies:turquoise_stone_pressure_plate: 1266 4183blue_skies:turquoise_stone_slab: 1389 4184blue_skies:turquoise_stone_stairs: 1450 4185blue_skies:turquoise_stonebrick: 1012 4186blue_skies:turquoise_stonebrick_slab: 1392 4187blue_skies:turquoise_stonebrick_stairs: 1451 4188blue_skies:turquoise_stonebrick_wall: 1420 4189blue_skies:umber: 1105 4190blue_skies:umber_slab: 1414 4191blue_skies:umber_stairs: 1473 4192blue_skies:umber_wall: 1438 4193blue_skies:upsidedown_black_fire: 1208 4194blue_skies:upsidedown_blue_fire: 1207 4195blue_skies:ventium_block: 1196 4196blue_skies:ventium_ore: 1090 4197blue_skies:vitreous_moonstone: 1154 4198blue_skies:wall_warding_pearl: 1210 4199blue_skies:warding_pearl: 1209 4200blue_skies:winter_leaves: 1511 4201immersive_weathering:blue_skies/bluebright_leaf_pile: 1673 4202immersive_weathering:blue_skies/comet_leaf_pile: 1679 4203immersive_weathering:blue_skies/crescent_fruit_leaf_pile: 1672 4204immersive_weathering:blue_skies/crystallized_leaf_pile: 1671 4205immersive_weathering:blue_skies/dusk_leaf_pile: 1677 4206immersive_weathering:blue_skies/frostbright_leaf_pile: 1675 4207immersive_weathering:blue_skies/lunar_leaf_pile: 1676 4208immersive_weathering:blue_skies/maple_leaf_pile: 1678 4209immersive_weathering:blue_skies/starlit_leaf_pile: 1674 4210structure_gel:blue_gel: 1649 4211structure_gel:cyan_gel: 1651 4212structure_gel:data_handler: 1654 4213structure_gel:dynamic_spawner: 1655 4214structure_gel:green_gel: 1650 4215structure_gel:orange_gel: 1652 4216structure_gel:red_gel: 1648 4217structure_gel:yellow_gel: 1653 4218 4219[23Nov2024 21:13:14.255] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:entity_type 4220blue_skies:alchemist: 263 4221blue_skies:arachnarch: 271 4222blue_skies:armored_frost_spirit: 235 4223blue_skies:artificial_golem: 260 4224blue_skies:azulfo: 124 4225blue_skies:boss_item: 276 4226blue_skies:charscale_moki: 251 4227blue_skies:cosmic_fox: 246 4228blue_skies:crogre: 250 4229blue_skies:crynocerous: 236 4230blue_skies:crystal_camel: 247 4231blue_skies:decaying_spike: 264 4232blue_skies:diophyde_prowler: 243 4233blue_skies:emberback: 256 4234blue_skies:ent_leaf: 268 4235blue_skies:ent_root: 266 4236blue_skies:ent_wall: 267 4237blue_skies:firefly: 245 4238blue_skies:fluctuant_sphere: 262 4239blue_skies:frost_spirit: 232 4240blue_skies:gatekeeper: 258 4241blue_skies:grittle_flatfish: 233 4242blue_skies:horizofin_tunid: 252 4243blue_skies:infested_swarmer: 257 4244blue_skies:jelly_drifter: 237 4245blue_skies:municipal_monkfish: 234 4246blue_skies:nested_spider: 273 4247blue_skies:nyctofly: 253 4248blue_skies:polargeist: 239 4249blue_skies:reindeer: 231 4250blue_skies:seclam: 244 4251blue_skies:seed_bomb: 270 4252blue_skies:shade_monitor: 248 4253blue_skies:shrumpty: 242 4254blue_skies:sliv: 249 4255blue_skies:snow_owl: 238 4256blue_skies:spear: 274 4257blue_skies:spewter: 269 4258blue_skies:stardust_ram: 230 4259blue_skies:starlit_crusher: 265 4260blue_skies:stonelet: 240 4261blue_skies:strange_lightning: 261 4262blue_skies:summoner: 259 4263blue_skies:supporter_pet: 275 4264blue_skies:venom_bomb: 272 4265blue_skies:venom_spider: 254 4266blue_skies:venom_spit: 255 4267blue_skies:whistleshell_crab: 241 4268 4269[23Nov2024 21:13:14.259] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:item 4270blue_skies:alchemist_spawn_egg: 1311 4271blue_skies:alchemist_trophy: 1884 4272blue_skies:alchemy_scroll: 1400 4273blue_skies:alchemy_table: 1881 4274blue_skies:aquatic_arc: 1376 4275blue_skies:aquatic_slab: 1933 4276blue_skies:aquatic_stairs: 1931 4277blue_skies:aquatic_stone: 1929 4278blue_skies:aquatic_wall: 1935 4279blue_skies:aquite: 1358 4280blue_skies:aquite_axe: 1458 4281blue_skies:aquite_block: 1706 4282blue_skies:aquite_boots: 1491 4283blue_skies:aquite_chestplate: 1489 4284blue_skies:aquite_helmet: 1488 4285blue_skies:aquite_hoe: 1460 4286blue_skies:aquite_leggings: 1490 4287blue_skies:aquite_pickaxe: 1457 4288blue_skies:aquite_shovel: 1459 4289blue_skies:aquite_sword: 1456 4290blue_skies:arachnarch_spawn_egg: 1313 4291blue_skies:arachnarch_trophy: 1886 4292blue_skies:armored_frost_spirit_spawn_egg: 1284 4293blue_skies:artificial_golem_spawn_egg: 1293 4294blue_skies:astrolabe: 1391 4295blue_skies:azulfo_horn: 1351 4296blue_skies:azulfo_spawn_egg: 1278 4297blue_skies:bag_of_spoils: 1887 4298blue_skies:baneful_mushroom: 1632 4299blue_skies:banished_armor_trim_smithing_template: 1977 4300blue_skies:black_brewberry: 1324 4301blue_skies:blaze_bud: 1624 4302blue_skies:blinding_key: 1341 4303blue_skies:blinding_rage: 1508 4304blue_skies:blinding_slab: 1894 4305blue_skies:blinding_stairs: 1892 4306blue_skies:blinding_stone: 1888 4307blue_skies:blinding_stone_pillar: 1891 4308blue_skies:blinding_wall: 1896 4309blue_skies:blue_journal: 1379 4310blue_skies:bluebright_axe: 1408 4311blue_skies:bluebright_bookshelf: 1722 4312blue_skies:bluebright_button: 1771 4313blue_skies:bluebright_chest: 1953 4314blue_skies:bluebright_crafting_table: 1586 4315blue_skies:bluebright_door: 1945 4316blue_skies:bluebright_fence: 1736 4317blue_skies:bluebright_fence_gate: 1743 4318blue_skies:bluebright_hanging_sign: 1967 4319blue_skies:bluebright_hoe: 1410 4320blue_skies:bluebright_ladder: 1729 4321blue_skies:bluebright_leaves: 1566 4322blue_skies:bluebright_log: 1567 4323blue_skies:bluebright_pickaxe: 1407 4324blue_skies:bluebright_planks: 1571 4325blue_skies:bluebright_pressure_plate: 1761 4326blue_skies:bluebright_sapling: 1557 4327blue_skies:bluebright_shovel: 1409 4328blue_skies:bluebright_sign: 1960 4329blue_skies:bluebright_slab: 1781 4330blue_skies:bluebright_spear: 1476 4331blue_skies:bluebright_stairs: 1842 4332blue_skies:bluebright_stick: 1344 4333blue_skies:bluebright_sword: 1406 4334blue_skies:bluebright_trapdoor: 1750 4335blue_skies:bluebright_vine: 1565 4336blue_skies:bluebright_wood: 1568 4337blue_skies:blush_blossom: 1540 4338blue_skies:brewberry: 1322 4339blue_skies:brewberry_bush: 1560 4340blue_skies:bright_blinding_keystone: 1517 4341blue_skies:briskbloom: 1544 4342blue_skies:brittlebush: 1543 4343blue_skies:brumble: 1550 4344blue_skies:brumble_block: 1552 4345blue_skies:brumble_lantern: 1556 4346blue_skies:brumble_slab: 1797 4347blue_skies:brumble_stairs: 1858 4348blue_skies:brumble_vine_top: 1551 4349blue_skies:brumble_wall: 1823 4350blue_skies:bug_guts: 1353 4351blue_skies:camel_saddle: 1390 4352blue_skies:camellia: 1538 4353blue_skies:carabeef: 1325 4354blue_skies:carved_blinding_stone: 1890 4355blue_skies:carved_nature_stonebrick: 1902 4356blue_skies:carved_poison_stonebrick: 1918 4357blue_skies:charoite: 1360 4358blue_skies:charoite_axe: 1468 4359blue_skies:charoite_block: 1708 4360blue_skies:charoite_boots: 1499 4361blue_skies:charoite_chestplate: 1497 4362blue_skies:charoite_helmet: 1496 4363blue_skies:charoite_hoe: 1470 4364blue_skies:charoite_leggings: 1498 4365blue_skies:charoite_pickaxe: 1467 4366blue_skies:charoite_shovel: 1469 4367blue_skies:charoite_sword: 1466 4368blue_skies:charscale_moki: 1336 4369blue_skies:charscale_moki_spawn_egg: 1302 4370blue_skies:chilled_lily_pad: 1974 4371blue_skies:chillweed: 1542 4372blue_skies:chiseled_crystal_sandstone: 1666 4373blue_skies:chiseled_lunar_stonebrick: 1617 4374blue_skies:chiseled_midnight_sandstone: 1591 4375blue_skies:chiseled_polished_brumble: 1555 4376blue_skies:chiseled_turquoise_stonebrick: 1533 4377blue_skies:cinderstone: 1620 4378blue_skies:cinderstone_slab: 1816 4379blue_skies:cinderstone_stairs: 1875 4380blue_skies:cinderstone_wall: 1840 4381blue_skies:coarse_lunar_dirt: 1608 4382blue_skies:coarse_turquoise_dirt: 1525 4383blue_skies:comet_axe: 1438 4384blue_skies:comet_berries: 1314 4385blue_skies:comet_berry_pie: 1692 4386blue_skies:comet_bookshelf: 1728 4387blue_skies:comet_button: 1777 4388blue_skies:comet_chest: 1959 4389blue_skies:comet_crafting_table: 1691 4390blue_skies:comet_door: 1951 4391blue_skies:comet_fence: 1742 4392blue_skies:comet_fence_gate: 1749 4393blue_skies:comet_grass: 1681 4394blue_skies:comet_hanging_sign: 1973 4395blue_skies:comet_hoe: 1440 4396blue_skies:comet_ladder: 1735 4397blue_skies:comet_leaves: 1684 4398blue_skies:comet_log: 1685 4399blue_skies:comet_pickaxe: 1437 4400blue_skies:comet_planks: 1689 4401blue_skies:comet_pressure_plate: 1767 4402blue_skies:comet_sapling: 1690 4403blue_skies:comet_shovel: 1439 4404blue_skies:comet_sign: 1966 4405blue_skies:comet_slab: 1787 4406blue_skies:comet_spear: 1482 4407blue_skies:comet_stairs: 1848 4408blue_skies:comet_stick: 1350 4409blue_skies:comet_sword: 1436 4410blue_skies:comet_trapdoor: 1756 4411blue_skies:comet_wood: 1686 4412blue_skies:cooked_carabeef: 1326 4413blue_skies:cooked_charscale_moki: 1337 4414blue_skies:cooked_grittle_flatfish: 1333 4415blue_skies:cooked_horizofin_tunid: 1339 4416blue_skies:cooked_monitor_tail: 1330 4417blue_skies:cooked_municipal_monkfish: 1335 4418blue_skies:cooked_venison: 1328 4419blue_skies:cosmic_fox_spawn_egg: 1297 4420blue_skies:cracked_lunar_stonebrick: 1616 4421blue_skies:cracked_lunar_stonebrick_slab: 1809 4422blue_skies:cracked_lunar_stonebrick_stairs: 1868 4423blue_skies:cracked_lunar_stonebrick_wall: 1834 4424blue_skies:cracked_turquoise_stonebrick: 1532 4425blue_skies:cracked_turquoise_stonebrick_slab: 1794 4426blue_skies:cracked_turquoise_stonebrick_stairs: 1853 4427blue_skies:cracked_turquoise_stonebrick_wall: 1822 4428blue_skies:crescent_fruit: 1321 4429blue_skies:crescent_fruit_leaves: 1694 4430blue_skies:crescent_fruit_sapling: 1693 4431blue_skies:crogre_spawn_egg: 1301 4432blue_skies:crushing_hammer: 1401 4433blue_skies:crynocerous_spawn_egg: 1285 4434blue_skies:cryo_root: 1318 4435blue_skies:crystal_camel_spawn_egg: 1298 4436blue_skies:crystal_flower: 1623 4437blue_skies:crystal_glass: 1714 4438blue_skies:crystal_glass_pane: 1715 4439blue_skies:crystal_sand: 1664 4440blue_skies:crystal_sandstone: 1665 4441blue_skies:crystal_sandstone_pillar: 1669 4442blue_skies:crystal_sandstone_slab: 1810 4443blue_skies:crystal_sandstone_stairs: 1871 4444blue_skies:crystal_sandstone_wall: 1836 4445blue_skies:crystallized_button: 1778 4446blue_skies:crystallized_door: 1952 4447blue_skies:crystallized_grass: 1634 4448blue_skies:crystallized_leaves: 1659 4449blue_skies:crystallized_log: 1660 4450blue_skies:crystallized_planks: 1662 4451blue_skies:crystallized_pressure_plate: 1768 4452blue_skies:crystallized_slab: 1788 4453blue_skies:crystallized_stairs: 1849 4454blue_skies:crystallized_trapdoor: 1757 4455blue_skies:crystallized_wall: 1837 4456blue_skies:crystallized_wood: 1661 4457blue_skies:cut_crystal_sandstone: 1667 4458blue_skies:cut_crystal_sandstone_slab: 1813 4459blue_skies:cut_midnight_sandstone: 1592 4460blue_skies:cut_midnight_sandstone_slab: 1812 4461blue_skies:dawn_blinding_keystone: 1518 4462blue_skies:debug_sword: 1405 4463blue_skies:decaying_spike: 1671 4464blue_skies:defying_starlight: 1509 4465blue_skies:different_sword: 1404 4466blue_skies:diophyde_prowler_spawn_egg: 1290 4467blue_skies:diopside_axe: 1463 4468blue_skies:diopside_block: 1707 4469blue_skies:diopside_boots: 1495 4470blue_skies:diopside_chestplate: 1493 4471blue_skies:diopside_gem: 1359 4472blue_skies:diopside_helmet: 1492 4473blue_skies:diopside_hoe: 1465 4474blue_skies:diopside_leggings: 1494 4475blue_skies:diopside_pickaxe: 1462 4476blue_skies:diopside_shovel: 1464 4477blue_skies:diopside_sword: 1461 4478blue_skies:dusk_arc: 1373 4479blue_skies:dusk_axe: 1423 4480blue_skies:dusk_bookshelf: 1726 4481blue_skies:dusk_button: 1775 4482blue_skies:dusk_chest: 1957 4483blue_skies:dusk_crafting_table: 1657 4484blue_skies:dusk_door: 1949 4485blue_skies:dusk_fence: 1740 4486blue_skies:dusk_fence_gate: 1747 4487blue_skies:dusk_hanging_sign: 1971 4488blue_skies:dusk_hoe: 1425 4489blue_skies:dusk_ladder: 1733 4490blue_skies:dusk_leaves: 1643 4491blue_skies:dusk_log: 1644 4492blue_skies:dusk_pickaxe: 1422 4493blue_skies:dusk_planks: 1648 4494blue_skies:dusk_pressure_plate: 1765 4495blue_skies:dusk_sapling: 1630 4496blue_skies:dusk_shovel: 1424 4497blue_skies:dusk_sign: 1964 4498blue_skies:dusk_slab: 1785 4499blue_skies:dusk_spear: 1480 4500blue_skies:dusk_stairs: 1846 4501blue_skies:dusk_stick: 1348 4502blue_skies:dusk_sword: 1421 4503blue_skies:dusk_trapdoor: 1754 4504blue_skies:dusk_vine: 1642 4505blue_skies:dusk_wood: 1645 4506blue_skies:emberback_spawn_egg: 1306 4507blue_skies:ethereal_arc: 1372 4508blue_skies:everbright_aquite_ore: 1598 4509blue_skies:everbright_charoite_ore: 1599 4510blue_skies:everbright_diopside_ore: 1596 4511blue_skies:everbright_emerald_ore: 1601 4512blue_skies:everbright_moonstone_ore: 1600 4513blue_skies:everbright_portal: 1718 4514blue_skies:everbright_pyrope_ore: 1597 4515blue_skies:everdawn_aquite_ore: 1676 4516blue_skies:everdawn_charoite_ore: 1677 4517blue_skies:everdawn_diopside_ore: 1674 4518blue_skies:everdawn_emerald_ore: 1679 4519blue_skies:everdawn_moonstone_ore: 1678 4520blue_skies:everdawn_portal: 1719 4521blue_skies:everdawn_pyrope_ore: 1675 4522blue_skies:falsite_block: 1702 4523blue_skies:falsite_ingot: 1361 4524blue_skies:falsite_nugget: 1369 4525blue_skies:falsite_ore: 1602 4526blue_skies:fiery_bean_seeds: 1513 4527blue_skies:fiery_beans: 1316 4528blue_skies:firefly_spawn_egg: 1296 4529blue_skies:flare_floret: 1625 4530blue_skies:food_prep_table: 1882 4531blue_skies:fox_pelt: 1352 4532blue_skies:frose: 1545 4533blue_skies:frost_spirit_spawn_egg: 1283 4534blue_skies:frostbright_axe: 1428 4535blue_skies:frostbright_bookshelf: 1724 4536blue_skies:frostbright_button: 1773 4537blue_skies:frostbright_chest: 1955 4538blue_skies:frostbright_crafting_table: 1588 4539blue_skies:frostbright_door: 1947 4540blue_skies:frostbright_fence: 1738 4541blue_skies:frostbright_fence_gate: 1745 4542blue_skies:frostbright_hanging_sign: 1969 4543blue_skies:frostbright_hoe: 1430 4544blue_skies:frostbright_ladder: 1731 4545blue_skies:frostbright_leaves: 1580 4546blue_skies:frostbright_log: 1581 4547blue_skies:frostbright_pickaxe: 1427 4548blue_skies:frostbright_planks: 1585 4549blue_skies:frostbright_pressure_plate: 1763 4550blue_skies:frostbright_sapling: 1559 4551blue_skies:frostbright_shovel: 1429 4552blue_skies:frostbright_sign: 1962 4553blue_skies:frostbright_slab: 1783 4554blue_skies:frostbright_spear: 1478 4555blue_skies:frostbright_stairs: 1844 4556blue_skies:frostbright_stick: 1346 4557blue_skies:frostbright_sword: 1426 4558blue_skies:frostbright_trapdoor: 1752 4559blue_skies:frostbright_vine: 1579 4560blue_skies:frostbright_wood: 1582 4561blue_skies:gatekeeper_spawn_egg: 1309 4562blue_skies:glimmer_reed: 1633 4563blue_skies:glowing_aquatic_slab: 1934 4564blue_skies:glowing_aquatic_stairs: 1932 4565blue_skies:glowing_aquatic_stone: 1930 4566blue_skies:glowing_aquatic_wall: 1936 4567blue_skies:glowing_blinding_slab: 1895 4568blue_skies:glowing_blinding_stairs: 1893 4569blue_skies:glowing_blinding_stone: 1889 4570blue_skies:glowing_blinding_wall: 1897 4571blue_skies:glowing_life_slab: 1942 4572blue_skies:glowing_life_stairs: 1940 4573blue_skies:glowing_life_stone: 1938 4574blue_skies:glowing_life_wall: 1944 4575blue_skies:glowing_nature_stone: 1899 4576blue_skies:glowing_nature_stone_slab: 1909 4577blue_skies:glowing_nature_stone_stairs: 1905 4578blue_skies:glowing_nature_stonebrick: 1901 4579blue_skies:glowing_nature_stonebrick_slab: 1911 4580blue_skies:glowing_nature_stonebrick_stairs: 1907 4581blue_skies:glowing_nature_stonebrick_wall: 1913 4582blue_skies:glowing_poison_stone: 1915 4583blue_skies:glowing_poison_stone_slab: 1925 4584blue_skies:glowing_poison_stone_stairs: 1921 4585blue_skies:grittle_flatfish: 1332 4586blue_skies:grittle_flatfish_spawn_egg: 1291 4587blue_skies:horizofin_tunid: 1338 4588blue_skies:horizofin_tunid_spawn_egg: 1303 4589blue_skies:horizonite_axe: 1473 4590blue_skies:horizonite_block: 1704 4591blue_skies:horizonite_boots: 1503 4592blue_skies:horizonite_chestplate: 1501 4593blue_skies:horizonite_forge: 1721 4594blue_skies:horizonite_helmet: 1500 4595blue_skies:horizonite_hoe: 1475 4596blue_skies:horizonite_ingot: 1363 4597blue_skies:horizonite_leggings: 1502 4598blue_skies:horizonite_nugget: 1371 4599blue_skies:horizonite_ore: 1680 4600blue_skies:horizonite_pickaxe: 1472 4601blue_skies:horizonite_shovel: 1474 4602blue_skies:horizonite_sword: 1471 4603blue_skies:infested_swarmer_spawn_egg: 1307 4604blue_skies:infused_arc_sword: 1403 4605blue_skies:jelly_drifter_spawn_egg: 1281 4606blue_skies:life_arc: 1377 4607blue_skies:life_slab: 1941 4608blue_skies:life_stairs: 1939 4609blue_skies:life_stone: 1937 4610blue_skies:life_wall: 1943 4611blue_skies:loot_bag: 1392 4612blue_skies:loot_bag_alchemist: 1394 4613blue_skies:loot_bag_arachnarch: 1396 4614blue_skies:loot_bag_starlit_crusher: 1395 4615blue_skies:loot_bag_summoner: 1393 4616blue_skies:lucentroot: 1628 4617blue_skies:lunar_axe: 1413 4618blue_skies:lunar_bookshelf: 1725 4619blue_skies:lunar_button: 1774 4620blue_skies:lunar_chest: 1956 4621blue_skies:lunar_cobblestone: 1612 4622blue_skies:lunar_cobblestone_slab: 1805 4623blue_skies:lunar_cobblestone_stairs: 1869 4624blue_skies:lunar_cobblestone_wall: 1830 4625blue_skies:lunar_comet_grass_block: 1683 4626blue_skies:lunar_crafting_table: 1656 4627blue_skies:lunar_dirt: 1607 4628blue_skies:lunar_door: 1948 4629blue_skies:lunar_dripstone: 1670 4630blue_skies:lunar_farmland: 1610 4631blue_skies:lunar_fence: 1739 4632blue_skies:lunar_fence_gate: 1746 4633blue_skies:lunar_grass: 1604 4634blue_skies:lunar_grass_block: 1606 4635blue_skies:lunar_hanging_sign: 1970 4636blue_skies:lunar_hoe: 1415 4637blue_skies:lunar_ladder: 1732 4638blue_skies:lunar_leaves: 1636 4639blue_skies:lunar_lever: 1780 4640blue_skies:lunar_log: 1637 4641blue_skies:lunar_mud: 1609 4642blue_skies:lunar_pickaxe: 1412 4643blue_skies:lunar_planks: 1641 4644blue_skies:lunar_pressure_plate: 1764 4645blue_skies:lunar_sapling: 1629 4646blue_skies:lunar_shovel: 1414 4647blue_skies:lunar_sign: 1963 4648blue_skies:lunar_slab: 1784 4649blue_skies:lunar_spear: 1479 4650blue_skies:lunar_stairs: 1845 4651blue_skies:lunar_stick: 1347 4652blue_skies:lunar_stone: 1611 4653blue_skies:lunar_stone_axe: 1448 4654blue_skies:lunar_stone_button: 1770 4655blue_skies:lunar_stone_hoe: 1450 4656blue_skies:lunar_stone_pickaxe: 1447 4657blue_skies:lunar_stone_pressure_plate: 1760 4658blue_skies:lunar_stone_shovel: 1449 4659blue_skies:lunar_stone_slab: 1804 4660blue_skies:lunar_stone_stairs: 1865 4661blue_skies:lunar_stone_sword: 1446 4662blue_skies:lunar_stonebrick: 1614 4663blue_skies:lunar_stonebrick_slab: 1807 4664blue_skies:lunar_stonebrick_stairs: 1866 4665blue_skies:lunar_stonebrick_wall: 1832 4666blue_skies:lunar_sword: 1411 4667blue_skies:lunar_trapdoor: 1753 4668blue_skies:lunar_vine: 1635 4669blue_skies:lunar_wood: 1638 4670blue_skies:maple_axe: 1433 4671blue_skies:maple_bookshelf: 1727 4672blue_skies:maple_button: 1776 4673blue_skies:maple_chest: 1958 4674blue_skies:maple_crafting_table: 1658 4675blue_skies:maple_door: 1950 4676blue_skies:maple_fence: 1741 4677blue_skies:maple_fence_gate: 1748 4678blue_skies:maple_hanging_sign: 1972 4679blue_skies:maple_hoe: 1435 4680blue_skies:maple_ladder: 1734 4681blue_skies:maple_leaves: 1650 4682blue_skies:maple_log: 1651 4683blue_skies:maple_pickaxe: 1432 4684blue_skies:maple_planks: 1655 4685blue_skies:maple_pressure_plate: 1766 4686blue_skies:maple_sapling: 1631 4687blue_skies:maple_shovel: 1434 4688blue_skies:maple_sign: 1965 4689blue_skies:maple_slab: 1786 4690blue_skies:maple_spear: 1481 4691blue_skies:maple_stairs: 1847 4692blue_skies:maple_stick: 1349 4693blue_skies:maple_sword: 1431 4694blue_skies:maple_trapdoor: 1755 4695blue_skies:maple_vine: 1649 4696blue_skies:maple_wood: 1652 4697blue_skies:midday_bayhop: 1546 4698blue_skies:midnight_glass: 1716 4699blue_skies:midnight_glass_pane: 1717 4700blue_skies:midnight_sand: 1589 4701blue_skies:midnight_sandstone: 1590 4702blue_skies:midnight_sandstone_pillar: 1594 4703blue_skies:midnight_sandstone_slab: 1795 4704blue_skies:midnight_sandstone_stairs: 1856 4705blue_skies:midnight_sandstone_wall: 1835 4706blue_skies:monitor_tail: 1329 4707blue_skies:moonlit_bloom: 1622 4708blue_skies:moonlit_water_lily: 1975 4709blue_skies:moonstone: 1709 4710blue_skies:moonstone_block: 1700 4711blue_skies:moonstone_crystal: 1712 4712blue_skies:moonstone_lantern: 1710 4713blue_skies:moonstone_pressure_plate: 1758 4714blue_skies:moonstone_shard: 1356 4715blue_skies:moonstone_shield: 1483 4716blue_skies:mossy_lunar_cobblestone: 1613 4717blue_skies:mossy_lunar_cobblestone_slab: 1806 4718blue_skies:mossy_lunar_cobblestone_stairs: 1870 4719blue_skies:mossy_lunar_cobblestone_wall: 1831 4720blue_skies:mossy_lunar_stonebrick: 1615 4721blue_skies:mossy_lunar_stonebrick_slab: 1808 4722blue_skies:mossy_lunar_stonebrick_stairs: 1867 4723blue_skies:mossy_lunar_stonebrick_wall: 1833 4724blue_skies:mossy_turquoise_cobblestone: 1529 4725blue_skies:mossy_turquoise_cobblestone_slab: 1791 4726blue_skies:mossy_turquoise_cobblestone_stairs: 1855 4727blue_skies:mossy_turquoise_cobblestone_wall: 1819 4728blue_skies:mossy_turquoise_stonebrick: 1531 4729blue_skies:mossy_turquoise_stonebrick_slab: 1793 4730blue_skies:mossy_turquoise_stonebrick_stairs: 1852 4731blue_skies:mossy_turquoise_stonebrick_wall: 1821 4732blue_skies:muckweed: 1627 4733blue_skies:multi_portal_item: 1516 4734blue_skies:municipal_monkfish: 1334 4735blue_skies:municipal_monkfish_spawn_egg: 1292 4736blue_skies:nature_arc: 1374 4737blue_skies:nature_key: 1342 4738blue_skies:nature_keystone: 1519 4739blue_skies:nature_stone: 1898 4740blue_skies:nature_stone_pillar: 1903 4741blue_skies:nature_stone_slab: 1908 4742blue_skies:nature_stone_stairs: 1904 4743blue_skies:nature_stonebrick: 1900 4744blue_skies:nature_stonebrick_slab: 1910 4745blue_skies:nature_stonebrick_stairs: 1906 4746blue_skies:nature_stonebrick_wall: 1912 4747blue_skies:nested_spider_spawn_egg: 1308 4748blue_skies:nightcress: 1626 4749blue_skies:nyctofly_spawn_egg: 1304 4750blue_skies:pearl: 1355 4751blue_skies:pine_fruit: 1320 4752blue_skies:pine_fruit_seeds: 1515 4753blue_skies:pink_brewberry: 1323 4754blue_skies:poison_arc: 1375 4755blue_skies:poison_key: 1343 4756blue_skies:poison_keystone: 1520 4757blue_skies:poison_stone: 1914 4758blue_skies:poison_stone_pillar: 1919 4759blue_skies:poison_stone_slab: 1924 4760blue_skies:poison_stone_stairs: 1920 4761blue_skies:poison_stonebrick: 1916 4762blue_skies:poison_stonebrick_slab: 1926 4763blue_skies:poison_stonebrick_stairs: 1922 4764blue_skies:poison_stonebrick_wall: 1928 4765blue_skies:polar_posy: 1541 4766blue_skies:polargeist_spawn_egg: 1286 4767blue_skies:polished_brumble: 1553 4768blue_skies:polished_brumble_brick_slab: 1799 4769blue_skies:polished_brumble_brick_stairs: 1860 4770blue_skies:polished_brumble_brick_wall: 1825 4771blue_skies:polished_brumble_bricks: 1554 4772blue_skies:polished_brumble_slab: 1798 4773blue_skies:polished_brumble_stairs: 1859 4774blue_skies:polished_brumble_wall: 1824 4775blue_skies:polished_cinderstone: 1621 4776blue_skies:polished_cinderstone_slab: 1817 4777blue_skies:polished_cinderstone_stairs: 1876 4778blue_skies:polished_cinderstone_wall: 1841 4779blue_skies:polished_rimestone: 1537 4780blue_skies:polished_rimestone_slab: 1803 4781blue_skies:polished_rimestone_stairs: 1864 4782blue_skies:polished_rimestone_wall: 1829 4783blue_skies:polished_taratite: 1535 4784blue_skies:polished_taratite_slab: 1801 4785blue_skies:polished_taratite_stairs: 1862 4786blue_skies:polished_taratite_wall: 1827 4787blue_skies:polished_umber: 1619 4788blue_skies:polished_umber_slab: 1815 4789blue_skies:polished_umber_stairs: 1874 4790blue_skies:polished_umber_wall: 1839 4791blue_skies:population: 1511 4792blue_skies:prepared_food: 1331 4793blue_skies:pyrope_axe: 1453 4794blue_skies:pyrope_block: 1705 4795blue_skies:pyrope_boots: 1487 4796blue_skies:pyrope_chestplate: 1485 4797blue_skies:pyrope_gem: 1357 4798blue_skies:pyrope_helmet: 1484 4799blue_skies:pyrope_hoe: 1455 4800blue_skies:pyrope_leggings: 1486 4801blue_skies:pyrope_pickaxe: 1452 4802blue_skies:pyrope_shovel: 1454 4803blue_skies:pyrope_sword: 1451 4804blue_skies:raw_aquite: 1364 4805blue_skies:raw_aquite_block: 1698 4806blue_skies:raw_charoite: 1365 4807blue_skies:raw_charoite_block: 1699 4808blue_skies:raw_falsite: 1366 4809blue_skies:raw_falsite_block: 1695 4810blue_skies:raw_horizonite: 1368 4811blue_skies:raw_horizonite_block: 1697 4812blue_skies:raw_ventium: 1367 4813blue_skies:raw_ventium_block: 1696 4814blue_skies:regrowth_armor_trim_smithing_template: 1979 4815blue_skies:reindeer_spawn_egg: 1280 4816blue_skies:rimestone: 1536 4817blue_skies:rimestone_slab: 1802 4818blue_skies:rimestone_stairs: 1863 4819blue_skies:rimestone_wall: 1828 4820blue_skies:rough_poison_stonebrick: 1917 4821blue_skies:rough_poison_stonebrick_slab: 1927 4822blue_skies:rough_poison_stonebrick_stairs: 1923 4823blue_skies:runic_arc: 1378 4824blue_skies:scalefruit: 1319 4825blue_skies:scalefruit_seeds: 1514 4826blue_skies:sea_moss: 1547 4827blue_skies:sea_moss_block: 1548 4828blue_skies:sea_moss_carpet: 1549 4829blue_skies:seclam_spawn_egg: 1288 4830blue_skies:shade_monitor_spawn_egg: 1299 4831blue_skies:shadow_boots: 1507 4832blue_skies:shadow_chestplate: 1505 4833blue_skies:shadow_helmet: 1504 4834blue_skies:shadow_leggings: 1506 4835blue_skies:shrumpty_spawn_egg: 1289 4836blue_skies:sliv_spawn_egg: 1300 4837blue_skies:smooth_crystal_sandstone: 1668 4838blue_skies:smooth_crystal_sandstone_slab: 1811 4839blue_skies:smooth_crystal_sandstone_stairs: 1872 4840blue_skies:smooth_midnight_sandstone: 1593 4841blue_skies:smooth_midnight_sandstone_slab: 1796 4842blue_skies:smooth_midnight_sandstone_stairs: 1857 4843blue_skies:snow_owl_spawn_egg: 1282 4844blue_skies:snowbloom: 1539 4845blue_skies:snowcap_mushroom: 1562 4846blue_skies:snowcap_mushroom_block: 1563 4847blue_skies:snowcap_mushroom_stem: 1564 4848blue_skies:snowcap_oven: 1720 4849blue_skies:snowcap_pinhead: 1561 4850blue_skies:solnut: 1317 4851blue_skies:soul_fragment: 1354 4852blue_skies:soulbound_spear: 1397 4853blue_skies:spewter_spawn_egg: 1295 4854blue_skies:spider_nest: 1673 4855blue_skies:spider_webbing: 1672 4856blue_skies:spike_shield: 1398 4857blue_skies:star_emitter: 1877 4858blue_skies:star_flare: 1711 4859blue_skies:stardust_ram_spawn_egg: 1279 4860blue_skies:starlit_axe: 1418 4861blue_skies:starlit_bookshelf: 1723 4862blue_skies:starlit_button: 1772 4863blue_skies:starlit_chest: 1954 4864blue_skies:starlit_crafting_table: 1587 4865blue_skies:starlit_crusher_spawn_egg: 1312 4866blue_skies:starlit_crusher_trophy: 1885 4867blue_skies:starlit_door: 1946 4868blue_skies:starlit_fence: 1737 4869blue_skies:starlit_fence_gate: 1744 4870blue_skies:starlit_hanging_sign: 1968 4871blue_skies:starlit_hoe: 1420 4872blue_skies:starlit_ladder: 1730 4873blue_skies:starlit_leaves: 1573 4874blue_skies:starlit_log: 1574 4875blue_skies:starlit_pickaxe: 1417 4876blue_skies:starlit_planks: 1578 4877blue_skies:starlit_pressure_plate: 1762 4878blue_skies:starlit_sapling: 1558 4879blue_skies:starlit_shovel: 1419 4880blue_skies:starlit_sign: 1961 4881blue_skies:starlit_slab: 1782 4882blue_skies:starlit_spear: 1477 4883blue_skies:starlit_stairs: 1843 4884blue_skies:starlit_stick: 1345 4885blue_skies:starlit_sword: 1416 4886blue_skies:starlit_trapdoor: 1751 4887blue_skies:starlit_vine: 1572 4888blue_skies:starlit_wood: 1575 4889blue_skies:stonelet_spawn_egg: 1294 4890blue_skies:stripped_bluebright_log: 1569 4891blue_skies:stripped_bluebright_wood: 1570 4892blue_skies:stripped_comet_log: 1687 4893blue_skies:stripped_comet_wood: 1688 4894blue_skies:stripped_dusk_log: 1646 4895blue_skies:stripped_dusk_wood: 1647 4896blue_skies:stripped_frostbright_log: 1583 4897blue_skies:stripped_frostbright_wood: 1584 4898blue_skies:stripped_lunar_log: 1639 4899blue_skies:stripped_lunar_wood: 1640 4900blue_skies:stripped_maple_log: 1653 4901blue_skies:stripped_maple_wood: 1654 4902blue_skies:stripped_starlit_log: 1576 4903blue_skies:stripped_starlit_wood: 1577 4904blue_skies:summoner_spawn_egg: 1310 4905blue_skies:summoner_trophy: 1883 4906blue_skies:summoning_table: 1880 4907blue_skies:summoning_tome: 1399 4908blue_skies:sunstone_block: 1701 4909blue_skies:sunstone_crystal: 1713 4910blue_skies:tall_lunar_grass: 1605 4911blue_skies:tall_turquoise_grass: 1522 4912blue_skies:taratite: 1534 4913blue_skies:taratite_slab: 1800 4914blue_skies:taratite_stairs: 1861 4915blue_skies:taratite_wall: 1826 4916blue_skies:thwarted_armor_trim_smithing_template: 1978 4917blue_skies:tool_box: 1879 4918blue_skies:toxic_armor_trim_smithing_template: 1980 4919blue_skies:trough: 1878 4920blue_skies:turquoise_cobblestone: 1528 4921blue_skies:turquoise_cobblestone_slab: 1790 4922blue_skies:turquoise_cobblestone_stairs: 1854 4923blue_skies:turquoise_cobblestone_wall: 1818 4924blue_skies:turquoise_comet_grass_block: 1682 4925blue_skies:turquoise_dirt: 1524 4926blue_skies:turquoise_dripstone: 1595 4927blue_skies:turquoise_farmland: 1526 4928blue_skies:turquoise_grass: 1521 4929blue_skies:turquoise_grass_block: 1523 4930blue_skies:turquoise_lever: 1779 4931blue_skies:turquoise_stone: 1527 4932blue_skies:turquoise_stone_axe: 1443 4933blue_skies:turquoise_stone_button: 1769 4934blue_skies:turquoise_stone_hoe: 1445 4935blue_skies:turquoise_stone_pickaxe: 1442 4936blue_skies:turquoise_stone_pressure_plate: 1759 4937blue_skies:turquoise_stone_shovel: 1444 4938blue_skies:turquoise_stone_slab: 1789 4939blue_skies:turquoise_stone_stairs: 1850 4940blue_skies:turquoise_stone_sword: 1441 4941blue_skies:turquoise_stonebrick: 1530 4942blue_skies:turquoise_stonebrick_slab: 1792 4943blue_skies:turquoise_stonebrick_stairs: 1851 4944blue_skies:turquoise_stonebrick_wall: 1820 4945blue_skies:umber: 1618 4946blue_skies:umber_slab: 1814 4947blue_skies:umber_stairs: 1873 4948blue_skies:umber_wall: 1838 4949blue_skies:venison: 1327 4950blue_skies:venom_sac: 1402 4951blue_skies:venom_spider_spawn_egg: 1305 4952blue_skies:venomous_encounter: 1510 4953blue_skies:ventium_block: 1703 4954blue_skies:ventium_bucket: 1381 4955blue_skies:ventium_charscale_moki_bucket: 1388 4956blue_skies:ventium_drifter_bucket: 1385 4957blue_skies:ventium_grittle_flatfish_bucket: 1386 4958blue_skies:ventium_horizofin_tunid_bucket: 1389 4959blue_skies:ventium_ingot: 1362 4960blue_skies:ventium_lava_bucket: 1383 4961blue_skies:ventium_milk_bucket: 1384 4962blue_skies:ventium_municipal_monkfish_bucket: 1387 4963blue_skies:ventium_nugget: 1370 4964blue_skies:ventium_ore: 1603 4965blue_skies:ventium_shears: 1380 4966blue_skies:ventium_water_bucket: 1382 4967blue_skies:vitreous_moonstone: 1663 4968blue_skies:warding_pearl: 1976 4969blue_skies:whistleshell_crab_spawn_egg: 1287 4970blue_skies:winter_leaf_seeds: 1512 4971blue_skies:winter_leaves: 1315 4972blue_skies:zeal_lighter: 1340 4973immersive_weathering:blue_skies/bluebright_bark: 4887 4974immersive_weathering:blue_skies/bluebright_leaf_pile: 4873 4975immersive_weathering:blue_skies/comet_bark: 4893 4976immersive_weathering:blue_skies/comet_leaf_pile: 4879 4977immersive_weathering:blue_skies/crescent_fruit_leaf_pile: 4872 4978immersive_weathering:blue_skies/crystallized_leaf_pile: 4871 4979immersive_weathering:blue_skies/crystallized_scales: 4886 4980immersive_weathering:blue_skies/dusk_bark: 4891 4981immersive_weathering:blue_skies/dusk_leaf_pile: 4877 4982immersive_weathering:blue_skies/frostbright_bark: 4889 4983immersive_weathering:blue_skies/frostbright_leaf_pile: 4875 4984immersive_weathering:blue_skies/lunar_bark: 4890 4985immersive_weathering:blue_skies/lunar_leaf_pile: 4876 4986immersive_weathering:blue_skies/maple_bark: 4892 4987immersive_weathering:blue_skies/maple_leaf_pile: 4878 4988immersive_weathering:blue_skies/starlit_bark: 4888 4989immersive_weathering:blue_skies/starlit_leaf_pile: 4874 4990structure_gel:blue_gel: 4677 4991structure_gel:building_tool: 4675 4992structure_gel:cyan_gel: 4679 4993structure_gel:data_handler: 4682 4994structure_gel:dynamic_spawner: 4683 4995structure_gel:green_gel: 4678 4996structure_gel:orange_gel: 4680 4997structure_gel:red_gel: 4676 4998structure_gel:yellow_gel: 4681 4999 5000[23Nov2024 21:13:14.267] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:mob_effect 5001blue_skies:deadly_venom: 96 5002 5003[23Nov2024 21:13:14.267] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:point_of_interest_type 5004blue_skies:alchemy_table: 26 5005blue_skies:bag_of_spoils: 24 5006blue_skies:everbright_portal: 27 5007blue_skies:everdawn_portal: 28 5008blue_skies:keystone: 30 5009blue_skies:spider_nest: 29 5010blue_skies:star_emitter: 21 5011blue_skies:summoning_table: 25 5012blue_skies:tool_box: 23 5013blue_skies:trough: 22 5014blue_skies:warding_pearl: 31 5015 5016[23Nov2024 21:13:14.269] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:sound_event 5017blue_skies:ambient.moonlit_reservoir.loop: 2076 5018blue_skies:ambient.nature_dungeon.additions: 2073 5019blue_skies:ambient.poison_dungeon.additions: 2074 5020blue_skies:ambient.rain.drizzle: 2075 5021blue_skies:ambient.sandstorm_wind: 2072 5022blue_skies:ambient.shaded_woodlands.loop: 2077 5023blue_skies:ambient.snow_wind: 2070 5024blue_skies:ambient.snow_wind.additions: 2071 5025blue_skies:block.alchemy_table.use: 1866 5026blue_skies:block.crystallized_plant.break: 1864 5027blue_skies:block.everbright.portal: 1844 5028blue_skies:block.everbright.portal.travel: 1846 5029blue_skies:block.everbright.portal.trigger: 1845 5030blue_skies:block.everdawn.portal: 1847 5031blue_skies:block.everdawn.portal.travel: 1849 5032blue_skies:block.everdawn.portal.trigger: 1848 5033blue_skies:block.food_prep_table.use: 1870 5034blue_skies:block.keystone.locked: 1850 5035blue_skies:block.keystone.teleport: 1852 5036blue_skies:block.keystone.unlock: 1851 5037blue_skies:block.moonstone.break: 1853 5038blue_skies:block.moonstone_lantern.break: 1854 5039blue_skies:block.moonstone_lantern.hit: 1856 5040blue_skies:block.moonstone_lantern.place: 1855 5041blue_skies:block.mud.break: 1857 5042blue_skies:block.mud.hit: 1859 5043blue_skies:block.mud.place: 1858 5044blue_skies:block.mud.step: 1860 5045blue_skies:block.rimestone.break: 1861 5046blue_skies:block.rimestone.hit: 1863 5047blue_skies:block.rimestone.place: 1862 5048blue_skies:block.star_emitter.use: 1869 5049blue_skies:block.summoning_table.tome_change: 1865 5050blue_skies:block.tool_box.use: 1867 5051blue_skies:block.tool_box.use_falsite: 1868 5052blue_skies:entity.alchemist.cast_spell: 2028 5053blue_skies:entity.alchemist.celebrate: 2027 5054blue_skies:entity.alchemist.death: 2026 5055blue_skies:entity.alchemist.hurt: 2025 5056blue_skies:entity.alchemist.idle: 2024 5057blue_skies:entity.alchemist.prepare_attack: 2034 5058blue_skies:entity.alchemist.prepare_blindness: 2031 5059blue_skies:entity.alchemist.prepare_conversion: 2032 5060blue_skies:entity.alchemist.prepare_potions: 2033 5061blue_skies:entity.alchemist.prepare_regen: 2030 5062blue_skies:entity.alchemist.prepare_rocks: 2029 5063blue_skies:entity.arachnarch.attack: 2063 5064blue_skies:entity.arachnarch.charge: 2056 5065blue_skies:entity.arachnarch.death: 2054 5066blue_skies:entity.arachnarch.flip: 2058 5067blue_skies:entity.arachnarch.hurt: 2053 5068blue_skies:entity.arachnarch.idle: 2052 5069blue_skies:entity.arachnarch.lunge: 2057 5070blue_skies:entity.arachnarch.screech: 2062 5071blue_skies:entity.arachnarch.sling: 2059 5072blue_skies:entity.arachnarch.spit: 2055 5073blue_skies:entity.arachnarch.stunned: 2060 5074blue_skies:entity.arachnarch.throw: 2064 5075blue_skies:entity.arachnarch.venom_drop: 2061 5076blue_skies:entity.armored_frost_spirit.death: 1948 5077blue_skies:entity.armored_frost_spirit.hurt: 1947 5078blue_skies:entity.armored_frost_spirit.idle: 1946 5079blue_skies:entity.artificial_golem.activate: 1996 5080blue_skies:entity.artificial_golem.attack: 1995 5081blue_skies:entity.artificial_golem.deactivate: 1997 5082blue_skies:entity.artificial_golem.death: 1994 5083blue_skies:entity.artificial_golem.hurt: 1993 5084blue_skies:entity.azulfo.death: 1920 5085blue_skies:entity.azulfo.hurt: 1919 5086blue_skies:entity.azulfo.idle: 1918 5087blue_skies:entity.boss.spawn: 2014 5088blue_skies:entity.crogre.death: 1931 5089blue_skies:entity.crogre.hurt: 1930 5090blue_skies:entity.crogre.idle: 1928 5091blue_skies:entity.crogre.idle_happy: 1929 5092blue_skies:entity.crogre.jump: 1932 5093blue_skies:entity.crynocerous.death: 1951 5094blue_skies:entity.crynocerous.hurt: 1950 5095blue_skies:entity.crynocerous.idle: 1949 5096blue_skies:entity.crystal_camel.death: 1944 5097blue_skies:entity.crystal_camel.hurt: 1943 5098blue_skies:entity.crystal_camel.idle: 1942 5099blue_skies:entity.crystal_camel.step: 1945 5100blue_skies:entity.diophyde_prowler.death: 1970 5101blue_skies:entity.diophyde_prowler.hurt: 1969 5102blue_skies:entity.diophyde_prowler.idle: 1968 5103blue_skies:entity.diophyde_prowler.lunge: 1971 5104blue_skies:entity.emberback.death: 1963 5105blue_skies:entity.emberback.flying: 1960 5106blue_skies:entity.emberback.hurt: 1962 5107blue_skies:entity.emberback.idle: 1961 5108blue_skies:entity.emberback.spray: 1959 5109blue_skies:entity.firefly.death: 1933 5110blue_skies:entity.fluctuant_sphere.disappear: 2015 5111blue_skies:entity.frost_spirit.death: 1954 5112blue_skies:entity.frost_spirit.free: 1952 5113blue_skies:entity.frost_spirit.hurt: 1953 5114blue_skies:entity.gatekeeper.cast_spell: 2009 5115blue_skies:entity.gatekeeper.celebrate: 2008 5116blue_skies:entity.gatekeeper.death: 2007 5117blue_skies:entity.gatekeeper.hurt: 2006 5118blue_skies:entity.gatekeeper.idle: 2005 5119blue_skies:entity.gatekeeper.no: 2011 5120blue_skies:entity.gatekeeper.prepare_regen: 2010 5121blue_skies:entity.gatekeeper.trade: 2013 5122blue_skies:entity.gatekeeper.yes: 2012 5123blue_skies:entity.infested_swarmer.bite: 1964 5124blue_skies:entity.infested_swarmer.death: 1967 5125blue_skies:entity.infested_swarmer.hurt: 1966 5126blue_skies:entity.infested_swarmer.idle: 1965 5127blue_skies:entity.jelly_drifter.death: 1926 5128blue_skies:entity.jelly_drifter.hurt: 1925 5129blue_skies:entity.jelly_drifter.idle: 1924 5130blue_skies:entity.jelly_drifter.poison: 1927 5131blue_skies:entity.nested_spider.death: 2004 5132blue_skies:entity.nested_spider.hurt: 2003 5133blue_skies:entity.nested_spider.idle: 2002 5134blue_skies:entity.nyctofly.bite: 1955 5135blue_skies:entity.nyctofly.death: 1958 5136blue_skies:entity.nyctofly.flying: 1956 5137blue_skies:entity.nyctofly.hurt: 1957 5138blue_skies:entity.player.cast_spell: 2066 5139blue_skies:entity.player.prepare_fluctuant_sphere: 2068 5140blue_skies:entity.player.prepare_rocks: 2067 5141blue_skies:entity.player.prepare_summoning: 2069 5142blue_skies:entity.player.spit: 2065 5143blue_skies:entity.polargeist.attack: 1982 5144blue_skies:entity.polargeist.death: 1981 5145blue_skies:entity.polargeist.hurt: 1980 5146blue_skies:entity.polargeist.idle: 1979 5147blue_skies:entity.reindeer.death: 1936 5148blue_skies:entity.reindeer.hurt: 1935 5149blue_skies:entity.reindeer.idle: 1934 5150blue_skies:entity.shade_monitor.death: 1974 5151blue_skies:entity.shade_monitor.hurt: 1973 5152blue_skies:entity.shade_monitor.idle: 1972 5153blue_skies:entity.shrumpty.attack: 1986 5154blue_skies:entity.shrumpty.death: 1985 5155blue_skies:entity.shrumpty.hurt: 1984 5156blue_skies:entity.shrumpty.idle: 1983 5157blue_skies:entity.sliv.death: 1992 5158blue_skies:entity.sliv.hurt: 1991 5159blue_skies:entity.sliv.idle: 1990 5160blue_skies:entity.snow_owl.death: 1939 5161blue_skies:entity.snow_owl.flap: 1941 5162blue_skies:entity.snow_owl.hurt: 1938 5163blue_skies:entity.snow_owl.idle: 1937 5164blue_skies:entity.snow_owl.sing: 1940 5165blue_skies:entity.spewter.death: 2000 5166blue_skies:entity.spewter.grow: 2001 5167blue_skies:entity.spewter.hurt: 1999 5168blue_skies:entity.spewter.spit: 1998 5169blue_skies:entity.stardust_ram.death: 1923 5170blue_skies:entity.stardust_ram.hurt: 1922 5171blue_skies:entity.stardust_ram.idle: 1921 5172blue_skies:entity.starlit_crusher.attack: 2049 5173blue_skies:entity.starlit_crusher.death: 2037 5174blue_skies:entity.starlit_crusher.fling_leaf: 2050 5175blue_skies:entity.starlit_crusher.hammer_smash: 2048 5176blue_skies:entity.starlit_crusher.heal: 2041 5177blue_skies:entity.starlit_crusher.hurt: 2036 5178blue_skies:entity.starlit_crusher.idle: 2035 5179blue_skies:entity.starlit_crusher.prepare_hammer: 2047 5180blue_skies:entity.starlit_crusher.prepare_large_growth: 2043 5181blue_skies:entity.starlit_crusher.prepare_owls: 2046 5182blue_skies:entity.starlit_crusher.prepare_small_growth: 2042 5183blue_skies:entity.starlit_crusher.prepare_spin: 2044 5184blue_skies:entity.starlit_crusher.root: 2040 5185blue_skies:entity.starlit_crusher.spin: 2045 5186blue_skies:entity.starlit_crusher.step: 2038 5187blue_skies:entity.starlit_crusher.stunned: 2039 5188blue_skies:entity.starlit_wall.grow: 2051 5189blue_skies:entity.stonelet.death: 1989 5190blue_skies:entity.stonelet.hurt: 1988 5191blue_skies:entity.stonelet.idle: 1987 5192blue_skies:entity.summoner.cast_spell: 2020 5193blue_skies:entity.summoner.celebrate: 2019 5194blue_skies:entity.summoner.death: 2018 5195blue_skies:entity.summoner.hurt: 2017 5196blue_skies:entity.summoner.idle: 2016 5197blue_skies:entity.summoner.prepare_attack: 2022 5198blue_skies:entity.summoner.prepare_regen: 2021 5199blue_skies:entity.summoner.prepare_summon: 2023 5200blue_skies:entity.venom_spider.death: 1977 5201blue_skies:entity.venom_spider.hurt: 1976 5202blue_skies:entity.venom_spider.idle: 1975 5203blue_skies:entity.venom_spider.spit: 1978 5204blue_skies:entity.villager.work_alchemist: 1917 5205blue_skies:entity.villager.work_nightwatcher: 1915 5206blue_skies:entity.villager.work_shoveler: 1914 5207blue_skies:entity.villager.work_stargazer: 1912 5208blue_skies:entity.villager.work_summoner: 1916 5209blue_skies:entity.villager.work_wrangler: 1913 5210blue_skies:gangster: 2078 5211blue_skies:item.arc.aquatic_equip: 1880 5212blue_skies:item.arc.dusk_equip: 1877 5213blue_skies:item.arc.ethereal_equip: 1876 5214blue_skies:item.arc.life_equip: 1881 5215blue_skies:item.arc.nature_equip: 1878 5216blue_skies:item.arc.poison_equip: 1879 5217blue_skies:item.arc.runic_equip: 1882 5218blue_skies:item.astrolabe.ready: 1884 5219blue_skies:item.bag.open: 1883 5220blue_skies:item.falsite.break: 1885 5221blue_skies:item.spear.hit: 1873 5222blue_skies:item.spear.hit_ground: 1874 5223blue_skies:item.spear.return: 1875 5224blue_skies:item.spear.throw: 1871 5225blue_skies:item.spear.throw_underwater: 1872 5226blue_skies:music.baneful: 1895 5227blue_skies:music.blinding_boss: 1902 5228blue_skies:music.blinding_defeat: 1903 5229blue_skies:music.blinding_dungeon_ambience: 1901 5230blue_skies:music.brightlands: 1896 5231blue_skies:music.brisegel: 1892 5232blue_skies:music.brittlebush: 1900 5233blue_skies:music.crystal_dunes: 1897 5234blue_skies:music.gatekeepers_tale: 1898 5235blue_skies:music.generic_boss: 1910 5236blue_skies:music.generic_defeat: 1911 5237blue_skies:music.mars: 1890 5238blue_skies:music.moonlit_bloom: 1891 5239blue_skies:music.nature_boss: 1908 5240blue_skies:music.nature_defeat: 1909 5241blue_skies:music.nature_dungeon_ambience: 1907 5242blue_skies:music.poison_boss: 1905 5243blue_skies:music.poison_defeat: 1906 5244blue_skies:music.poison_dungeon_ambience: 1904 5245blue_skies:music.snowcap: 1894 5246blue_skies:music.turquoise: 1893 5247blue_skies:music.whistleshell: 1899 5248blue_skies:records.blinding_rage: 1886 5249blue_skies:records.defying_starlight: 1887 5250blue_skies:records.population: 1889 5251blue_skies:records.venomous_encounter: 1888 5252 5253[23Nov2024 21:13:14.271] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: Unidentified mapping from registry minecraft:villager_profession 5254blue_skies:alchemist: 20 5255blue_skies:nightwatcher: 18 5256blue_skies:shoveler: 17 5257blue_skies:stargazer: 15 5258blue_skies:summoner: 19 5259blue_skies:wrangler: 16 5260  1583 lines  6844[23Nov2024 21:13:14.305] [main/ERROR] [net.minecraftforge.registries.GameData/REGISTRIES]: There are unidentified mappings in this world - we are going to attempt to process anyway  70 lines  6915[23Nov2024 21:13:19.234] [main/ERROR] [net.minecraft.world.level.storage.LevelStorageSource/]: WorldGenSettings: Unknown registry key in ResourceKey[minecraft:root / minecraft:worldgen/chunk_generator]: blue_skies:everbright; Failed to get element ResourceKey[minecraft:dimension_type / blue_skies:everbright]; Unknown registry key in ResourceKey[minecraft:root / minecraft:worldgen/chunk_generator]: blue_skies:everdawn; Failed to get element ResourceKey[minecraft:dimension_type / blue_skies:everdawn] missed input: {"blue_skies:everbright":{generator:{type:"blue_skies:everbright"},type:"blue_skies:everbright"},"blue_skies:everdawn":{generator:{type:"blue_skies:everdawn"},type:"blue_skies:everdawn"}}
    • Para solucionar cualquiera de esos errores (Stack count must be 1) preguntale a chat gpt ya que te indicara que mod tiene el problema ;)
    • It was fine one day and then without me touching it in anyway it crashes every time I click play on the mincecraft it loads, and then crashes giving me this https://pastebin.com/wC0GxBxq for the crash report. If it requires me to go into the files and meddle with it I humbly request to be pointed towards a guide or instructions as I am not the most tech literate individual. Thank you for any help!
    • Hi I Opened minecraft after making a modpack with 38 mods and optifine but after opening the game it loaded but when it was loading the menu it did not and there was some white rectangles. Error: org.spongepowered.asm.mixin.injection.throwables.InjectionError: LVT in net/minecraft/client/renderer/texture/AtlasTexture::func_229220_a_(Lnet/minecraft/resources/IResourceManager;Ljava/util/stream/Stream;Lnet/minecraft/profiler/IProfiler;I)Lnet/minecraft/client/renderer/texture/AtlasTexture$SheetData; has incompatible changes at opcode 163 in callback watut.mixins.json:client.TextureAtlasPrepareToStitch->@Inject::prepareToStitch(Lnet/minecraft/resources/IResourceManager;Ljava/util/stream/Stream;Lnet/minecraft/profiler/IProfiler;ILorg/spongepowered/asm/mixin/injection/callback/CallbackInfoReturnable;Ljava/util/Set;)V.
    • UPDATE: This seems to be happening every time I leave the Beneath dimension (2 for 2). Not sure why those 2 dimensions specifically. I have no problems with the nether or Twilight Forest.
  • Topics

×
×
  • Create New...

Important Information

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