FindPropertyRelative with nested classes

FindPropertyRelative always returns null. I’ve searched the web with no luck in finding a solution.

I’m creating a script that uses some nested classes. The chain looks like this:

Personality (class inherits from MonoBehavior)
— contains “Intelligence” (Value class that inherits from ScriptableObject)
------ contains “PreciseValue” (float)

I’m creating a custom inspector. In the inspector, I can use SerializeObject(target) to get the instance of my Personality class no problem.

I can then use FindProperty(“Intelligence”) to get a SerializedProperty for the instance of my Value class no problem.

However, if I then use FindPropertyRelative(“PreciseValue”) to get a SerializedProperty off of the previous SerializedProperty I did get , I always get a null.

The interesting thing is that if I use EditorGUILayout.PropertyField() on the SerializedProperty that I did get, the Value property shows up in the inspector as if I’m selecting a script. Next to the C# script image, it says “(Value)” and I can drill into that and set the PreciseValue that is part of the Value class.

From everything I read, I should be able to get the PreciseValue float with FindPropertyRelative.

I can include code if it helps, but it might be a bit lengthy.

Thanks in advance!

Posting code makes probably sense. Especially the classes DeepPersonality and Value.

Do you find any solution to this issue?