I also found a bug in NPR automated ship design that prevented them from using ECCM. That is fixed for v2.0.
Regarding the NPRs actions. It sounds like the relationship recovered enough to make them neutral again (the -2000 is your view of them, not their view of you). Some NPRs will not attack populations without STO (usually those with low XEN) and will use ground forces instead. So if they were railgun-armed they couldn't respond to missile attack and their philosophy prevented planetary bombardment. When they engaged, the ECCM bug would reduce their effectiveness against ECM-protected ships.
I wrote in the topic about errors, about all the illogical manifestations of AI that I noticed ...
The main problem, I suppose, is not in ECCM, but in the fact that the AI in my game:
1. Did not replace templates of my ships with new, improved ones.
2. Did not include in fleets with the most massive warships - ships with anti-missile point protection.
3. Did not use railguns as missile defense.
4. After all the battles with me, I am unable to assess the threat posed by my fleet.
I'm not sure how this can be programmed (I guess building the AI in this game is a very difficult task), but something like
1. "If the enemy fleet possesses 3 ships of the Kruiser mk1 type and it destroyed 20 of my ships without loss, then do not send less than 50 ships against fleets with 3 ships of this type" (accordingly, the number depends on the number).
Well, this is the simplest thing.
Perfectly:
2. "If the enemy fleet fires missiles":
A) To add anti-missile ships to the combat fleets.
B) If 1 enemy salvo inflicted 400 damage and destroyed 2 ships:
- calculate the approximate maximum stock of enemy missiles based on the tonnage and the number of rocket launchers (salvo size)
- calculate, taking into account the speed of the AI ships and the speed of the missiles, the time required to approach the player's ships.
- If it is possible to create a fleet that is EITHER large enough to survive all the enemy's volleys, or, taking into account the speed, is able to reach the effective range of fire while retaining ENOUGH ships - create it and attack (ideally, combine all warships).
- If it's impossible, avoid the fight.
At the same time, to activate the program for the construction of anti-missile ships, so that they are able to shoot down the entire maximum salvo of the enemy.
C) In principle, it is possible to simplify the life of the AI, and provide it with information about weapons, stock of missiles, etc. ships that participated with him in battle - directly. This way the AI can adapt more easily.