From f3feaffe9cff9be154f343ec096b4843149770fe Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Fri, 22 Sep 2023 22:41:26 +0100 Subject: [PATCH] Recognise hardcoded Fallout New Vegas plugins Unlike the other games with hardcoded plugins, these plugins have no fixed load order, they'll just always be active if installed. --- src/game_settings.rs | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/src/game_settings.rs b/src/game_settings.rs index 61e0e63..b4c5fa8 100644 --- a/src/game_settings.rs +++ b/src/game_settings.rs @@ -58,6 +58,19 @@ const SKYRIM_VR_HARDCODED_PLUGINS: &[&str] = &[ "SkyrimVR.esm", ]; +const FALLOUT_NV_HARDCODED_PLUGINS: &[&str] = &[ + "FalloutNV.esm", + "LonesomeRoad.esm", + "OldWorldBlues.esm", + "HonestHearts.esm", + "DeadMoney.esm", + "GunRunnersArsenal.esm", + "CaravanPack.esm", + "ClassicPack.esm", + "MercenaryPack.esm", + "TribalPack.esm", +]; + const FALLOUT4_HARDCODED_PLUGINS: &[&str] = &[ "Fallout4.esm", "DLCRobot.esm", @@ -343,6 +356,7 @@ fn hardcoded_plugins(game_id: GameId) -> &'static [&'static str] { GameId::Skyrim => SKYRIM_HARDCODED_PLUGINS, GameId::SkyrimSE => SKYRIM_SE_HARDCODED_PLUGINS, GameId::SkyrimVR => SKYRIM_VR_HARDCODED_PLUGINS, + GameId::FalloutNV => FALLOUT_NV_HARDCODED_PLUGINS, GameId::Fallout4 => FALLOUT4_HARDCODED_PLUGINS, GameId::Fallout4VR => FALLOUT4VR_HARDCODED_PLUGINS, _ => &[], @@ -925,7 +939,19 @@ mod tests { &PathBuf::default(), ) .unwrap(); - assert!(settings.implicitly_active_plugins().is_empty()); + plugins = vec![ + "FalloutNV.esm", + "LonesomeRoad.esm", + "OldWorldBlues.esm", + "HonestHearts.esm", + "DeadMoney.esm", + "GunRunnersArsenal.esm", + "CaravanPack.esm", + "ClassicPack.esm", + "MercenaryPack.esm", + "TribalPack.esm", + ]; + assert_eq!(plugins, settings.implicitly_active_plugins()); settings = GameSettings::with_local_path( GameId::Fallout4VR,