Lots of suggestions about improvements for the Bobby AI were made over the years. I combined all I could remember into this one. Part one is a new interface as shown below, while part two are some under the hood improvements. If you think something is missing, feel free to post.
Further improvements:
Edit Nov.05.16: I suggest the following order of target priorities (from highest to lowest):
- AI Active: AI switches into sleep mode when a player enters the entity and wakes up automatically after the player leaves.
- Target neutral warheads: Essential for shooting down unfactioned torpedoes.
- Target neutral astronauts: Useful for internal defense guns guarding sensitive areas, that shouldn't be accessible by visitors (= potential saboteurs).
- Target neutral attackers: All non-allied entities and astronauts that do damage to the AIs entity are classified as hostile. If a docked entity does damage, then its mothership is also classified as hostile.
- Concentrate fire: If activated, AI will try to attack the same target as other AIs, else it will try to attack a target, that isn't under attack by another AI, yet. The latter is especially useful for point defense.
- Edit Nov.05.16: Shoot parallel /w mult. outputs: AI will shoot with right-click instead of left-click, if multiple weapon outputs are available.
- Target distance: Several options are available via dropdown list. These are "closest", "furthest", "median" and "none". All viable targets are sorted by range and attacked in that or the opposite order if "closest" or "furthest" are selected. If "median" is selected, the target in the middle of that list is attacked, while "none" lets the AI ignore target distance.
- Target size: Same as "Target distance", but sorted by block count instead of distance. If a carrier sends out 50 2-block distraction dummies and 100 drones, the option "median" will pick a drone.
- Edit Nov.05.16: Target speed: Same as "Target distance", but sorted by current speed (not max speed). This is useful for slow turning turrets on the one hand and turrets with stop effect on the other hand. Should have a lower priority than the two previous options.
- Missile approaching speed threshold: This refers to the relative speed between missile and anti-missile turret and is intended to prevent the latter from shooting at missiles, that already missed and are flying away. The moment a missile passes by a turret, the approaching speed becomes zero and then goes negative. Since at that point the turret already turned by 90°, it might be better to choose a number somewhat bigger than 0, so the turret will pick another target sooner. Setting the threshold above the speed of slow missiles allows for prioritizing fast missiles. If there are no valid targets, then slower and missed missiles are also attacked. When there are no targets at all, the turret will retrun to its default orientation.
- Target Priority: The individual entries in this list can be moved from the box "Available Target Options" to the "Target Priority" box via drag&drop. The position of each entry in the list can be changed via drag&drop as well. An AI with the above shown settings would first fire at missiles, then warheads, then astronauts, and if none of these were present, it would shoot at other available targets without further priorization; if "Any" wasn't in the list, the AI would stop firing and return to default orientation instead.
- Edit Oct.23.16: Keep distance at weapon range: Available options are "highest" (AI tries to keep at a distance from the target so that it can use the weapon with the highest range) and "lowest" (AI gets close enough to have the target within range of all available weapons).
Further improvements:
- There's no setting for "Ship/Turret/Torpedo". If the entity is undocked or docked to a rail the AI acts as ship, if it's docked to a turret axis it acts as a turret, and if it's undocked, doesn't have any weapon computers, but warhead blocks are present, the AI tries to ram the target.
- If a turret AI is set to attack the selected target, it should also attack the same target as the mothership, if that is AI controlled as well. (Not sure if that's already the case, but I think not)
- Also, AIs should never fire at selected firendly targets.
- AIs should ignore targets to which no line of sight exists, unless no other targets are available.
- If several targets with the same priority are present, the visibly closest target should be picked. That is the target that requires the least rotation to aim at.
- Replace intentional mis-aiming by randomized aiming or at least a pattern where some shots are more precise than others. Seriously, targets below a certain size being unhittable - even with beams - isn't fun.
- Target priority should be re-checked immediately after the current target is destroyed or becomes invalid. Otherwise re-checks should only occur every 10-20s, maybe even more, to avoid wasting too much time with switching between targets.
- Power/shield supply and astrotech beams should be used automatically on friendly targets. Power supply should fire at the target with the lowest power, shield supply should prioritize low system HP, then low shields, and astrotech beams should go for low system HP, then low armor HP (always percentage-wise). Power/shield supply should start when a target drops below ~75% to prevent unnecessary activation. Once started, supply should charge target up to ~95% (or the next re-check) to avoid constantly switching between targets, which are fluctuating around the 75% mark.
- AI should also be able to use salvage beams on turrets.
- When a mix of systems is present, first look for a weapon target, then a support target, then a salvage target.
Edit Nov.05.16: I suggest the following order of target priorities (from highest to lowest):
- Target Priority box
- Concentrate fire
- Missile approaching speed threshold (if applicable)
- Target size
- Target distance
- Target speed
Last edited: