Jump to content
  • Home
  • Files
  • Docs
Topics
  • All Content

  • This Topic
  • This Forum

  • Advanced Search
  • Existing user? Sign In  

    Sign In



    • Not recommended on shared computers


    • Forgot your password?

  • Sign Up
  • All Activity
  • Home
  • Mod Developer Central
  • Modder Support
  • [1.16.4]NullPointerException when using registered custom features
Currently Supported: 1.16.X (Latest) and 1.15.X (LTS)
Sign in to follow this  
Followers 0
QWERTY 52 38

[1.16.4]NullPointerException when using registered custom features

By QWERTY 52 38, January 20 in Modder Support

  • Reply to this topic
  • Start new topic

Recommended Posts

QWERTY 52 38    0

QWERTY 52 38

QWERTY 52 38    0

  • Tree Puncher
  • QWERTY 52 38
  • Members
  • 0
  • 7 posts
Posted January 20

Code repository: Here

 

I registered my custom feature in FeatureRegistry.java and McbbsWiki.java.

 

FeatureRegistry.java:

public static final DeferredRegister<Feature<?>> FEATURES = DeferredRegister.create(ForgeRegistries.FEATURES, "mcbbswiki");
public static RegistryObject<McbbsWikiLuckyBlockFeature> feature_lucky_block = FEATURES.register("feature_lucky_block", () -> new McbbsWikiLuckyBlockFeature(NoFeatureConfig.field_236558_a_));

 

McbbsWiki.java (the main class of this mod):

FeatureRegistry.FEATURES.register(
	FMLJavaModLoadingContext.get().getModEventBus()
);
 
But, when I used
FeatureRegistry.feature_lucky_block.get()

to get the object (in world.biome.McbbsWikiBiomeMaker.java:37), the game throwed a NullPointerException and crashed.

 

I found out "FeatureRegistry.feature_lucky_block.isPresent()" returned false and "FeatureRegistry.feature_lucky_block.value" is null, but do not know how to solve the problem.

 

The full logs are shown below.Please help me.

latest.log crash-2021-01-20_15.04.42-fml.txt

  • Quote

Share this post


Link to post
Share on other sites

diesieben07    7699

diesieben07

diesieben07    7699

  • Reality Controller
  • diesieben07
  • Forum Team
  • 7699
  • 56430 posts
Posted January 20

Show this class: McbbsWikiBiomeMaker.makeMcbbsWikiNormalBiome

  • Quote

Share this post


Link to post
Share on other sites

QWERTY 52 38    0

QWERTY 52 38

QWERTY 52 38    0

  • Tree Puncher
  • QWERTY 52 38
  • Members
  • 0
  • 7 posts
Posted January 20
48 minutes ago, diesieben07 said:

Show this class: McbbsWikiBiomeMaker.makeMcbbsWikiNormalBiome

Attention:This is a method, not a class.

public static Biome makeMcbbsWikiNormalBiome(){
        MobSpawnInfo.Builder mobSpawnInfo = new MobSpawnInfo.Builder();
        mobSpawnInfo.isValidSpawnBiomeForPlayer();
        DefaultBiomeFeatures.withPassiveMobs(mobSpawnInfo);
        mobSpawnInfo.withSpawner(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityRegistry.entity_small_mcbbswiki_monster.get(), 10, 5, 7));
        mobSpawnInfo.withSpawner(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityRegistry.entity_middle_mcbbswiki_monster.get(), 7, 3, 5));
        mobSpawnInfo.withSpawner(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityRegistry.entity_large_mcbbswiki_monster.get(), 4, 1, 3));
        mobSpawnInfo.withSpawner(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.LLAMA, 5, 4, 6));
        BiomeGenerationSettings.Builder biomeGeneSettings = (new BiomeGenerationSettings.Builder()).withSurfaceBuilder(ConfiguredSurfaceBuilders.field_244181_m);

        DefaultBiomeFeatures.withStrongholdAndMineshaft(biomeGeneSettings);
        biomeGeneSettings.withStructure(StructureFeatures.RUINED_PORTAL);
        biomeGeneSettings.withFeature(GenerationStage.Decoration.VEGETAL_DECORATION, FeatureRegistry.feature_lucky_block.get().withConfiguration(IFeatureConfig.NO_FEATURE_CONFIG));
        DefaultBiomeFeatures.withCavesAndCanyons(biomeGeneSettings);
        DefaultBiomeFeatures.withLavaAndWaterLakes(biomeGeneSettings);
        DefaultBiomeFeatures.withMonsterRoom(biomeGeneSettings);
        DefaultBiomeFeatures.withCommonOverworldBlocks(biomeGeneSettings);
        DefaultBiomeFeatures.withOverworldOres(biomeGeneSettings);
        DefaultBiomeFeatures.withDisks(biomeGeneSettings);
        DefaultBiomeFeatures.withMountainTrees(biomeGeneSettings);
        DefaultBiomeFeatures.withDefaultFlowers(biomeGeneSettings);
        DefaultBiomeFeatures.withBadlandsGrass(biomeGeneSettings);
        DefaultBiomeFeatures.withNormalMushroomGeneration(biomeGeneSettings);
        DefaultBiomeFeatures.withSugarCaneAndPumpkins(biomeGeneSettings);
        DefaultBiomeFeatures.withLavaAndWaterSprings(biomeGeneSettings);
        DefaultBiomeFeatures.withEmeraldOre(biomeGeneSettings);
        DefaultBiomeFeatures.withInfestedStone(biomeGeneSettings);
        DefaultBiomeFeatures.withFrozenTopLayer(biomeGeneSettings);
        return (new Biome.Builder())
                .precipitation(Biome.RainType.RAIN)
                .category(Biome.Category.EXTREME_HILLS)
                .depth(-0.5F)
                .scale(1.3F)
                .temperature(0.7F)
                .downfall(0.3F)
                .setEffects((new BiomeAmbience.Builder())
                        .setWaterColor(0x3f76e4)
                        .setWaterFogColor(0x050533)
                        .setFogColor(0xc0d8ff)
                        .withSkyColor(getSkyColorWithTemperatureModifier(0.7F))
                        .setMoodSound(MoodSoundAmbience.DEFAULT_CAVE).build())
                .withMobSpawnSettings(mobSpawnInfo.copy())
                .withGenerationSettings(biomeGeneSettings.build())
                .build();
    }

See https://github.com/QWERTY770/MCBBS-Wiki-Mod/tree/main/src/main/java/cn/mcbbswiki/qwerty5238/world

  • Quote

Share this post


Link to post
Share on other sites

diesieben07    7699

diesieben07

diesieben07    7699

  • Reality Controller
  • diesieben07
  • Forum Team
  • 7699
  • 56430 posts
Posted January 20

You cannot access registry entries directly before FMLCommonSetupEvent. Here you are trying to access the features during the biome registry phase, which will not work.

  • Quote

Share this post


Link to post
Share on other sites

QWERTY 52 38    0

QWERTY 52 38

QWERTY 52 38    0

  • Tree Puncher
  • QWERTY 52 38
  • Members
  • 0
  • 7 posts
Posted January 20
23 minutes ago, diesieben07 said:

You cannot access registry entries directly before FMLCommonSetupEvent. Here you are trying to access the features during the biome registry phase, which will not work.

So, how can I do that?

  • Quote

Share this post


Link to post
Share on other sites

diesieben07    7699

diesieben07

diesieben07    7699

  • Reality Controller
  • diesieben07
  • Forum Team
  • 7699
  • 56430 posts
Posted January 20

Do what?

  • Quote

Share this post


Link to post
Share on other sites

QWERTY 52 38    0

QWERTY 52 38

QWERTY 52 38    0

  • Tree Puncher
  • QWERTY 52 38
  • Members
  • 0
  • 7 posts
Posted January 20
2 minutes ago, diesieben07 said:

Do what?

Generate feature mcbbswiki:feature_lucky_block in Mcbbs Wiki Normal Biome

  • Quote

Share this post


Link to post
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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

    • Insert image from URL
×
  • Desktop
  • Tablet
  • Phone
Sign in to follow this  
Followers 0
Go To Topic Listing



  • Recently Browsing

    No registered users viewing this page.

  • Posts

    • troublemaker_47
      TeleportCommand Help

      By troublemaker_47 · Posted 1 hour ago

      Hello, I am a beginner minecraft modder and i have some problems with a bit of code that would teleport the player in the direction he's facing.can anyone tell me How to merge these lines together: player.getLookVec().scale(2.0F).add(player.getPositionVec()); TeleportCommand;   P.S: i need this to work in minecraft 1.16.5-36.0.15
    • skeletal
      unable to connect to my server

      By skeletal · Posted 1 hour ago

      hello, every time i try to join my modded server i get the "fatally missing registry entries" error and the "minecraft:wheat (net.minecraft.crafting.shapedrecipies) produces unregistered item minecraft:wheat" error and i dont know what to do, any help would be appreciated here is a screenshot of the console when i try to join:
    • <Gl33p_0r4nge>
      [1.16.4] Screen Render

      By <Gl33p_0r4nge> · Posted 2 hours ago

      Okay I see that no one probably know how but can you at least tell me where should I get the rendered player view?  
    • Luis_ST
      [1.16.5] Help with custom Backpack (slot background and mouse wheel move)

      By Luis_ST · Posted 3 hours ago

      I don't know what code I would still be helpful, so here are the relevant classes in my git repo: TextureStitchEvent: https://github.com/Luis-st/Forge-1.16.5-36.0.1-mdk/blob/main/forge-1.16.5-36.0.1-mdk/src/main/java/net/luis/cave/events/other/OnTextureStitchEvent.java BackpackContainer (with custom slot subclass): https://github.com/Luis-st/Forge-1.16.5-36.0.1-mdk/blob/main/forge-1.16.5-36.0.1-mdk/src/main/java/net/luis/cave/common/inventory/container/BackpackContainer.java   I think I understood after trying something: my message class requires 3 methods (encode, decode, handle) which I then have to specify when registering the message (parameter 3 - 6). Am I right?
    • troublemaker_47
      Teleport player in same direction as where he looks

      By troublemaker_47 · Posted 4 hours ago

      Can you please tell me how to use the teleportcommand method or its syntax. @diesieben07
  • Topics

    • troublemaker_47
      0
      TeleportCommand Help

      By troublemaker_47
      Started 1 hour ago

    • skeletal
      0
      unable to connect to my server

      By skeletal
      Started 1 hour ago

    • <Gl33p_0r4nge>
      1
      [1.16.4] Screen Render

      By <Gl33p_0r4nge>
      Started Monday at 02:58 PM

    • Luis_ST
      9
      [1.16.5] Help with custom Backpack (slot background and mouse wheel move)

      By Luis_ST
      Started Wednesday at 07:47 AM

    • troublemaker_47
      7
      Teleport player in same direction as where he looks

      By troublemaker_47
      Started 21 hours ago

  • Who's Online (See full list)

    • <Gl33p_0r4nge>
    • brok4d
    • DmitryLovin
    • Luis_ST
  • All Activity
  • Home
  • Mod Developer Central
  • Modder Support
  • [1.16.4]NullPointerException when using registered custom features
  • Theme

Copyright © 2019 ForgeDevelopment LLC · Ads by Longitude Ads LLC Powered by Invision Community