Got it.
For a rotate before attack animation to work, the other unit must also have the ranged attack animation flag, if not, the attacking unit will rush in first and attack.
Here is why I believe this is so:
the animation sequence actually goes like this:
for attacker it goes run-->attack if the enemy is not ranged
if the enemy is ranged, it goes fortify-->attack
the defender always goes fortify-->attack
when watched more closely, you will see that when a swordsman fights a spearman, they do not rush towards each other and meet in the middle, rather the spearmasn fortifies, and the swordsman rushes.
I figured this out because my lasership rotated and attacked every unit but my carrier. So I checked my unit rules, and what do you know, I forgot to give the carrier ranged attack animation. I changed that, started the scenario, and viola, success.