Glad it helped! In case you didn’t internalize it earlier, I did trip over a seeming bug in the adv3 implementation, which could manifest if you can scatter them around your game. Strongly recommend you add this code somewhere:
modify Thing
addToSenseInfoTable(sense, tab)
{
inherited(sense, tab);
// JJMcC - if I modified SenseTable by adding myself,
// force my Collective Groups to reevaluate
if (tab.isKeyPresent(self))
foreach (local cur in collectiveGroups)
cur.addToSenseInfoTable(sense, tab); // force update!
}
;
VERY long discussion of why here.