Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: automatic deployer detection and automatic mod installation - hide deployers from users. #116

Open
Veprovina opened this issue Jan 19, 2025 · 7 comments
Labels
enhancement New feature or request

Comments

@Veprovina
Copy link

Veprovina commented Jan 19, 2025

Mod managers like Vortex and MO2 never ask me which deployer, directory or root level of the mod directories to use, which makes Limo extremely vague and frustrating to deal with and Vortex and MO2 being the staple of modding for years now. Anyone can do it. Just click install and it does the rest basically.

How do i know when to use a bin deployer and when to use the data deployer, or both?

Even FMOD installers ask me which deployer to use, and target directory - why? I thought this was already done by the mod developers? Especially with FMOD installers which are supposed to install into proper directories. Yet, i need to choose a deployer, then path (data or bin), and root level because if the data structure is listed as data/folder1/folder2, then does that mean the mod will end up being deployed into data/data/folder1/folder2 or do i need to up the root level in order to get the proper data/folder1/folder2 structure?

Why am i asked this when other mod managers - even ones like MO2 that use virtual filesystem methods which are i think simmilar to Limos deployer method - don't ask anything?

It's all very vague, confusing and frustrating and there's thousands of mods for just Skyrim, how am i supposed to know where each one goes? This doesn't even say on their mod pages as all of them assume you're going to be using a mod manager to do this for you.

My suggestion is to hide this from the user. All of it. But keep it available as an advanced setting.
There has to be some way to let the mod automatically install itself where it needs to be without the users intervention - as long as the deployers are set up correctly. I like the idea of deployers, especially if it just links the files, it's just - as it stands, it's one step above manually putting mods into the Skyrim folder.

And if i knew where each mod goes, i probably wouldn't need a mod manager.

I feel like this is the one major thing that Limo has going for itself as it's quite a potential for people to use if they know what they're doing, but also it's biggest downfall and why it hasn't caught on too much yet because most people don't know what they're doing.

Other than that, the program is great, but without some kind of automation like other mod managers have, especially for the most popular games, it's a very poor experience.

I wish i could help, but after reading the wiki twice i'm having trouble installing the most simple mods, so obviously i'm no good to anyone lol.

@Heisenborgar
Copy link
Contributor

You have a good point. I won't lie that Limo is unnecessary complicated and difficult to use, unlike Mod Organizer 2 or NMM and it's not user-friendly at all. But right now this is the best mod manager we have for Linux.

Hopefully as this program matures, it becomes user-friendly, non-complicated, simple, and accessible to more people particularly of the non tech-savvy people.

@Veprovina
Copy link
Author

Yeah. It definitely is a great mod manager, even when you take Vortex and MO2 into account, not just it being basically the only one for Linux, but this deployers feature is also a big confusion point, especially since every mod needs user intervention.

Maybe it would help if there's a video or something explaining how to install the most popular mods for each game, like installing different types of Skyirm mods, explaining why certain choices were made. I feel that would illuminate for people how to choose deployers for other similar mods based on shown examples.

Maybe it would be even good to promote Limo as an option to mod communities, and ask developers to work with Limo team so maybe they themselves could indicate how to install the mod for Limo, like indicate which deployer and root level to use when installing their mod with Limo.

That way, the devs themselves could do this for just their mod, so only once per person/team for one mod, instead of one user thinking about each and every possible mod. Of course not everyone would participate, but it would help spread awareness about the program, and modding scene on Linux.

Idk, just a few thoughts...

Cause the deployer idea is great, using Linux file linking to quickly install and uninstall mods from a separate directory, it's just too much for the user right now. At least that's how i feel. And true, as the program matures, so will the features and accessability. :) But maybe the accesibiltiy part could be kickstarted early with tutorial adoption through the above mentioned dev support (all they'd need to do is just write which deployer and root level to pick for the installation on their mod page), and community word of mouth and tutorials for existing popular mods to showcase the correct deployer picks for various different mods (showing a few that just need data, a few that use bin, maybe some that use both, one that you need to pick higher root level, and through that, build an understanding of how mods work, and how to incorporate them with Limo's unique way of working).

@Heisenborgar
Copy link
Contributor

Maybe it would help if there's a video or something explaining how to install the most popular mods for each game, like installing different types of Skyirm mods, explaining why certain choices were made. I feel that would illuminate for people how to choose deployers for other similar mods based on shown examples.

Are you that same guy I interacted with on reddit where I said I'll make a video tutorial? Anyways, I can make you a tutorial video, maybe an in-depth one. Which of the popular mods would you like me to cover? It'll take time tho :(

Maybe it would be even good to promote Limo as an option to mod communities, and ask developers to work with Limo team so maybe they themselves could indicate how to install the mod for Limo, like indicate which deployer and root level to use when installing their mod with Limo.

I'd love it if the modders recommended Limo as an option, but I think only a few modders would indicate how to install their mods on Limo, like which deployer and root level to use. I hope that someday Limo becomes simple enough that mods are like a one-click-install process like in MO2.

But maybe the accesibiltiy part could be kickstarted early with tutorial adoption through the above mentioned dev support (all they'd need to do is just write which deployer and root level to pick for the installation on their mod page), and community word of mouth and tutorials for existing popular mods to showcase the correct deployer picks for various different mods (showing a few that just need data, a few that use bin, maybe some that use both, one that you need to pick higher root level, and through that, build an understanding of how mods work, and how to incorporate them with Limo's unique way of working).

While reading this, I thought of this:

What if... Limo detects a certain mod, like USSEP or SkyUI for instance, and automatically chooses which deployer or root level to use, because that certain mod has a config already (like exporting configs that Limo 1.0.7 onwards onwards, but for mods). However, this might not be intuitive and troublesome for the main developer to develop though, but one advantage I can think of when doing this is like we're building a database of mods on where should they be put at, which deployer to use, root level, etc. One disadvantage would be, is that we have to consider other games too, so this will be a lot of work. We need the community to share their own configs for mods too. What do you think @limo-app? :)

The reason why I suggested this is that the Nexus API is capable of returning the mod name and ID anyways, so a mod config that can be exported and shared for others to use is kind-of brilliant already. If we proceed on this though, we have to rely on the community to export their mod configs.

@limo-app
Copy link
Owner

I understand that the current UI can be confusing because of some rather unusual options (like root level, deployer selection, FOMOD deployer, etc.). These additional options were added to allow Limo to be used as a generic mod manager for many different games/ apps without the need for predefined configurations for each one.

I am planning to add automation for a lot of these issue, but, as @Heisenborgar pointed out, this requires specialized configurations for at least every app, possibly even special cases for individual mods. Since i only have access to a limited number of games, most of these would have to be created by other people over time. Configurations for popular titles like Skyrim, some other Bethesda titles and Baldur's Gate 3 will be written by me as a guide for others.

The next update will be released later today. The one after that will contain an MO2 import feature and a downloads tab. At this point, Limo will have all the features that are currently most pressing and i will invest time into reworking the UI. Most dialogs should only show a few important input fields by default (e.g. mod name) and have an "advanced" view to show all the non standard options. It might also a good idea to rename some things. E.g. the Deployers tab could be called Loadorders instead and the default Bin deployer could be called Special mods or something similar.

It's all very vague, confusing and frustrating and there's thousands of mods for just Skyrim, how am i supposed to know where each one goes? This doesn't even say on their mod pages as all of them assume you're going to be using a mod manager to do this for you.

I am not a UI designer and spending a lot of time developing an app can make you somewhat blind to whether a feature might be confusing to users. Hopefully the UI changes will help make things less confusing.

As for right now, here are some answers to your question regarding deployers (i am assuming you are modding Skyrim):

  • Almost all mods should be added to the Data deployer. Mods that should be added to bin are VERY rare (testing with a list of ~1500 mods and only 2 are handled by Bin: Part 2 of SSE Engine Fixes and SKSE). Mods that should not be added to Bin usually contain a line that says DO NOT INSTALL WITH A MOD MANAGER in large, red letters, since popular mod managers like Vortex do not support them and Limo is not well known
  • The FOMOD deployer should probably always be Data as well for Skyrim. This option is used to set a directory in which the FOMOD installer checks for dependencies.
  • For deployers in general: The idea behind them is to separate mod installation (e.g. via FOMOD) from deployment. This is useful when mods are installed to different directories, depending on their type (like SKSE for Skyrim or mods containing Movies for KOTOR). This allows you to manage a separate loadorder for every game directory that contains mods and makes sure that even unusual configurations (like to aforementioned KOTOR Movies directory) can be accommodated.

@limo-app limo-app added the enhancement New feature or request label Jan 23, 2025
@Veprovina
Copy link
Author

Hey, sorry for the delay, rough couple of days lol.

Are you that same guy I interacted with on reddit where I said I'll make a video tutorial? Anyways, I can make you a tutorial video, maybe an in-depth one. Which of the popular mods would you like me to cover? It'll take time tho :(

Yeah, that's me. :)

If you want, it would definitely be helpful i think. Especially if you put the video link to this Github wiki as part of the tutorial process. And don't worry about it if you can't, won't, or takes a long time if you do decide to make it, there's no hurry at all.

I feel like this list has a good mix of "library" style dependency mods, and mods that are obviously data mods.
https://steamcommunity.com/sharedfiles/filedetails/?id=2995293214

I'd love it if the modders recommended Limo as an option, but I think only a few modders would indicate how to install their mods on Limo, like which deployer and root level to use. I hope that someday Limo becomes simple enough that mods are like a one-click-install process like in MO2.

Modders probably don't even know about modding on linux honestly. If they did, i'm sure at least some of them would include the necesary info. It's not like it would be hard for them to do.
The problem is they don't know. And modding on linux seems to be considered impossible. I recently asked around on Skyrim reddit for mod recommendations, and mentioned later i'd be modding on linux, and the general consensus of the replies i got was "you're not gonna be able to do that, just give up now, there's no modding on linux".

So people might just not know.

What if... Limo detects a certain mod, like USSEP or SkyUI for instance, and automatically chooses which deployer or root level to use, because that certain mod has a config already (like exporting configs that Limo 1.0.7 onwards onwards, but for mods). However, this might not be intuitive and troublesome for the main developer to develop though, but one advantage I can think of when doing this is like we're building a database of mods on where should they be put at, which deployer to use, root level, etc. One disadvantage would be, is that we have to consider other games too, so this will be a lot of work. We need the community to share their own configs for mods too. What do you think @limo-app? :)

The reason why I suggested this is that the Nexus API is capable of returning the mod name and ID anyways, so a mod config that can be exported and shared for others to use is kind-of brilliant already. If we proceed on this though, we have to rely on the community to export their mod configs.

Also, a possibility is a community driven database that can be accessed through the program. As in, people upload their configurations with 1 click through the app for mods that they found working, and the app uploads which deployer was used and any other identifying characteristics and can later retrieve this when installing the same mod.

If this can be done automatically like you suggested, even better! But if not, then, some "1 click upload" option would be nice. And the most similar configs for any given mod can become the standard. As in - 10 people upload that the mod should be installed with the data deployer, while 2 uploaded that it's in bin, so when retrieving info later, the "majority" then wins and Limo assumes those 2 were not correct if more people uploaded something else.

I understand that the current UI can be confusing because of some rather unusual options (like root level, deployer selection, FOMOD deployer, etc.). These additional options were added to allow Limo to be used as a generic mod manager for many different games/ apps without the need for predefined configurations for each one.

This is actually the part i like about Limo, that it can be used as a generic mod manager. But for the most popular apps, maybe the communtiy can help with per-app configurations. Over time, like protondb, there should be a sizeable amount of reports that the app can use to automatically determine the right settings for any given mod.
And based on that, when people see which deployer was chosen for which mod - if there's a new one that doesn't have a database entry, they might just extrapolate based on previous mods which deployer is most likely to be used.

It might also a good idea to rename some things. E.g. the Deployers tab could be called Loadorders instead and the default Bin deployer could be called Special mods or something similar.

The naming scheme isn't that big of an issue. I feel like it's more or less understood (after reading the wiki properly) what deployers do. They copy or link stuff from the mods folder into the game's folders so the game can use them.
If you name the deployers tab load order, can the order of mods be configured there? Or does this happen in the mods tab?
Cause if you can't rearrange the mods in the deployers tab, naming it "loadorder" might cause further confusion.

I am not a UI designer and spending a lot of time developing an app can make you somewhat blind to whether a feature might be confusing to users. Hopefully the UI changes will help make things less confusing.

Looking forward to seeing the changes! :) However, the UI wasn't bad or anything, it's just, the core principle of how the app works is dependant on user knowledge because unlike MO2 or Vortex, mods don't automatically install themselves. So like above, maybe a knowledge base would help, or dev involvement by them denoting what to use when installing with Limo.

And thank you for the answers! I'll try modding again with the suggestions you mentioned!
My biggest point of confusion was the "bin" deployer as i though most of the library mods that other mods depend on were bin deployers. Some even contained folders that added to my confusion like SKSE folder etc.
And another confusing part for me was root levels.
Because, if the "data" deployers is pointing to the "data" directory in Skyrim, and a mod has the first folder named "data", should i raise a root level so that the "data" folder doesn't get copied, only its contents, or not.

None of which were really UI related problems i think.

And thank you both very much for entertaining my thoughts about the app, and possible improvements, i appreciate it! :) Hopefully one day it becomes one of the default modding apps, and more well known!

@jn64
Copy link

jn64 commented Jan 24, 2025

Custom deployers are the main reason I use Limo. Easy to define; easy to assign individual mods to different deployers; easy to inspect and modify files in staging before manual deployment.

And modding on linux seems to be considered impossible. I recently asked around on Skyrim reddit for mod recommendations, and mentioned later i'd be modding on linux, and the general consensus of the replies i got was "you're not gonna be able to do that, just give up now, there's no modding on linux".

I seriously doubt that.

MO2 has worked in wine for years, thanks in part to MO2 users upstreaming fixes to wine for the virtual filesystem.

Plenty of reports on ProtonDB confirm modding Skyrim SE works, going back 6+ years (when Proton was new).

Searching "modorganizer2 linux" turns up positive results on the first page, from 2020 to 2024.

Since reddit started blocking most crawlers ~7mo ago, we have to search on reddit itself for more recent results.
Top result by relevance: 6 months ago, multiple solutions and guides linked.

@Veprovina
Copy link
Author

Veprovina commented Jan 26, 2025

I seriously doubt that.

It wasn't a blanket statemet, i'm just telling you how people responded in that one thread. People, especially windows people, don't know you can mod on linux.

Doesn't matter how long ago MO2 or Vortex worked, and how long it's searchable, both are pretty hacky solutions, and last time i tried MO2, it had horrible bugs and didn't quite work. Using the script and without the scirpt.

So there's still a need for a native mod manager, and a need to "spread the word" so to speak, so that it can get better. Because people clearly don't know about the modding on linux. Sure you can search "MO2 linux" but that only practically means linux users know about this, not everyone else. And why do they need to know? Well, developer support for one, like we discussed, so that mod devs could possibly include Limo installation instructions of their mod for instance.

Nexus is doing their own native mod manager as well, but that's sill a long way to go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants