Jump to content

boredherobrine13

Members
  • Posts

    86
  • Joined

  • Last visited

Posts posted by boredherobrine13

  1. Hey, I'm about ready to get out an update of my mod (ported from ground-up from 1.12.2) and I have noticed that for some reason, my ore generation works just fine in singleplayer locally created worlds, but ores will not generate on the server. I would give logs, but there is nothing abnormal about the server startup log with the mod installed to see. It just starts up perfectly normally/healthily and doesn't place any of my ores in the serverside world. I have verified that my server is working correctly and the other features of my mod (recipes, the ability to place blocks/items, etc) all work fine. Here is my ore class (it's a little convoluted because it was overbuilt to be quickly and easily usable for a much, much larger mod I'm working on). Here is my main class (GitHub link directly to where my setup method is called)  Let me know what you guys think. Any help is appreciated. Thanks.

     

    Edit: Just realized I'm in the wrong section of the forum. Apologies. Could an admin please remove this post?

  2. Hi, I am trying to make an object with assigned sides, and I have never done this before. Based on my limited experience with jsons and looking at the vanilla jsons, this should work, but does not. I am left with the purple diagnostic texture. There are no specific errors in the console that are helpful. I tried doing it with a blockstate and a block model because thats what crafting table does in the jar, whereas typically I just use a single basic blockstate per block that does the job for me. Here's what I have:

    Additionally, I am just reusing some textures already in my textures folder because I haven't done the wine barrel textures yet, just in case it seems weird why an empty barrel is being textures with ores and blocks.

    Blockstate wineBarrel_Empty.json:

    Spoiler
    
    {
        "forge_marker": 1,
        "variants": {
            "normal": { "model": "wineBarrel_Empty" }
        }
    }

     

     

    Block Model wineBarrel_Empty.json:

    Spoiler
    
    {
        "parent": "block/cube",
        "textures": {
            "down": "blocks/lead_ore",
            "up": "blocks/lead_ore",
            "north": "blocks/lead_block",
            "east": "blocks/lead_ore",
            "south": "blocks/lead_block",
            "west": "blocks/lead_ore"
        }
    }

     

     

    ModBlocks.java (Doubt it'd be useful, all my other blocks and items work just fine, but JIC I thought I'd include it):

    Spoiler
    
    package vinum.bored.vinum.block;
    
    import net.minecraft.block.Block;
    import net.minecraft.item.Item;
    import net.minecraftforge.registries.IForgeRegistry;
    import vinum.bored.vinum.Vinum;
    public class ModBlocks {
    	
    	//Generic Blocks
    	public static BlockGlass darkWineGlass = new BlockGlass("dark_wine_glass_block").setCreativeTab(Vinum.creativeTab);
    	public static BlockGlass fineCrystal = new BlockGlass("fine_crystal_glass_block").setCreativeTab(Vinum.creativeTab);
    	public static BlockStone leadOre = new BlockStone("lead_ore").setCreativeTab(Vinum.creativeTab);
    	public static BlockStone leadBlock = new BlockStone("lead_block").setCreativeTab(Vinum.creativeTab);
    	public static BlockSand refinedSand = new BlockSand("refined_sand").setCreativeTab(Vinum.creativeTab);
    	public static BlockSand leadedSand = new BlockSand("leaded_sand").setCreativeTab(Vinum.creativeTab);
    	public static BlockSand ferrousSand = new BlockSand("ferrous_sand").setCreativeTab(Vinum.creativeTab);
    	//Wine Barrels
    	public static BlockWood wineBarrel_Empty = new BlockWood("wine_barrel_empty").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Chardonnay = new BlockWood("wine_barrel_chardonnay").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Sauvignon_Blanc = new BlockWood("wine_barrel_sauvignon_blanc").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Cabernet_Sauvignon = new BlockWood("wine_barrel_cabernet_sauvignon").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Merlot = new BlockWood("wine_barrel_merlot").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Pinot_Noir = new BlockWood("wine_barrel_pinot_noir").setCreativeTab(Vinum.creativeTab);
    	public static BlockWood wineBarrel_Zinfandel = new BlockWood("wine_barrel_zinfandel").setCreativeTab(Vinum.creativeTab);
    	
    	public static void register(IForgeRegistry<Block> registry) {
    		registry.registerAll(
    					darkWineGlass,
    					fineCrystal,
    					leadOre,
    					leadBlock,
    					refinedSand,
    					leadedSand,
    					ferrousSand,
    					wineBarrel_Empty,
    					wineBarrel_Chardonnay,
    					wineBarrel_Sauvignon_Blanc,
    					wineBarrel_Cabernet_Sauvignon,
    					wineBarrel_Merlot,
    					wineBarrel_Pinot_Noir,
    					wineBarrel_Zinfandel
    				);
    	}
    	
    	public static void registerItemBlocks(IForgeRegistry<Item> registry) {
    		registry.registerAll(
    					darkWineGlass.createItemBlock(),
    					fineCrystal.createItemBlock(),
    					leadOre.createItemBlock(),
    					leadBlock.createItemBlock(),
    					refinedSand.createItemBlock(),
    					leadedSand.createItemBlock(),
    					ferrousSand.createItemBlock(),
    					wineBarrel_Empty.createItemBlock(),
    					wineBarrel_Chardonnay.createItemBlock(),
    					wineBarrel_Sauvignon_Blanc.createItemBlock(),
    					wineBarrel_Cabernet_Sauvignon.createItemBlock(),
    					wineBarrel_Merlot.createItemBlock(),
    					wineBarrel_Pinot_Noir.createItemBlock(),
    					wineBarrel_Zinfandel.createItemBlock()
    				);
    	}
    	
    	public static void registerModels() {
    		darkWineGlass.registerItemModel(Item.getItemFromBlock(darkWineGlass));
    		fineCrystal.registerItemModel(Item.getItemFromBlock(fineCrystal));
    		leadOre.registerItemModel(Item.getItemFromBlock(leadOre));
    		leadBlock.registerItemModel(Item.getItemFromBlock(leadBlock));
    		refinedSand.registerItemModel(Item.getItemFromBlock(refinedSand));
    		leadedSand.registerItemModel(Item.getItemFromBlock(leadedSand));
    		ferrousSand.registerItemModel(Item.getItemFromBlock(ferrousSand));
    		wineBarrel_Empty.registerItemModel(Item.getItemFromBlock(wineBarrel_Empty));
    		wineBarrel_Chardonnay.registerItemModel(Item.getItemFromBlock(wineBarrel_Chardonnay));
    		wineBarrel_Sauvignon_Blanc.registerItemModel(Item.getItemFromBlock(wineBarrel_Sauvignon_Blanc));
    		wineBarrel_Cabernet_Sauvignon.registerItemModel(Item.getItemFromBlock(wineBarrel_Cabernet_Sauvignon));
    		wineBarrel_Merlot.registerItemModel(Item.getItemFromBlock(wineBarrel_Merlot));
    		wineBarrel_Pinot_Noir.registerItemModel(Item.getItemFromBlock(wineBarrel_Pinot_Noir));
    		wineBarrel_Zinfandel.registerItemModel(Item.getItemFromBlock(wineBarrel_Zinfandel));
    	}
    }

     

     

     

  3. 1 hour ago, Cadiboo said:

    A bit of a stumbling block is that minecraft uses plural names (blocks) for resource folders in 1.12.2 and singular names (block) in 1.13, and many mods have already switched to the 1.13 format. I suspect that you are mixing formats and have “block” in your code, but “blocks” in your resources. However without your code it is impossible to tell, in future please post your code as a GitHub repository (the best was is to put a link to your repo in your signature)

    I did post the link, I think it just got swallowed in text. Here it is again. https://github.com/boredhero/project-vinum/tree/master/src/main

  4. 2 hours ago, Arandomdud said:

    Hi, I'm trying to make a new command in 1.13 and it works fine on the client, but not on a dedicated server.

    According to the MCP Mappings 20180921-1.13 "EntityArgument.mutiplePlayers()" or "func_197094_d()" is both client and server sided, yet I still get a

    
    java.lang.NoSuchMethodError: net.minecraft.command.arguments.EntityArgument.func_197093_b()Lnet/minecraft/command/arguments/EntityArgument;

    when I run the code on the server.

    Where did you even get a 1.13-pre? I was unaware there was such a thing publicly available or did you build it yourself from source?

  5. Hi, so I'm working on trying to get even basic item support, or my crops working. Despite having another mod where it was working and more or less copying and pasting that code for my second mod, I can't quite seem to get anything to load without erroring. I think this is partially because the entire model system is confusing as to where exactly what files should be placed, what they should be named, and how they should be formatted (especially telling them where the actual images are, the file structure has never really made sense to me). Here is my error from the logs.

    [15:26:52] [Client thread/ERROR] [FML]: Exception loading model for variant vinum:blockcoke#inventory for item "vinum:blockcoke", normal location exception: 
    net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model vinum:item/blockcoke with loader VanillaLoader.INSTANCE, skipping
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:161) ~[ModelLoaderRegistry.class:?]
    	at net.minecraftforge.client.model.ModelLoader.loadItemModels(ModelLoader.java:302) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadVariantItemModels(ModelBakery.java:175) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:151) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:121) [SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.Minecraft.init(Minecraft.java:560) [Minecraft.class:?]
    	at net.minecraft.client.Minecraft.run(Minecraft.java:422) [Minecraft.class:?]
    	at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    	at GradleStart.main(GradleStart.java:25) [start/:?]
    Caused by: java.io.FileNotFoundException: vinum:models/item/blockcoke.json
    	at net.minecraft.client.resources.FallbackResourceManager.getResource(FallbackResourceManager.java:69) ~[FallbackResourceManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.getResource(SimpleReloadableResourceManager.java:65) ~[SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadModel(ModelBakery.java:334) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.access$1400(ModelLoader.java:115) ~[ModelLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoader$VanillaLoader.loadModel(ModelLoader.java:861) ~[ModelLoader$VanillaLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:157) ~[ModelLoaderRegistry.class:?]
    	... 20 more
    [15:26:52] [Client thread/ERROR] [FML]: Exception loading model for variant vinum:blockcoke#inventory for item "vinum:blockcoke", blockstate location exception: 
    net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model vinum:blockcoke#inventory with loader VariantLoader.INSTANCE, skipping
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:161) ~[ModelLoaderRegistry.class:?]
    	at net.minecraftforge.client.model.ModelLoader.loadItemModels(ModelLoader.java:296) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadVariantItemModels(ModelBakery.java:175) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:151) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:121) [SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.Minecraft.init(Minecraft.java:560) [Minecraft.class:?]
    	at net.minecraft.client.Minecraft.run(Minecraft.java:422) [Minecraft.class:?]
    	at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    	at GradleStart.main(GradleStart.java:25) [start/:?]
    Caused by: net.minecraft.client.renderer.block.model.ModelBlockDefinition$MissingVariantException
    	at net.minecraft.client.renderer.block.model.ModelBlockDefinition.getVariant(ModelBlockDefinition.java:83) ~[ModelBlockDefinition.class:?]
    	at net.minecraftforge.client.model.ModelLoader$VariantLoader.loadModel(ModelLoader.java:1175) ~[ModelLoader$VariantLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:157) ~[ModelLoaderRegistry.class:?]
    	... 20 more
    [15:26:52] [Client thread/ERROR] [FML]: Exception loading blockstate for the variant vinum:blockcoke#inventory: 
    java.lang.Exception: Could not load model definition for variant vinum:blockcoke
    	at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:269) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadBlock(ModelBakery.java:121) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:223) ~[ModelLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:150) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:121) [SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.Minecraft.init(Minecraft.java:560) [Minecraft.class:?]
    	at net.minecraft.client.Minecraft.run(Minecraft.java:422) [Minecraft.class:?]
    	at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    	at GradleStart.main(GradleStart.java:25) [start/:?]
    Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of model vinum:blockstates/blockcoke.json
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadMultipartMBD(ModelBakery.java:228) ~[ModelBakery.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:208) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:265) ~[ModelLoader.class:?]
    	... 20 more
    Caused by: java.io.FileNotFoundException: vinum:blockstates/blockcoke.json
    	at net.minecraft.client.resources.FallbackResourceManager.getAllResources(FallbackResourceManager.java:104) ~[FallbackResourceManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.getAllResources(SimpleReloadableResourceManager.java:79) ~[SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadMultipartMBD(ModelBakery.java:221) ~[ModelBakery.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:208) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:265) ~[ModelLoader.class:?]
    	... 20 more
    [15:26:52] [Client thread/ERROR] [FML]: Exception loading model for variant vinum:blockcoke#normal for blockstate "vinum:blockcoke"
    net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model vinum:blockcoke#normal with loader VariantLoader.INSTANCE, skipping
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:161) ~[ModelLoaderRegistry.class:?]
    	at net.minecraftforge.client.model.ModelLoader.registerVariant(ModelLoader.java:235) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelBakery.loadBlock(ModelBakery.java:153) ~[ModelBakery.class:?]
    	at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:223) ~[ModelLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:150) ~[ModelLoader.class:?]
    	at net.minecraft.client.renderer.block.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]
    	at net.minecraft.client.resources.SimpleReloadableResourceManager.registerReloadListener(SimpleReloadableResourceManager.java:121) [SimpleReloadableResourceManager.class:?]
    	at net.minecraft.client.Minecraft.init(Minecraft.java:560) [Minecraft.class:?]
    	at net.minecraft.client.Minecraft.run(Minecraft.java:422) [Minecraft.class:?]
    	at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
    	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_192]
    	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_192]
    	at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]
    	at GradleStart.main(GradleStart.java:25) [start/:?]
    Caused by: net.minecraft.client.renderer.block.model.ModelBlockDefinition$MissingVariantException
    	at net.minecraft.client.renderer.block.model.ModelBlockDefinition.getVariant(ModelBlockDefinition.java:83) ~[ModelBlockDefinition.class:?]
    	at net.minecraftforge.client.model.ModelLoader$VariantLoader.loadModel(ModelLoader.java:1175) ~[ModelLoader$VariantLoader.class:?]
    	at net.minecraftforge.client.model.ModelLoaderRegistry.getModel(ModelLoaderRegistry.java:157) ~[ModelLoaderRegistry.class:?]
    	... 21 more

     

    The mod source is available on my GitHub  here. Some things may seem to have weird names because I am re-using blocks and items from the other mod just to try to get basic crop and texture functionality working. Once I have it working, then I plan to actually get to developing the mod's content.

     

    I would also greatly appreciate if anyone knows of a really good explanation of how the forge/minecraft modeling system actually works under the hood could link it. I think having a better understanding of the system/files and how they actually do what they're supposed to do would likely help me. I've done a bit of poking around in the source but haven't really been able to fully understand the way the .json files and resource folder organization works.

  6. 23 minutes ago, Cadiboo said:

    I doubt it, AFAIK all pack.mcmeta deals with currently is .lang file naming

     

    Not by my computer so I can’t check the actual file, but copy/pasting what you put on the forums into json lint showed some invisible characters. Does using the default mcmod file fix the issue?

    Don't suppose you'd know how to get color to work for lines in the mcmod.info file. It appears the § character doesn't work anymore, and neither does \u00A

  7. 23 minutes ago, Cadiboo said:

    I doubt it, AFAIK all pack.mcmeta deals with currently is .lang file naming

     

    Not by my computer so I can’t check the actual file, but copy/pasting what you put on the forums into json lint showed some invisible characters. Does using the default mcmod file fix the issue? 

    I just found it out. In one place I had set the modid to "Vinium". A small typo which eclipse didn't catch and I missed. I feel stupid now, but at least I learned I was naming my packages wrongly from all this.

    • Like 1
  8. 13 minutes ago, Cadiboo said:

    No, they own minecraftforge.net, and their packaging and maven grouping reflect that. If you don’t own a website using the group & package mod.whatever (usually mod.yourName.modId) is acceptable

     

    I use io.github.cadiboo.modid, but if I didn’t have a website I would use mod.cadiboo.modid

    I'll change it in this and my other mods to reflect the proper conventions (I wasn't aware of them, I've never had a formal coding class yet. I'm self-taught).

    10 minutes ago, Cadiboo said:

    You appear to have some weird characters in your mcmod file (they might  have been added by the forums), 3 ones after “description and 1 at the end of the file

    Unsure of what characters you are referring to. I suspect the forum may have added them. all I see is "description": "It's aboutta get lit in here.", I attached the actual file so you can double check. Couldn't find anything weird at the end. 

    "description": "It's aboutta get lit in here.",

    mcmod.info

     

    Edit: Is it possible this has anything to do with that weird pack.mcmeta thing that I never touch because I'm rather unsure of what it does.

  9. 8 minutes ago, Cadiboo said:

    This is not how version ranges work (they aren’t an array), see https://maven.apache.org/enforcer/enforcer-rules/versionRanges.html

     

    Does your mod info work in a built copy of the mod? Is the mcmod.info inside the /bin/ folder generated by eclipse?

     

    I highly doubt you own bored.com

    Erm, if i'm understanding this correctly, according to the link you sent me:

    [1.0,2.0] 1.0 <= x <= 2.0

    what I have would basically mean that it accepts 1.12.0 <= x <=1.12.2, which is my desired effect. The mod should work on forge 1.12.0, 1.12.1, and 1.12.2 (at least that's how my other mod works)

     

    And no, the mcmod.info does not work in a built copy of the mod. It is also in the /bin/ folder (I extracted the built jar as well, mcmod.info is present in the root of the jar)

     

    Lastly, no, I don't own "bored.com", but a lot of developers don't actually own their package names as far as I can tell from a quick hunt of really popular massive mods, so I think I'm in good enough company. Shrugs. Does forge own examplemod.com?

  10. Hi, I am using Forge 1.12.2 - 14.23.5.2807 (latest), and still get the issue with mcmod.info being "missing" despite the fact that the syntax seems correct, it is in the right folder (src/main/resources), and my modid is all lowercase. My build.gradle seems configured correctly as far as I can tell, and eclipse has been refreshed. I even tried deleting and re-inserting the file to see if that solved the issue, but it did not. I tried compiling the mod. The mcmod.info file was correct and inside the jar in the root of the archive, yet when I loaded the jar it still said the file was missing. Any ideas what could be causing this?

     

    mcmod.info:

    [
    {
      "modid": "vinium",
      "name": "Vinium",
      "description": "It's aboutta get lit in here.",
      "version": "${version}",
      "mcversion": "${mcversion}",
      "url": "",
      "updateUrl": "",
      "authorList": ["Noah Martino"],
      "credits": "",
      "logoFile": "v-logo.png",
      "screenshots": [],
      "dependencies": []
    }
    ]

    Main.class:

    package com.bored.vinum;
    
    import net.minecraft.init.Blocks;
    import net.minecraftforge.fml.common.Mod;
    import net.minecraftforge.fml.common.Mod.EventHandler;
    import net.minecraftforge.fml.common.SidedProxy;
    import net.minecraftforge.fml.common.event.FMLInitializationEvent;
    import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
    import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
    import org.apache.logging.log4j.Logger;
    
    import com.bored.vinum.proxy.CommonProxy;
    import com.bored.vinum.ui.VinumTab;
    
    @Mod(modid = Vinum.modid, name = Vinum.name, version = Vinum.version, acceptedMinecraftVersions = "[1.12, 1.12.2]")
    public class Vinum
    {
        public static final String modid = "vinum";
        public static final String name = "Vinium";
        public static final String version = "0.0.1";
        
        @Mod.Instance(modid)
        public static Vinum instance;
        
        @SidedProxy(serverSide = "com.bored.vinum.proxy.CommonProxy", clientSide = "com.bored.vinum.proxy.ClientProxy")
        public static CommonProxy proxy;
        
        private static Logger logger;
    
        @EventHandler
        public void preInit(FMLPreInitializationEvent event)
        {
        	System.out.println(name + " " + version + " " + "is loading!");
            logger = event.getModLog();
        }
    
        @EventHandler
        public void init(FMLInitializationEvent event)
        {
            // some example code
            logger.info("DIRT BLOCK >> {}", Blocks.DIRT.getRegistryName());
        }
        
        @EventHandler
        public void postInit(FMLPostInitializationEvent event)
        {
        	
        }
        
        public static final VinumTab creativeTab = new VinumTab();
    }

    build.gradle:

    buildscript {
        repositories {
            jcenter()
            maven { url = "https://files.minecraftforge.net/maven" }
        }
        dependencies {
            classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
        }
    }
    apply plugin: 'net.minecraftforge.gradle.forge'
    //Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
    
    
    version = "0.0.1"
    group = "com.bored.vinium" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
    archivesBaseName = "vinium"
    
    sourceCompatibility = targetCompatibility = '1.8' // Need this here so eclipse task generates correctly.
    compileJava {
        sourceCompatibility = targetCompatibility = '1.8'
    }
    
    minecraft {
        version = "1.12.2-14.23.5.2807"
        runDir = "run"
        
        // the mappings can be changed at any time, and must be in the following format.
        // snapshot_YYYYMMDD   snapshot are built nightly.
        // stable_#            stables are built at the discretion of the MCP team.
        // Use non-default mappings at your own risk. they may not always work.
        // simply re-run your setup task after changing the mappings to update your workspace.
        mappings = "snapshot_20171003"
        // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
    }
    
    dependencies {
        // you may put jars on which you depend on in ./libs
        // or you may define them like so..
        //compile "some.group:artifact:version:classifier"
        //compile "some.group:artifact:version"
          
        // real examples
        //compile 'com.mod-buildcraft:buildcraft:6.0.8:dev'  // adds buildcraft to the dev env
        //compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
    
        // the 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime.
        //provided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
    
        // the deobf configurations:  'deobfCompile' and 'deobfProvided' are the same as the normal compile and provided,
        // except that these dependencies get remapped to your current MCP mappings
        //deobfCompile 'com.mod-buildcraft:buildcraft:6.0.8:dev'
        //deobfProvided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
    
        // for more info...
        // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
        // http://www.gradle.org/docs/current/userguide/dependency_management.html
    
    }
    
    processResources {
        // this will ensure that this task is redone when the versions change.
        inputs.property "version", project.version
        inputs.property "mcversion", project.minecraft.version
    
        // replace stuff in mcmod.info, nothing else
        from(sourceSets.main.resources.srcDirs) {
            include 'mcmod.info'
                    
            // replace version and mcversion
            expand 'version':project.version, 'mcversion':project.minecraft.version
        }
            
        // copy everything else except the mcmod.info
        from(sourceSets.main.resources.srcDirs) {
            exclude 'mcmod.info'
        }
    }

     

  11.  Hi, so I am trying to make something like (but not exactly) a custom furnace, in which players can put certain items in. The catch here being that the furnace only has one output. In order to get the output, an empty "container" item must be inserted, and based on the value of the item they put in the other slot, it will make the output a "charged" version of the empty container. How the catch here is that I want different items to have different values, and as a result charge the container to different values. Then I want to be able to use the custom "charged" item as a furnace fuel with a variable burn time based on a number assigned to the "charged" item. So EX:

     

    Empty Item has an empty texture, and has a value of "0 out of 1000 fuel points"

    Then you put that and say, wheat, into this custom furnace interface. The wheat dissapears, and the texture changes to a "partially full" container with a value of "25 out of 1000 fuel points"

    Then someone puts a piece of coal into it, and that adds say 200 points. Then you have the same partially full container with a value of "225 out of 1000 fuel points".

    Then someone can take the item and put it in a custom furnace along with something that needs smelted, say iron ore for example.

    So lets say it takes 200 fuel points to smelt the iron ore, so then the furnace spits out an iron ingot and a "partially full" container with a value of "25 out of 1000 fuel points".

     

    How complicated would this be? And where should I even start. I have 0 experience with custom interfaces/guis, or even making a block that is clickable. Any good examples/tutorial mods that would be useful to get a look at for pointers anyone knows of?

  12. Hi, on the latest update I noticed that IFuelHandler methods such as

     

    Spoiler

    Main.class

    
    GameRegistry.registerFuelHandler(new Leaves());

     

    and

    Spoiler

    Fuels.class

    
    import net.minecraft.init.Blocks;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraftforge.fml.common.IFuelHandler;
    
    public class Deadbush implements IFuelHandler {
    
    	@Override
    	public int getBurnTime(ItemStack fuel){
    		if(fuel.getItem() == Item.getItemFromBlock(Blocks.DEADBUSH)){
    			return 200;
    		}
    		return 0;
    	}
    }

     

    have been marked as depreciated. What's the new way to do this? I'd like to know so I can stay as up to date with the API as possible. Code examples for the new method appreciated! 

  13. Hi, so I am looking into doing two things right now:

    1.) Adding a custom machine that acts sort of like a furnace, except it only outputs a single item.

    2.) I want the item that it exports to act like a container with some type of metadata (i guess) to give the item different values

    So basically, say you put in 5 logs, I want the machine to be able to calculate the fuel value of those logs, and then output something like a "fuel source container" that can then be placed in a furnace. So somehow I'd need this "fuel source container" to be able to store a varied amount of some metadata so it can variably have different burn times in furnaces, and also not be removed from the fuel slot when depleted, just left at 0 out of the max possible containment.

    This is the most advanced thing I've ever tried to do and I haven't really been able to find any advanced mod tutorials for this type of thing or even just making the item. Any help or guidance would be greatly appreciated :)

  14. 25 minutes ago, Draco18s said:

    It's specific to my mod, yes. It's just a metadata value. But rather than using "1" in 14 different places, I use SomeEnum.VALUE.metadata

    (The enum exists in the library, in case anyone ever wants to make something compatible with my mods, they only need the library's source, not the whole mod).

    Let me consume my mystical crystal ball which knows all about your error.

    Ah, yes, you need to fiddle the widget and contortionize the jiggerwat. That'll make it go away.

      Reveal hidden contents

    ALWAYS POST YOUR FUCKING ERRORS

    My Code:

    Spoiler
    
    	@Mod.EventHandler
    	public void preInit(FMLPreInitializationEvent event) {
    		System.out.println(name + " " + version + " is loading!");
    		//Begin Experimental OreDict Registry
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 0));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 1));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 2));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 3));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 4));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 5));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 6));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 7));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 8));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 9));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 10));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 11));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 12));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 13));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 14));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 15));
    		//End Experimental OreDict Registry

     

    Error:

    Spoiler
    
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:122)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:123)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:124)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:125)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:126)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:127)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:128)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:129)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:130)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:131)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:132)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:133)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:134)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:135)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:136)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: ****************************************
    [20:13:24] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [20:13:24] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [20:13:24] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:137)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [20:13:24] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [20:13:24] [main/WARN] [FML]: ****************************************

     

    Error Referenced Forge Src Lines 624-644:

    Spoiler
    
     //Convenience functions that make for cleaner code mod side. They all drill down to registerOre(String, int, ItemStack)
        public static void registerOre(String name, Item      ore){ registerOre(name, new ItemStack(ore));  }
        public static void registerOre(String name, Block     ore){ registerOre(name, new ItemStack(ore));  }
        public static void registerOre(String name, @Nonnull ItemStack ore){ registerOreImpl(name, ore);             }
    
        /**
         * Registers a ore item into the dictionary.
         * Raises the registerOre function in all registered handlers.
         *
         * @param name The name of the ore
         * @param ore The ore's ItemStack
         */
        private static void registerOreImpl(String name, @Nonnull ItemStack ore)
        {
            if ("Unknown".equals(name)) return; //prevent bad IDs.
            if (ore.isEmpty())
            {
                FMLLog.bigWarning("Invalid registration attempt for an Ore Dictionary item with name {} has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.", name);
                return; //prevent bad ItemStacks.
            }

     

     

  15. 20 minutes ago, Draco18s said:

    It's just a variant enum. The .metadata property just maps from that enum value to an integer.

    https://github.com/Draco18s/ReasonableRealism/blob/master/src/main/java/com/draco18s/hardlib/api/blockproperties/ores/EnumOreType.java

    Okay. So I shouldn't need to use that then? The code looks specific to a lib you're using if I'm understanding this correctly. Is there any reason why putting the meta value in there throws an error?

  16. 22 minutes ago, Draco18s said:

    Can you elaborate on what exactly the " EnumOreType.LIMONITE.meta " does in that? Using the metadata ID for the built in item there does not work

    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 0));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 1));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 2));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 3));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 4));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 5));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 6));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 7));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 8));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 9));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 10));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 11));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 12));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 13));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 14));
    		OreDictionary.registerOre("bedAny", new ItemStack(Blocks.BED, 1, 15));

    and gives me this error:

    [15:49:44] [main/WARN] [FML]: ****************************************
    [15:49:44] [main/WARN] [FML]: * Invalid registration attempt for an Ore Dictionary item with name bedAny has occurred. The registration has been denied to prevent crashes. The mod responsible for the registration needs to correct this.
    [15:49:44] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOreImpl(OreDictionary.java:642)
    [15:49:44] [main/WARN] [FML]: *  at net.minecraftforge.oredict.OreDictionary.registerOre(OreDictionary.java:628)
    [15:49:44] [main/WARN] [FML]: *  at com.bored.morefuelsmod.MoreFuelsMod.preInit(MoreFuelsMod.java:122)
    [15:49:44] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [15:49:44] [main/WARN] [FML]: *  at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    [15:49:44] [main/WARN] [FML]: *  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)...
    [15:49:44] [main/WARN] [FML]: ****************************************

     

  17. 35 minutes ago, Draco18s said:

    This is because there are two coal items: coal (meta 0) and charcoal (meta 1).

    These must always be specified.

     

    If you use type forge:ore_shaped instead, you can use the ore dictionary.

    e.g.:

    https://github.com/Draco18s/ReasonableRealism/blob/1.12.1/src/main/resources/assets/expindustry/recipes/machine_wood_hopper.json

    I don't think leaves have been ore-dict registered already (its tricky to check, but you can look for all references to the oredictionary.registerore function and find out what Forge registers) and if not, you can register it yourself.

    Thank you. As it turns out, tree leaves are indeed in the forge ore dictionary ("treeLeaves"). However, as you said earlier not everything is. How would I go about registering a new set of items in the forge ore dictionary (Ie, beds, now that they have color). I have 0 experience with the ore dictionary feature of forge at all because my mod doesn't really make anything that's "equivocal" to anything else. I did a quick google search and forum search but haven't been able to find anything too helpful on the subject. Seems like a niche thing as most people just want to register their mods copper ingot as an "ingotCopper" whereas I need to add a category.

  18. Hello, I am getting used to the new metadata crafting recipe system, but I am running into huge issues. Some of my recipes work, other ones inexplicably require me to have a "data" value of 0 in order to work, IE using the item "minecraft:coal" in a crafting recipie also requires a "data": 0 after it to work. This is extremely annoying but it worked for a few recipes. However now I am running into issues. I have a crafting recipe that uses leaves blocks. However, It forces me to specify a "data" value or the crafting recipe simply doesn't workd. The problem with this is in the old recipe system if i used the item "leaves" in a crafting recipe all different types of leaves would work for the recipe, but with it forcing me to have a data tag now, I can only have the recipe work with all oak leaves, or all spruce leaves. I do not want to have to make a seperate recipe for every single type of leaves, and beds, etc (because I have alot of recipes like this that need to accept multiple types of vanilla blocks/items). Even if I made duplicate recipe, what if I want it so that you can use any combination of leaf types for the recipe? Then you could easily have hundreds of files for every possible combination. They all output the same items anyways, but I just need them to be able to be able to universally accept a "leaves" block, regardless of its data. Any ideas on how to do this? Here is my .json file:

     

    Spoiler
    
    {
    	"type": "minecraft:crafting_shaped",
    	"pattern": [
    		"ABC",
    		"DEF",
    		"GHI"
    	],
    	"key": {
    		"A": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"B": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"C": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"D": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"E": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"F": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"G": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"H": {
    			"item": "minecraft:leaves",
    			"data": 0
    		},
    		"I": {
    			"item": "minecraft:leaves",
    			"data": 0
    		}
    	},
    	"result": {
    		"item": "morefuelsmod:pellet_fuel", "count":10
    	}
    }

     

     

  19. Hey, I am updating a mod to 1.12 and I have many (many) recipes that require an output of a number of the same block. EX, 1 fuel block in, 9 fuel items out. In the past I did this with

    Spoiler
    
    GameRegistry.addShapelessRecipe(new ItemStack(ModItems.pelletsFuel, 9),new Object[]{ModBlocks.pelletBlock});

     

    But Now I'm trying to use the new .JSON/XML system. Problem I have 0 experience with this kind of stuff and I'm not really sure how to define that the result should produce 9 items rather than one. Here is my current .JSON file for the same statement. What do I need to add and where under result to get it to output 9.

    Spoiler
    
    {
    	"type": "minecraft:crafting_shapeless",
    	"ingredients": [
    		{
    			"item": "morefuelsmod:block_pellet_fuel"
    		}
    	],
    	"result": {
    		"item": "morefuelsmod:pellet_fuel"
    	}
    }

     

     

×
×
  • Create New...

Important Information

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