Problem #1 - as coded, your candidate Id will always end in "|", with no final tag Id - that will fail to be recognized as a valid candidate expression, meaning HL defaults to "absolutely everything" for the drop-down.
Problem #2 - A drop-down menu can only select within the container it is in (or from inside a gizmo, it can be set to select things in the hero container). It cannot select from among the picks inside another pick's gizmo.
Try adding a "building" that can be added to the settlement it's being applied to that can then select from among the buildings in its same settlement (same gizmo). then, if this is more of an ability than a building you'd build in some settlement, you can look for ways to hide it in most cases, but still leave it visible within that settlement so the user can select the building to apply it to.
Oh, and coding style note - don't use idstring unless there's no other option. eachpick.tagids[thingid.?,"|"] would give you the same result.
|