Rewrite vanilla world gen to further utilise infinite height (addon mod?)
muzikbike opened this issue ยท 2 comments
Currently world generation with CC is in the super early stages (#514), and is likely planned to effectively match vanilla's sometime in the future. Instead of directly copying vanilla's (resulting in nothing new or interesting happening outside of usually attainable vanilla Y bounds) some minor deviations could be made from it to utilise the newfound height increase (see also #503):
-
The Overworld: Changes would be pretty minimal, aside from the obvious ability for underground structures to generate at any depth (#159, and also strongholds would need to be considered - would they generate in a sphere?). Currently in the early stages, the ocean is at y=0 rather than the vanilla y=63, which I think should be kept (and terrain shifted downwards to accommodate for this), although other game-related things would likely require changes to still deliver a proper gameplay fully evocative of vanilla mechanics (#542, #459, the height where temperature starts decreasing above, etc.). Where lava starts to generate in caves is also something important to consider, as this would effectively completely cut off deep exploration in survival below a given point.
-
The Nether: Also pretty minimal changes - move the lava ocean to y=0, and the caves would go on to infinite heights and depths while retaining their general vanilla consistency and shape otherwise. Ore veins and hidden lava would appear at all heights, and most "aboveground" structures like fire patches, forests, fortresses and bastions would be capable of generating at any height above the lava lake.
-
The End: This is a weird one, since the Void is a pretty well-ingrained game mechanic for the End. I'd suggest that, perhaps instead of a circle, a sphere of emptiness would generate around the central End island, and islands everywhere outside of it. A cheap but very effective way to implement this would be to have the end generate in layers, with only the central layer (moved downwards from vanilla's height in order for the portal to sit at y=0) containing the central island and the thousand blocks of empty XZ space around it. Every 512(?) blocks on the Y axis, a new layer would begin to generate. This would fix the entire issue of there being no more void damage with the fact that falling off one island would put you over another layer of islands, almost certaintly killing the player with fall damage, which has the added benefit of not being a death sentence to your items - a well-planned expedition to the point of death would score them all back. Any mobs which were knocked off an island could also be rescued by cleverly exploiting unloaded chunks. The void damage mechanic could then be safely completely removed (or moved to billions of blocks downwards, where it belongs) and the End would now cleanly support infinite height (without its generation or gameplay being significantly different from before) with tons of new possibilities.
We're most likely going to copy 1.12 for the most part, with a goal being to stay as close to vanilla as possible, just extending it
-
Overworld: water will stay where it is in vanilla, current generation is just so we dont have to look at a superflat world
-
Nether: lava stays where it is in vanilla, otherwise, I agree
-
End: For a while this will look like vanilla, with the possibility of random noise generation at a later date, as you suggest. The issue with this is that of falling down for days if you slip (and not dying)