
Stanlyhalo
Members-
Posts
25 -
Joined
-
Last visited
Everything posted by Stanlyhalo
-
[1.15.2] Custom WorldType Multiple Biome Generation.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
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.
-
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?
-
[1.15.2] Custom WorldType with multiple biomes?
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
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.
-
Well damn, that actually worked, mind explaining why this is?
-
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
-
How can I update my mod from an earlier version.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
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)?
-
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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)? -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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? -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
What if I just instead created my own ProviderSettings to try and support different Biomes? -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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? -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
Alright well, then I'll do that instead. -
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.
-
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
[1.14.x] How to generate multiple biomes in custom world type.
Stanlyhalo replied to Stanlyhalo's topic in Modder Support
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. -
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.
-
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?