Not quite…
The PreGenerator is a script that knows how to execute the Generator with a world config to pre-generate (build) a region of (or all of) a world. The Generator always does the generation. The Generator is a standalone lib + tool built into the Editor. The client app and server app both don’t know how to generate worlds. The server can be configured to call the Generator if some of the world is missing - but we by default only allow the generation of a flat world for memory / stability reasons on the live worlds. The PreGenerator knows how to orchestrate generation (by the Generator) of all the LODs and run everything across many cores. For example we normally build worlds on a 32 or 64 core machine.
Also it’s the Generator (again) that knows how to wrap the generation of worlds. The game server knows how to wrap the simulation of the world.
To be honest - we’re talking about a few different modules that we could just consider as features (or components) of the World Builder in general. The architecture (whilst interesting) is a little irrelevant to the user.
Yeah - (again we’re discussing all this in @lucadeltodecso absences but) - as you suggest the New Biomes (eg. Arid Canyons) are built out of a collection of “Land Formations” / “Biome Parts” / “Old Style Biomes” / whatever. This is simply because you’ve / we’ve learnt that to achieve interesting biome generation you need to mix + composite a few different biomes.
It’s possible that @lucadeltodecso will agree that we need this higher level to craft what we really want. Or alternatively, we might want something at a lower level where it’s easier to control the definition of the height field. Ultimately this will come down to - do we need an extra level of control for just the height map - or all the different biome features.
Again your text is miss using the PreGenerator - sorry for being misleading in my initial explanation of it.
This isn’t a concern. Yes generation is expensive. But the server only holds in memory a circle of chunks + entities surrounding the active players. The main limiter is the # of concurrent players on the server. If the world is too large then there will be a question about how sparse players are populated. Also would we prefer players to explore a single world? Or explore other worlds? We can do both…
But ultimately the tech for a 4km world is identical to a 400km world.
Your biomes are more descriptive - my current list is taken from geological sources, ie. real biomes in the real world. But what I’m most interesting in are the creative biomes that we make, for example: Floating Island Lava Falls, Crater Field with Forests at the bottom, etc. Things that don’t exist in the real world, but would be amazing if they did.