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

[1.12.2] Problem with loading blockstate on client


TimeConqueror
 Share

Recommended Posts

So I have a block with two properties:

Spoiler

public class BlockGOLSubordinate extends Block {
    public static final PropertyEnum<EnumPosOffset> OFFSET = PropertyEnum.create("offset", EnumPosOffset.class);
    public static final PropertyBool ACTIVATED = PropertyBool.create("activated");

    public BlockGOLSubordinate() {
        super(Material.IRON);
        setBlockUnbreakable();
        setLightLevel(1.0F);
    }

    @Override
    public IBlockState getStateFromMeta(int meta) {
        int index = meta > 7 ? meta - 8 : meta;
        boolean activated = meta > 7;
        return getDefaultState().withProperty(OFFSET, EnumPosOffset.byIndex(index)).withProperty(ACTIVATED, activated);
    }

    @Override
    protected BlockStateContainer createBlockState() {
        return new BlockStateContainer(this, OFFSET, ACTIVATED);
    }

    @Override
    public int getMetaFromState(IBlockState state) {
        int meta = state.getValue(OFFSET).getIndex();
        meta += state.getValue(ACTIVATED) ? 8 : 0;

        return meta;
    }

    @Override
    public boolean canCreatureSpawn(IBlockState state, IBlockAccess world, BlockPos pos, EntityLiving.SpawnPlacementType type) {
        return false;
    }

    @Override
    public boolean hasTileEntity(IBlockState state) {
        return true;
    }

    @Nullable
    @Override
    public TileEntity createTileEntity(World world, IBlockState state) {
        return new TileEntityGOLSubordinate();
    }

    public enum EnumPosOffset implements IStringSerializable {
        NORTH(0, "north"),
        NORTH_EAST(1, "north_east"),
        EAST(2, "east"),
        SOUTH_EAST(3, "south_east"),
        SOUTH(4, "south"),
        SOUTH_WEST(5, "south_west"),
        WEST(6, "west"),
        NORTH_WEST(7, "north_west");

        private static final EnumPosOffset[] LOOKUP = new EnumPosOffset[EnumPosOffset.values().length];

        static {
            for (EnumPosOffset value : values()) {
                LOOKUP[value.index] = value;
            }
        }

        private final String name;
        private final int index;

        EnumPosOffset(int index, String name){
            this.index = index;
            this.name = name;
        }

        public static EnumPosOffset byIndex(int index){
            return LOOKUP[index];
        }

        @Override
        public String getName() {
            return name;
        }

        public int getIndex() {
            return index;
        }

        @Override
        public String toString() {
            return name;
        }
    }
}

 

Registry on client side:

ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory"));

 

Somehow it produces the errors:

Spoiler

[18:23:46] [main/ERROR] [FML]: Exception loading model for variant lootgames:gol_subordinate#activated=true,offset=east for blockstate "lootgames:gol_subordinate[activated=true,offset=east]"
net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model lootgames:gol_subordinate#activated=true,offset=east 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:132) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.init(Minecraft.java:559) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:421) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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
[18:23:46] [main/ERROR] [FML]: Exception loading model for variant lootgames:gol_subordinate#activated=false,offset=north_west for blockstate "lootgames:gol_subordinate[activated=false,offset=north_west]"
net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model lootgames:gol_subordinate#activated=false,offset=north_west 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:132) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.init(Minecraft.java:559) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:421) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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
[18:23:46] [main/ERROR] [FML]: Exception loading model for variant lootgames:gol_subordinate#activated=true,offset=south_east for blockstate "lootgames:gol_subordinate[activated=true,offset=south_east]"
net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model lootgames:gol_subordinate#activated=true,offset=south_east 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:132) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.init(Minecraft.java:559) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:421) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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
[18:23:46] [main/ERROR] [FML]: Exception loading model for variant lootgames:gol_subordinate#activated=true,offset=west for blockstate "lootgames:gol_subordinate[activated=true,offset=west]"
net.minecraftforge.client.model.ModelLoaderRegistry$LoaderException: Exception loading model lootgames:gol_subordinate#activated=true,offset=west 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:132) [SimpleReloadableResourceManager.class:?]
    at net.minecraft.client.Minecraft.init(Minecraft.java:559) [Minecraft.class:?]
    at net.minecraft.client.Minecraft.run(Minecraft.java:421) [Minecraft.class:?]
    at net.minecraft.client.main.Main.main(Main.java:118) [Main.class:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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_181]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
    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
[18:23:46] [main/FATAL] [FML]: Suppressed additional 11 model loading errors for domain lootgames

 

 

Blockstate file:

Spoiler

{
  "forge_marker": 1,
  "defaults": {
    "model": "block/cube_all"
  },
  "variants": {
    "offset=north, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north"
      }
    },"offset=north_east, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north_east"
      }
    },"offset=east, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/east"
      }
    },"offset=south_east, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south_east"
      }
    },"offset=south, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south"
      }
    },"offset=south_west, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south_west"
      }
    },"offset=west, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/west"
      }
    },"offset=north_west, activated=false": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north_west"
      }
    },
    "offset=north, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north"
      }
    },"offset=north_east, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north_east"
      }
    },"offset=east, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/east"
      }
    },"offset=south_east, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south_east"
      }
    },"offset=south, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south"
      }
    },"offset=south_west, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south_west"
      }
    },"offset=west, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/west"
      }
    },"offset=north_west, activated=true": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north_west"
      }
    }
  }
}

 

 

Edited by TimeConqueror
correction
Link to comment
Share on other sites

1 hour ago, TimeConqueror said:

"forge_marker": 1,

 

1 hour ago, TimeConqueror said:

"offset=north_east, activated=false"

 

So, you want to use the forge system, and then don't use the forge system?

 

If you aren't using the Forge system, then you have to match exactly.

activated=true, offset=east

and

activated=true,offset=east

aren't the same.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

But this also doesn't work:

Spoiler

{
  "forge_marker": 1,
  "defaults": {
    "model": "block/cube_all"
  },
  "variants": {
    "activated=false,offset=north": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north"
      }
    },
    "activated=false,offset=north_east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north_east"
      }
    },
    "activated=false,offset=east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/east"
      }
    },
    "activated=false,offset=south_east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south_east"
      }
    },
    "activated=false,offset=south": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south"
      }
    },
    "activated=false,offset=south_west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/south_west"
      }
    },
    "activated=false,offset=west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/west"
      }
    },
    "activated=false,offset=north_west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/inactive/north_west"
      }
    },
    "activated=true,offset=north": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north"
      }
    },
    "activated=true,offset=north_east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north_east"
      }
    },
    "activated=true,offset=east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/east"
      }
    },
    "activated=true,offset=south_east": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south_east"
      }
    },
    "activated=true,offset=south": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south"
      }
    },
    "activated=true,offset=south_west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/south_west"
      }
    },
    "activated=true,offset=west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/west"
      }
    },
    "activated=true,offset=north_west": {
      "textures": {
        "all": "lootgames:blocks/gameoflight/active/north_west"
      }
    }
  }
}

 

So what I'm doing wrong?

 

All I need is to set custom texture for each blockstate (total amount of property combination is 16), and I also don't want to write model.json for each combination. So I made that file, as you see above in hope, that it will be better.

Edited by TimeConqueror
Link to comment
Share on other sites

I found this example:

https://github.com/Choonster-Minecraft-Mods/TestMod3/blob/f939bffae46369516cba420a571591de59cebb43/src/main/resources/assets/testmod3/blockstates/colored_multi_rotatable.json

And that's very similar to what I want to do. Instead of uvlock, I will place

"model" : "cube_all"

 

But how may I determine all 16 combinations in "variants : {}" and add to each variant its own texture, if my own example above doesn't work?

Edited by TimeConqueror
Link to comment
Share on other sites

The cube_all model takes one texture reference, "all" and applies that texture to all faces.

 

This is a vanilla model, and the json for it is visible in the minecraft source cache.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

15 minutes ago, Draco18s said:

The cube_all model takes one texture reference, "all" and applies that texture to all faces.

 

This is a vanilla model, and the json for it is visible in the minecraft source cache.

I understand this, but the question was: 

Quote

But how may I determine all 16 combinations in "variants : {}" and add to each variant its own texture, if my own example above doesn't work?

 

Link to comment
Share on other sites

In each variant, put:

"textures" { "all":"your/variant_texture1" }

This is basic blockstate stuff.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

"textures" { "all":"your/variant_texture1" }

Can't produce any errors. If you have errors, its in the other parts, namely how you're defining your variants.

 

I recommend using the Forge system, as its a lot easier to work with and doesn't require that you smoosh the two properties together.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

12 hours ago, Draco18s said:

"textures" { "all":"your/variant_texture1" }

Can't produce any errors. If you have errors, its in the other parts, namely how you're defining your variants.

 

I recommend using the Forge system, as its a lot easier to work with and doesn't require that you smoosh the two properties together.

But what if I need unique texture for each combination.

 

And the second question is: Can I use combination of variants (like:

"variant=east,activated=true" : {}

) and inner variants (like:

"variant" : {
	"east" : {
		"activated" : {
			"true" : {
				....
			}
		}
	}
}

)

with forge system?

Edited by TimeConqueror
Link to comment
Share on other sites

Then you have to have them in your blockstate file alphabetically.

 

 

variant=east,activated=true

does not equal

activated=true,variant=east

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Inner variants don't exist.

Apparently I'm a complete and utter jerk and come to this forum just like to make fun of people, be confrontational, and make your personal life miserable.  If you think this is the case, JUST REPORT ME.  Otherwise you're just going to get reported when you reply to my posts and point it out, because odds are, I was trying to be nice.

 

Exception: If you do not understand Java, I WILL NOT HELP YOU and your thread will get locked.

 

DO NOT PM ME WITH PROBLEMS. No help will be given.

Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

 Share



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • Delete this server config file if you have not modified it.
    • Yesterday our server crashed with little notice. Below are the crash logs. Anyone able to help out?   ---- Minecraft Crash Report ---- // Shall we play a game? Time: 25/1/22, 6:07 pm Description: Exception in server tick loop net.minecraftforge.fml.config.ConfigFileTypeHandler$ConfigLoadingException: Failed loading config file travelersbackpack-server.toml of type SERVER for modid travelersbackpack at net.minecraftforge.fml.config.ConfigFileTypeHandler.lambda$reader$1(ConfigFileTypeHandler.java:61) ~[fmlcore-1.18.1-39.0.45.jar%2366!/:?] {} at net.minecraftforge.fml.config.ConfigTracker.openConfig(ConfigTracker.java:74) ~[fmlcore-1.18.1-39.0.45.jar%2366!/:?] {} at net.minecraftforge.fml.config.ConfigTracker.lambda$loadConfigs$1(ConfigTracker.java:64) ~[fmlcore-1.18.1-39.0.45.jar%2366!/:?] {} at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?] {} at java.util.Collections$SynchronizedCollection.forEach(Collections.java:2131) ~[?:?] {} at net.minecraftforge.fml.config.ConfigTracker.loadConfigs(ConfigTracker.java:64) ~[fmlcore-1.18.1-39.0.45.jar%2366!/:?] {} at net.minecraftforge.server.ServerLifecycleHooks.handleServerAboutToStart(ServerLifecycleHooks.java:94) ~[forge-1.18.1-39.0.45-universal.jar%2369!/:?] {re:classloading} at net.minecraft.server.dedicated.DedicatedServer.m_7038_(DedicatedServer.java:173) ~[server-1.18.1-20211210.034407-srg.jar%2365!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.server.MinecraftServer.m_130011_(MinecraftServer.java:644) ~[server-1.18.1-20211210.034407-srg.jar%2365!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:balm.mixins.json:MinecraftServerAccessor,pl:mixin:APP:balm.mixins.json:MinecraftServerMixin,pl:mixin:A} at net.minecraft.server.MinecraftServer.m_177918_(MinecraftServer.java:258) ~[server-1.18.1-20211210.034407-srg.jar%2365!/:?] {re:mixin,pl:accesstransformer:B,re:classloading,pl:accesstransformer:B,pl:mixin:APP:balm.mixins.json:MinecraftServerAccessor,pl:mixin:APP:balm.mixins.json:MinecraftServerMixin,pl:mixin:A} at java.lang.Thread.run(Thread.java:833) [?:?] {} Caused by: com.electronwill.nightconfig.core.io.ParsingException: Not enough data available at com.electronwill.nightconfig.core.io.ParsingException.notEnoughData(ParsingException.java:22) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.io.ReaderInput.directReadChar(ReaderInput.java:36) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.io.AbstractInput.readChar(AbstractInput.java:49) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.io.AbstractInput.readCharsUntil(AbstractInput.java:123) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.toml.TableParser.parseKey(TableParser.java:166) ~[toml-3.6.4.jar%238!/:?] {} at com.electronwill.nightconfig.toml.TableParser.parseDottedKey(TableParser.java:145) ~[toml-3.6.4.jar%238!/:?] {} at com.electronwill.nightconfig.toml.TableParser.parseNormal(TableParser.java:55) ~[toml-3.6.4.jar%238!/:?] {} at com.electronwill.nightconfig.toml.TomlParser.parse(TomlParser.java:44) ~[toml-3.6.4.jar%238!/:?] {} at com.electronwill.nightconfig.toml.TomlParser.parse(TomlParser.java:37) ~[toml-3.6.4.jar%238!/:?] {} at com.electronwill.nightconfig.core.io.ConfigParser.parse(ConfigParser.java:113) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.io.ConfigParser.parse(ConfigParser.java:219) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.io.ConfigParser.parse(ConfigParser.java:202) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.file.WriteSyncFileConfig.load(WriteSyncFileConfig.java:73) ~[core-3.6.4.jar%237!/:?] {} at com.electronwill.nightconfig.core.file.AutosaveCommentedFileConfig.load(AutosaveCommentedFileConfig.java:85) ~[core-3.6.4.jar%237!/:?] {} at net.minecraftforge.fml.config.ConfigFileTypeHandler.lambda$reader$1(ConfigFileTypeHandler.java:57) ~[fmlcore-1.18.1-39.0.45.jar%2366!/:?] {} ... 10 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details: Minecraft Version: 1.18.1 Minecraft Version ID: 1.18.1 Operating System: Windows 10 (amd64) version 10.0 Java Version: 17.0.2, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation Memory: 4789453312 bytes (4567 MiB) / 7662993408 bytes (7308 MiB) up to 8589934592 bytes (8192 MiB) CPUs: 16 Processor Vendor: AuthenticAMD Processor Name: AMD Ryzen 7 2700 Eight-Core Processor Identifier: AuthenticAMD Family 23 Model 8 Stepping 2 Microarchitecture: Zen+ Frequency (GHz): 3.20 Number of physical packages: 1 Number of physical CPUs: 8 Number of logical CPUs: 16 Graphics card #0 name: NVIDIA GeForce GTX 1660 Ti Graphics card #0 vendor: NVIDIA (0x10de) Graphics card #0 VRAM (MB): 4095.00 Graphics card #0 deviceId: 0x2182 Graphics card #0 versionInfo: DriverVersion=30.0.14.7111 Memory slot #0 capacity (MB): 16384.00 Memory slot #0 clockSpeed (GHz): 2.40 Memory slot #0 type: DDR4 Memory slot #1 capacity (MB): 16384.00 Memory slot #1 clockSpeed (GHz): 2.40 Memory slot #1 type: DDR4 Virtual memory max (MB): 34765.36 Virtual memory used (MB): 17914.00 Swap memory total (MB): 2048.00 Swap memory used (MB): 0.00 JVM Flags: 2 total; -Xmx8G -Xms7G Server Running: true Player Count: 0 / 20; [] Data Packs: vanilla, mod:mcwbridges, mod:enchdesc, mod:swingthroughgrass, mod:jei (incompatible), mod:flywheel, mod:patchouli, mod:create, mod:createdeco (incompatible), mod:clumps (incompatible), mod:cookingforblockheads, mod:storagedrawers (incompatible), mod:naturescompass (incompatible), mod:tombstone, mod:naturesaura (incompatible), mod:balm (incompatible), mod:jeresources, mod:forge, mod:aquaculture (incompatible), mod:cosmeticarmorreworked (incompatible), mod:valhelsia_core, mod:forbidden_arcanus, mod:createaddition (incompatible), mod:betteradvancements, mod:starlight, mod:mahoutsukai, mod:travelersbackpack Is Modded: Definitely; Server brand changed to 'forge' Type: Dedicated Server (map_server.txt) ModLauncher: 9.1.0+9.1.0+main.6690ee51 ModLauncher launch target: forgeserver ModLauncher naming: srg ModLauncher services: mixin PLUGINSERVICE eventbus PLUGINSERVICE object_holder_definalize PLUGINSERVICE runtime_enum_extender PLUGINSERVICE capability_token_subclass PLUGINSERVICE accesstransformer PLUGINSERVICE runtimedistcleaner PLUGINSERVICE mixin TRANSFORMATIONSERVICE fml TRANSFORMATIONSERVICE FML Language Providers: minecraft@1.0 javafml@null Mod List: server-1.18.1-20211210.034407-srg.jar |Minecraft |minecraft |1.18.1 |DONE |Manifest: NOSIGNATURE mcw-bridges-2.0.1-mc1.18.1.jar |Macaw's Bridges |mcwbridges |2.0.1 |DONE |Manifest: NOSIGNATURE EnchantmentDescriptions-Forge-1.18.1-9.0.9.jar |EnchantmentDescriptions |enchdesc |9.0.9 |DONE |Manifest: NOSIGNATURE swingthroughgrass-1.18.1-1.8.0.jar |SwingThroughGrass |swingthroughgrass |1.18.1-1.8.0 |DONE |Manifest: NOSIGNATURE jei-1.18.1-9.2.1.69.jar |Just Enough Items |jei |9.2.1.69 |DONE |Manifest: NOSIGNATURE flywheel-forge-1.18-0.5.1.jar |Flywheel |flywheel |1.18-0.5.1 |DONE |Manifest: NOSIGNATURE Patchouli-1.18.1-64.jar |Patchouli |patchouli |1.18.1-64 |DONE |Manifest: NOSIGNATURE create-mc1.18.1_v0.4c.jar |Create |create |0.4c |DONE |Manifest: NOSIGNATURE createdeco-1.2.3-1.18.jar |Create Deco |createdeco |1.2.3-1.18 |DONE |Manifest: NOSIGNATURE Clumps-forge-1.18.1-8.0.4.jar |Clumps |clumps |8.0.4 |DONE |Manifest: NOSIGNATURE cookingforblockheads-forge-1.18.1-11.1.0.jar |CookingForBlockheads |cookingforblockheads |11.1.0 |DONE |Manifest: NOSIGNATURE TravelersBackpack-1.18.1-7.0.1.jar |Traveler's Backpack |travelersbackpack |7.0.1 |DONE |Manifest: NOSIGNATURE StorageDrawers-1.18.1-10.1.1.jar |Storage Drawers |storagedrawers |10.1.1 |DONE |Manifest: NOSIGNATURE NaturesCompass-1.18.1-1.9.4-forge.jar |Nature's Compass |naturescompass |1.18.1-1.9.4-forge |DONE |Manifest: NOSIGNATURE tombstone-7.3.5-1.18.jar |Corail Tombstone |tombstone |7.3.5 |DONE |Manifest: NOSIGNATURE NaturesAura-35.4.jar |Nature's Aura |naturesaura |35.4 |DONE |Manifest: NOSIGNATURE starlight-1.0.0+forge.8f9b922.Aeiou.jar |Starlight |starlight |1.0.0+forge.4fd2e63 |DONE |Manifest: NOSIGNATURE mahoutsukai-1.18.1-v1.34.0.jar |Mahou Tsukai |mahoutsukai |1.18.1-v1.34.0 |DONE |Manifest: NOSIGNATURE balm-2.4.1+0.jar |Balm |balm |2.4.1+0 |DONE |Manifest: NOSIGNATURE JustEnoughResources-1.18.1-0.13.1.141.jar |Just Enough Resources |jeresources |0.13.1.141 |DONE |Manifest: NOSIGNATURE forge-1.18.1-39.0.45-universal.jar |Forge |forge |39.0.45 |DONE |Manifest: 84:ce:76:e8:45:35:e4:0e:63:86:df:47:59:80:0f:67:6c:c1:5f:6e:5f:4d:b3:54:47:1a:9f:7f:ed:5e:f2:90 Aquaculture-1.18.1-2.3.2.jar |Aquaculture 2 |aquaculture |1.18.1-2.3.2 |DONE |Manifest: NOSIGNATURE CosmeticArmorReworked-1.18.1-v1a.jar |CosmeticArmorReworked |cosmeticarmorreworked |1.18.1-v1a |DONE |Manifest: 5e:ed:25:99:e4:44:14:c0:dd:89:c1:a9:4c:10:b5:0d:e4:b1:52:50:45:82:13:d8:d0:32:89:67:56:57:01:53 valhelsia_core-1.18.1-0.3.2.jar |Valhelsia Core |valhelsia_core |1.18.1-0.3.2 |DONE |Manifest: NOSIGNATURE forbidden_arcanus-1.18.1-2.0.2.jar |Forbidden & Arcanus |forbidden_arcanus |1.18.1-2.0.2 |DONE |Manifest: NOSIGNATURE createaddition-1.18.1-20220111b.jar |Create Crafts & Additions |createaddition |1.18.1-20220111b |DONE |Manifest: NOSIGNATURE BetterAdvancements-1.18.1-0.1.2.122.jar |Better Advancements |betteradvancements |0.1.2.122 |DONE |Manifest: NOSIGNATURE Crash Report UUID: 15ab4e22-c0b0-4e5f-8768-6c83dd01c93f FML: 39.0 Forge: net.minecraftforge:39.0.45  
  • Topics

  • Who's Online (See full list)

×
×
  • Create New...

Important Information

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