View Issue Details
|ID||Project||Category||Date Submitted||Last Update|
|0023297||AI War 2||Bug - Gameplay||Jun 14, 2020 1:50 am||Aug 10, 2020 9:22 am|
|Product Version||Beta 2.065 To Infinity And... No, Knock It Off|
|Summary||0023297: Tackle drones going after guard posts|
|Description||Not sure why, but my tackle drones keep going after guard posts even when there's mobile ships on the planet that they could be tractoring (and thus getting their damage bonus). This may be a more widespread issue, my sentinel gunboats also seem to like shooting at guard posts over mobile military.|
|Tags||No tags attached.|
Can you attach a save? I just tested 400 spiders vs an AI planet in various situations and whenever newly-alive engines came in range they switched over to clearing those (not instantaneously, the targeting logic doesn't run every ship every time), and didn't seem to shoot much (if at all) at non-mobile units while mobile units were in range.
So it may be specific unit types (not spiders) or specific gamestates (heavy load, more delay between targeting computations, etc), but I can't tell without a save.
Some information for you Keith. (Nice to have met you in some form, it was interesting reading your work on Classic, and I often referred to it when trying to figure things out when I worked on 2).
I would guess these are Deathgrip Tackle Drones, as normal ones can never deal damage. It seems you can add this line:
To their functional weapon to possibly solve this. Something I should've done before.
Good to meet you too, Puffin. Thanks for your work on AIW2.
I see now that I misunderstood the point of this post; I was thinking about engine-damage based on something Chris had said. Nonetheless, Spiders at least are going after their preferred prey, and not much after guard posts.
On Tackle Drones, I only see one kind (not Deathgrip) in the xml, and it has a gun, and that gun has only_targets_mobile_units="true" . Is it still shooting-at / going-after guard posts?
On Sentinel Gunboats, I don't see anything in the data to indicate that they should prefer shooting mobile enemey ships over enemy guard posts. Is their current behavior undesirable, because they wind up shooting stuff not involved in the current fight, etc?
Overall, if someone posts a save where I can load it and see the undesirable behavior, and tell me what the desirable behavior is, I can probably figure something out :)
There are two types of Tackle Drones:
1): The normal kind, in KDL_Ships_Drones in the base game GameEntity folder. This is spawned by only the Backdoor Combat Factory. This pre-dates the DLC, in which we put the Backer units, such as the Tackle Drone Launcher.
2): Deathgrip Tackle Drones, in TSR_Ships_Frigates in The Spire Rises DLCs GameEntity Folder, and is spawned by those Tackle Drone Launchers. This version exists because I had accidentally created the former already before the DLC, and did not want to remove base game content for a DLC one, nor have a backer unit be so similar to a pre-existing one.
A key thing here is that they both have a weapon system that is disabled. However, the unit still tries to attack with it (which does nothing). This gun is shorter range than the tractor, thus making it so the target is always held out of range, so it keeps trying to go to it, thus pushing the target constantly until it hits the edge of the gravity well. It also has a 0x damage multiplier versus units whose albedo or engine stats would make it immune to the tractor, and lastly it cannot target structures.
Deathgrip Tackle Drones have another weapon in addition to that fake one. This one works, and does damage. It however does not have that XML to make it unable to target structures. This is the weapon that line needs to go on.
I hope that's clear enough, it's a bit odd. The Deathgrip Drone should really be in the Drone file. I forget why I kept it next to its parent Frigate.
Keith, if I was prioritizing something in this vein, it would be trying to have units de-prioritize non-aggroed guard posts. A number of people have complained over the years about long ranged units especially provoking aggro from everything on the planet quickly.
If you recall, guard posts don't release their ships until aggroed in some capacity (generally a unit either shooting the guard post or a guardian near the guard post). It would be ideal if long range units would prioritize already-aggroed units and guard posts, instead of provoking other guard posts that haven't released their ships yet.
I don't have a reproduction scenario in hand, but it's definitely a complaint. It would be better if your FRD units could take out a planet methodically.
Edit: Since Puffin has real scenarios to work with, go with those!
PS Puffin, nice to see you on mantis again! I hope things are going well.
A couple of saves I set up. Hopefully they work, as I had to clean out mods and had issues with crashing upon entering the lobby.
The first one exhibits some Deathgrip Tackle Drones currently holding some units, which they should get a damage bonus against. They are mostly firing at units not held instead, such as Turrets and Agravic Pods.
Second they are rushing for Guardians which they cannot hold either, ignoring the units they can. This is a good example I believe of the Guard Post problem, in which a units priority set in the XML appears to override damage bonuses. I recall in the past issues of Fortified Tesla Guardians taking all the sniper shots due to their priority, despite taking only 1% of that damage.
TackleDroneTargetingOddity.save (360,186 bytes)
TackleDroneTargetingOddity2.save (362,562 bytes)
||Thanks for those saves; been looking into it as I have time. I've found that the only_targets_mobile_units flag is not adequate to get the deathgrip tackle drone to stop shooting at non-mobile units, so I'm working through instrumenting the targeting code for tracing, etc.|
For next version:
* Fixed a bug where deathgrip tackle drones had a gun that could shoot immobile targets, greatly confusing their logic. That gun now has the only_targets_mobile_units flag.
** Also fixed a bug where tackle-drone-launchers could give their spawned drones a direct attack order to go after an immobile unit.
Turns out the targeting logic itself was honoring the flag, but the code drone-spawning code was bypassing it with a direct order (and that flag doesn't actually make it impossible to DAMAGE an immobile unit, only to target it).
Thanks again for the saves, Puffin, couldn't have tracked this down without something like that.
On TackleDroneTargetingOddity2.save , I think it's still not acting right, but perhaps closer than before.
I suspect the main problem there is that a drone's first target is typically inherited from the drone-spawner. The drone-spawner, naturally, produces very different targeting decisions than a drone would because it has a totally different armament, etc. That said, I hesitate to simply remove the "drone inherits spawner target" rule without seeing how the changes already implemented do.
If I remember right, the XML tags for targeting only prevents that weapon from adding a unit as a target, instead of preventing it from firing at it. This means that if a unit has two weapons, one with the tag, and one without, the latter can put a target into its list, which the first weapon would be allowed to fire at, despite being told not to.
I didn't think of this at the time, but the Drones in those saves might still have targets in their list, and because of how the tag works they can still shoot at it. Maybe.
|Jun 14, 2020 1:50 am||tadrinth||New Issue|
|Jul 10, 2020 5:32 pm||keith.lamothe||Note Added: 0057552|
|Jul 10, 2020 6:20 pm||RocketAssistedPuffin||Note Added: 0057553|
|Jul 16, 2020 3:32 pm||keith.lamothe||Note Added: 0057651|
|Jul 16, 2020 4:58 pm||RocketAssistedPuffin||Note Added: 0057655|
|Jul 16, 2020 5:21 pm||BadgerBadger||Note Added: 0057656|
|Jul 16, 2020 5:32 pm||BadgerBadger||Note Edited: 0057656||View Revisions|
|Jul 16, 2020 5:33 pm||RocketAssistedPuffin||File Added: TackleDroneTargetingOddity.save|
|Jul 16, 2020 5:33 pm||RocketAssistedPuffin||File Added: TackleDroneTargetingOddity2.save|
|Jul 16, 2020 5:33 pm||RocketAssistedPuffin||Note Added: 0057657|
|Jul 16, 2020 5:48 pm||BadgerBadger||Note Edited: 0057656||View Revisions|
|Aug 7, 2020 10:03 am||keith.lamothe||Note Added: 0057982|
|Aug 7, 2020 5:26 pm||keith.lamothe||Note Added: 0057995|
|Aug 7, 2020 5:27 pm||keith.lamothe||Note Edited: 0057995||View Revisions|
|Aug 10, 2020 8:12 am||keith.lamothe||Note Added: 0058023|
|Aug 10, 2020 9:22 am||RocketAssistedPuffin||Note Added: 0058024|
|PLUGIN-1||0||SMFAuth SMFAuth.php:55 SMFAuthPlugin->auto_login()||SMFAuth Initializing|
|PLUGIN-2||0||SMFAuth SMFAuth.php:59 SMFAuthPlugin->auto_login()||SMF Settings loaded from /home/arcengames/public_html/forums|
|PLUGIN-3||0||SMFAuth SMFAuth.php:147 SMFAuthPlugin->decodeCookie()||Cookie doesn't exist! Is the user logged into the forums?|