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.

Stanlyhalo

Members
  • Joined

  • Last visited

Everything posted by Stanlyhalo

  1. Thank you so much, I'll def. keep an eye out for that forum post for when/if you post a sharable multiple biome provider code. Edit*: I'm also probably gonna look at some more of the forge source code to see how the world type generates multiple biomes.
  2. I have a couple custom biomes with designated custom surface builders, although I don't know how to make the kind of biome surface builder I want. So what I am asking, is a walkthrough to how the default biome surface builder works, and how I can create my own to the type of biome I want, this is the default biome surface builder: protected void buildSurface(Random random, IChunk chunkIn, Biome biomeIn, int x, int z, int startHeight, double noise, BlockState defaultBlock, BlockState defaultFluid, BlockState top, BlockState middle, BlockState bottom, int sealevel) { BlockState blockstate = top; BlockState blockstate1 = middle; BlockPos.Mutable blockpos$mutable = new BlockPos.Mutable(); int i = -1; int j = (int)(noise / 3.0D + 3.0D + random.nextDouble() * 0.25D); int k = x & 15; int l = z & 15; for(int i1 = startHeight; i1 >= 0; --i1) { blockpos$mutable.setPos(k, i1, l); BlockState blockstate2 = chunkIn.getBlockState(blockpos$mutable); if (blockstate2.isAir()) { i = -1; } else if (blockstate2.getBlock() == defaultBlock.getBlock()) { if (i == -1) { if (j <= 0) { blockstate = Blocks.AIR.getDefaultState(); blockstate1 = defaultBlock; } else if (i1 >= sealevel - 4 && i1 <= sealevel + 1) { blockstate = top; blockstate1 = middle; } if (i1 < sealevel && (blockstate == null || blockstate.isAir())) { if (biomeIn.getTemperature(blockpos$mutable.setPos(x, i1, z)) < 0.15F) { blockstate = Blocks.ICE.getDefaultState(); } else { blockstate = defaultFluid; } blockpos$mutable.setPos(k, i1, l); } i = j; if (i1 >= sealevel - 1) { chunkIn.setBlockState(blockpos$mutable, blockstate, false); } else if (i1 < sealevel - 7 - j) { blockstate = Blocks.AIR.getDefaultState(); blockstate1 = defaultBlock; chunkIn.setBlockState(blockpos$mutable, bottom, false); } else { chunkIn.setBlockState(blockpos$mutable, blockstate1, false); } } else if (i > 0) { --i; chunkIn.setBlockState(blockpos$mutable, blockstate1, false); if (i == 0 && blockstate1.getBlock() == Blocks.SAND && j > 1) { i = random.nextInt(4) + Math.max(0, i1 - 63); blockstate1 = blockstate1.getBlock() == Blocks.RED_SAND ? Blocks.RED_SANDSTONE.getDefaultState() : Blocks.SANDSTONE.getDefaultState(); } } } } } So if anyone could walk me through how this works, that would be amazing. Also if someone would tell me the math I would have to do to make a sahara surface builder, that would be awesome.
  3. I got it so it spawns a custom biome in 1.15.2. I have a custom ChunkGenerator, MultiBiomeProvider, and GenerationSettings. Although I'm trying to get my MultiBiomeProvider to be able to provide multiple biomes. How do I accomplish this? Or does anyone already have a premade code to add these in?
  4. Well, I have been trying to make a custom provider, which I will continue to make along with stuff to add to configure sizes of biomes hopefully, and also, okay... I do know Java, but alrighty than.
  5. Would anyone know how to make a WorldType in 1.15.2, I created one in 1.14.4, but now I want to make it in 1.15.2, and also have multiple biomes. On the side if you could, explain how I would make custom recipes that ONLY work when in the WorldType (optional). Please help, I've been at this for a while trying to make the WorldType work.
  6. Well damn, that actually worked, mind explaining why this is?
  7. I'm making a 1.15.2 mod because I wanted to updated my mod from 1.12.2, since there different I just moved all my textures and .JSON files over, and updated them. I uploaded my crash-report file. crash-2020-06-08_11.21.44-client.txt
  8. I have this same issue, but I'm creating a mod, I did copy+paste some of my textures and json files into the newer version and updated them because I'm making an updated version to 1.15.2, why am I getting this now?
  9. I'm just gonna remake it in 1.15.2, and update it from there when new versions come out, also I hate how they have moved a lot more things over to JSON, I know how JSON works, but I would have more flexibility if it was in Java because I can then do events, or some special action.
  10. So I've been making a mod in 1.14.2, but I was wondering how would I update it to 1.15.2, would I probably set up a new project and setup 1.15.2 forge, but how do I update all my stuff? Also, a side question if it's possible to answer, I noticed that now block drops are in JSON and it's different to code events, but why did they move away from having a separate java class file for each block (I kinda liked it better like that)?
  11. So I'm still having a hard time making a world type have two biomes, I checked and got the two biomes to work separately but adding them both to one world type, that's where I'm still running into.
  12. So I just tried instead of: return new OverworldChunkGenerator(world, new SingleBiomeProvider(provider), settings); I can do: return new OverworldChunkGenerator(world, new BiomeProvider(provider), settings); So how could I possibly make it instead of: SingleBiomeProviderSettings provider = new SingleBiomeProviderSettings(); Into just BiomeProviderSettings because I am trying different combos and trying to ctrl+click to open it. Edit*: Figured it out: OverworldBiomeProviderSettings But idk how to add a biome, also how would I do nether & end (maybe answer this after how to add a biome to the OverworldBiomeProviderSettings)?
  13. Well didn't work. Is their a example one that someone has made, because mine just don't work, and how would I add a config to my World Type?
  14. Yup I am currently doing it, and this is what I have so far on my settings: private Biome[] biomes; public ExpansionModBiomeProviderSettings addBiome(Biome[] biomeIn) { biomes = new Biome[biomeIn.length]; for (int i = 0; i < biomeIn.length; i++) { biomes[i] = biomeIn[i]; } return this; } public Biome[] getBiome() { return this.biomes; } Also how would I call addBiome from my WorldType, because it is underlined in red. Edit*: I'm trying to make it so that the WorldType adds a biome list and the biome provider settings will make it a list so that the provider can read one at a time if that's possible.
  15. What if I just instead created my own ProviderSettings to try and support different Biomes?
  16. Well I'm in the WorldType.class and it seems to be kina just what I want, and seems to be how I can also add a options button to my worldtype. Edit*: How would I use the code to generator the biomes?
  17. I have been working on biomes and even started my own Surface Builder, only problem is, I don't know how to do the math for the Surface Building. I want to make my biome mostly flat like a plains biome, but idk how to make it like that because SurfaceBuilder.DEFAULT is really wack with floating parts. I want mine kinda like savanna or just plains, except make my own code for it.
  18. I know how to check the code through the IDE, but how would I check the vanilla code for WorldType? Edit*: Biomes O Plenty doesn't support 1.14.4 so maybe I would have to translate the code to 1.14.4 if I can see the code. Edit*: I can see the .class files but disecting this can take a bit.
  19. Are you able to point me in the direction for either find an example, or docs, or some sort of thing I can base mine off of? Because I am really good at programming, but I am just figuring out World Types. Also I am going to check out how to make my ores only in my WorldType.
  20. I've now done this with OverworldBiomeProviderSettings: OverworldGenSettings settings = new OverworldGenSettings(); OverworldBiomeProviderSettings BiomeProvider = new OverworldBiomeProviderSettings(); BiomeProvider.setGeneratorSettings(settings); return new OverworldChunkGenerator(world, new OverworldBiomeProvider(BiomeProvider), settings); But I don't know how to add my biomes to the provider.
  21. So I have made my own World Type, and the tutorial I followed on this process used SingleBiomeProviderSettings. And I want to use both of my custom biomes. How do I do so? @Override public ChunkGenerator<?> createChunkGenerator(World world) { OverworldGenSettings settings = new OverworldGenSettings(); SingleBiomeProviderSettings single = new SingleBiomeProviderSettings(); single.setBiome(CustomBiomes.biome_custom1); single.setBiome(CustomBiomes.biome_custom2); return new OverworldChunkGenerator(world, new SingleBiomeProvider(single), settings); } I want to know if their is a BiomeProviderSettings for multiple biomes, and how do I do it.
  22. I know how to make stuff craft into other objects, but is their a way to make it so I can't identify all my custom planks as mod:planks so that I don't have to create multiple files for each craft of sticks. Now I am aware of data.mod.tags.items, but I have tried it, and it doesn't work.
  23. So I have been following Henry Talks for the 1.13-1.14.4 playlist for modding Minecraft. And I wanted to make a block that falls, now I have made a mod for 1.12.2, but no falling block. So simply, how would I make my block fall when nothing is below it?

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.