Skip to content

Add mod dependency ordering and management features#120

Merged
OwendB1 merged 3 commits into
mainfrom
mod-load-order
Jul 7, 2026
Merged

Add mod dependency ordering and management features#120
OwendB1 merged 3 commits into
mainfrom
mod-load-order

Conversation

@OwendB1

@OwendB1 OwendB1 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

This pull request adds comprehensive Steam Workshop mod dependency management to Quasar config profiles and significantly improves the Mods tab UI and workflow. Dependency checks now automatically add missing mods, flag dependencies, and provide explicit topological sorting with user feedback on issues like cycles or out-of-order dependencies. The Mods tab has been redesigned for better load order editing, visualizes dependency outlines, and ensures Space Engineers mod load order is preserved.

Steam Workshop Mod Dependency Management:

  • Automatic dependency checks are performed when opening, saving, or importing mods to a config profile. Missing dependency mods are added, and dependencies are flagged with IsDependency in the profile JSON, but the order is not changed automatically. [1] [2] [3]
  • The Mods tab introduces an Auto Sort Dependencies action that applies a topological sort to ensure dependencies are loaded before dependents, while keeping unrelated mod order stable. Warnings are shown for cycles or out-of-order dependencies. [1] [2] [3] [4]

Mods Tab UI/UX Improvements:

  • The Mods tab now displays a collapsed, flattened dependency outline after checks or sorting, with rows tagged as root mods, dependencies, repeats, or cycles for operator inspection. [1] [2] [3] [4]
  • The mod list UI is redesigned to a drag-and-drop table that reflects true mod load order. Operators can reorder mods directly, and dependency status is visually indicated. [1] [2] [3]

Profile and World Import Integration:

  • Dependency checks are integrated into profile save and world-template import flows, ensuring all profiles are dependency-complete and flagged before use. [1] [2] [3]

Internal State and Code Refactoring:

  • Several new UI state fields and helper methods are added to support dependency tree rendering, drag-and-drop, and efficient UI updates. [1] [2]

These changes ensure that Quasar-managed servers always have a valid, dependency-complete mod configuration, with clear operator control and visibility into mod relationships and load order.

OwendB1 added 3 commits July 6, 2026 23:34
Add draggable profile mod load-order controls with clearer row separators.

Resolve Steam Workshop child dependencies on save/import, tag dependency rows, and topologically sort dependencies before dependents.

Warn when manual order is corrected, circular dependency metadata is found, or no valid dependency order remains.
Check dependencies on profile open/save/import without forcing a sort.

Add explicit Auto Sort Dependencies, keep drag as the only manual ordering control, and refresh the drop list after button-driven mutations.
Render dependency checks in a collapsed MudBlazor outline so cycles and duplicate dependencies are inspectable without expanding the mod load-order list by default.
@OwendB1
OwendB1 merged commit 2961d4e into main Jul 7, 2026
1 check passed
@OwendB1
OwendB1 deleted the mod-load-order branch July 7, 2026 08:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant