Some Songs throw errors when the system tries to load them Preventing the server from running. Please look into supporting non-alpha/numeric characters
Unhandled Exception: System.AggregateException: One or more errors occurred. (One or more errors occurred. (Could not find file '/home/noideaman/beatsaber/MultiplayerServer_linux-64/AvailableSongs/Downloaded/Bad Apple!! - FalKKonE/BAD APPLE - edit.ogg'.)) (Could not find file '/home/noideaman/beatsaber/MultiplayerServer_linux-64/AvailableSongs/Downloaded/Bad Apple!! - FalKKonE/BAD APPLE - edit.ogg'.) ---> System.IO.FileNotFoundException: Could not find file '/home/noideaman/beatsaber/MultiplayerServer_linux-64/AvailableSongs/Downloaded/Bad Apple!! - FalKKonE/BAD APPLE - edit.ogg'.
at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func`2 errorRewriter)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
at BeatSaberMultiplayerServer.ServerMain.<>c.<DownloadSongs>b__24_2(CustomSongInfo song) in C:\Users\Tyler\RiderProjects\BeatSaberMultiplayer\BeatSaberMultiplayerServer\ServerMain.cs:line 228
at System.Linq.Parallel.ForAllOperator`1.ForAllEnumerator`1.MoveNext(TInput& currentElement, Int32& currentKey)
at System.Linq.Parallel.ForAllSpoolingTask`2.SpoolingWork()
at System.Linq.Parallel.SpoolingTaskBase.Work()
at System.Linq.Parallel.QueryTask.BaseWork(Object unused)
at System.Linq.Parallel.QueryTask.RunTaskSynchronously(Object o)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of inner exception stack trace ---
at System.Linq.Parallel.QueryTaskGroupState.QueryEnd(Boolean userInitiatedDispose)
at System.Linq.Parallel.SpoolingTask.SpoolForAll[TInputOutput,TIgnoreKey](QueryTaskGroupState groupState, PartitionedStream`2 partitions, TaskScheduler taskScheduler)
at System.Linq.Parallel.MergeExecutor`1.Execute()
at System.Linq.Parallel.MergeExecutor`1.Execute[TKey](PartitionedStream`2 partitions, Boolean ignoreOutput, ParallelMergeOptions options, TaskScheduler taskScheduler, Boolean isOrdered, CancellationState cancellationState, Int32 queryId)
at System.Linq.Parallel.PartitionedStreamMerger`1.Receive[TKey](PartitionedStream`2 partitionedStream)
at System.Linq.Parallel.ForAllOperator`1.WrapPartitionedStream[TKey](PartitionedStream`2 inputStream, IPartitionedStreamRecipient`1 recipient, Boolean preferStriping, QuerySettings settings)
at System.Linq.Parallel.UnaryQueryOperator`2.UnaryQueryOperatorResults.ChildResultsRecipient.Receive[TKey](PartitionedStream`2 inputStream)
at System.Linq.Parallel.ListQueryResults`1.GivePartitionedStream(IPartitionedStreamRecipient`1 recipient)
at System.Linq.Parallel.UnaryQueryOperator`2.UnaryQueryOperatorResults.GivePartitionedStream(IPartitionedStreamRecipient`1 recipient)
at System.Linq.Parallel.QueryOperator`1.GetOpenedEnumerator(Nullable`1 mergeOptions, Boolean suppressOrder, Boolean forEffect, QuerySettings querySettings)
at System.Linq.Parallel.ForAllOperator`1.RunSynchronously()
at System.Linq.ParallelEnumerable.ForAll[TSource](ParallelQuery`1 source, Action`1 action)
at BeatSaberMultiplayerServer.ServerMain.DownloadSongs() in C:\Users\Tyler\RiderProjects\BeatSaberMultiplayer\BeatSaberMultiplayerServer\ServerMain.cs:line 225
at BeatSaberMultiplayerServer.ServerMain.Start(String[] args) in C:\Users\Tyler\RiderProjects\BeatSaberMultiplayer\BeatSaberMultiplayerServer\ServerMain.cs:line 65
at BeatSaberMultiplayerServer.ServerMain.Main(String[] args) in C:\Users\Tyler\RiderProjects\BeatSaberMultiplayer\BeatSaberMultiplayerServer\ServerMain.cs:line 43
Aborted