diff --git a/VXMusic/LogParser/VRChat/VRChatLogParser.cs b/VXMusic/LogParser/VRChat/VRChatLogParser.cs
index 7184ade..abcad2a 100644
--- a/VXMusic/LogParser/VRChat/VRChatLogParser.cs
+++ b/VXMusic/LogParser/VRChat/VRChatLogParser.cs
@@ -31,6 +31,8 @@ public class VRChatLogParser : INotifyPropertyChanged
static volatile bool IsExiting = false;
+ private static bool VrChatRuntimeLogDirExists => Directory.Exists(Configuration.OutputLogRoot);
+
static Task DispatchTask;
static int DispatchResolutionMilliseconds = 50;
@@ -84,7 +86,16 @@ public VRChatLogParser(IServiceProvider serviceProvider)
_logger.LogTrace("Creating VRChatLogParser.");
- Run();
+ Configuration = ConfigurationModel.Load();
+
+ if (VrChatRuntimeLogDirExists)
+ {
+ Run();
+ }
+ else
+ {
+ _logger.LogWarning("VRChat Log directory not found. Will not Run VRChatLogParser.");
+ }
}
public enum LogEventType
@@ -133,8 +144,6 @@ public void Run()
try
{
- Configuration = ConfigurationModel.Load();
-
// Rewrite configuration to update it with any new fields not in existing configuration. Useful during update process and making sure the config always has updated annotations.
// Users shouldn't need to re-configure every time they update the software.
ConfigurationModel.Save(VRChatLogParser.Configuration);
diff --git a/VXMusicDesktop/VXMusicDesktop.csproj b/VXMusicDesktop/VXMusicDesktop.csproj
index 700b4b4..0a34577 100644
--- a/VXMusicDesktop/VXMusicDesktop.csproj
+++ b/VXMusicDesktop/VXMusicDesktop.csproj
@@ -9,7 +9,7 @@