Sorry for the delayed response!
Unfortunately, it seems like the development build you’ve uploaded doesn’t work for me, and simply opens to a black screen with the Unity log HUD. I’ve tested on a couple PCs, and the notable difference between my player logs and the log you uploaded is that loading a settings object from file succeeds in your log, but fails in mine. On my end, the application logs that it’s creating a new settings object, and then appears to fail like so:
Trying to load settings...
UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
GameSettings:LoadIfNeeded() (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:131)
GameManager:ApplyQualitySettings(GameLevelData) (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:187)
<Start>d__72:MoveNext() (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:108)
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:\build\output\unity\unity\Runtime\Export\Scripting\Coroutines.cs:17)
loading the settings: FileNotFound
UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
<>c__DisplayClass137_0:<LoadFromStorage>b__0(Byte[], StorageResults) (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:428)
<>c__DisplayClass14_0:<LoadSettings>b__0(Byte[], StorageResults) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:100)
StandardStorageService:IStorageService.LoadSettings(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\StandardStorageService.cs:35)
GameStorageManager:LoadSettings(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:98)
GameSettings:LoadFromStorage(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:426)
GameSettings:LoadIfNeeded() (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:132)
GameManager:ApplyQualitySettings(GameLevelData) (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:187)
<Start>d__72:MoveNext() (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:108)
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:\build\output\unity\unity\Runtime\Export\Scripting\Coroutines.cs:17)
Creating new settings object.
UnityEngine.DebugLogHandler:Internal_Log(LogType, LogOption, String, Object)
UnityEngine.DebugLogHandler:LogFormat(LogType, Object, String, Object[])
UnityEngine.Logger:Log(LogType, Object)
UnityEngine.Debug:Log(Object)
<>c:<LoadIfNeeded>b__115_0(GameSettings, StorageResults) (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:141)
<>c__DisplayClass137_0:<LoadFromStorage>b__0(Byte[], StorageResults) (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:432)
<>c__DisplayClass14_0:<LoadSettings>b__0(Byte[], StorageResults) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:100)
StandardStorageService:IStorageService.LoadSettings(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\StandardStorageService.cs:35)
GameStorageManager:LoadSettings(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:98)
GameSettings:LoadFromStorage(Action`2) (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:426)
GameSettings:LoadIfNeeded() (at D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:132)
GameManager:ApplyQualitySettings(GameLevelData) (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:187)
<Start>d__72:MoveNext() (at D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:108)
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:\build\output\unity\unity\Runtime\Export\Scripting\Coroutines.cs:17)
Uploading Crash Report
NotSupportedException: To marshal a managed method, please add an attribute named 'MonoPInvokeCallback' to the method definition. The method we're attempting to marshal is: FMODSoundUtils::DeviceListChangeCallback
at FMOD.System.setCallback (FMOD.SYSTEM_CALLBACK callback, FMOD.SYSTEM_CALLBACK_TYPE callbackmask) [0x00009] in D:\dev\goldman\Assets\Plugins\FMOD\src\fmod.cs:1140
at FMODSoundUtils.SetSystemCallbacks () [0x00031] in D:\dev\goldman\Assets\Scripts\Framework\Sound\FMODSoundUtils.cs:201
at FMODSoundUtils.GetCurrentDeviceIndex () [0x00001] in D:\dev\goldman\Assets\Scripts\Framework\Sound\FMODSoundUtils.cs:179
at GameSettings.ApplyAudioOptions () [0x00023] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:275
at GameSettings.ApplyAll () [0x00002] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:328
at GameSettings+<>c.<LoadIfNeeded>b__115_0 (GameSettings settings, StorageResults result) [0x0006a] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:147
at GameSettings+<>c__DisplayClass137_0.<LoadFromStorage>b__0 (System.Byte[] bytes, StorageResults result) [0x0005f] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:432
at GameStorageManager+<>c__DisplayClass14_0.<LoadSettings>b__0 (System.Byte[] bytes, StorageResults error) [0x0000f] in D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:100
at StandardStorageService.IStorageService.LoadSettings (System.Action`2[T1,T2] callback) [0x00016] in D:\dev\goldman\Assets\Scripts\Framework\Storage\StandardStorageService.cs:35
at GameStorageManager.LoadSettings (System.Action`2[T1,T2] callback) [0x0004d] in D:\dev\goldman\Assets\Scripts\Framework\Storage\GameStorageManager.cs:98
at GameSettings.LoadFromStorage (System.Action`2[T1,T2] callback) [0x0001a] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:426
at GameSettings.LoadIfNeeded () [0x0005a] in D:\dev\goldman\Assets\Scripts\Framework\GameSettings.cs:132
at GameManager.ApplyQualitySettings (GameLevelData levelData) [0x00001] in D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:187
at GameManager+<Start>d__72.MoveNext () [0x00152] in D:\dev\goldman\Assets\Scripts\Game\GameManager.cs:108
at UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) [0x00027] in C:\build\output\unity\unity\Runtime\Export\Scripting\Coroutines.cs:17
Could I get you to confirm that the development build works on your end without a settings object present? If it doesn’t, I may need you to provide your own so that it runs successfully on my end. Thanks!