In the above example, you can see that the script field in AI Destination Setter can be edited, and HealthDisplay cannot be edited (default). I consider it a bug that it can be edited, as a mis-click on the "target" button will erase all the set fields in the component, which frustrated me a lot as a beginner (didn't know what was happening), and as an advanced user, I find annoying. I have found there's two cases where this happens. The first are for custom classes that inherit and extend monobehaviour. The second is when the script employs any kind of custom editor code at all. This results in a lot of scripts with this bug, especially those in asset packages or made by advanced users (for people who aren't necessarily adept at unity). To fix this bug, I think the editor should be changed so that in these circumstances, the script field is still read only. Another option, which would actually clean up the editor, is to totally eliminate the script field. As is, you can currently right click the header and select "edit script." This component does that: Btw, these components are from the very popular A* pathfinding project store asset. I have seen this problem in many popular assets.