Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

So I know this is a probably really newb question but I can't seem to get the blockstates working right. I read through a few different tuts about them but am still lost as to what I'm doing wrong. Here is the blockstate that I have:

 

{
  "forge_marker": 1,
  "defaults": {
    "model": "commumod:purifier",
    "textures": {
      "front": "commumod:blocks/purifierFront_off",
      "top": "commumod:blocks/purifierTop",
      "side": "commumod:blocks/purifierSide",
      "bottom": "commumod:blocks/purifierSide"
    }
  },
  "variants": {
    "active": {
      "false": {},
      "true": {
        "textures": {
          "front": "commumod:blocks/purifierFront_on"
        }
      }
    },
    "facing": {
      "north": {},
      "south": { "y": 180 },
      "west": { "y": 270 },
      "east": { "y": 90 }
    },
    "active=false,facing=south,half=upper": [{
      "model": "commumod:purifier",
      "textures": {
        "all": "commumod:purifier"
      }
    }]
  }
}

 

 

I'm also having a problem rendering fluids. I can't find any blockstate files in Minecraft source so I'm assuming it's not needed, however I don't see any classes where the water and lava are explicitly declared in the source as well.

 

Help with either of these is much appreciated as I've spent well over two months trying to figure it out.

 

Thanks,

cyb3r

What isn't working with regards to your blockstates? Is your model not being used? Are your textures not showing up? Are you getting errors in the log?

 

Upload your FML log to Gist and link it here.

 

Minecraft uses its own separate rendering system for liquids that can't be used by mods. Forge adds the fluid system and a fluid baked model that can be used by the regular block rendering system.

 

You can see how I register my mod's fluids here, how I register the models for my fluids here and the blockstates file for my fluids here.

 

I explain how the model registration works here.

 

This has changed a bit in 1.9, so see the 1.9 branch of my repository for the 1.9 code.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

[08:19:52] [Client thread/ERROR]: Exception loading model for variant commumod:fluid.retaw#level=13

java.lang.Exception: Could not load model definition for variant commumod:fluid.retaw#level=13

at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:219) ~[ModelLoader.class:?]

at net.minecraft.client.resources.model.ModelBakery.loadVariants(ModelBakery.java:109) ~[ModelBakery.class:?]

at net.minecraftforge.client.model.ModelLoader.loadBlocks(ModelLoader.java:174) ~[ModelLoader.class:?]

at net.minecraftforge.client.model.ModelLoader.setupModelRegistry(ModelLoader.java:119) ~[ModelLoader.class:?]

at net.minecraft.client.resources.model.ModelManager.onResourceManagerReload(ModelManager.java:28) [ModelManager.class:?]

at net.minecraft.client.resources.SimpleReloadableResourceManager.notifyReloadListeners(SimpleReloadableResourceManager.java:130) [simpleReloadableResourceManager.class:?]

at net.minecraft.client.resources.SimpleReloadableResourceManager.reloadResources(SimpleReloadableResourceManager.java:111) [simpleReloadableResourceManager.class:?]

at net.minecraft.client.Minecraft.refreshResources(Minecraft.java:772) [Minecraft.class:?]

at net.minecraftforge.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:326) [FMLClientHandler.class:?]

at net.minecraft.client.Minecraft.startGame(Minecraft.java:532) [Minecraft.class:?]

at net.minecraft.client.Minecraft.run(Minecraft.java:360) [Minecraft.class:?]

at net.minecraft.client.main.Main.main(Main.java:116) [Main.class:?]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]

at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]

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_25]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]

at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]

at net.minecraftforge.gradle.GradleStartCommon.launch(GradleStartCommon.java:97) [start/:?]

at GradleStart.main(GradleStart.java:26) [start/:?]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]

at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]

at com.intellij.uiDesigner.snapShooter.SnapShooter.main(SnapShooter.java:59) [uiDesigner.jar:?]

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_25]

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_25]

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_25]

at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_25]

at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) [idea_rt.jar:?]

Caused by: java.lang.RuntimeException: Encountered an exception when loading model definition of model commumod:blockstates/fluid.retaw.json

at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:165) ~[ModelBakery.class:?]

at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]

... 33 more

Caused by: java.io.FileNotFoundException: commumod:blockstates/fluid.retaw.json

at net.minecraft.client.resources.FallbackResourceManager.getAllResources(FallbackResourceManager.java:93) ~[FallbackResourceManager.class:?]

at net.minecraft.client.resources.SimpleReloadableResourceManager.getAllResources(SimpleReloadableResourceManager.java:78) ~[simpleReloadableResourceManager.class:?]

at net.minecraft.client.resources.model.ModelBakery.getModelBlockDefinition(ModelBakery.java:143) ~[ModelBakery.class:?]

at net.minecraftforge.client.model.ModelLoader.getModelBlockDefinition(ModelLoader.java:215) ~[ModelLoader.class:?]

... 33 more

[08:19:52] [Client thread/ERROR]: Supressed additional 107 model loading errors for domain commumod

 

The errors in your fluid.retaw blockstates file are suppressing the errors in your other blockstates files.

 

You can fix the fluid blockstates error by registering a custom

IStateMapper

like I do for my fluids.

Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.

Join the conversation

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

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

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.