When working on a heavily data-driven game, I often have a need to manipulate string fields and collections of strings. Constraining string fields and lists to aid validation and prevent erroneous input is simple with an existing ValueDropdown attribute. It enables fields like “unit type” or lists like “part hardpoints” to be very easily extendable while keeping the editing experience fast and error-free.
However, dictionaries have no support for ValueDropdown - and furthermore, they could probably use a dictionary-specific pair of attributes, since dictionaries are a more complex case which ValueDropdown can’t fully cover. So, I’m proposing two new attributes: DictionaryKeyDropdown and DictionaryValueDropdown, illustrated below: