Someone has just sent me a database with a new yoyo bug. A ship of the new aliens was attacking a Star Swarm Queen. The new alien was faster and had longer range weapons and therefore couldn't be attacked by the Queen. However, the shield recharge rate of the Queen was higher than the damage output of the new alien so stalemate ensued. I could try and program the AI to deal with this but there are so many variants on this theme that I have decided on a more brute-force approach. It isn't ideal but I hope it will solve the problem of yoyos once and for all. In v5.20, Aurora will keep track of how many consecutive increments are shortened and will track which NPR fleet is causing the shortening to take place. Once the total of consecutive shortened increments exceeds 200 and the last shortened increment wasn't due to missile flight times, Aurora will take corrective action by deleting the fleet that caused the last shortened increment. I considered tracking the fleets causing increment shortening over a long period as well but sometimes the reason for increment shortening varies between missile flight, fleet interception and being within firing range, which can throw off the tracking. Using the last fleet will work in the vast majority of cases and it will just be unfortunate for the odd NPR fleet if Aurora picks a late entrant that is continuing an existing yoyo problem.
This automated process will replicate the current manual cure for the vast majority of yoyo bugs and it will be hidden from the player as this only affects NPR fleets, so it shouldn't affect suspension of disbelief. So in v5.20, if a yoyo problem persists, set automated turns going and let the program sort itself out. My only concern is that 200 consecutive short increments may not be high enough to avoid affecting actual battles rather than just bugs so I may adjust that figure upwards.
Steve