Skip to content

Mod Download Enhancement #460

Draft
ifeldshteyn wants to merge 11 commits intoluciusDXL:masterfrom
ifeldshteyn:mod_web_enhancements
Draft

Mod Download Enhancement #460
ifeldshteyn wants to merge 11 commits intoluciusDXL:masterfrom
ifeldshteyn:mod_web_enhancements

Conversation

@ifeldshteyn
Copy link
Contributor

This PR is strictly a draft until a net library is decided on for Outlaws.

Feature List

  1. This adds ability to browse and download Dark Forces mods directly from DF-21 into the mod folder.
  2. Added web filtering for mod names and by rating.
  3. Added links to the mod Walkthrough, Review and Mod website.
  4. Added mod image caching.

It also adds a link to the mod website, a review section and a walkthrough.

image
image
image

@JakeSmarter
Copy link
Contributor

JakeSmarter commented Mar 26, 2025

Just FYI: the Flathub release has been recently updated to enable downloading and managing Mods via Flatpak. Hence, it may be a good idea to have this PR’s feature configurable either at build or run time. Having both mod download routes in the Flathub release may be confusing to users and perhaps cause mod installation clashes, resulting in broken mods. What do you think @fpiesche? However, I do understand that in other environments, like Windows, Mac etc. this feature may be very useful.

Please note that depending on how this PR’s download feature is designed (I have not looked much at the code) it sure will not work in the Flatpak sandbox and may not on Windows either. Does it download mods into the TheForceEngine/Mods directory? If so then you cannot write anything into the /app/share/TheForceEngine/Mods directory at Flatpak runtime, hence flathub/io.github.theforceengine.tfe#11. On Windows the TheForceEngine folder is usually a sub‑folder in the SYSTEM and Administrators owned and managed %ProgramFiles% folder. Hence, users will not be able to download and install anything into %ProgramFiles%\TheForceEngine\Mods either, unless you give the Users group write permissions for it at TFE installation. This could work but I am not sure whether managing mods in one folder from multiple user profiles on one machine is a good idea. Alternatively, you could expect users to run TFE as an Administrator to be able to install mods, which is neither a good idea nor would be user friendly. Or, you could let all users confirm UAC on every mod install or uninstall. Not particularly smooth either. Imho on Windows it would be best to enable UAC privileged users to install mods system‑wide into %ProgramFiles%\TheForceEngine\Mods and UAC unprivileged users into something like %LocalAppData%\TheForceEngine\Mods. Alternatively, into %AppData%\TheForceEngine\Mods but large mods could negatively impact logon times of roaming user profiles. I do not know, should mods roam?

Furthermore, is libcurl something or the best thing TFE should depend on? MacOS should be fine, I guess. But, Windows is an outlier here because it would need to support the system certificate store and system network/proxy configuration. Besides, @ifeldshteyn would you mind including libcurl as a git submodule rather than explicit files?

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.

3 participants