Skip to content

Commit 1fcfd89

Browse files
committed
- Fixed issue with script extender detection in nested subdirs.
- Updated `elder_scrolls_oblivion_remastered` game info.
1 parent 9647b94 commit 1fcfd89

File tree

2 files changed

+72
-1
lines changed

2 files changed

+72
-1
lines changed

game-db.json

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@
114114
"saveFolderPath": "%USERPROFILE%\\Documents\\My Games\\Oblivion Remastered\\Saved\\SaveGames"
115115
},
116116
{
117-
"rootDir": "C:\\XboxGames\\Oblivion Remastered\\Content",
117+
"rootDir": "C:\\XboxGames\\The Elder Scrolls IV- Oblivion Remastered\\Content",
118118
"modDir": ".",
119119
"pluginListPath": "OblivionRemastered\\Content\\Dev\\ObvData\\Data\\Plugins.txt",
120120
"configFilePath": "%USERPROFILE%\\Documents\\My Games\\Oblivion Remastered\\Saved\\Config\\Windows",
@@ -139,6 +139,50 @@
139139
{
140140
"plugin": "Oblivion.esm",
141141
"required": true
142+
},
143+
{
144+
"plugin": "DLCBattlehornCastle.esp",
145+
"required": false
146+
},
147+
{
148+
"plugin": "DLCFrostcrag.esp",
149+
"required": false
150+
},
151+
{
152+
"plugin": "DLCHorseArmor.esp",
153+
"required": false
154+
},
155+
{
156+
"plugin": "DLCMehrunesRazor.esp",
157+
"required": false
158+
},
159+
{
160+
"plugin": "DLCOrrery.esp",
161+
"required": false
162+
},
163+
{
164+
"plugin": "DLCShiveringIsles.esp",
165+
"required": false
166+
},
167+
{
168+
"plugin": "DLCSpellTomes.esp",
169+
"required": false
170+
},
171+
{
172+
"plugin": "DLCThievesDen.esp",
173+
"required": false
174+
},
175+
{
176+
"plugin": "DLCVileLair.esp",
177+
"required": false
178+
},
179+
{
180+
"plugin": "Knights.esp",
181+
"required": false
182+
},
183+
{
184+
"plugin": "AltarESPMain.esp",
185+
"required": true
142186
}
143187
],
144188
"requireExternalPlugins": true,
@@ -191,6 +235,19 @@
191235
"VirtuosEditorAutomationTesting.ini",
192236
"Wwise.ini"
193237
],
238+
"scriptExtenders": [
239+
{
240+
"name": "UE4SS",
241+
"binaries": [
242+
"OblivionRemastered/Binaries/Win64/ue4ss/UE4SS.dll",
243+
"OblivionRemastered/Binaries/WinGDK/ue4ss/UE4SS.dll"
244+
],
245+
"modPaths": [
246+
"OblivionRemastered/Binaries/Win64/Mods/Scripts",
247+
"OblivionRemastered/Binaries/WinGDK/Mods/Scripts"
248+
]
249+
}
250+
],
194251
"resources": {
195252
"mods": {
196253
"elder_scrolls_oblivion_remastered/Invalidation.bsa": "Invalidation.bsa"

src/app/services/profile-manager.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1171,6 +1171,7 @@ export class ProfileManager {
11711171
public isUsingScriptExtender(scriptExtender: GameDetails.ScriptExtender, profile: AppProfile): Observable<boolean> {
11721172
// First check if script extender exists in external root dir files
11731173
let usingScriptExtender = !!profile.externalFilesCache?.gameDirFiles?.some((externalFile) => {
1174+
externalFile = LangUtils.normalizeFilePath(externalFile, "/");
11741175
return scriptExtender!.binaries.find(binary => externalFile.endsWith(LangUtils.normalizeFilePath(binary, "/")));
11751176
});
11761177

@@ -1181,6 +1182,19 @@ export class ProfileManager {
11811182
return this.readModFilePaths(modName, modRef, true);
11821183
})).pipe(
11831184
map(modFileList => modFileList.some((files) => files.some((file) => {
1185+
file = LangUtils.normalizeFilePath(file, "/");
1186+
return scriptExtender.binaries.find(binary => file.endsWith(LangUtils.normalizeFilePath(binary, "/")));
1187+
})))
1188+
);
1189+
}
1190+
1191+
// Next, check if script extender exists in mod files
1192+
if (!usingScriptExtender && profile.mods.length > 0) {
1193+
usingScriptExtender$ = forkJoin(profile.mods.map(([modName, modRef]) => {
1194+
return this.readModFilePaths(modName, modRef, true);
1195+
})).pipe(
1196+
map(modFileList => modFileList.some((files) => files.some((file) => {
1197+
file = LangUtils.normalizeFilePath(file, "/");
11841198
return scriptExtender.binaries.find(binary => file.endsWith(LangUtils.normalizeFilePath(binary, "/")));
11851199
})))
11861200
);

0 commit comments

Comments
 (0)