Jump to content

Online Install Order List - for modders/maintainers collaboration


AL|EN

Recommended Posts

Anything other than direct changes is a waste of time, effort and it's limiting 'ownership' of the stuff. So any modder who is willing to contribute, will get direct access. I can give you direct access. That being said, I'm worried by the fact that only you has offered to contribute. If such online install order list won't 'fly', I'm still interested hearing about possible reasons. There might be other solutions which have better chances to bring more people on board.

Edited by AL|EN
Link to comment

I can only talk for myself: as much as I am interested in help players to have correct install orders, I can only correctly list my own mods - and not in relation to all others since I do not know all other mods. I would like to pass on any install order requirements or restrictions for my mods that I know of, though.

Link to comment

Instead of an absolute order wouldn't it be better to list mods and their relations to other mods? I mean, it's hard to make a completely and fully fool proof ordered list of mods that works for everyone (IMO, at least) but it may be simpler and easier to state: MOD 'x' must install after 'y' due to 'reasons', or that MOD 'a' COMPONENT 'n' needs to be before MOD 'b' etc.

In one case (absolute order), whenever you add a mod to the list you have to keep in mind the relation of such mod with ALL the mods already present in the list, in the second case you only need to know relations of the mod you're adding to the mods that affect it or are affected by it.

Once you have a set of those rules, producing an ordered list given a set of mods to install is just a matter of running a topological sort while keeping the relations in mind. Any mods not related to others would only be restricted to the category in which they lie.

In practice, all of this would mean that instead of having a single file with all the mods listed, you'd need a file per mod with the rules for that mod... and some external tool would then read each mod's file and compute/evaluate the rules for some arbitrary set of mods present in an given installation.

It could be something as simple as:

MOD 'tpname' AFTER 'target tpname' [#component [#component] ...]

And:

MOD 'tpname' BEFORE 'target tpname' [#component [#component] ...]

You could add extra rules, like CONFLICT, or MESSAGE to add outputs, etc.

Assuming ofc. that each mod's tpname doesn't change often and that if it changes it's a different mod with a related but distinct set of rules.

BTW: Sorry if this is too simplistic or if I'm being ignorant of some subtle problems that WEIDU mods have that I'm not aware of. In that case, just ignore this :)

Edited by Leeux
clarificaton + typo
Link to comment

@Leeux What about a hybrid approach?  Use 'absolute order' for things that must or very much should be in a certain order, then frame the other mods around that.  You implied that with the mod categories, but some mods are so old/new/odd that a relative order is awkward.

We may need different load orders for EE versions, non-EE versions, BGT versions, and EET versions.  Since we're so mod-focused, I advise we focus first on an EET install order since that's probably what most people want nowadays.

Link to comment
2 hours ago, Endarire said:

What about a hybrid approach? 

Oh indeed... that would be good too!

Don't misunderstand me, I mean... I think an absolute sorted list of mods can and actually do work (for example, BOSS for Oblivion which has exactly that kind of scheme going on,) the thing is I think it would maybe be harder to maintain in the long run (IMO,) and maybe even harder for modders to decide 'where should I put my mod?' when keeping in mind that the list will get bigger and bigger as more mods are added!

Link to comment

Remember that mods take time to develop, test, and integrate into the game.  There are no official modding tools, but Near Infinity exists.  Having an absolute mod order for all EE or EET-compatible mods is a strong staring point so people new to installing tens or hundreds of mods can easily rely on this order then fill in the rest based on category and best guess.

Edited by Endarire
Link to comment

I would strongly recommend that all known info as to why a mod ended up where it is in the instal order will be commented in such a list as well. Otherwise such a list doesn't make much sense because how would a (new) modder in two years know where to put their mod in the list when he doesn't know mod x needs to be installed before all other mods that patch y etc.

Whether this information could be automated completely I am not sure, especially since what you described @Leeux sounded very much like what BWS was providing which was the reason people burnt out while maintaining it, at least if such mod install order informations would need to be updated when new mods come out - or maybe I'm missing something.

@AL|EN Of course if there is any way to evaluate such info if it is e.g. in the meta data file - just the basics, like "bgqe component x should be installed before bg1npc component y" in a way that it could be evaluated automatically, the work to maintain this would be inside the mod, not PI.

One question: how does PI distinguish the mods' categories, does the player have to sort the mods there themselves? Would an (optional) ini entry with mod category make sense?

 

Link to comment

@Leeux This is LOOT-like approach, last year I've experimented with such idea and while I like it, it requires much more work to implement such system. It also needs very good visual representation for the player so he will know that he need to move mods before/after other mods. Good thing it's independent and can be used together with 'online install order list'. It deserve separate topic but I don't have anything ready at this point.

@jastey There is a way to evaluate 'before/after' rule-based install order. But all rules still needs to be in one place, otherwise install order information is spread between 100+ files which is not good. Putting "BEFORE bg1npc" rule inside bgqe.ini and putting the same rule inside github.com/RuleBasedInstallOrder/rules-for-BG2EE.txt is the same amount of work. The later is much more helpful for other modders to discover mod relationship.

Regarding 'PI mod categories' - PI doesn't have mod categories, it has "install order groups". The difference is that 'mod categories' are completely arbitrary and doesn't mean anything. Also 'categories' have nothing to do with mods install order. For IE modding we need to distinguish them in order to avoid confusion.

There is no problem with PI being able to put mods into Install Order Group which is defined/read from file. The thing is, while for some mods like Portraits, UI-Override etc providing only Install Order Group might be enough, for many others is not enough: if you are putting two NPC mods, into the same "NPC" Install Order Group, with cross-banter relationship like for eg: "NPC2 mod before NPC1", it won't do the thing. You need to also include 'BEFORE/AFTER' logic in order to give player correct install order. Then it will work.

Edited by AL|EN
Link to comment

Weidu already has a semblance of "before" and "after" commands: REQUIRE_COMPONENT tells Weidu that a certain mod component must already be installed, so it acts like after, and FORBID_COMPONENT that tells Weidu that a certain mod component cannot be installed, so it works like before. Using MOD_IS_INSTALLED you can wrap these checks in ACTION_IF without necessarily halting the install.

Of course, either the modder must do the work, or something like BWP Fixpack patching must be done to patch the source. Or some weidu mod must be coded that orchestrates the install order. The problems remain much the same, it is just the case that a tool is already in place.

Edited by grodrigues
Clearing up second paragraph.
Link to comment

The BWP pdf does explain quite a bit about why you can and cant use certain mods together.

And the BWInstall tool will make you choose between conflicting mods if you are trying to install mods that clash.

So does the reasoning behind why you cant use mod A with mod B hold true regardless of whether you are modding BG1 or BG2 or BGT or BG EE or anything else? Surely there is some overlap regardless of some of the differences between game versions? And obviously some mods will only work one the old or new system exclusively.

So the information about which order, and why, does exist for a specific install type. There must be a way of extracting it into a useable form for something like PI otherwise it seems a bit like re-inventing the wheel.

Or should individuals be left to do there own research into what to use, where to install it and why x doesnt work with y unless you do z. And will that ultimately put people off modding the games, because at the end of the day people want to actually play the damn game?

I've rambled on a bit but i think the point i was trying to make is that a lot of the information already exists, in BWP pdf and BWInstall and in the EET install tool. Surely there must be a way of collating that into one resource?  Or have the potential modding variations become too diverse and you would need several different sets of rules depending on what you were trying to achieve?

Link to comment

@grodrigues In that case, how is it possible that for more than 10 years, no mod has such a thing? It's not that modders didn't established install order rules - mods readme are full of them. Those things are for different purposes. And no more Fixpack, ever. It's even worse/require more work than 'one man install order list'.

@Nathan82

1 hour ago, Nathan82 said:

Surely there must be a way of collating that into one resource?

Sure, but the thing is, IE mods can change their 'id' randomly, at any given time, without prior notice. Are you volunteering to be the sixth person in a row who is gonna maintain such combined list and will burnout? Collaboration only make sense if modders/mod maintainers will join.

Link to comment
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...