This is something inherent the way Fusion filters and selects objects,
you must respect specific rules to make sure everything flows correctly,
as written above:
A overlaps B
+ B id = A id
is not the same as
(what you had in your previous file):
A overlaps B
+ A id = B id
Because first one will filter overlapped Bs (the thing you need)
second one will filter overlapped As (what you not need, since you have only one A overlapping Bs)
For simplest situations, this won't make big changes,
but if you throw in additional conditions, like in your game, this
will make changes.
For what you specifically need:
A overlaps B >> will pick all As and all Bs overlapping
+
B id = A id >> will pick all Bs whose id will match any of the ids of all As overlapping Bs
if you had:
A overlaps B
+
A id = B id >> this would have picked all A whose IDs matched any of the overlapped Bs,
but this would have
not filtered overlapped Bs, so you would have "false" matches with all overlapping Bs
if this is not 100% clear,
just try swapping terms until you get desired result when something doesn't work as intended XD
Plus, make sure you use "alterable value of (object) = ..." action for comparisons,
when you want to filter specific objects,
because "compare two general values" (as you had) won't filter objects in the same way,
unless you're already filtering the objects in the comparison (i.e. in a "foreach" loop).
For randomizing tiles, there can be various solutions, here's a quick one:
Attachment 22751
(see code between the two yellow comments)