TGBlank Posted December 13, 2009 Share Posted December 13, 2009 Ok, made a test and my theory works, at least with gda's, tints, mors and utis: I Created 3 dummy mods, A, B, C, each in their own folder, each mod contained:- A GDA partial override of BITM_Base, (all changing the same item but all with different names).- A Tint file that replaced the regular black hair color- A morph file overriding leliana's face. A Contained:- BITM_Base_A that changed crossbows to be held like a bow.- A tint file that replaced regular black hair for bright red.- A morph file that made leliana look like morrigan. B Contained:- BITM_Base_B that changed crossbows to use the sword icon.- A tint file that replaced regular black hair for bright pink.- A morph file that made leliana look like wynne. C Contained:- BITM_Base_C that changed crossbows to use the inventory sound of axes.- A tint file that replaced regular black hair for bright green.- A morph file that made leliana look like Sten. Thus, my override folder contained 3 folders: A, B and C, each with their respective files. ---------------------------------------------------------------------------------------------------------------------------------------- If i load the game:Crossbows have their normal stats and icon, are wielded like crossbows and sound like axes.Black hair is bright green now.Leliana looks like sten.This happens because A is loaded first, then B, then C, with C overriding all the changes of the previous 2. Now let's rename the folders to:000 A001 B002 C If i load the game now, i get:Crossbows have their normal stats and icon, are wielded like crossbows and sound like axes.Black hair is bright green now.Leliana looks like sten.They are still loaded in the same order. Now let's rename them one last time:001 A002 B000 C If i load the game now, i get:Crossbows have their normal stats and sound, are wielded like crossbows and use the sword icon.Black hair is bright pink now.Leliana looks like wynne. Now "000 C" is loaded first, followed by "001 A" and lastly "002 B", with B's changes ending up with the highest priority. By changing the 3 digit codes of the folders through renaming, i can now play with the load order at whim. Link to comment Share on other sites More sharing options...
jwvanderbeck Posted December 13, 2009 Author Share Posted December 13, 2009 I'm going to assume for the moment that standard mods (actual game modules) will work in a similar fashion based on priority, with the highest priority loading first and the lowest priority loading last. The waters become a bit muddy when dealing with a mod that has files in both locations. Now the question becomes, what is the best way to work with this for the end user. At a guess i'd say a few things: 1) Allow a mod to be flagged by the author as a "compatibility mod", and when installing such mods, set them up to be loaded first if possible.2) Allow a mod to be flagged by the author to be loaded early, so that others can override it.3) Allow the user a method by which they can adjust load order manually if desired I think allowing the mod author to specify specific load ordering might be a bad thing, but these are just my initial thoughts. As stated really the only time mods that affect the same thing will play "nice" is if one is a very general mod, and the other a very specific mod. In which case the author of the general mod knows that he or she was theirs loaded first and then overwritten by more specific mods. The author of the specific mod shouldn't have to say his needs to load last, since there are far more "specific" mods than "general" mods. Those are my initial thoughts though. I'm open to discussion :) It will be a bit until we're to this point in DAModder though. I'm working on the codebase to allow these things now, but we still need more mod adoption for the more advanced features like this. Link to comment Share on other sites More sharing options...
TGBlank Posted December 13, 2009 Share Posted December 13, 2009 Well, from those 3 options, while 1 & 2 are very nice, #3 is the only must have. There'll always be mods that don't comply to the standard, being able to sort those is desirable. As for 1 & 2, it's a decision between implementing a dependency tree or a flag system. The former could be rather time consuming imho. Link to comment Share on other sites More sharing options...
TheMutator Posted December 13, 2009 Share Posted December 13, 2009 "with the highest priority loading first and the lowest priority loading last."No, the opposite as you have outlined yourself above. The highest priority is always loaded last because it overrides the previously loaded content. But it might just be a type on your behalf because you explained it correctly in the previous post. And yes, modders shouldn't be allowed to choose because most of them have clearly no idea how m2da works and they would simply make their mods load with the highest priority and be done with it. Until you can do it automatically which no doubt will take you loads of hours of coding to get there, you should empower the users with this choice. Link to comment Share on other sites More sharing options...
Alexspeed Posted December 14, 2009 Share Posted December 14, 2009 well most users will have less knowledge about if a mod needs to be loaded first or last than a builder i guess? Link to comment Share on other sites More sharing options...
jwvanderbeck Posted December 14, 2009 Author Share Posted December 14, 2009 What i'm to do for now is two fold. First, allow the user to manually adjust priority. Secondly, allow the mod author when configuring their mod to flag it as a "compatibility" or "general" mod that wants to allow more specific mods to override portions of it. Link to comment Share on other sites More sharing options...
TheMutator Posted December 14, 2009 Share Posted December 14, 2009 I do have one request though. Installing/uninstalling and prioritizing addin-mods and zipped override mods is all well and good but it would be a good idea to respect already existing override-only mods, folders and their location/names. As you might know, I maintain and use the override folder in the profile path and create new subfolders there. My installer does prioritize, copy, rename and manage files in those subfolders already and if a third party were to manipulate my files and folders, then that would be highly inconvenient. For me, the users and you, as this would no doubt create various support requests. I imagine other authors might agree here. Well, try my mutator mod and you'll see what I talk about. Link to comment Share on other sites More sharing options...
jwvanderbeck Posted December 14, 2009 Author Share Posted December 14, 2009 I do have one request though. Installing/uninstalling and prioritizing addin-mods and zipped override mods is all well and good but it would be a good idea to respect already existing override-only mods, folders and their location/names. As you might know, I maintain and use the override folder in the profile path and create new subfolders there. My installer does prioritize, copy, rename and manage files in those subfolders already and if a third party were to manipulate my files and folders, then that would be highly inconvenient. For me, the users and you, as this would no doubt create various support requests. I imagine other authors might agree here. Well, try my mutator mod and you'll see what I talk about. DAmodder doesn't touch any existing core overrides. It will only work with ones installed through the application. Link to comment Share on other sites More sharing options...
TheMutator Posted December 14, 2009 Share Posted December 14, 2009 Yeah, I know how it works now but since you are looking for new options and ways to manage the mods I thought it would be a good idea to throw this concern in anyway. :smile: Link to comment Share on other sites More sharing options...
jwvanderbeck Posted December 14, 2009 Author Share Posted December 14, 2009 Don't worry :) The only possible issue I could see happening is if DAModder is trying to create a folder to prioritize a mod and that folder name conflicts with what is already there, or if the prioritizing from both apps might cause problems, I don't know. But in either case i'll work it out and not mess with your stuff. Link to comment Share on other sites More sharing options...
Recommended Posts