Closed PraetorAugustus closed 1 week ago
I implemented dependency resolving mechanism that allow wildcard in version number. It is now possible to declare dependency in the form : "Mod_name_v" or "Mod_name_v1." to allow any version of the Mod to be selected as compatible dependency. If multiples versions of the same mod are available, the one with the greater version is selected.
Beware, the mechanism only work for version numbers, this mean that if you declare something like "Modname" (without the "v"), the parser will simply ignore the "" and consider you declared the dependency for a Mod named "Modname*" (which is not a valid file name).
Here's my use case:
Mod A is the main mod. Mods B, C, and D all require Mod A, so they have dependencies.
With the current logic, Mods B-D are dependent on an exact file match,
Mod_A_v1.0.ozp
.When the mod creator updates Mod A to v1.1, I remake the package—
Mod_A_v1.1.ozp
—but none of the dependent mods know about the new filename. So I also have to remake Mods B-D to link to v1.1.Expected new logic:
Mod_A_vX.X
, e.g.Mod_A_v1.1.ozp
(even though the Mod B package was originally created withMod_A_v1.0.ozp
as a dependency).For the Mod-Package Editor UI, add: Dependencies: [dropdown] Exact | Latest
You can probably repurpose the Upgrade_Needed logic to check which mod is the latest, but I think you also need a function to List files in the repository (to scan for the newest). That should be a standard fileUI call and then you can parse the list for matching
Mod_A_vX.X.ozp
files.Hope that makes sense.