-
Notifications
You must be signed in to change notification settings - Fork 0
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] Make texture uses project-specific #40
Comments
(Yes, very timely reply) This would very likely need a restructuring of the database so it's unlikely to be done anytime soon. |
The thing is, it's needed pretty soon. Programmer art is just around the corner |
Well, I guess it might be possible to make some modifications that won't break many things:
PSA: The |
Well I agree with @Juknum, this is how I see things: A project has textures, sure textures can be in different packs. One texture can be used to multiple places, for different purposes, and has differences depending the edition, and then you have paths depending the minecraft versions. Maybe use a codename for projects and have a display name (avoid rebranding issues like, for example, Faithful -> Compliance -> Faithful) |
What? |
I sorta see what you mean, but the main idea of having project-specific omissions and joins is that it can simply serve as an overlay on top of the existing system. There's far fewer breaking changes, and you can still use the texture database without being a registered resource pack (either by simply ignoring the pack field, or using the uses from an existing pack). If we were to completely break compatibility with the current system (such as Juk's proposed API v3), I do think something like what you're talking about may be interesting to consider, but for the time being I don't want to unnecessarily rewrite large portions of things that already work fine — this system ensures the fewest random exceptions and has the fewest breaking changes. |
Also chances are, since there's so many breaking changes, I'll probably wait for the website rewrite to fully implement this — the submission pack API can come first and that will lay out a better infrastructure for this too. |
As the Faithful project expands and projects other than regular Faithful start using the database, using a single set of texture uses (and, by extension, paths) is less and less feasible. Each project follows a different texturing philosophy, so forcing everybody to use Faithful's use set is just impractical.
Let me explain: Faithful (Jappa), the project the current set of texture uses is tailored for, is very aggressive with texture backporting to older versions, meaning a single texture is often used in most or all of them. This simply isn't the case for Classic Faithful – and, in the future (most likely), Faithful Programmer Art – which is a lot more version-specific with textures. What projects like these need are their own, separate texture uses, which will allow them to utilise the database much more effectively.
What to do
My suggestion is to allow selecting projects for each texture use. This would be done via checkboxes when creating/editing the use, similar to how version selecting works when editing paths.
The projects I'm talking about are not identical to resource packs – resolutions don't matter in this case. That means using this list: Faithful, Faithful Programmer Art, Classic Faithful, Classic Faithful Programmer Art.
All existing uses should be assigned to all projects.
When searching in the gallery, the web app should only consider textures that are used in the relevant resource pack; For example when searching for Faithful 64x textures, textures that don't have Faithful set to true in any of their uses won't be displayed.
Additionally, when creating a new use, all projects should be enabled by default, as any edits are going to be global most of the time.
What this would accomplish
If we're gonna make the programmer art pack in the way I've got in mind (council approval pending), then implementing this is pretty much necessary before any work can be done.
The text was updated successfully, but these errors were encountered: