Where are EditorUserBuildSettings stored?

Where are the EditorUserBuildSettings stored? They’re not stored in the “ProjectSettings” directory. The code doesn’t give a clue either.

I would like to backup/restore these settings.

The build settings are stored in the Library/EditorUserBuildSettings.asset asset. Couldn’t be any simpler. :roll_eyes:

1 Like

I got excited too soon, Library/EditorUserBuildSettings.asset does not store all settings.

It does store “Copy PDB files” for example, but does not store “Server Build” among various others. So where are the remaining settings stored (Server Build, Development Build, Deep Profiling, etc)?

1 Like

I have the same question and would like to add, that I’m trying to implement a build script that changes all sorts of required settings: PlayerSettings, EditorUserBuildSettings, EditorBuildSettings, BuildPipeline/BuildPlayerOptions/BuildOptions, EditorSettings. But after building, I want to restore all settings to their previous value to avoid setting version control dirty and generally messing with a user’s current editor session.

Not so easy I think, because there are so many settings that are changed in different places, it’s easy to forget. Also, their original values need to be written to disk or saved as a ScriptableObject that survives domain reload since scripts recompile during the build. All of that would be much simpler if we could simply backup the original files and restore them afterward.

1 Like

Are you sure about that? It seems it stores a ton of settings in there. It’s serialized as Unity Asset so I think it needs to be deserialized as a EditorUserBuildSettings object to be able to read it properly. Opening it using Text editor reveals it holds a lot of settings in there.

 Q  €j  €   ƒ              EditorUserBuildSettings m_BuildLocation m_ActiveBuildTarget m_ActiveBuildTargetGroup m_SelectedBuildTargetGroup m_SelectedStandaloneTarget m_ArchitectureFlags m_SelectedPS4Subtarget m_PS4HardwareTarget m_SelectedXboxSubtarget m_SelectedIOSBuildType m_AndroidBuildSystem m_AndroidBuildType m_AndroidReleaseMinification m_AndroidDebugMinification m_SelectedAndroidETC2Fallback m_AndroidDeviceSocketAddress m_AndroidCurrentDeploymentTargetId m_SelectedCompressionType m_Development m_ConnectProfiler m_BuildWithDeepProfilingSupport m_AllowDebugging m_WaitForPlayerConnection m_InstallInBuildFolder m_SymlinkLibraries m_SymlinkTrampoline m_NeedSubmissionMaterials m_CompressWithPsArc m_MovePackageToDiscOuterEdge m_CompressFilesInPackage m_ForceInstallation m_ExplicitNullChecks m_ExplicitDivideByZeroChecks m_ExplicitArrayBoundsChecks m_EnableHeadlessMode m_BuildScriptsOnly m_ExportAsGoogleAndroidProject m_CreateRomFileForSwitch m_EnableRomCompressionForSwitch m_SaveADFForSwitch m_RomCompressionTypeForSwitch m_RomCompressionLevelForSwitch m_RomCompressionConfigForSwitch m_NVNGraphicsDebuggerForSwitch m_GenerateNintendoSwitchShaderInfo m_NVNShaderDebugging m_NVNDrawValidationLight m_NVNDrawValidationHeavy m_EnableHeapInspectorForSwitch m_EnableDebugPadForSwitch m_RedirectWritesToHostMountForSwitch m_HTCSScriptDebuggingForSwitch m_UseLegacyNvnPoolAllocatorForSwitch m_BuildAppBundle m_AndroidCreateSymbolsZip m_SelectedAndroidSubtarget m_SelectedWSASubtarget m_SelectedWSAUWPBuildType m_SelectedWSAUWPSDK m_SelectedWSAMinUWPSDK m_SelectedWSAArchitecture m_SelectedWSAUWPVSVersion m_SelectedWSABuildAndRunDeployTarget m_WindowsDevicePortalAddress m_WindowsDevicePortalUsername m_XboxOneStreamingInstallLaunchChunkRange m_SelectedXboxOneDeployMethod m_SelectedXboxOneDeployDrive m_PlatformSettings PlatformSettingsData settings                        X