Spot the bug in the save helper

from Unity ScriptableObject assets
Unity 6.6 intermediate 4 min 4 issues to find

Find why this generated save helper is unsafe for a Player build and a later launch.

csharp
using UnityEngine;

public sealed class ItemDefinition : ScriptableObject
{
    public string displayName = "Unnamed item";
}

public sealed class AssetMaker : MonoBehaviour
{
    public ItemDefinition source;

    public string SaveKey()
    {
        var runtimeItem = new ItemDefinition();
        runtimeItem.displayName = source.displayName;
        UnityEditor.AssetDatabase.CreateAsset(runtimeItem, "Assets/RuntimeItem.asset");
        return source.GetInstanceID().ToString();
    }
}
Open in playground
Report an error