View Issue Details

IDProjectCategoryLast Update
0023585AI War 2Bug - GameplayAug 29, 2020 4:22 pm
ReporterGreatYng Assigned ToChris_McElligottPark  
Status assignedResolutionopen 
Product Version2.122 Empire Names 
Summary0023585: Structures that increase AIP on death can be killed without incurring AIP penalty using Artillery Golem
DescriptionIf the shot that will kill the structure hits when the firing ship has already left the planet, then no AIP penalty is incurred.
I used the Artillery Golem, but I assume another ship with slow enough shots (Ramifier) might also work.

In the attached save you can order the Artillery Golem to fire on the Warp Gate and immediately after firing have it pass through the wormhole, and then no AIP is incurred.
It also works on the Troop Accelerator.
If you kill the AI Command Station this way then the automatic destruction of the Warp Gate happens, but the AIP does not increase due to either.
If you kill the AI Command Station this way before removing the Troop Accelerator then the automatic destruction, and AIP increase, of the Troop Accelerator does still occur.
TagsNo tags attached.

Activities

GreatYng

Aug 25, 2020 9:53 am

reporter  

What AIP.save (772,247 bytes)

BadgerBadger

Aug 25, 2020 12:06 pm

manager   ~0058178

AIP changes for things like this are done in the Scenario code, in HandleAIPIncrease(). This is called by DoOnAnyDeathLogic_AfterFullDeathOrPartOfStackDeath(), and it uses the variable EntitySystem FiringSystemOrNull to figure out who is doing the shooting. I suspect that if the ship that fired the shot isn't on the planet, the game loses track of which EntitySystem fired the shot. And if the game doesn't know which EntitySystem fired the shot, it doesn't increase AIP (this is essentially a safety mechanism to make sure that any weirdnesses don't hurt the player, like if a hostile-to-all marauder fires the lethal shot but the GameEntity dies while its shot is in midair.)

Chris_McElligottPark

Aug 29, 2020 4:22 pm

administrator   ~0058269

The entitysystem should still be present unless the attacker died, but funky things are known to happen in a game of this complexity for sure. At some point I'll have to look into this one.

Issue History

Date Modified Username Field Change
Aug 25, 2020 9:53 am GreatYng New Issue
Aug 25, 2020 9:53 am GreatYng File Added: What AIP.save
Aug 25, 2020 12:06 pm BadgerBadger Note Added: 0058178
Aug 29, 2020 4:22 pm Chris_McElligottPark Note Added: 0058269
Aug 29, 2020 4:22 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Aug 29, 2020 4:22 pm Chris_McElligottPark Status new => assigned