![]() ![]() If the archive doesn't contain a manifest, or if the current game isn't even Stardew Valley, the method returns Priority.None.įrom an API design perspective, we already have a kind of "data checker" for every mod installer in the GetPriority method. The Stardew Valley SMAPI mod installer will return Priority.Highest for archives that contain a SMAPI manifest. The implementation for these methods already do "validation". Implementations of IModInstaller can use the GetPriority method to return various levels of priority. Currently, mod installation is handled by the LoadoutManager, which analyzes the archives and selects the IModInstaller with the highest priority. Implementing this manual approach would require new UI and changes to the installation process. This is the approach MO2 takes, and allows plugins to implement a "data checker" which reports if the archive is actually valid ( example). Instead of trying to fix the directory structure automatically, we could instead validate the directory structure and let the user fix it themselves. Using the extracted class name, the app could create the correct directory structure and move the files. Detecting this specific case is harder than with the Skyrim Data folder, the app would have to parse the folder names, which all follow the same format: _. ![]() Every "hero" has their own directory containing the skins, these paths are known by experienced users but not by everyone. ![]() The correct directory would be dlc/580100_crimson_court/features/flagellant/heroes/flagellant. ![]() The description of the mod doesn't even provide an installation guide, so new users that are unfamiliar with Darkest Dungeon might just blindly install these folders to the game root directory. The Female Flagellant (SFW) mod is an example where the downloaded archive only contains two folders flagellant_E and flagellant_F. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |