From 780078fec468692402a18633dd3cd7ff913498ea Mon Sep 17 00:00:00 2001 From: Raffson Date: Sun, 13 Apr 2025 15:06:31 +0200 Subject: [PATCH] Fix issues w.r.t. custom forced-options config --- game/missiongenerator/forcedoptionsgenerator.py | 8 +++++--- game/persistency.py | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/game/missiongenerator/forcedoptionsgenerator.py b/game/missiongenerator/forcedoptionsgenerator.py index 5588f6b8..3be96551 100644 --- a/game/missiongenerator/forcedoptionsgenerator.py +++ b/game/missiongenerator/forcedoptionsgenerator.py @@ -58,9 +58,11 @@ class ForcedOptionsGenerator: @staticmethod def load_forced_options() -> dict[str, Any]: - with open(forced_options_path(), "r+", encoding="utf-8") as f: - content = f.read() - result = dcs.lua.loads(content).get("forcedOptions", {}) + result = {} + if forced_options_path().exists(): + with open(forced_options_path(), "r+", encoding="utf-8") as f: + content = f.read() + result = dcs.lua.loads(content).get("forcedOptions", {}) return result def generate(self) -> None: diff --git a/game/persistency.py b/game/persistency.py index b0876574..518b05e6 100644 --- a/game/persistency.py +++ b/game/persistency.py @@ -196,7 +196,7 @@ def settings_dir() -> Path: def forced_options_path() -> Path: - return _create_dir_if_needed(base_path() / "Retribution" / "forced_options.lua") + return _create_dir_if_needed(base_path() / "Retribution") / "forced_options.lua" def airwing_dir() -> Path: