Author Topic: [Resolved] Destroying targets in Overwatch  (Read 3196 times)

ushas

  • Hero Member
  • *****
  • Posts: 661
[Resolved] Destroying targets in Overwatch
« on: July 22, 2017, 02:19:01 AM »
(v18, linux, VI)

Sam is in a killer mood overwatching with upgraded Patriot, Normal mode. Ray is peaceful, overwatching with SMG, triple shot mode. SlumConstruction1, config:0, churchers.

One of the enemies (full HP) is interrupted during his movement when an overwatch triggers from both (seems at the same time). First Sam shoots and deals damage then Ray. Ray's burst finished the target, but the game freezes at that point (still during the target's turn). The target stays standing and its tooltip is still on the front, yet the loot is dropped.   

Around the error in the log:
Code: [Select]
CharMainScript.StartRangedAttack. Attack has succeeded. Hit miss count: 3 attack damage list: 3
CharacterMainScript.ReduceHP. Method called. is overwatch: False /is AOO: False
CharacterMainScript.HandleWoundedState. Health %: -0.5031 < Heavy: 0.25 < Light: 0.5
CharacterContainer.SetWoundedState. Method called. Wounded state is: 2
Item.ApplyDeteriorationFromUse. Method called. Item condition %: 1
CombatQueueManager.UpdateCombatantIcon. Method called for character ID: 2 health is: -5.031
NullReferenceException: Object reference not set to an instance of an object
  at CombatQueueManager.UpdateCombantantIcon (Int32 characterIDIn, Single currentHealthIn, Int32 currentMaxHealthIn, Single healthPercentIn) [0x00000] in <filename unknown>:0
  at CharacterMainScript.ReduceHP (Single hpIn, Int32 minLethalityIn, Int32 armourDamageTypeIn, Int32 injuryDamageTypeIn, System.Collections.Generic.List`1 appliedStatusEffectsIn, Boolean attackIsCriticalIn, .CharacterMainScript attackerScriptIn, Boolean isFireDamageIn, Boolean isMessageSent, Boolean isOverwatchAttackIn, Boolean isAOOIn) [0x00000] in <filename unknown>:0
  at CharacterMainScript+<StartRangedSingleTargetAttack>c__Iterator3A.MoveNext () [0x00000] in <filename unknown>:0

Will revisit later. No thoughts on reproducibility or factors yet.

PS: I saw Ray push an enemy one tile back as a side-effect of a HtH attack. That was so cool! It would be awesome to be able to do that deliberately.
« Last Edit: July 25, 2017, 12:05:18 PM by Daithi »

Daithi

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1250
Re: Destroying targets in Overwatch
« Reply #1 on: July 23, 2017, 10:26:46 PM »
Looks like an issue with... surprise... the initiative queue. I'll look into it, thanks!

Daithi

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1250
Re: [Fix Req] Destroying targets in Overwatch
« Reply #2 on: July 25, 2017, 12:05:04 PM »
Managed to recreate. This is caused by a character being killed, their icon and attached code being destroyed, then subsequent burst fire shots hitting the character, and attempting to access the destroyed objects. Have fixed the problem, and a few levels of overwatch trolling with SMGs, with the same situation being recreated, has thrown no further errors. There is a good chance this was responsible for the problems Nomad found in this update. Since the cause of this was unsufficient error handling when trying to remove a portrait, it's possible (will check) that this was the cause of a couple of issues Ushas found with fleeing enemies.

ushas

  • Hero Member
  • *****
  • Posts: 661
Re: [Resolved] Destroying targets in Overwatch
« Reply #3 on: July 25, 2017, 10:18:24 PM »
Yeah, it can be. Recalling several issues having "UpdateCombantantIcon" among the lines of the error, if that's what you're talking about. Would be really a relieve, for sure some looked like Loch Ness bugs.