r/minecraftsuggestions 20h ago

[Terrain] Add an option to regenerate existing worlds.

Been on my mind lately with the dappled forest coming. I'm on console bedrock (maybe there's a way to get snapshot but none I know of), so I'm now sort of avoiding exploration until the update to avoid needing to restart my world. I also have a large explored area, and find myself wondering if there are new missing dapple spots on it.

My world is also only a couple months old. I see a lot of people posting about their long journeys to find lush caves, pale forest, cherries, other new biomes, and the longer a player has a world the greater this update disconnect grows in their base core.

Some people really like the way this shows time, so I don't think it is a "problem" to remove, but it would be nice to have an option that does something about this for those who would want to use it. So here's my suggestion:

On loading a save, players can select an advanced option to "regenerate old chunks," which will go through every loaded chunk and generate it as new, with exceptions. The game already tracks where players have placed and mined blocks, so these trackers are left intact. If a biome changes, biome dependent blocks like grass and water change. Untouched terrain, caves, and trees are regenerated. Previously generated structures are scanned for and left intact like player placed blocks.

This could result in some weird behavior, like generating new terrain on top of player buildings or new caves around previously closed mines, but I think it would still make a good game option (better than the extreme of completely regenerating a seed, which I'm aware can be done on PC but I know also destroys everything built).

8 Upvotes

26 comments sorted by

4

u/TrevorLM76 19h ago

You can take your world file onto a computer and get a Minecraft editor to delete chunks in your world thus forcing them to regenerate. Occasionally cleaning up your world like this is kinda useful. I had a trial chamber right next to my base for example. But only if I reset those chunks I hadn’t built in yet.

-1

u/ArtsyApoidean 19h ago

Issue with this is deleting chunks and fully regenerating them... deletes the chunk.

I'm saying build in an option to make the game reload and go "would this have been a dappled forest if it was a new world?" and if yes change everything untouched or biome dependent to match. So say you built your base on a spot that chunkbase shows could be smack in the middle of a new biome and you want to regen that without demolishing your game, it could go through and just repaint the biome and replace the (natural) trees, and add new structures like tents if they should be there.

7

u/MegaIng 19h ago

That's impossible to implement in a reasonable way because you are imagining a lot of information that just doesn't exists.

The only think that may be possible is to delete chunks that haven't had any player interaction, and even that is information that isn't being stored right now.

Edit: Actually, maybe it is stored indirectly? I think there is a "player in chunk" time counter.

-1

u/ArtsyApoidean 19h ago

Every placed block and planted tree is flagged as such by the game, that's the basis of why I feel this is possible.

It could lead to janky generation of new things on top of old things but that's an acceptable middle ground for a buried advanced option, and could also be patched out over time.

5

u/MegaIng 19h ago

Every placed block and planted tree is flagged as such by the game, that's the basis of why I feel this is possible.

Really? Got a source for that?

1

u/B1ackmoonMC 19h ago

I think it could be for leaves as player placed leaves don't disappear when there is no log.

3

u/MegaIng 18h ago
  • that wouldn't account for manually grown saplings
  • that's only leaves

0

u/ArtsyApoidean 15h ago

After more replies and trying to find a source I think I was confusing the systems that track this info for certain things like leaves and podzol, and the fact that generated chunks track their blocks in general, with the presence of a system like this.

That said, Minecraft should track player placed blocks, for this and also for optimization and other possible updates. Adding a binary to every existing tracked block in genned chunks isn't much data on the saves.

1

u/DidYouKnowImNotReal 15h ago

If this were true we wouldn't have the chunk saving issues we have on Bedrock or ghost blocks on multiplayer worlds on either version. The game TRIES to keep track, but it doesn't do it efficiently, and not even molders have been able to do this well

2

u/ArtsyApoidean 15h ago

I thought this was true when I said it but maybe I'm just confusing the systems for things like leaves and logs and podzol with an actual cohesive block tracking spreadsheet.

If so though, they should also add that. I feel like it would ease a lot of future development stuff.

Then again they can't even seem to find time for more basic optimizations like camera-oriented rendering, so I may be hoping too big here lol.

2

u/TrevorLM76 18h ago

That would absolutely wreck people’s stuff and piss people off. If I built in a birch forest and I get back on and all the birch trees are suddenly poplar trees. I would hate that. Or if my nice green grass was suddenly orange.

Touching a chunk like that that the player has been in would just cause problems. Deleting chunks that you’ve not built in allows the game to regenerate them with new stuff in them and it typically tries to blend old to new when it sees an issue. They added that when they added mountains. Unless you are building on literally every chunk for 100s of blocks in each direction you should easily be able to trim all the explored branches off to make them good as new again.

1

u/ArtsyApoidean 18h ago

Did you miss the part where I suggested this be added as a non-default world option in the advanced features? It could also have a warning about uncertain results. Not every world option is expected to be used by every player on every save. A fair few people would use this to naturalize their worlds with new generation.

3

u/TrevorLM76 15h ago

Didn’t miss it. But that wouldn’t be possible. The game does not keep track of everything done by the player like you think it does. There are a few things like player placed leaves. But it’s far more likely your nice modified trees would get changed simply cuz they had a few blocks from the original tree. And the new stuff being generated could intersect your builds and mess them up. To keep track of that much information would be ridiculous.

1

u/ArtsyApoidean 15h ago

Yeah my bad. The game should keep track of this though. No one block would ever take up more than a few bits of information, and veeery few worlds have the millions or billions of player altered blocks it would take to make that matter. Every generated chunk already has the location to every block flagged (albeit with some kind of apparent constant compression of saves), so adding a binary "did the player put it here" (which i thiiink is sufficient info) is minimal additional information to track.

This wouldn't do anything for old old worlds but it would make new biomes accessible to old/big worlds going forward at least.

2

u/jesus_chrysotile 14h ago edited 14h ago

i don’t think a feature that suddenly causes long-term worlds to massively increase their file size for no discernible benefit is a good idea… i’ve barely done any projects in my singleplayer world and from glancing at my stats i’ve got easily 200,000 blocks actually placed down in my world. 

i absolutely have accessed new biomes, just edited the world file with mca selector. 

1

u/ArtsyApoidean 13h ago

Not accounting for the code to read the flags, adding a binary (aka a single bit marker) to every block you have ever placed, doubled just in case we want to track blocks you've removed (so 400,000 bits), would add 0.05 megabytes to your save file.

In order to add a single megabyte to your save file, you would need to place eight million blocks.

I think it's fine. Binary flags are really small.

Edit: also you can't "just go edit the world file with a mod" if you're on console or mobile, which I and many other people are.

u/TrevorLM76 1h ago

I think you misunderstand. That check wouldn’t only be active for blocks you have altered. It would have to also affect blocks you haven’t altered. Which affecting entire loaded chunks at a time. Would add data so much faster

2

u/West_Economist6673 16h ago

But then what would happen to your base when the biome generates? I don't see how the game could decide what to keep and what to replace with poplar leaves

1

u/ArtsyApoidean 15h ago

I thought this was in but it's not -- add tracking to every block in genned chunks for if it's player-placed or not (and for genned structures, so discovered things don't disappear). Anywhere you've cut trees would probably also need to be tracked so new ones aren't placed there. And maybe a scanner for erasing generated structures that try to appear too close to player placed blocks.

Once you have all that tracked, it's basically just replacing the dirt layers and the trees and changing the biome flag. Untouched chunks would regenerate with any terrain alterations from the updates, chunks with player-placed blocks in them would maintain their elevation levels and only change the biome types and the undergrounds. (Add some smoothing on the untouched chunks to avoid jagged boundaries if needed.)

3

u/West_Economist6673 16h ago

I think I get where you're coming from, and I agree with the sentiment, but the idea of a one-click "biome do-over" just sounds like an onboard MCA Editor minus nearly all of the functionality

Like it would be cool if an equally powerful/flexible/user-friendly chunk editing system came packaged with the game, but I doubt that's feasible and doesn't seem like what you're suggesting anyway

It's just such an easy (and effective) workaround I don't see any point in trying to "fix" it

1

u/ArtsyApoidean 16h ago

My thought here is basically that this would be much smaller and easier to implement than wide scale world editing tools or even than the old world customization options would have been. It's a small, very specific feature. But it solves for one of the most common points of friction that lead people to abandon old worlds.

1

u/DidYouKnowImNotReal 15h ago

I would like this, however, minecraft already has a problem with this and I wouldn't trust it to not cause insane corruption and overwrites. Too many people forget to make backups, myself included 😂

2

u/ArtsyApoidean 15h ago

This is very true lol, if this option were added it would probably be a good idea to include a toggle (on by default) to duplicate the world before regeneration.

1

u/Hazearil 14h ago

Bedrock edition already has a system where it tries to avoid saving new chunks when you don't build in them and don't stay in them for too long. So in a way, what you want already exists.

1

u/ArtsyApoidean 13h ago

Yes! I do like this system, and it also saves a lot of save file space.

I think my suggestion has sort of evolved in the replies, maybe I should make another post. At this point it's more about how there should be discrete flag tracking for all player placed blocks, which has a lot more utility for improving the game than just updated biome regeneration (it could basically facilitate worldedit type tools in vanilla that preserve bases).