CHollingworth / Lampray

Linux Application Modding Platform. A native Linux mod manager.
https://www.nexusmods.com/baldursgate3/mods/2169
The Unlicense
164 stars 15 forks source link

Persistent Mod Files in Baldur's Gate III Despite Disabling Mods #116

Open Plarpoon opened 6 months ago

Plarpoon commented 6 months ago

Issue Description

Upon utilizing the Lampray mod manager for Baldur's Gate III, I've encountered an issue where disabling mods does not remove their associated files from the game directory. Despite being marked as disabled in the Lampray interface, the mod files persist.

Error Log

A full console log dump detailing the issue can be found here.

Reproduction Steps

The issue can be reproduced by following these steps:

  1. Install a mod via Lampray.
  2. Enable the installed mod.
  3. Deploy the mod.
  4. Disable the mod within Lampray.
  5. Redeploy the mod.

Expected Outcome

The expected outcome after these steps is the complete removal of the mod files from the game directory upon disabling and redeploying the mod.

Evidence

Despite the expectation, as evidenced in the screenshot below, the DWrite.dll file (associated with the disabled mod) remains present in the game directory. image

System Information

Additional Information

This issue is not exclusive to a specific mod. While the provided example pertains to the BG3SE-Updater mod (a script extender), the same behavior is observed with all other mods tested.

Plarpoon commented 6 months ago

I am still learning so I might be wrong of-course but it appears that the try-catch block in question consistently returns a successful execution, even in instances where it should not. This could lead to a scenario where the program believes it has successfully cleaned up the working directory, when in fact, it has not. Furthermore, this issue seems to prevent the triggering of the corresponding error.

https://github.com/CHollingworth/Lampray/blob/3dc1c14fea53c151b9f38a098f36c8d972c4d25e/game-data/BG3/BG3.cpp#L105

tdorzhi commented 6 months ago

stumbled upon this when tried to switch mod version, Lampray somehow doesn't want to update files when mod is disabled (meaning deleting it) and when I'm enabled different version nothing happens

internetisaiah commented 6 months ago

+1 I've also had the same issue. Had to manually delete from the folder to remove mods.

ashley-graves commented 3 months ago

Despite the expectation, as evidenced in the screenshot below, the DWrite.dll file (associated with the disabled mod) remains present in the game directory.

Lampray cannot currently undo overwrites. See: https://github.com/CHollingworth/Lampray/blob/master/docs/mod-types/baldurs-gate-3.md#bin-overwrite

As for other mods, toggling the enabled/disabled setting only toggles their load status, only "Remove Mod" should remove it entirely from the game directory.