OptiGUI Extra - OptiGUI integration with other mods
Here are the mods I found in the issues (and some related):
#19 has been a long ongoing issue. I originally submitted a QuickShulker patch. Now I took my time to add support on the OptiGUI side. This means that the next version of OptiGUI will support the current (and possible past) versions of QuickShulker, without any new or updated server-side mod.
Added a processor for the MCV block entity.
Only needed to specify the default textures of the added blocks.
Same as Variant Barrels.
Added support for all variant blocks with GUI.
No 1.20 versions are available. The 1.19.2 version is incompatible with a newer Fabric API.
I don't see it being difficult, but I haven't yet worked on it.
Question to discuss (feel free to express your opinion)
As of now, OptiGUI, and OptiGUI Extra are in the same repository, but different projects. There are two options I can distribute OptiGUI extra:
- As a nested JAR inside OptiGUI
- Will always be loaded
- "Just works" - built-in compatibility with other mods without manually downloading OptiGUI extra
- May be unwanted by Vanilla+QoL players (like only Fabulously Optimized)
- Relatively small JAR, less about 3-4% of OptiGUI (how did OptiGUI get so big?)
- As a separate mod (different Modrinth+CurseForge page)
- The player can choose to download
- The player may not know about it
- Independent from OptiGUI - support for a mod can be "backported" to older OptiGUI versions, and updating OptiGUI is not required
I'll document the new features when I release alpha 1, so other mod devs can choose to add compatibility to their mod. I'll also create an issue template for requesting mod compatibility (which usually doesn't take long to implement)
If you haven't yet decided how to distribute OptiGUI extra I'd say option 2, as a separate mod/add-on, would be the plausible, because as you pointed out the QoL players/modpacks & also vanilla resource packs and the extra version is more for (heavily) modded players/modpacks & resource packs which support for mods. Also with a note in the OptiGUI description as well resource packs pages can point out that OptiGUI Extra is needed for additional support of mods.
I would actually ask you something different - why make Extra to add compatibility instead of the mods that want to have compatibility add Extra by themselves?
Is it because you're more interested in supporting them than they are supporting you? If that is the case, who is even the target audience for this?
That said, I vote Extra to be independent, and the discovery could be solved by marking dependencies - Extra suggests mods that are compatible with it and/or mods that are compatible suggest Extra. Could be done in CurseForge/Modrinth metadata, listing description, fabric.mod.json etc.
The first alpha builds of OptiGUI 3 are finally here for 1.20 and 1.21!
OptiGUI 3 uses NBT instead of selectors, which is way more compatible with other mods out-of-the-box, making this PR redundant. The only compatibility issue I know of is QuickShulker, which will be addressed by a new mod based on this branch.