Possible remedies:
1. Change Bounty System so that NPCs doing scans do not actually "target" the ship being scanned; the player can still be required to do so, since the player is not controlled by AI.
or
2. Change Priority AI to not assume its current target deserves to be attacked.
In Resources\Scripts\oolite-priorityai.js there is some code that looks like this (in the configurationAcquireCombatTarget function):
Code: Select all
/* Iff the ship does not currently have a target, select a new one
* from the defense target list. */
if (target)
{
if (target.isInSpace)
{
return;
}
Maybe something like this:
Code: Select all
/* Iff the ship does not currently have a target, select a new one
* from the defense target list. */
if (target)
{
if (target.isInSpace && target.target === this.ship && (target.hasHostileTarget || target.bounty > 0))
{
return; // keep current target if it is in space, targeting us, and is either an AI hostile to us or has a bounty
}