Mekelaina Posted June 6, 2020 Posted June 6, 2020 So I was following a tutorial by mcjty and on his baked model code I ran into an issue where the block would render fine in the inventory but the game would crash when trying to render it as a block. I'm really confused cause I dont know where the problem could be. Here are the relevant classes. Note that the code is messy and was to be cleaned up at a later point. FancyBlock.java package com.mekelaina.mytutorial.blocks; import com.mekelaina.mytutorial.blocks.tiles.FancyBlockTile; import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.BlockItem; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Hand; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockRayTraceResult; import net.minecraft.util.math.shapes.ISelectionContext; import net.minecraft.util.math.shapes.VoxelShape; import net.minecraft.util.math.shapes.VoxelShapes; import net.minecraft.world.IBlockReader; import net.minecraft.world.World; import javax.annotation.Nullable; public class FancyBlock extends Block { private final VoxelShape shape = VoxelShapes.create(.2,.2,.2,.8,.8,.8); public FancyBlock() { super(Properties.create(Material.IRON) .sound(SoundType.METAL) .hardnessAndResistance(2f)); } @Override public VoxelShape getShape(BlockState state, IBlockReader worldIn, BlockPos pos, ISelectionContext context) { return shape; } @Override public boolean hasTileEntity(BlockState state) { return true; } @Nullable @Override public TileEntity createTileEntity(BlockState state, IBlockReader world) { return new FancyBlockTile(); } @Override public boolean onBlockActivated(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) { ItemStack item = player.getHeldItem(handIn); if(!item.isEmpty() && item.getItem() instanceof BlockItem) { if(!worldIn.isRemote) { TileEntity te = worldIn.getTileEntity(pos); if(te instanceof FancyBlockTile) { BlockState mimicState = ((BlockItem) item.getItem()).getBlock().getDefaultState(); ((FancyBlockTile) te).setMimic(mimicState); } } return true; } return super.onBlockActivated(state, worldIn, pos, player, handIn, hit); } } FancyBlockTile.java package com.mekelaina.mytutorial.blocks.tiles; import com.mekelaina.mytutorial.blocks.ModBlocks; import net.minecraft.block.BlockState; import net.minecraft.nbt.CompoundNBT; import net.minecraft.nbt.NBTUtil; import net.minecraft.network.NetworkManager; import net.minecraft.network.play.server.SUpdateTileEntityPacket; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.client.model.ModelDataManager; import net.minecraftforge.client.model.data.IModelData; import net.minecraftforge.client.model.data.ModelDataMap; import net.minecraftforge.client.model.data.ModelProperty; import net.minecraftforge.common.util.Constants; import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.Objects; public class FancyBlockTile extends TileEntity { public static final ModelProperty<BlockState> MIMIC = new ModelProperty<>(); private BlockState mimic; public FancyBlockTile() { super(ModBlocks.FANCYBLOCK_TILE.get()); } public void setMimic(BlockState mimic) { this.mimic = mimic; markDirty(); world.notifyBlockUpdate(pos, getBlockState(), getBlockState(), Constants.BlockFlags.BLOCK_UPDATE + Constants.BlockFlags.NOTIFY_NEIGHBORS); } @Nullable @Override public SUpdateTileEntityPacket getUpdatePacket() { CompoundNBT tag = new CompoundNBT(); if(mimic != null) { tag.put("mimic", NBTUtil.writeBlockState(mimic)); } return new SUpdateTileEntityPacket(pos, 1, tag); } @Override public void onDataPacket(NetworkManager net, SUpdateTileEntityPacket pkt) { BlockState oldMimic = mimic; CompoundNBT tag = pkt.getNbtCompound(); if(tag.contains("mimic")) { mimic = NBTUtil.readBlockState(tag.getCompound("mimic")); if(!Objects.equals(oldMimic, mimic)) { ModelDataManager.requestModelDataRefresh(this); world.notifyBlockUpdate(pos, getBlockState(), getBlockState(), Constants.BlockFlags.BLOCK_UPDATE + Constants.BlockFlags.NOTIFY_NEIGHBORS); } } } @Nonnull @Override public IModelData getModelData() { return new ModelDataMap.Builder().withInitial(MIMIC, mimic).build(); } @Override public void read(CompoundNBT compound) { super.read(compound); if(compound.contains("mimic")) { mimic = NBTUtil.readBlockState(compound.getCompound("mimic")); } } @Override public CompoundNBT write(CompoundNBT compound) { if(mimic != null) { compound.put("mimic", NBTUtil.writeBlockState(mimic)); } return super.write(compound); } } FancyBakedModel.java package com.mekelaina.mytutorial.blocks.bakedmodels; import com.mekelaina.mytutorial.MyTutorial; import com.mekelaina.mytutorial.blocks.tiles.FancyBlockTile; import net.minecraft.block.BlockState; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.BlockModelShapes; import net.minecraft.client.renderer.Vector3f; import net.minecraft.client.renderer.model.*; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.renderer.vertex.VertexFormat; import net.minecraft.util.Direction; import net.minecraft.util.math.Vec3d; import net.minecraftforge.client.model.data.IDynamicBakedModel; import net.minecraftforge.client.model.data.IModelData; import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Random; public class FancyBakedModel implements IDynamicBakedModel { private final VertexFormat format; private final ItemCameraTransforms transforms = getAllTransforms(); public FancyBakedModel(VertexFormat format) { this.format = format; } private TextureAtlasSprite getTexture() { String name = MyTutorial.MODID + ":block/fancyblock"; return Minecraft.getInstance().getTextureMap().getAtlasSprite(name); } private void putVertex(UnpackedBakedQuad.Builder builder, Vec3d normal, double x, double y, double z, float u, float v, TextureAtlasSprite sprite, float r, float g, float b) { for(int e = 0; e < format.getElementCount(); e++) { switch(format.getElement(e).getUsage()) { case POSITION: builder.put(e, (float)x, (float)y, (float)z, 1.0f); break; case COLOR: builder.put(e, r, g, b, 1.0f); break; case UV: if(format.getElement(e).getIndex() == 0) { u = sprite.getInterpolatedU(u); v = sprite.getInterpolatedV(v); builder.put(e, u, v, 0f, 1f); } break; case NORMAL: builder.put(e, (float)normal.x, (float)normal.y, (float)normal.z, 0f); break; default: builder.put(e); break; } } } private BakedQuad createQuad(Vec3d v1, Vec3d v2, Vec3d v3, Vec3d v4, TextureAtlasSprite sprite) { Vec3d normal = v3.subtract(v2).crossProduct(v1.subtract(v2)).normalize(); UnpackedBakedQuad.Builder builder = new UnpackedBakedQuad.Builder(format); builder.setTexture(sprite); putVertex(builder, normal, v1.x, v1.y, v1.z, 0, 0, sprite, 1f, 1f, 1f); putVertex(builder, normal, v2.x, v2.y, v2.z, 0, 16, sprite, 1f, 1f, 1f); putVertex(builder, normal, v3.x, v3.y, v3.z, 16, 16, sprite, 1f, 1f, 1f); putVertex(builder, normal, v4.x, v4.y, v4.z, 16, 0, sprite, 1f, 1f, 1f); return builder.build(); } private static Vec3d v(double x, double y, double z) { return new Vec3d(x, y, z); } @Nonnull @Override public List<BakedQuad> getQuads(@Nullable BlockState state, @Nullable Direction side, @Nonnull Random rand, @Nonnull IModelData extraData) { BlockState mimic = extraData.getData(FancyBlockTile.MIMIC); if (mimic != null) { ModelResourceLocation location = BlockModelShapes.getModelLocation(mimic); if (location != null) { IBakedModel model = Minecraft.getInstance().getModelManager().getModel(location); if (model != null) { return model.getQuads(mimic, side, rand, extraData); } } } if (side != null) { return Collections.emptyList(); } TextureAtlasSprite texture = getTexture(); List<BakedQuad> quads = new ArrayList<>(); double l = .2; double r = 1-.2; quads.add(createQuad(v(l, r, l), v(l, r, r), v(r, r, r), v(r, r, l), texture)); quads.add(createQuad(v(l, l, l), v(r, l, l), v(r, l, r), v(l, l, r), texture)); quads.add(createQuad(v(r, r, r), v(r, l, r), v(r, l, l), v(r, r, l), texture)); quads.add(createQuad(v(l, r, l), v(l, l, l), v(l, l, r), v(l, r, r), texture)); quads.add(createQuad(v(r, r, l), v(r, l, l), v(l, l, l), v(l, r, l), texture)); quads.add(createQuad(v(l, r, r), v(l, l, r), v(r, l, r), v(r, r, r), texture)); return quads; } @Override public boolean isAmbientOcclusion() { return true; } @Override public boolean isGui3d() { return false; } @Override public boolean isBuiltInRenderer() { return false; } @Override public TextureAtlasSprite getParticleTexture() { return getTexture(); } @Override public ItemOverrideList getOverrides() { return ItemOverrideList.EMPTY; } @Override public ItemCameraTransforms getItemCameraTransforms() { return transforms; } public ItemCameraTransforms getAllTransforms() { ItemTransformVec3f tpLeft = this.getTransform(ItemCameraTransforms.TransformType.THIRD_PERSON_LEFT_HAND); ItemTransformVec3f tpRight = this.getTransform(ItemCameraTransforms.TransformType.THIRD_PERSON_RIGHT_HAND); ItemTransformVec3f fpLeft = this.getTransform(ItemCameraTransforms.TransformType.FIRST_PERSON_LEFT_HAND); ItemTransformVec3f fpRight = this.getTransform(ItemCameraTransforms.TransformType.FIRST_PERSON_RIGHT_HAND); ItemTransformVec3f head = this.getTransform(ItemCameraTransforms.TransformType.HEAD); ItemTransformVec3f gui = this.getTransform(ItemCameraTransforms.TransformType.GUI); ItemTransformVec3f ground = this.getTransform(ItemCameraTransforms.TransformType.GROUND); ItemTransformVec3f fixed = this.getTransform(ItemCameraTransforms.TransformType.FIXED); return new ItemCameraTransforms(tpLeft, tpRight, fpLeft, fpRight, head, gui, ground, fixed); } private ItemTransformVec3f getTransform(ItemCameraTransforms.TransformType type) { if (type.equals(ItemCameraTransforms.TransformType.GUI)) { return new ItemTransformVec3f(new Vector3f(200, 50, 100), new Vector3f(), new Vector3f(1.0F, 1.0F, 1.0F)); } return ItemTransformVec3f.DEFAULT; } } ModBlocks.class package com.mekelaina.mytutorial.blocks; import com.mekelaina.mytutorial.MyTutorial; import com.mekelaina.mytutorial.blocks.screens.FirstBlockContainer; import com.mekelaina.mytutorial.blocks.tiles.FancyBlockTile; import com.mekelaina.mytutorial.blocks.tiles.FirstBlockTile; import net.minecraft.block.Block; import net.minecraft.inventory.container.ContainerType; import net.minecraft.tileentity.TileEntityType; import net.minecraft.util.math.BlockPos; import net.minecraftforge.common.extensions.IForgeContainerType; import net.minecraftforge.fml.RegistryObject; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.ObjectHolder; public class ModBlocks { public static final String FIRSTBLOCK_NAME = "firstblock"; public static final DeferredRegister<Block> BLOCKS = new DeferredRegister<>(ForgeRegistries.BLOCKS, MyTutorial.MODID); public static final DeferredRegister<TileEntityType<?>> TILE_ENTITYS = new DeferredRegister<>(ForgeRegistries.TILE_ENTITIES, MyTutorial.MODID); public static final DeferredRegister<ContainerType<?>> CONTAINERS = new DeferredRegister<>(ForgeRegistries.CONTAINERS, MyTutorial.MODID); public static final RegistryObject<Block> FIRSTBLOCK = BLOCKS.register("firstblock", () -> new FirstBlock()); public static final RegistryObject<Block> FANCYBLOCK = BLOCKS.register("fancyblock", FancyBlock::new); public static final RegistryObject<TileEntityType<FirstBlockTile>> FIRSTBLOCK_TILE = TILE_ENTITYS.register("firstblock", () -> TileEntityType.Builder.create(FirstBlockTile::new, FIRSTBLOCK.get()).build(null)); public static final RegistryObject<TileEntityType<FancyBlockTile>> FANCYBLOCK_TILE = TILE_ENTITYS.register("fancyblock", () -> TileEntityType.Builder.create(FancyBlockTile::new, FANCYBLOCK.get()).build(null)); public static final RegistryObject<ContainerType<FirstBlockContainer>> FIRSTBLOCK_CONTAINER = CONTAINERS.register("firstblock", () -> IForgeContainerType.create(((windowId, inv, data) -> { BlockPos pos = data.readBlockPos(); return new FirstBlockContainer(windowId, MyTutorial.proxy.getClientWorld(), pos, inv, MyTutorial.proxy.getClientPlayer()); }))); } ClientRegistration.java package com.mekelaina.mytutorial.setup; import com.mekelaina.mytutorial.MyTutorial; import com.mekelaina.mytutorial.blocks.ModBlocks; import com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel; import com.mekelaina.mytutorial.items.ModItems; import net.minecraft.client.renderer.model.ModelResourceLocation; import net.minecraft.client.renderer.vertex.DefaultVertexFormats; import net.minecraft.util.ResourceLocation; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.client.event.ColorHandlerEvent; import net.minecraftforge.client.event.ModelBakeEvent; import net.minecraftforge.client.event.TextureStitchEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @Mod.EventBusSubscriber(modid = MyTutorial.MODID, value = Dist.CLIENT, bus = Mod.EventBusSubscriber.Bus.MOD) public class ClientRegistration { @SubscribeEvent public static void onTextureStitch(TextureStitchEvent.Pre event) { if(!event.getMap().getBasePath().equals("textures")) { return; } event.addSprite(new ResourceLocation(MyTutorial.MODID, "block/fancyblock")); } @SubscribeEvent public static void onModelBake(ModelBakeEvent event) { event.getModelRegistry().put(new ModelResourceLocation(ModBlocks.FANCYBLOCK.get().getRegistryName(), ""), new FancyBakedModel(DefaultVertexFormats.BLOCK)); event.getModelRegistry().put(new ModelResourceLocation(ModBlocks.FANCYBLOCK.get().getRegistryName(), "inventory"), new FancyBakedModel(DefaultVertexFormats.ITEM)); } } Error Log [05Jun2020 23:57:04.823] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--gameDir, ., --launchTarget, fmluserdevclient, --fml.mcpVersion, 20190829.143755, --fml.mcVersion, 1.14.4, --fml.forgeGroup, net.minecraftforge, --fml.forgeVersion, 28.2.16, --version, MOD_DEV, --assetIndex, 1.14, --assetsDir, C:\Users\ChloeRae\.gradle\caches\forge_gradle\assets, --username, Dev, --accessToken, ❄❄❄❄❄❄❄❄, --userProperties, {}] [05Jun2020 23:57:04.826] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 4.1.0+62+5bfa59b starting: java version 1.8.0_171 by Oracle Corporation [05Jun2020 23:57:06.312] [main/INFO] [net.minecraftforge.fml.loading.FixSSL/CORE]: Added Lets Encrypt root certificates as additional trust [05Jun2020 23:57:07.553] [main/INFO] [cpw.mods.modlauncher.LaunchServiceHandler/MODLAUNCHER]: Launching target 'fmluserdevclient' with arguments [--version, MOD_DEV, --gameDir, ., --assetsDir, C:\Users\ChloeRae\.gradle\caches\forge_gradle\assets, --assetIndex, 1.14, --username, Dev, --accessToken, ❄❄❄❄❄❄❄❄, --userProperties, {}] [05Jun2020 23:57:10.757] [Client thread/INFO] [net.minecraft.client.Minecraft/]: Setting user: Dev [05Jun2020 23:57:22.742] [Client thread/WARN] [net.minecraft.client.GameSettings/]: Skipping bad option: lastServer: [05Jun2020 23:57:22.781] [Client thread/INFO] [net.minecraft.client.Minecraft/]: LWJGL Version: 3.2.2 build 10 [05Jun2020 23:57:23.808] [modloading-worker-1/INFO] [net.minecraftforge.common.ForgeMod/FORGEMOD]: Forge mod loading, version 28.2.16, for MC 1.14.4 with MCP 20190829.143755 [05Jun2020 23:57:23.808] [modloading-worker-1/INFO] [net.minecraftforge.common.MinecraftForge/FORGE]: MinecraftForge v28.2.16 Initialized [05Jun2020 23:57:24.210] [Client thread/WARN] [net.minecraft.entity.EntityType/]: No data fixer registered for entity mytutorial:weirdmob [05Jun2020 23:57:26.866] [Client thread/INFO] [com.mojang.text2speech.NarratorWindows/]: Narrator library for x64 successfully loaded [05Jun2020 23:57:28.304] [Forge Version Check/INFO] [net.minecraftforge.fml.VersionChecker/]: [forge] Starting version check at https://files.minecraftforge.net/maven/net/minecraftforge/forge/promotions_slim.json [05Jun2020 23:57:28.731] [Forge Version Check/INFO] [net.minecraftforge.fml.VersionChecker/]: [forge] Found status: OUTDATED Current: 28.2.16 Target: 28.2.18 [05Jun2020 23:57:28.732] [Forge Version Check/INFO] [net.minecraftforge.fml.VersionChecker/]: [mytutorial] Starting version check at http://myurl.me/ [05Jun2020 23:57:28.978] [Forge Version Check/WARN] [net.minecraftforge.fml.VersionChecker/]: Failed to process update information java.io.IOException: Server returned HTTP response code: 400 for URL: http://myurl.me/ at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_171] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_171] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_171] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1944) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1939) ~[?:1.8.0_171] at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1938) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1508) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) ~[?:1.8.0_171] at net.minecraftforge.fml.VersionChecker$1.openUrlStream(VersionChecker.java:189) ~[?:?] at net.minecraftforge.fml.VersionChecker$1.process(VersionChecker.java:206) ~[?:?] at java.lang.Iterable.forEach(Iterable.java:75) [?:1.8.0_171] at net.minecraftforge.fml.VersionChecker$1.run(VersionChecker.java:157) [?:?] Caused by: java.io.IOException: Server returned HTTP response code: 400 for URL: http://myurl.me/ at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894) ~[?:1.8.0_171] at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) ~[?:1.8.0_171] at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) ~[?:1.8.0_171] at net.minecraftforge.fml.VersionChecker$1.openUrlStream(VersionChecker.java:173) ~[?:?] ... 3 more [05Jun2020 23:57:30.856] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Unable to load model: 'mytutorial:block/fancyblock' referenced from: mytutorial:fancyblock#: java.io.FileNotFoundException: mytutorial:models/block/fancyblock.json [05Jun2020 23:57:31.534] [Server-Worker-5/WARN] [net.minecraft.client.renderer.model.ModelBakery/]: Unable to load model: 'mytutorial:fancyblock#inventory' referenced from: mytutorial:fancyblock#inventory: java.io.FileNotFoundException: mytutorial:models/item/fancyblock.json [05Jun2020 23:57:32.690] [Client thread/WARN] [net.minecraft.client.GameSettings/]: Skipping bad option: lastServer: [05Jun2020 23:57:32.786] [Client thread/INFO] [net.minecraft.client.audio.SoundSystem/]: OpenAL initialized. [05Jun2020 23:57:32.787] [Client thread/INFO] [net.minecraft.client.audio.SoundEngine/SOUNDS]: Sound engine started [05Jun2020 23:57:32.919] [Client thread/INFO] [net.minecraft.client.renderer.texture.AtlasTexture/]: Created: 512x512 textures-atlas [05Jun2020 23:57:33.513] [Client thread/INFO] [net.minecraft.client.renderer.texture.AtlasTexture/]: Created: 256x256 textures/particle-atlas [05Jun2020 23:57:33.514] [Client thread/INFO] [net.minecraft.client.renderer.texture.AtlasTexture/]: Created: 256x256 textures/painting-atlas [05Jun2020 23:57:33.515] [Client thread/INFO] [net.minecraft.client.renderer.texture.AtlasTexture/]: Created: 128x128 textures/mob_effect-atlas [05Jun2020 23:57:37.314] [Client thread/WARN] [net.minecraft.command.Commands/]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498] [05Jun2020 23:57:37.315] [Client thread/WARN] [net.minecraft.command.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0] [05Jun2020 23:57:37.315] [Client thread/WARN] [net.minecraft.command.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0] [05Jun2020 23:57:37.316] [Client thread/WARN] [net.minecraft.command.Commands/]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498] [05Jun2020 23:57:37.316] [Client thread/WARN] [net.minecraft.command.Commands/]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0] [05Jun2020 23:57:37.476] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer/]: Starting integrated minecraft server version 1.14.4 [05Jun2020 23:57:37.476] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer/]: Generating keypair [05Jun2020 23:57:37.561] [Thread-1/FATAL] [net.minecraftforge.common.ForgeConfig/CORE]: Forge config just got changed on the file system! [05Jun2020 23:57:37.640] [Server thread/INFO] [net.minecraftforge.registries.GameData/REGISTRIES]: Injecting existing registry data into this SERVER instance [05Jun2020 23:57:37.843] [Server thread/INFO] [net.minecraft.resources.SimpleReloadableResourceManager/]: Reloading ResourceManager: Default, forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar, main [05Jun2020 23:57:39.066] [Server thread/INFO] [net.minecraft.item.crafting.RecipeManager/]: Loaded 6 recipes [05Jun2020 23:57:40.206] [Server thread/INFO] [net.minecraft.advancements.AdvancementList/]: Loaded 812 advancements [05Jun2020 23:57:40.209] [Server thread/ERROR] [net.minecraftforge.common.loot.LootModifierManager/]: Couldn't read global loot modifier list from forge:loot_modifiers/global_loot_modifiers.json java.io.FileNotFoundException: forge:loot_modifiers/global_loot_modifiers.json at net.minecraft.resources.FallbackResourceManager.getAllResources(FallbackResourceManager.java:102) ~[?:?] at net.minecraft.resources.SimpleReloadableResourceManager.getAllResources(SimpleReloadableResourceManager.java:72) ~[?:?] at net.minecraftforge.common.loot.LootModifierManager.apply(LootModifierManager.java:90) ~[?:?] at net.minecraftforge.common.loot.LootModifierManager.apply(LootModifierManager.java:57) ~[?:?] at net.minecraft.client.resources.ReloadListener.lambda$reload$1(ReloadListener.java:14) ~[?:?] at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:656) ~[?:1.8.0_171] at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:632) ~[?:1.8.0_171] at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:442) ~[?:1.8.0_171] at net.minecraft.resources.AsyncReloader.lambda$null$3(AsyncReloader.java:66) ~[?:?] at net.minecraft.util.concurrent.TickDelayedTask.run(TickDelayedTask.java:17) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.run(ThreadTaskExecutor.java:137) [?:?] at net.minecraft.util.concurrent.RecursiveEventLoop.run(RecursiveEventLoop.java:22) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.driveOne(ThreadTaskExecutor.java:110) [?:?] at net.minecraft.server.MinecraftServer.func_213205_aW(MinecraftServer.java:701) [?:?] at net.minecraft.server.MinecraftServer.driveOne(MinecraftServer.java:695) [?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.driveUntil(ThreadTaskExecutor.java:120) [?:?] at net.minecraft.server.MinecraftServer.loadDataPacks(MinecraftServer.java:1438) [?:?] at net.minecraft.server.MinecraftServer.loadDataPacks(MinecraftServer.java:438) [?:?] at net.minecraft.server.integrated.IntegratedServer.loadAllWorlds(IntegratedServer.java:75) [?:?] at net.minecraft.server.integrated.IntegratedServer.init(IntegratedServer.java:94) [?:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:600) [?:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_171] [05Jun2020 23:57:40.834] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Preparing start region for dimension minecraft:overworld [05Jun2020 23:57:41.590] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 0% [05Jun2020 23:57:41.591] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 0% [05Jun2020 23:57:43.623] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 83% [05Jun2020 23:57:43.623] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 83% [05Jun2020 23:57:43.623] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 83% [05Jun2020 23:57:43.623] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 83% [05Jun2020 23:57:43.888] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 95% [05Jun2020 23:57:44.388] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Preparing spawn area: 96% [05Jun2020 23:57:44.888] [Client thread/INFO] [net.minecraft.world.chunk.listener.LoggingChunkStatusListener/]: Time elapsed: 4033 ms [05Jun2020 23:57:45.353] [Server thread/INFO] [net.minecraft.world.server.ChunkManager/]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved [05Jun2020 23:57:45.353] [Server thread/INFO] [net.minecraft.world.server.ChunkManager/]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved [05Jun2020 23:57:48.663] [Netty Local Client IO #0/INFO] [net.minecraftforge.fml.network.NetworkHooks/]: Connected to a modded server. [05Jun2020 23:57:48.745] [Server thread/INFO] [net.minecraftforge.common.AdvancementLoadFix/]: Using new advancement loading for net.minecraft.advancements.PlayerAdvancements@4e051296 [05Jun2020 23:57:48.830] [Server thread/INFO] [net.minecraft.server.management.PlayerList/]: Dev[local:E:79a12c84] logged in with entity id 272 at (100.47880956651221, 64.0, 206.04085553757596) [05Jun2020 23:57:48.860] [Client thread/ERROR] [net.minecraftforge.fml.network.simple.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake [05Jun2020 23:57:48.861] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev joined the game [05Jun2020 23:57:49.234] [Server thread/ERROR] [net.minecraftforge.fml.network.simple.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake [05Jun2020 23:57:49.234] [Server thread/INFO] [net.minecraft.server.integrated.IntegratedServer/]: Saving and pausing game... [05Jun2020 23:57:49.243] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'New World'/minecraft:overworld [05Jun2020 23:57:49.416] [Client thread/INFO] [net.minecraft.advancements.AdvancementList/]: Loaded 21 advancements [05Jun2020 23:57:50.498] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Stopping server [05Jun2020 23:57:50.499] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving players [05Jun2020 23:57:50.504] [Server thread/INFO] [net.minecraft.network.play.ServerPlayNetHandler/]: Dev lost connection: Disconnected [05Jun2020 23:57:50.504] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev left the game [05Jun2020 23:57:50.514] [Server thread/INFO] [net.minecraft.network.play.ServerPlayNetHandler/]: Stopping singleplayer server as player logged out [05Jun2020 23:57:50.514] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving worlds [05Jun2020 23:57:50.514] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'New World'/minecraft:overworld [05Jun2020 23:57:50.559] [Server thread/INFO] [net.minecraft.world.server.ChunkManager/]: ThreadedAnvilChunkStorage (New World (1)): All chunks are saved [05Jun2020 23:57:50.573] [Server thread/INFO] [net.minecraft.world.server.ChunkManager/]: ThreadedAnvilChunkStorage (New World (1)): All chunks are saved [05Jun2020 23:57:51.144] [Client thread/FATAL] [net.minecraft.client.Minecraft/]: Reported exception thrown! net.minecraft.crash.ReportedException: Tesselating block model at net.minecraft.client.renderer.BlockRendererDispatcher.renderBlock(BlockRendererDispatcher.java:71) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.chunk.ChunkRender.rebuildChunk(ChunkRender.java:190) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.chunk.ChunkRenderWorker.processTask(ChunkRenderWorker.java:90) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.chunk.ChunkRenderDispatcher.updateChunkNow(ChunkRenderDispatcher.java:174) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.WorldRenderer.setupTerrain(WorldRenderer.java:789) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:691) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.GameRenderer.renderWorld(GameRenderer.java:640) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:494) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:890) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.Minecraft.run(Minecraft.java:384) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.main.Main.main(Main.java:128) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_171] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_171] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_171] at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_171] at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:55) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-4.1.0.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-4.1.0.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-4.1.0.jar:?] at cpw.mods.modlauncher.Launcher.run(Launcher.java:81) [modlauncher-4.1.0.jar:?] at cpw.mods.modlauncher.Launcher.main(Launcher.java:65) [modlauncher-4.1.0.jar:?] at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:102) [forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] Caused by: java.lang.IllegalStateException: not enough data at net.minecraftforge.client.model.pipeline.UnpackedBakedQuad$Builder.build(UnpackedBakedQuad.java:175) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.createQuad(FancyBakedModel.java:77) ~[main/:?] at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.getQuads(FancyBakedModel.java:106) ~[main/:?] at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.render(ForgeBlockModelRenderer.java:99) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.renderModelSmooth(ForgeBlockModelRenderer.java:84) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.BlockModelRenderer.renderModel(BlockModelRenderer.java:50) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at net.minecraft.client.renderer.BlockRendererDispatcher.renderBlock(BlockRendererDispatcher.java:60) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] ... 21 more [05Jun2020 23:57:51.170] [Client thread/INFO] [STDOUT/]: [net.minecraft.util.registry.Bootstrap:printToSYSOUT:100]: ---- Minecraft Crash Report ---- // Uh... Did I do that? Time: 6/5/20 11:57 PM Description: Tesselating block model java.lang.IllegalStateException: not enough data at net.minecraftforge.client.model.pipeline.UnpackedBakedQuad$Builder.build(UnpackedBakedQuad.java:175) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading} at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.createQuad(FancyBakedModel.java:77) ~[main/:?] {re:classloading} at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.getQuads(FancyBakedModel.java:106) ~[main/:?] {re:classloading} at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.render(ForgeBlockModelRenderer.java:99) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading} at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.renderModelSmooth(ForgeBlockModelRenderer.java:84) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading} at net.minecraft.client.renderer.BlockModelRenderer.renderModel(BlockModelRenderer.java:50) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.BlockRendererDispatcher.renderBlock(BlockRendererDispatcher.java:60) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.chunk.ChunkRender.rebuildChunk(ChunkRender.java:190) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.chunk.ChunkRenderWorker.processTask(ChunkRenderWorker.java:90) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.chunk.ChunkRenderDispatcher.updateChunkNow(ChunkRenderDispatcher.java:174) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.WorldRenderer.setupTerrain(WorldRenderer.java:789) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:691) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.GameRenderer.renderWorld(GameRenderer.java:640) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:494) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:890) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:384) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:128) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {re:classloading,pl:runtimedistcleaner:A} at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_171] {} at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_171] {} at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_171] {} at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_171] {} at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:55) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-4.1.0.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-4.1.0.jar:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-4.1.0.jar:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:81) [modlauncher-4.1.0.jar:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:65) [modlauncher-4.1.0.jar:?] {} at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:102) [forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Client thread Stacktrace: at net.minecraftforge.client.model.pipeline.UnpackedBakedQuad$Builder.build(UnpackedBakedQuad.java:175) at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.createQuad(FancyBakedModel.java:77) at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.getQuads(FancyBakedModel.java:106) at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.render(ForgeBlockModelRenderer.java:99) at net.minecraftforge.client.model.pipeline.ForgeBlockModelRenderer.renderModelSmooth(ForgeBlockModelRenderer.java:84) -- Block model being tesselated -- Details: Block: Block{mytutorial:fancyblock} Block location: World: (103,64,205), Chunk: (at 7,4,13 in 6,12; contains blocks 96,0,192 to 111,255,207), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Using AO: true Stacktrace: at net.minecraft.client.renderer.BlockModelRenderer.renderModel(BlockModelRenderer.java:50) -- Block being tesselated -- Details: Block: Block{mytutorial:fancyblock} Block location: World: (103,64,205), Chunk: (at 7,4,13 in 6,12; contains blocks 96,0,192 to 111,255,207), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Stacktrace: at net.minecraft.client.renderer.BlockRendererDispatcher.renderBlock(BlockRendererDispatcher.java:60) at net.minecraft.client.renderer.chunk.ChunkRender.rebuildChunk(ChunkRender.java:190) at net.minecraft.client.renderer.chunk.ChunkRenderWorker.processTask(ChunkRenderWorker.java:90) at net.minecraft.client.renderer.chunk.ChunkRenderDispatcher.updateChunkNow(ChunkRenderDispatcher.java:174) at net.minecraft.client.renderer.WorldRenderer.setupTerrain(WorldRenderer.java:789) at net.minecraft.client.renderer.GameRenderer.updateCameraAndRender(GameRenderer.java:691) at net.minecraft.client.renderer.GameRenderer.renderWorld(GameRenderer.java:640) -- Affected level -- Details: All players: 1 total; [ClientPlayerEntity['Dev'/272, l='MpServer', x=100.48, y=64.00, z=206.04]] Chunk stats: Client Chunk Cache: 729, 441 Level dimension: DimensionType{minecraft:overworld} Level name: MpServer Level seed: 0 Level generator: ID 00 - default, ver 1. Features enabled: false Level generator options: {} Level spawn location: World: (112,63,210), Chunk: (at 0,3,2 in 7,13; contains blocks 112,0,208 to 127,255,223), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,0,0 to 511,255,511) Level time: 140813 game time, 8350 day time Level storage version: 0x00000 - Unknown? Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false Server brand: forge Server type: Integrated singleplayer server Stacktrace: at net.minecraft.client.world.ClientWorld.fillCrashReport(ClientWorld.java:410) at net.minecraft.client.Minecraft.addGraphicsAndWorldToCrashReport(Minecraft.java:1750) at net.minecraft.client.Minecraft.run(Minecraft.java:400) at net.minecraft.client.main.Main.main(Main.java:128) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at net.minecraftforge.userdev.FMLUserdevClientLaunchProvider.lambda$launchService$0(FMLUserdevClientLaunchProvider.java:55) at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) at cpw.mods.modlauncher.Launcher.run(Launcher.java:81) at cpw.mods.modlauncher.Launcher.main(Launcher.java:65) at net.minecraftforge.userdev.LaunchTesting.main(LaunchTesting.java:102) -- System Details -- Details: Minecraft Version: 1.14.4 Minecraft Version ID: 1.14.4 Operating System: Windows 10 (amd64) version 10.0 Java Version: 1.8.0_171, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 455419792 bytes (434 MB) / 2124414976 bytes (2026 MB) up to 3810525184 bytes (3634 MB) CPUs: 8 JVM Flags: 1 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump ModLauncher: 4.1.0+62+5bfa59b ModLauncher launch target: fmluserdevclient ModLauncher naming: mcp ModLauncher services: /eventbus-1.0.0-service.jar eventbus PLUGINSERVICE /forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-launcher.jar object_holder_definalize PLUGINSERVICE /forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-launcher.jar runtime_enum_extender PLUGINSERVICE /accesstransformers-1.0.5-shadowed.jar accesstransformer PLUGINSERVICE /forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-launcher.jar capability_inject_definalize PLUGINSERVICE /forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-launcher.jar runtimedistcleaner PLUGINSERVICE /forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-launcher.jar fml TRANSFORMATIONSERVICE FML: 28.2 Forge: net.minecraftforge:28.2.16 FML Language Providers: [email protected] minecraft@1 Mod List: client-extra.jar Minecraft {[email protected] DONE} forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar Forge {[email protected] DONE} main My Tutorial {mytutorial@NONE DONE} Launched Version: MOD_DEV LWJGL: 3.2.2 build 10 OpenGL: GeForce GTX 1050 Ti/PCIe/SSE2 GL version 4.6.0 NVIDIA 446.14, NVIDIA Corporation GL Caps: Using GL 1.3 multitexturing. Using GL 1.3 texture combiners. Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported. Shaders are available because OpenGL 2.1 is supported. VBOs are available because OpenGL 1.5 is supported. Using VBOs: Yes Is Modded: Definitely; Client brand changed to 'forge' Type: Client (map_client.txt) Resource Packs: Current Language: English (US) CPU: 8x Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz [05Jun2020 23:57:51.172] [Client thread/INFO] [STDOUT/]: [net.minecraft.util.registry.Bootstrap:printToSYSOUT:100]: #@!@# Game crashed! Crash report saved to: #@!@# C:\Users\ChloeRae\Desktop\All modern minecraft modding shiz\gramarye and beyon\tutorial\run\.\crash-reports\crash-2020-06-05_23.57.51-client.txt This is all a lot to wrap ones head around and I dont fully understand it all myself, so any help would be appreciated Quote
TheGreyGhost Posted June 6, 2020 Posted June 6, 2020 Howdy THere's a problem with your block model (either the blockstate has the wrong path, or your fancyblock.json is in the wrong place) java.io.FileNotFoundException: mytutorial:models/block/fancyblock.json WHat's causing the crash though is this Caused by: java.lang.IllegalStateException: not enough data at net.minecraftforge.client.model.pipeline.UnpackedBakedQuad$Builder.build(UnpackedBakedQuad.java:175) ~[forge-1.14.4-28.2.16_mapped_stable_58-1.14.4-recomp.jar:?] at com.mekelaina.mytutorial.blocks.bakedmodels.FancyBakedModel.createQuad(FancyBakedModel.java:77) ~[main/:?] I think the error means that your block model is trying to construct quads using a different vertex format than expected. Some of the formats are longer (require more ints) than others. You might find some of the example code in this project useful, it also dynamically generates quads. https://github.com/TheGreyGhost/MinecraftByExample see mbe04 (altimeter), mbe15, mbe21 (the RenderQuads) -TGG Quote
Recommended Posts
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.