loot / loot

A modding utility for Starfield and some Elder Scrolls and Fallout games.
https://loot.github.io/
GNU General Public License v3.0
1.56k stars 260 forks source link

Support for "Enderal" #1383

Closed MacSplody closed 3 years ago

MacSplody commented 3 years ago

Originally released as a mod for Skyrim by SureAI Enderal is a total conversion for TES V: Skyrim: a free game based on the Skyrim LE engine. This means it shares almost all internals with Skyrim LE, including its record definitions, form versions, etc.

Now available as a standalone game on Steam Enderal: Forgotten Stories.

Appdata Users\%username%\AppData\Local\enderal

Registry HKEY_CURRENT_USER\Software\SureAI\Enderal\Install_Path

The main issue at the moment is, although you can add an entry for Enderal in LOOT settings. LOOT cannot update the load order due to it using a different location for Appdata.

The other is whether it should have its own masterlist. A few reasons why it should:

Ortham commented 3 years ago

LOOT should already have everything it needs to support Enderal:

MacSplody commented 3 years ago

LOOT should already have everything it needs to support Enderal:

  • the game local app data path can be given in settings.toml as local_path - this isn't exposed in the GUI.

  • the game's registry setting is relative to HKEY_LOCAL_MACHINE by default, but if it starts with HKEY_ then it will be used as an absolute Registry path.

Okay sorting works as expected with both of those set correctly.

zRISC commented 3 years ago

LOOT should already have everything it needs to support Enderal:

  • the game local app data path can be given in settings.toml as local_path - this isn't exposed in the GUI.
  • the game's registry setting is relative to HKEY_LOCAL_MACHINE by default, but if it starts with HKEY_ then it will be used as an absolute Registry path.

Okay sorting works as expected with both of those set correctly.

Hi.

could you provide a sample of the file, or I just have to create a file settings.toml with

[<something>] local_path=Users\%username%\AppData\Local\enderal

Questions I have:

1.- What should go in , or I can bypass that ?

2.- How do I fix the registry, or it has to be a setting? I only have the entries Computer\HKEY_CURRENT_USER\SOFTWARE\SureAI\Enderal

About the masterlist: Here is a crowdsourced WORKS/ISSUES/NOT-Working list: https://docs.google.com/spreadsheets/d/1H-z3QUA_IB8Kr1JUXyewSW0xVz0y40ic0tpqhtzAiIw/edit#gid=1882936259 I guess that will be a lot of work though...

zRISC commented 3 years ago

OK.

Managed to find the toml file, and how to edit it from within loot itself 👍

[[games]]
    branch = "Enderal"
    folder = "Enderal"
    repo = "https://github.com/loot/skyrim.git"
    type = "Skyrim"
    name = "Enderal wDLC"
    local_path = ""
    path = "D:\\STEAM_LIB\\steamapps\\common\\Enderal"
    master = "Skyrim.esm"
    minimumHeaderVersion = 0.93999999761581421
    registry = "SOFTWARE\\SureAI\\Enderal\\"

In the AppData for loot, that Is What I have. My questions:

Loot starts, detects masterlist, but says that is suggests no changes to load order.

I guess a proper Masterlist will be needed. Some mods are from LE repo, but most are from the specific Enderal Nexusmods zone: https://www.nexusmods.com/enderal

LOOTDebugLog.txt

Thank you.

Ortham commented 3 years ago
  • In the Skyrim.git, there is a enderal branch. Would that be safe to use for the Steam downloaded version, or that one is thought for one installed over LE ?

The Enderal branch was created by @MacSplody in December, so he'd be able to answer, but I'd guess that it would probably work for both.

  • the master should be Skyrim.esm or 'Enderal - Forgotten Stories.esm', for the Steam version?

Does the Steam version come with a Skyrim.esm? I haven't got it downloaded, I'm doing that now.

zRISC commented 3 years ago

Hi. Yes, it comes with Skyrim.esm and Update.esm They're "butchered" though, lots of records removed and changed... Guess that comes with making a new game using the engine and base mechanics 😁

Ortham commented 3 years ago

I just had a quick look into this, and unfortunately found that Enderal stores its plugins.txt at %LOCALAPPDATA%\enderal\plugins.txt. While LOOT does allow this path to be configured using the local_path field in its settings.toml game entries, it's an absolute path, so putting %LOCALAPPDATA%\enderal\plugins.txt won't work, and every user's local app data path is different.

To support this, I'm going to have to add another config field to specify the name of a folder within %LOCALAPPDATA%.

Ortham commented 3 years ago

The enderal-support branch, commit 5ebfbf4a787742d04249807f88c0c9deb4271bb6, has a new entry for Enderal in LOOT's default settings. It's a variation on the Skyrim settings, using Enderal's registry key and its own game folder in %LOCALAPPDATA%. It also uses a new masterlist repository at https://github.com/loot/enderal, which doesn't yet actually contain a masterlist.

There's also a new local_folder field that can be used in [[games]] entries in LOOT's settings.toml to specify the name of the folder in %LOCALAPPDATA% that contains the game's load order files. Only one of local_folder and local_path must be used, to avoid confusion.

zRISC commented 3 years ago

Hi.

Thank you for this. I guess it'll help a lot to play a heavily modded Enderal.

In my case without any particular ordering (save for some that must go near the end of the LO according to author), I have managed to play it quite well; have been using conflict resolution as a guide, and having at the end some sort of "override catch-all esp".

MO2 has a file redirector plugin specific for Enderal, don't know if that would help (it was on the nexus, appears as deleted. Now, the only place I found it, is in here, the 'Game redirector': https://github.com/LostDragonist/MO2-Plugins )

Ortham commented 3 years ago

Closing this now that the branch has been merged.

MacSplody commented 3 years ago

I only noticed this but there's also an SSE version available as a mod here Enderal SE. It uses the SSE game folder and is installed as a mod. If it was added the settings below should work for it.

        GameSettings(GameType::tes5se, "Enderal SE")
            .SetName("Enderal: Forgotten Stories SE")
            .SetRegistryKey(
                "Software\\Bethesda Softworks\\Skyrim Special Edition\\Installed Path")
            .SetGameLocalFolder("enderal se")
            .SetRepoURL("https://github.com/loot/enderal.git"),
Ortham commented 3 years ago

Interesting, though as total conversion mod a separate install is probably a better way to do it.

Infernio commented 3 years ago

Enderal SE will be released on Steam as a standalone: https://store.steampowered.com/app/976620/Enderal_Forgotten_Stories_Special_Edition/ Release date is on the 18th of March.

MacSplody commented 3 years ago

Enderal SE will be released on Steam as a standalone: https://store.steampowered.com/app/976620/Enderal_Forgotten_Stories_Special_Edition/ Release date is on the 18th of March.

Cool, one masterlist should be enough for both of them, will have to wait for its release to have the right settings.

Pickysaurus commented 3 years ago

Enderal SE data

The launcher will create registry keys: @"HKEY_CURRENT_USER\Software\SureAI\EnderalSE", "Install_Path" @"HKEY_CURRENT_USER\Software\SureAI\EnderalSE", "Exe_Path"

plugins.txt location: AppData\Local\Enderal Special Edition\

Data location: Documents\My Games\Enderal Special Edition\

INI files: My Games\Enderal Special Edition\Enderal.ini My Games\Enderal Special Edition\EnderalPrefs.ini

Saves: My Games\Enderal Special Edition\Saves

Ortham commented 3 years ago

@Pickysaurus thanks for the info, I've added Enderal SE to LOOT's default settings in a247144d36d5d03ca572d0c9cdd1ec7ff11c514b.