Jump to content

Design considerations for a proposed extension to facilitate manual plugin ordering


Deleted3897072User

Recommended Posts

I've been doing some testing, and it appears that we can do what we want by manipulating global and local priorities while Autosort is still enabled. Here is a possible scheme, open for debate:

0. Summary

0.1 This extension to Vortex is intended to facilitate manual sorting of plugin load order in Bethesda games (Skyrim, SSE, FO4 and so on).
0.2 It will only add additional functions, not modify existing ones.
0.3 The user interface will conform as nearly as possible to the existing Vortex style, so that there is a minimal amount extra for the user to learn, to be able to use it.

1. Added Features

1.1 Plugins can be assigned to conceptual groups.

 

1.1.1 Plugin groups are distinct from Mod categories but a broadly similar style of interface is used to create and edit them.
1.1.2 A standard set of groups is available via a button or the user can create alternative ones.
1.1.3 The standard set of groups is the one developed by the XBox community.
1.1.4 When created or edited, each plugin group is associated with a Global Priority in the range -10 to -80.
1.1.5 The un-named default group corresponds to Global Priority 0.
1.1.6 When a plugin is assigned to a group, it is automatically given the global priority for that group.
1.1.7 Assigning a group to a plugin has no immediate effect other than to set its global priority.

1.2. Groups can optionally be displayed in an extra column in the plugin window

 

1.2.1 The column can be toggled on and off using an extra entry in the existing settings panel.
1.2.2 The extra column defaults to 'Off'.
1.2.3 The list of plugins as viewed in the window can be sorted up or down by group.

1.3 When load order is Autosorted, plugins in the same group will be kept together automatically.

 

1.3.1 Sorting by group is tantamount to sorting by Global Priority, which over-rides rules.
1.3.2 This does not in itself require any additional coding

1.4 Plugins can be manually moved up or down in the load order within their groups.

 

1.4.1 This is accomplished by changing their local priorities.
1.4.2 Moving a selected plugin up or down one or more places is done by drag-and-drop and/or by using the keyboard up and down arrow keys.
1.4.3 Moving a plugin in this way results in its local priority being set to a value intermediate between the ones of the plugins immediately above and below its target position.
1.4.4 This may necessitate bumping the local priorities of other plugins above and below the target position if there is no suitable gap.
1.4.5 Local priorities will be assigned in the range -10 to -80.
1.4.6 It is allowable for more than one plugin in a group to have the same local priority.
1.4.5 When load order is autosorted, plugins in the same group (i.e. global priority) are automatically ordered by local priority.
1.4.6 This feature of Autosort does not in itself require any additional coding.

 

Updated 2018-02-15 to reflect changes in Vortex 0.13

Link to comment
Share on other sites

OldMansBeard I'm planning on developing an extension to this end as soon as Vortex's source is available. If you'd like to work together let me know. My current plan is to build an "assisted load order management" extension which allows for complete manual sorting by the end-user but provides recommendations based on LOOT's masterlist when plugins are positioned in ways that conflict with it.

 

EDIT: Also, it appears we have some source code to build off of available here - https://github.com/Nexus-Mods/extension-plugin-management

 

EDIT 2: Reading through your design specifications, we may have slightly different designs in mind. Your design sounds like a minimalistic design which can be created quickly, where I'm thinking of a more full-form design.

Link to comment
Share on other sites

OldMansBeard I'm planning on developing a plugin to this end as soon as Vortex's source is available. If you'd like to work together let me know. My current plan is to build an "assisted load order management" extension which allows for complete manual sorting by the end-user but provides recommendations based on LOOT's masterlist when plugins are positioned in ways that conflict with it.

 

EDIT: Also, it appears we have some source code to build off of available here - https://github.com/Nexus-Mods/extension-plugin-management

 

I shall offer you my firstborn ... no, wait, wrong modder.

 

Greatly appreciated, mator! I wanted to dive into this myself since i haven't seen much of development on this topic aside from OldMansBeard, but university is giving me hell atm :(

Link to comment
Share on other sites

OldMansBeard I'm planning on developing an extension to this end as soon as Vortex's source is available. If you'd like to work together let me know. My current plan is to build an "assisted load order management" extension which allows for complete manual sorting by the end-user but provides recommendations based on LOOT's masterlist when plugins are positioned in ways that conflict with it.

 

EDIT: Also, it appears we have some source code to build off of available here - https://github.com/Nexus-Mods/extension-plugin-management

 

EDIT 2: Reading through your design specifications, we may have slightly different designs in mind. Your design sounds like a minimalistic design which can be created quickly, where I'm thinking of a more full-form design.

Great. My design is really just a ballon d'essai to get the world started, and to show that it looks do-able in at least one way. Yes, I do minimalist (aka constructive lazyness) :D

 

Two heads are better than one, so yes, let's work together. PM me and we can exchange thoughts, then we can maybe post here when there is something for 'the audience' to discuss.

Link to comment
Share on other sites

 

Greatly appreciated, mator! I wanted to dive into this myself since i haven't seen much of development on this topic aside from OldMansBeard, but university is giving me hell atm :sad:

 

University is supposed to hurt :D

 

But throwing in an occasional insight at the design stage can be just as valuable as days spend wrestling code, so please join in as much as you feel able.

Link to comment
Share on other sites

 

 

Greatly appreciated, mator! I wanted to dive into this myself since i haven't seen much of development on this topic aside from OldMansBeard, but university is giving me hell atm :sad:

 

University is supposed to hurt :D

 

You sound like my computability & complexity theory prof =D

Link to comment
Share on other sites

 

 

 

Greatly appreciated, mator! I wanted to dive into this myself since i haven't seen much of development on this topic aside from OldMansBeard, but university is giving me hell atm :sad:

 

University is supposed to hurt :D

 

You sound like my computability & complexity theory prof =D

 

If it was twenty or thirty years ago I might have been. Or maybe your prof was one of my students. Let's not go there :D

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...