Skip to content

Feature request: expose a player's match result as soon as that player's participation ends #297

Description

@chunkychoc0

Summary

Today a match becomes visible only after the whole match finishes, and then only after a processing delay of a few minutes. For a player whose squad is eliminated in the first circle, that can mean 30 minutes or more between "I'm out" and "my kills and placement exist in the API". A per-player result available at elimination time would unlock live community scoreboards without exposing anything about the match still in progress.

Use case

Small clans run "kill-count nights": several squads play their own matches at the same time and score kills, deaths, and placement toward a point goal on a shared board. The board needs each squad's result when that squad is out, not when the last squad standing wins. Right now the only options are typing numbers by hand from the death screen, or third-party memory-reading tools on each player's PC. Both are worse than data from the source.

What a player already knows at elimination

The death screen shows the player's placement, kills, and damage dealt, and telemetry records LogPlayerKillV2, LogPlayerMakeGroggy, LogPlayerRevive, and LogPlayerTakeDamage for that player at the moment they happen. Nothing in a per-player result would reveal information about opponents still alive: placement is final for an eliminated squad, and kills and damage dealt are the player's own totals, already shown on the summary screen.

Proposal

Any one of these would be enough:

  1. GET /shards/{shard}/players/{accountId}/current returning { matchId, placement, kills, dbnos, revives, damageDealt, timeSurvived, status: "eliminated" | "in_progress" }, populated once the player is knocked out for good, has left the match, or the match has ended. Placement would be present only once it is final for that player.
  2. A partial match object under the existing /matches/{id} route that lists only rosters and participants that are already out, with attributes.status: "in_progress", and that becomes the normal full match object when the match ends.
  3. Failing either of the above, a documented target for the post-match delay, and inclusion of the match id in the player's match list as soon as the match ends, even before the match object is complete, so clients can poll one id instead of the full list.

Rate limiting

Option 1 fits the existing model if it counts as a /players call. Clients would call it once per squad when a player reports being out, rather than polling the match list every few minutes for half an hour.

Environment

Steam shard, official and competitive squad modes.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions