Structurize

Structurize

46M Downloads

Declutter pack screen

TheidenHD opened this issue ยท 22 comments

commented

Is there an existing change request for this?

  • I have searched the existing change requests.

Are you using the latest Structurize Version?

  • I am running the latest beta/release version of Structurize for my Minecraft version.
    I am also running the latest versions of other mods that are part of my problem.

Did you check on the Wiki? or ask on Discord?

  • I checked the MineColonies/Structurize Wiki or I asked on discord.

Minecraft Version

1.20

Structurize Version

737-beta

Related Mods and their Versions

n/a

Current Behavior

The Owner(the category in which the pack is) is based on the mod ID of the mod or "local".

Enhancement or Change description

Allow a custom Owner to be specified.

Anything else?

I asked on the Diskord why distributing Packs via jar files is uncommon. One of the mentioned problems was that each Pack would create its own category, which would clutter up the UI.


this.owner = json.has("owner") ? json.get("owner").getAsString() : owner;

Footer


Viewers

  • Add a thumbs-up to the bug report if you are also affected. This helps the bug report become more visible to the team and doesn't clutter the comments.
  • Add a comment if you have any insights or background information that isn't already part of the conversation.
commented

What is your point right now. If it can't be managed then what is the point of this change to begin with?
All packs that exist in the blueprints folder in the savefile itself are always "Local" because they exist on the local filesystem.
Mods use the mod name as the category.

If you complain about not being able to provide blueprints in Curse, then you make a mod, it's that simple. Then you don't need a custom way to override the owner because then it'll use the mod name.

I don't see a valid usecase for this change.

commented

I already wrote that in the original post. I asked in Discord why there are only a handful of packs released as jars, one of the arguments was, that the Pack select screen gets cluttered up with a lot of categories with each only having one or two packs. With this change, there could be a common owner like "Structurize".

commented

All the packs you linked are from different owners, we cannot force anyone to do anything. If they want to separately publish their pack as a mod they are free to do so. And yes you will get multiple categories in that case.

However, similar to Stylecolonies, you can pack multiple styles into a single mod to get a general overview of all an author their styles at once.

commented

Though again, it's up to the author of said packs to make this choice, we cannot make that choice for them.
Even with this PR the problem is not fixed because it would require all pack makers to include the owner field in their pack.json, which is something we cannot enforce.

commented

In my proposal this field is optional.
this.owner = json.has("owner") ? json.get("owner").getAsString() : owner;
IF an owner is defined use it else use whatever it uses currently.

commented

Precisely, people are not (and cannot be) forced to use it. Meaning you still won't fix the problem. And it's probably actually more likely you'll end up with more categories with this.
If a random pack in your local blueprints folder has an owner set, you're going to get an extra category for each pack that does that.

If you have a jar that contains several packs, and one of them has an owner set as well, it's going to once again make a separate category.

I think this change will actually make the problem worse.

commented

That only works for packs in Stylecolonies.
If you have a big collection, then it works fine, but some release their Packs independently, and then it is getting cluttered.

commented

yes, but they could if they wanted add it to a folder of their choosing, either making it into minecolonies/stylecolonies/inofficial whatever, no?

commented

even as a jar you should be able to pack it into blueprints/anything

commented

If it is released as a jar, it has to be placed in blueprints{modId} and it's using the modId as the owner.

commented

No, maybe it worked in the past but not currently.

public static void onClientLoading()
{
final List<Path> modPaths = new ArrayList<>();
final List<String> modList = new ArrayList<>();
for (IModInfo mod : ModList.get().getMods())
{
modPaths.add(mod.getOwningFile().getFile().findResource(BLUEPRINT_FOLDER, mod.getModId()));
modList.add(mod.getModId());
}

commented

I tried a bit to do exactly that but it didn't work.

commented

No, that finds the blueprints folder INSIDE of the jar.

commented

The Blueprints folder can't be managed by CurseForge and Modrinth, which makes it more annoying to include those in modpacks.

commented

Ok, I could add a check that it only works on jars not on local. If you have a collection like Stylecolonies it could be enforced by the Mantainers. I'm currently developing a tool that should make it easier to pack them into jars, I asked for some feedback, and this problem was raised. If you have another Ider how to fix it, I would love to hear it.

commented

But what is the point of setting it if you're already in a jar, packs in a jar get their own category already. So why would you want to split one of them out.

On top of that it opens the door for potentially people saying "Minecolonies" as the owner now that I think about it and making it look like an officially supported pack.
So I reckon that is the final nail in the coffin not to allow this.

commented

I do not want to split them up but consolidate them. There might be other ways, like adding a flag that sets the Owner to something like "External Jar". This was the best idea that I came up with at the Time.

commented

Except we don't want to allow consolidation if it leads to impersonation.

commented

It's intentional that we don't want mods injecting blueprints into the minecolonies general namespace.

commented

The simplest way to declutter the pack screen is to reduce the font size of the category headings. I don't think any other changes are needed -- having the packs separated by source jar is a feature, not a bug.

This is not the reason that people don't make style mods; the reason is that they don't know how to do it, and didn't ask someone that does know. Or they just find plain zip distribution easier/preferable.