Skip to content

Explosive kill with DC'd attacker shouldn't show as suicide in killfeed #2010

Description

@Rainyan

Build Info

be7e90d

Description

When an attacker to whom a live neo_grenade_frag or neo_deployed_detpack is attributed to disconnects before that explosive detonates, the killfeed incorrectly displays it as suicide.

Can probably detect this by checking if event->GetInt("attacker") is 0 while event->GetString("weapon") is not "world", although unsure how to best represent the result when that info is missing. I guess we could encode more information to the nade's event, so even if the attacker is gone, we had the last known attacker name + team? Or possibly add placeholder fields for that info that are only populated for the special case, to save bandwith? Or some other means of caching that data server side for currently live explosives.

To Reproduce

  • Load map devbox;
  • Join a team as recon class (so you yourself don't have a nade)
  • Set bot_class 1; bot_add; to spawn an enemy assault
  • Set bot_mimic 1;
  • Wait for round to begin
  • Drop all of your guns
  • This should end with you having the knife equipped and the mimiced bot holding out their frag grenade
  • Prepare to neo_bot_kick all; in console to kick the bot
  • Mimic input to make the bot toss the nade at you
  • Then execute the bot kick command with the console command before the nade explodes

Expected behavior

Killfeed displays the information correctly

Actual behavior

Killfeed shows as if you suicided (weapon "neo_grenade_frag", attacker 0 incorrectly identified as attacked by the world in the event)

Operating System

  • Windows
  • Linux

Version/Distro

11

Additional context and Screenshots

Only tested with the frag grenade and CTG mode killfeed, but I would assume this applies to other game modes and to the detpack as well.

Also tried to trigger the anti ghostcap prevention with this by making a 2v1 against two bots, where one of the bots holds the ghost, and the second bot does the nade-disconnect disappearing trick to frag the last player in the non-ghosting team. But that didn't seem to trigger the anti ghostcap prevention, so maybe it's fine? Didn't look too deeply into it though.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Bug ReportBug Reports made through the "Report Issue" interface in GitHub.

    Type

    Fields

    No fields configured for Bug.

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions