A quick change that would help (and deal with a mantis thing I saw go by earlier) is to replace
ArcenPoint exitPoint;
if ( entity.PlanetFaction.Faction.Type == FactionType.Player )
exitPoint = otherSideWormhole.WorldLocation;
else
{
//figure out where to have the unit actually "exit wide"
FInt allowableDeviationMultiplier = FInt.FromParts( 0, 080 );
FInt minValue = FInt.One - allowableDeviationMultiplier;
FInt maxValue = FInt.One + allowableDeviationMultiplier;
FInt actualValue = FInt.Create( Context.QualityRandom.Next( (int)minValue.RawValue, (int)maxValue.RawValue ), false );
AngleDegrees angleToExit = angleToWormhole * actualValue;
int distanceToExit = ( ( (FInt)distanceToWormhole * Context.QualityRandom.NextInclus( 98, 102 ) ) / 100 ).IntValue;
exitPoint = Engine_AIW2.Instance.CombatCenter.GetPointAtAngleAndDistance( angleToExit, distanceToExit );
}
with just "ArcenPoint exitPoint = otherSideWormhole.WorldLocation;"
That will kill the "AI ships popping out far away from the wormhole" thing.
It made a lot more sense when the wormholes were all along the edge of the grav-well, and the intent was for ships to visually "zip in" from the distance rather than just popping in.