skyrim-community-shaders
skyrim-community-shaders copied to clipboard
feat: improve user config
trafficstars
The user config is now created from the difference between defaults and current settings. finalSettings is built from the default+override+user layering and the user config is automatically removed when identical to default.
Summary by CodeRabbit
-
New Features
- Default-first configuration with layered user overrides.
- Save full defaults and export a current-settings snapshot.
-
Refactor
- Diff-based saving: only differences from defaults are persisted.
- Unified application of settings across subsystems with consistent version-upgrade handling.
-
Bug Fixes
- More robust JSON loading with clearer error handling and recovery.
- Auto-recreates missing defaults and removes redundant user configs when unchanged.