Due to their Building nature their location is actually the top left cell highlighted here:

That cell however is completely passable and buildable on. Tiberium on that cell will not trigger a tree transform, since TransformsNearResources only checks adjacent cells, which also means the following trees will never transform despite visually being right next to resources (logically they are two cells away):

The footprint also causes the tooltip to show when the mouse is hovering over the highlighted cells next to a tree:


Fwiw, this also causes things like the following:

My initial idea was to remove all _ footprint cells, but that will change the (visual) position of all tree actors. (At least _ are buildable on, so that wouldn't regress.) The other idea would be to special case things like selection and TransformsNearResources. I would prefer the first option, but it is a huge task and I wanted to hear what others think first (if there are any opinions).
I may be missing something, but I see two quite different issues here:
1) TransformsNearResources should be using the actor footprint, not its Location. We have a helper method specifically to get all the cells around the edge of a building's footprint.
2) Tooltips should be based on the selection bounds, not the footprint (aside from the fact that the default bounds are based on the footprint). Is anything stopping us from defining proper selection bounds in yaml, like we do for many other actors?
Not sure if 1. wouldn't look bogus too, since then trees would transform with Tiberium visually (more than) two cells away. (From what I've seen Tib can spread on _, so it being right next to the tree is possible, which would make remote-transforming even more odd.)
_ means "no footprint", so shouldn't be counted?
I see. It currently is for both TransformsNearResources and the TopLeft property though.
Yeah. TransformsNearResources is a bug, with a simple fix as I noted above. TopLeft is expected, and generally not a problem.
Which still leaves me wondering why a 1x1 actor has a 2x2 footprint with 3 "I'm not part of the footprint" type cells.
Which still leaves me wondering why a 1x1 actor has a 2x2 footprint with 3 "I'm not part of the footprint" type cells.
Because our tree footprints are ancient leftovers from the early days of OpenRA and still (largely) match the original games.
And fixing them would require updating every single map, otherwise I'd have adressed this ages ago.
Most helpful comment
Which still leaves me wondering why a 1x1 actor has a 2x2 footprint with 3 "I'm not part of the footprint" type cells.