trumank / mint

Deep Rock Galactic mod loader and integration
MIT License
239 stars 39 forks source link

Mod groups #14

Open trumank opened 1 year ago

trumank commented 1 year ago

I propose a method of grouping mods together and adjusting profiles to operate on layered mod groups. This would allow for configurations such as:

With this configuration, mods in the visual group can be added/removed/modified and the change would be automatically reflected in any mod profile using the group. This also lays the groundwork for receiving and merging mods profiles (actually mod groups in this case) from the lobby host.

jieyouxu commented 1 year ago

So something like this?

struct ModGroup {
    name: String,
    mods: BTreeSet<ModConfig>,
}

struct Profile {
    name: String,
    mod_groups: BTreeSet<ModGroup>,
}

GUI

trumank commented 1 year ago
struct ModGroup {
    name: String,
    mods: BTreeSet<ModConfig>,
}

struct Profile {
    name: String,
    mod_groups: BTreeSet<ModGroup>,
}

Close, but mod_groups should be a Vec or IndexSet so they can have a configurable order.

jieyouxu commented 1 year ago

What is the configurable order actually for? Load order? Or just visual order? EDIT: nevermind, it's for load order.

Marian-The-Only commented 1 year ago

Id also love to be able to sort my mods. If possible also by different settings like name, sandbox/approved/verified, maybe even other tags. Otherwise I love the setup so far. The instructions are very clear and the UI is really nice.