https://community.bistudio.com/wiki/addGroupIcon and https://community.bistudio.com/wiki/setGroupIcon allow to set an offset for x and y
offset: Array - (Optional, default [0,0]) X and Y offsets of the icon in form [offsetX, offsetY]
The problem is both set the same for 2d and 3d - while in 3d you usually want over (+y) the unit, while in 2d you want to the side (+y) to avoid overlap with the unit icon
Suggestion to extend both with optional offset2d parameter
group addGroupIcon [iconClass, offset, offset2d] group setGroupIcon [id, icon, offset, offset2d]
And if offset2d is defined, the engine would use that value instead of offset for the 2d map drawning