art-from-the-machine / Mantella

Mantella is a Skyrim and Fallout 4 mod which allows you to naturally speak to NPCs using Whisper (speech-to-text), LLMs (text generation), and xVASynth / XTTS (text-to-speech).
https://art-from-the-machine.github.io/Mantella/
GNU Affero General Public License v3.0
168 stars 41 forks source link

When configuring config.ini and you have multiple games installed, but not configured with Mantella (yet) - you cannot use Mantella with ANY game. #174

Closed jonathonbarton closed 5 months ago

jonathonbarton commented 5 months ago

Steps to reproduce.

  1. Install Skyrim Special Edition via Steam
  2. Install Skyrim VR via Steam
  3. Install Skyrim Flat via Wabbajack in a folder for itself - example: Licentia Black into C:/Licentia
  4. Install Skyrim VR via Wabbajack into a folder for itself - example C:/Tahrovin (which uses the same Stock Game method as Licentia) or C:/FUS or C:/MGO - both of which use Rootbuilder.
  5. install Flat Fallout
  6. Install VR Fallout.
  7. Configure Config.ini for all 4 games, because you know you're going to use them all 4 at some point.
  8. Remove 'games' from the paths for skyrim_folder, skyrimVR_folder, fallout4_folder, and falloutVR_folder, because the rest of the path SHOULD be correct for a default install for a C:\Steam library.
  9. Configure Mod configuration ONLY for SkyrimVR.
  10. Try to launch Mantella main.py without having installed the ESP into the other 3 games.
  11. Observe the error message:

16:32:30.115 ERROR: "C:\Licentia1262\mods\Mantella\Sound\Voice\Mantella.esp" does not exist! The path set in config.ini: "C:\Licentia1262\mods\Mantella" Press any key to exit...

Hypothesis: You cannot use ANY of the titles, unless you have correctly configured and installed the ESP into ALL of the titles.

Alternate Hypothesis: game = Skyrim is incorrectly noted to allow only Skyrim, Fallout4 values, and SkyrimVR and Fallout(4)VR are not demonstrated as valid values.

Additional Data point and PROBABLE root cause: The default path for the Steam Install for SkyrimVR is incorrect. It installs to: \Steam\steamapps\common\SkyrimVR not: \Steam\steamapps\common\Skyrim Special Edition VR

The Config.ini should be corrected to reflect the correct paths from the /Steam/steamapps/common/ directory forward.

YetAnotherModder commented 5 months ago

I can confirm that you do not need to have the esp for all the titles. The issue is that the current main branch config.ini doesn't list all the actual available options to the user and it should list the following instead :

;Choose the game to use with Mantella, options are : Skyrim, SkyrimVR, Fallout4, Fallout4VR

I already have a pending correction on that comment on my fork's pull request.

I coded the config to default to Flatrim if an input in 'game =" can't be parsed since that's the most frequent option. So that's probably what's happening here where Mantella is searching for the Flatrim esp despite the user intending to use Skyrim VR. The config could be reworked to make it clearer which game Mantella is set to or if it's defaulting to Flatrim if an output can't be parsed.

The incorrect filepath for Skyrim VR in the config is unrelated to the issue. Full disclosure however: that was my B, I didn't actually have Skyrim VR installed and so I incorrectly assumed it would follow the same naming convention as Fallout 4 between the two versions. I just made the change on my fork so if the pull request is merged that should be resolved as well.

art-from-the-machine commented 5 months ago

Great I've just added the fix for this, thanks for flagging it @jonathonbarton!