Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Select Slices for weirdness #32

Open
Treetrain1 opened this issue Jan 11, 2024 · 7 comments
Open

Feature: Select Slices for weirdness #32

Treetrain1 opened this issue Jan 11, 2024 · 7 comments

Comments

@Treetrain1
Copy link

In Minecraft's overworld world generation, it has multiple slices with multiple weirdnesses, however there is no way to add all the weirdnesses for specific slices without creating many near identical files.

It would be nice to have a way to select slices rather than having a weirdness range.
Perhaps something like this.

"injection": {
    // other stuff
    "slices": [
        "valley",
        "low",
        "mid",
        "high",
        "peak"
    ]
}

Example from decompiled MC Source with Mojang's Mappings:
image

@lukebemish
Copy link
Member

I'll look at a solution to make that a bit nicer to do, but it won't look like you're suggesting - a single injection can only inject in one place. Some system to make groups of similar injections like that should be possible though

@Treetrain1
Copy link
Author

I'll look at a solution to make that a bit nicer to do, but it won't look like you're suggesting - a single injection can only inject in one place. Some system to make groups of similar injections like that should be possible though

Maybe a solution could be having lists for each parameter and then the mod would make an injection for each possible outcome in the list.

@lukebemish
Copy link
Member

lukebemish commented Jan 15, 2024

Hmm, that's a possibility, though I'm not the biggest fan - that really wouldn't play nice with the injections-as-registries setup I currently take (which has a number of its own benefits). That said, I'll definitely consider it.

That said, if you're looking for a temporary solution at present - you could datagen your injections, which would make this a lot easier. This is my preferred solution, honestly, though I'll of course look into other solutions for those not using datagen as well.

@Treetrain1
Copy link
Author

Hmm, that's a possibility, though I'm not the biggest fan - that really wouldn't play nice with the injections-as-registries setup I currently take (which has a number of its own benefits). That said, I'll definitely consider it.

That said, if you're looking for a temporary solution at present - you could datagen your injections, which would make this a lot easier. This is my preferred solution, honestly, though I'll of course look into other solutions for those not using datagen as well.

is there already a provider to use for datagen?

@lukebemish
Copy link
Member

It's a datapack registry. So, FabricDynamicRegistryProvider or DatapackBuiltinEntriesProvider depending on the platform should Just Work

@Treetrain1
Copy link
Author

alright i found a solution
thank you for the suggestion

image

@lukebemish
Copy link
Member

Glad it works! I'll keep thinking of a JSON only solution to this so I'll leave this open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants