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

8 minutes ago, Maideniles said:

Sorry if this is a dumb question, but does each model file need it's own blockstate? Is that what I'm missing?

No use the name of this blockstate file.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

I tried this, and still it is that error block. :(  

 

{
    "forge_marker": 1,
    "defaults": {
        "model": "forge:multi-layer",
        "transform": "forge:default-block"
    },
    "variants": {
	        
		"normal": [{
		
            "custom": {
                "base": "mff:backsplash#base",
                "Solid": "mff:backsplash#base",
                "Translucent": "mff:backsplash#trans"
            }
        }],
        "base": [{
            "model": "mff:block/backsplash_base"
        }],
        "trans": [{
            "model": "mff:block/backsplash_bricks"
        }]
    }
}

 

1 hour ago, Maideniles said:

I tried this, and still it is that error block.

You are also not declaring your variants correctly in the blockstate json. Take a look at what Draco said earlier.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

  • Author

I'm attempting to correct this... What I am understanding is  that  'custom' should be a variant type instead of a value, and 'solid' and 'translucent'  should be variant values with their separate model overrides. Am I even headed in the right direction here? I'm sorry if I'm not getting it, I am still learning all of this...

Yes

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.

  • Author

Okay, so I have 3 more questions.

 

1. Do I need to make 2 more block class files, one for each part of the backsplash block? Or is it enough to have the variant type "custom", with the three variant values "Base", "Solid" and "Translucent"  reference just the two block models, backsplash_base and backsplash_bricks?

 

2.   How do I add the variant type  "facing" to this?  My BlockBacksplash class file extends a custom block called BlockFurnishing, in which I have the facing properties, but I am unsure how to call these properties in the blockstates file, as a single block. Is it as simple as putting the blockstate into the "north": {}, etc. value, instead of the "model": {}, etc. value?

3. Do I have to add a "normal": {} variant type to this? I remember seeing the console giving an error at one point that "normal" was missing, so I am also unsure about this.

 

Thank you for all of your help so far. I feel like I am starting to understand it a bit better and I am one step closer to success. 

1 hour ago, Maideniles said:

How do I add the variant type  "facing" to this?  My BlockBacksplash class file extends a custom block called BlockFurnishing, in which I have the facing properties,

Yes

1 hour ago, Maideniles said:

but I am unsure how to call these properties in the blockstates file, as a single block.

Facing is a variant, you handle it like all other variants

1 hour ago, Maideniles said:

Is it as simple as putting the blockstate into the "north": {}, etc. value, instead of the "model": {}, etc. value?

No, we went over this, that's exactly how you fucked up your last variant.

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.

  • Author
2 hours ago, Draco18s said:

Yes

which part are you saying yes to in my first question? the making 2 more block classes, or the part where I reference each model in "base" or "transparent" values?

 

2 minutes ago, Maideniles said:

which part are you saying yes to in my first question? the making 2 more block classes, or the part where I reference each model in "base" or "transparent" values?

Sorry, I misread the question, I read, "Do I have to?" not "How do I?"

And the answer is:

In exactly the same way as you do all variants.

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.

  • Author

Earlier you answered yes, when I asked this:

On 7/26/2018 at 7:42 AM, Maideniles said:

I'm attempting to correct this... What I am understanding is  that  'custom' should be a variant type instead of a value, and 'solid' and 'translucent'  should be variant values with their separate model overrides. Am I even headed in the right direction here? I'm sorry if I'm not getting it, I am still learning all of this...

 

So would this be the right way to do it? (Forgive the odd formatting, please--the editor isn't letting me fix it.)

"custom": [{		//variant type named custom
                
				"Base": {"model": "mff:backsplash_base"},	//variant value named Base with a model override
				
                "Solid": {"model": "mff:backsplash_base"}, //variant value named Solid with a model override
				
                "Translucent": {"model": "mff:backsplash_bricks"}  //variant value named Translucent with a model override
                      
					  }],

 

  • Author

Disregard my last question--I got it!  Woot!  It took me looking once again over what I had seen as examples, versus what I was using in my blockstate, to realize where I went wrong.   I had incorrectly been using paths to separate blockstates (that didn't exist) inside the "Base", "Solid", and "Translucent " values.  All I needed was to have it's own blockstate, with the type.  (I hope I am referring to these by their right names)

So I put my "mff:backsplash" blockstate into each of the Solid, Base and Translucent values, with a # to refer to the corresponding variant types, then I defined each type with the appropriate models for "base" and "translucent".  Bingo. My block appears exactly as I wanted it to, with no funky textures.  Thank you so much for your help.  :)

4 hours ago, Maideniles said:

Earlier you answered yes, when I asked this:

Yes....because...

19 hours ago, Draco18s said:

I misread the question

 

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.

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.