As far as the backing off - if you have a reproducible scenario, most ideally a 1vs1 in the simulator - I'd love to take a look! The AI generally tries not to back off more than it needs to to vent, so if it's backing off more than what "looks" safe then one of the possibilities is an enemy ship in range having missiles that it considers threatening during a vent. The AI is capable of staying close to enemy weapon range while venting, without backing off further (at least, I tested that a while back) so if it's backing off more than that, it's seeing some reason for it. Or there's a bug; that's always an option too.
Sorry for the necro, it took a while for me to look at what's happening (multiple times!) to get a sense of under what conditions will this happen.
It happens even when the ship is at zero flux. I don't know how the AI works that well, but it seems like it switches from "move toward target" when it's really far away to "maneuver around target" at around 2000-2500 su away from the target. At this time, sometimes it'll decide to flank the target instead of heading straight in, and sometimes it'll decide to back off. The problem is that the AI will do this even if it's supposed to "Eliminate" the target, even if it's at zero flux, even if the target only has short-ranged weapons, even if there are no other enemy ships/missiles/fighters nearby, even if there's already a friendly ship in front engaging the target, and even if the target is moving away. So the effect is that the ship is advancing toward the target, then suddenly back off at around 2000 su away, then head back toward the target once it's around 3000 su or so away. If the target was moving away, then this means that it'll take a *really* long time for the ship to eventually catch up to the target, especially if the target was a frigate.
It's not all the time so it's hard to set up a reproducible scenario, but it happens fairly frequently when I set a frigate to chase another frigate, such as when trying to capture objectives, or when an enemy ship is heading toward an objective and I then send a frigate after it.
This also happens with the "Capture" command, where if you send your ship to capture an objective, but an enemy ship is also heading there, sometimes your ship might back off even if it's able to overpower the enemy ship, letting the enemy ship capture it. That sort of defeats the purpose of the "Capture" command if the AI is going to yield to an enemy ship that it can easily defeat.
Here is an example where both ships are ordered to "Eliminate" an enemy frigate but decide to back off at first instead before engaging. The Scarab has an Aggressive officer and the LP Brawler doesn't have an officer but the fleet doctrine is set to Aggressive (level 3 out of 5 on the Aggression setting). At the end of the video, just before the Scarab kills the enemy Glimmer, you can see the LP Brawler backing off a second time:
In the sim, I can get this to happen in several ways. For example, take a bunch (say, 5-10) LP Brawlers and spread them out in a line. Have them start moving, say to the left (so that they're at different distances; this seems to happen at that particular distance). Then spawn in an enemy frigate, and order them to "Eliminate" the frigate. Quite often, at least one of them will decide to flank (move perpendicular to) or back away from the enemy frigate, despite being at zero flux and being far away.
That would do it, yeah. It might also have some other consequences - which might be desirable given an Eliminate order - but I'd have to dig into it some. For example, a case like "you issue an eliminate from far away, the ship targets the Eliminate target, and now can't effectively use missiles against something that's actively engaging it and needs to be fought" - you'd have to handle this with some amount of care. Made a note to have a closer look at all this.
Making the ship select the target (i.e. "R") seems like it should work out, at least at first glance. If the target is out of range, autofire will automatically fire at any other ships in range. If the target is in range, then the player is wanting the ship to fire at the target ship regardless of if other enemy ships are in range; it's up to the player to use the "Eliminate" command correctly, otherwise there's still the "Engage" command if the player just wants the ship to "sort of" go after the target.
I'd also settle for the GO HERE order actually GOING. Failure to actually obey GO HERE NOW orders (even the suggested "Rally Civilian" order doesn't actually work). If I order GO HERE NOW, I expect to see either that the thrust and velocity vectors immediately begin aligning with the direction I just ordered, or that somebody gets shot for not following orders.
Yeah I would offhandedly say around 2/3 of the AI issues revolve around moving to the right place. It's something that humans are good at intuiting, but machines are bad at. I remember reading somewhere along the line that around 1/3 of the development issues with Starcraft had to do with the pathing algorithm. So I know it's a hard problem. Even so, it would be nice if there were a command that's simply "go here and I mean it". "Rally Civilian" sort of works, but I've sees plenty of examples where (like above) the ship will sometimes back away even at low flux instead of advancing toward the point.