Started by
Geometrical565
on
Topic category: Troubleshooting, bugs, and solutions
I've attempted to run my Minecraft mod, Geo's mobs (Forge 1.20.1), which currently only has one mob with a custom Blockbench .java model, but after creating the mob and giving it that model, the game does not load and instead crashes and closes java as soon as "Minecraft Progress" finishes loading. When I tried it using one of the built-in models instead of a custom one, it loaded past that point and let me run it. Here's the crash log: https://pastebin.com/97302T8W
has anyone figured out a solution?
also, here's the .java file:
// Made with Blockbench 4.10.4
// Exported for Minecraft version 1.17 or later with Mojang mappings
// Paste this class into your mod and generate all required imports
public class wiwaxia<T extends Entity> extends EntityModel<T> {
// This layer location should be baked with EntityRendererProvider.Context in the entity renderer and passed into this model's constructor
public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(new ResourceLocation("modid", "wiwaxia"), "main");
private final ModelPart body;
private final ModelPart eggbelly;
private final ModelPart head;
private final ModelPart leg0;
private final ModelPart leg1;
private final ModelPart leg2;
private final ModelPart leg3;
public wiwaxia(ModelPart root) {
this.body = root.getChild("body");
this.eggbelly = root.getChild("eggbelly");
this.head = root.getChild("head");
this.leg0 = root.getChild("leg0");
this.leg1 = root.getChild("leg1");
this.leg2 = root.getChild("leg2");
this.leg3 = root.getChild("leg3");
}
public static LayerDefinition createBodyLayer() {
MeshDefinition meshdefinition = new MeshDefinition();
PartDefinition partdefinition = meshdefinition.getRoot();
PartDefinition body = partdefinition.addOrReplaceChild("body", CubeListBuilder.create().texOffs(6, 37).addBox(-9.5F, 3.0F, -10.0F, 19.0F, 20.0F, 6.0F, new CubeDeformation(0.0F))
.texOffs(31, 1).addBox(-5.5F, 3.0F, -13.0F, 11.0F, 18.0F, 3.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 10.0F, -10.0F, 1.5708F, 0.0F, 0.0F));
PartDefinition eggbelly = body.addOrReplaceChild("eggbelly", CubeListBuilder.create().texOffs(70, 33).addBox(-4.5F, 3.0F, -14.0F, 9.0F, 18.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F));
PartDefinition head = partdefinition.addOrReplaceChild("head", CubeListBuilder.create().texOffs(3, 0).addBox(-3.0F, -1.0F, -3.0F, 6.0F, 5.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 19.0F, -10.0F));
PartDefinition leg0 = partdefinition.addOrReplaceChild("leg0", CubeListBuilder.create().texOffs(1, 23).addBox(-2.0F, 0.0F, 0.0F, 4.0F, 1.0F, 10.0F, new CubeDeformation(0.0F)), PartPose.offset(-3.5F, 22.0F, 11.0F));
PartDefinition leg1 = partdefinition.addOrReplaceChild("leg1", CubeListBuilder.create().texOffs(1, 12).addBox(-2.0F, 0.0F, 0.0F, 4.0F, 1.0F, 10.0F, new CubeDeformation(0.0F)), PartPose.offset(3.5F, 22.0F, 11.0F));
PartDefinition leg2 = partdefinition.addOrReplaceChild("leg2", CubeListBuilder.create().texOffs(27, 30).addBox(-13.0F, 0.0F, -2.0F, 13.0F, 1.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-5.0F, 21.0F, -4.0F, 0.0F, 0.1745F, 0.0F));
PartDefinition leg3 = partdefinition.addOrReplaceChild("leg3", CubeListBuilder.create().texOffs(27, 24).addBox(0.0F, 0.0F, -2.0F, 13.0F, 1.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(5.0F, 21.0F, -4.0F, 0.0F, -0.1745F, 0.0F));
return LayerDefinition.create(meshdefinition, 128, 64);
}
@Override
public void setupAnim(Entity entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) {
}
@Override
public void renderToBuffer(PoseStack poseStack, VertexConsumer vertexConsumer, int packedLight, int packedOverlay, float red, float green, float blue, float alpha) {
body.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
head.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
leg0.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
leg1.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
leg2.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
leg3.render(poseStack, vertexConsumer, packedLight, packedOverlay, red, green, blue, alpha);
}
}
nevermind, I managed to fix it! it turns out deleting "eggbelly" was all i needed to do. (I was using the sea turtle model as a template)
Actually, I've encountered this issue again, but with most of my other models. Has anyone encountered similar problems? None of my .java models appear to be working correctly and result in "fatal rendering errors" or smtn
Updated my Blockbench. It works fine now.