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

Block with constructor ::

 public static BarrierBlock barrierBlock = new BarrierBlock(AbstractBlock.Properties.of(Material.FIRE, MaterialColor.METAL));
	    public static final RegistryObject<Block> BARRIER_BLOCK = BLOCKS.register("barrier_block", (Supplier<? extends I>) barrierBlock); //this needs supplier

public class BarrierBlock extends Block {

	public BarrierBlock(Properties p_i48440_1_) {
		super(p_i48440_1_);
	}

}

//Following gives error: java.lang.NoSuchFieldError: field_151573_f
	at com.mcexamples.lists.BlockList.lambda$static$0(BlockList.java:19) ~[main/:?]


  public static final RegistryObject<Block> SILVER_BLOCK = BLOCKS.register("silver_block", () ->
	    		new Block(AbstractBlock.Properties.of(Material.METAL, MaterialColor.METAL).requiresCorrectToolForDrops()
	    				.strength(4.0f, 6.0f).sound(SoundType.METAL).harvestTool(ToolType.PICKAXE).harvestLevel(2)));

 

Thanks

 

2 minutes ago, DracoDoes said:

Block with constructor ::

add the properties in the constructor of the block and the supplier looks like this:

BarrierBlock::new

or keep the properties in the constructor and the supplier looks like this

() -> new BarrierBlock(Block Properties)

 

  • Author
30 minutes ago, Luis_ST said:

 

or keep the properties in the constructor and the supplier looks like this


() -> new BarrierBlock(Block Properties)

 

Why this gives error? 

Following gives error: java.lang.NoSuchFieldError: field_151573_f
	at com.mcexamples.lists.BlockList.lambda$static$0(BlockList.java:19) ~[main/:?]

 

Two of those files are 0 bytes, nice.

Anyway:

Quote

java.lang.NoSuchFieldError: field_151573_f
    at com.mcexamples.lists.BlockList.lambda$static$0(BlockList.java:29)

Your BlockList file is only 25 lines long.

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.

20 minutes ago, Draco18s said:

Your BlockList file is only 25 lines long.

please update your git repo, as this version of the mod (on github) seems is outdated, or is not complet...

Edited by Luis_ST

  • Author
21 minutes ago, Luis_ST said:

please update your git repo, as this version of the mod (on github) seems is outdated, or is not complet...

updated the repo. However, it's the same line 

 public static final RegistryObject<Block> SILVER_BLOCK = BLOCKS.register("silver_block", () ->
	    		new Block(Properties.of(Material.CLAY, MaterialColor.COLOR_CYAN)));

that shows error for some field like "15**" :: Logs attached from latest run

debug.log latest.log

1 minute ago, DracoDoes said:

updated the repo.

You haven't, latest commit is from 3 days ago

forgot to push?

  • Author
3 minutes ago, kiou.23 said:

You haven't, latest commit is from 3 days ago

forgot to push?

Ok, ya, updated now.

 

Thanks

24 minutes ago, DracoDoes said:

Ok, ya, updated now.

 

Thanks

Why does the mod id in the .toml file not match that of your packages?

 

The path of your classes should be src/main/java/com/<MOD_AUTHOR>/<MOD_ID>/...

But yours is src/main/java/com/mcexamples/examplemod/...

 

So to fix your issue, under the package .../java/ refactor the package mcexamples to the mod author, so 'dracodoes' for example, then refactor the package examplemod to 'mcexamples'

Edited by aritod

  • Author
9 minutes ago, aritod said:

Why does the mod id in the .toml file not match that of your packages?

 

 

so in .toml file, I added mcexamples with dependencies. (main folder under src/main/java) 

But modid is present in .toml file modId="mcexamples"  line 18

If I add one more entry with modId= mcexamples, (name of the ModId) in .toml file, I get the same error. I have tried it earliar. But believe me, it gives the same error.

 

[[dependencies.mcexamples]] #optional
    # the modid of the dependency
    modId="forge" #mandatory

19 minutes ago, DracoDoes said:

so in .toml file, I added mcexamples with dependencies. (main folder under src/main/java) 

But modid is present in .toml file modId="mcexamples"  line 18

If I add one more entry with modId= mcexamples, (name of the ModId) in .toml file, I get the same error. I have tried it earliar. But believe me, it gives the same error.

 

[[dependencies.mcexamples]] #optional
    # the modid of the dependency
    modId="forge" #mandatory

I'm not sure I quite understand you.

 

What I'm saying is that your project structure should look like this:

 

2018278076_ScreenShot2021-05-24at2_33_53PM.thumb.png.2a171bbcf699253a7debe1a82394c3a5.png

 

Notice how the path is src/main/java/com/dracodoes/mcexamples/ instead of src/main/java/com/mcexamples/examplemod/

So make sure your project structures looks like this. Obviously, you can rename the directory 'dracodoes' to another name, such as MacDax, etc, as it represents the mod author.

I am not asking you to change anything in your mods.toml file, so either I misunderstood you, or you misunderstood me.

 

Also, sorry if this is not what you meant, because you were somewhat unclear.

Edited by aritod

1 hour ago, aritod said:

The path of your classes should be src/main/java/com/<MOD_AUTHOR>/<MOD_ID>/...

That should only be the path if you own the domain <MOD_AUTHOR>.com, which commonly isn't the case

if  you don't own a website/domain, the recommended package name is io.github.<MOD_AUTHOR>, or some repository hosting service you use.

The name of the package, however, does not affect the issue

Edited by kiou.23

  • Author
10 minutes ago, kiou.23 said:

That should only be the path if you own the domain <MOD_AUTHOR>.com, which commonly isn't the case

if  you don't own a website/domain, the recommended package name is io.github.<MOD_AUTHOR>, or some repository hosting service you use.

The name of the package, however, does not affect the issue

That's what I thought.. so what's the issue?

  • Author

Now my package structure looks like this:  But still it gives the same error:

image.png.84681aae1251b07fbd8fde5ca9696998.png

[24May2021 13:45:58.012] [Render thread/ERROR] [net.minecraftforge.fml.javafmlmod.FMLModContainer/LOADING]: Caught exception during event RegistryEvent.Register<minecraft:block> dispatch for modid mcexamples
java.lang.NoSuchFieldError: field_151571_B
	at com.MacDax.mcexamples.lists.BlockList.lambda$static$0(BlockList.java:27) ~[main/:?]
	at net.minecraftforge.registries.DeferredRegister.lambda$register$0(DeferredRegister.java:124) ~[forge-1.16.5-36.1.4_mapped_official_1.16.5-recomp.jar:?]

 

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.