Skip to Content
VLRdevAPI

Replay de la Serie (Series Replay)

Obtén la cronología del kill-feed ronda por ronda: bajas con armas y coordenadas espaciales, plantas/desactivaciones de Spike, resurrecciones y ángulos de visión.

series.replay(series_id, game_id) devuelve la línea temporal del registro de bajas (kill-feed) para cada ronda de un mapa específico dentro de una serie en vlr.gg (pestaña logs).

Firma

series.replay(
    series_id: int,
    game_id: int,
) -> ReplayData

Con acceso curried:

vlrdevapi.series(series_id).replay(game_id: int) -> ReplayData

Parámetros

Prop

Type

Retorno - ReplayData

Prop

Type

Método auxiliar round(round_number)

ReplayData.round(n) devuelve el objeto ReplayRound para una ronda determinada (base 1) o None.

ReplayRound

Prop

Type

Asistente loadout_for(player)

ReplayRound.loadout_for(player) acepta un nombre de jugador que no distingue mayúsculas/minúsculas (ej. 'Derke') o un player_id numérico, devolviendo el PlayerRoundLoadout del jugador para esa ronda, o None.

PlayerRoundLoadout

Instantánea del equipamiento y economía en la fase de compra de un jugador al inicio de una ronda.

Prop

Type

ReplayEvent

Un evento en la cronología de la ronda. type es un enum ReplayEventType (KILL, PLANT, DEFUSE, BOOM o RESURRECT; .value da la cadena en minúsculas y .full_name una etiqueta descriptiva); derived: True marca los dos tipos que vlr.gg no registra como filas del feed (la detonación de la spike y las resurrecciones).

Prop

Type

ReplayActor / ReplayAlivePlayer

Prop

Type

ReplayPlayerRef

Prop

Type

Ejemplos

Registro del kill-feed en la Ronda 1

import vlrdevapi

replay = vlrdevapi.series.replay(series_id=754737, game_id=283288)
print(f"{replay.team1} vs {replay.team2} ({replay.num_rounds} rondas)")

for ev in replay.round(1).events:
    who = ev.actor.name if ev.actor else "-"
    print(f"{ev.seq}. {ev.seconds}s {ev.type.full_name}: {who}", end="")
    if ev.cause:
        print(f" ({ev.cause})", end="")
    if ev.victim:
        print(f" -> {ev.victim.name}", end="")
    print()

Plantas y explosiones de Spike

import vlrdevapi
from vlrdevapi._series.replay.models import ReplayEventType

replay = vlrdevapi.series.replay(series_id=754737, game_id=283288)

for ev in replay.round(14).events:
    if ev.type in (ReplayEventType.PLANT, ReplayEventType.DEFUSE, ReplayEventType.BOOM):
        print(f"{ev.clock or '-'} {ev.type.full_name} zona {ev.site} en ({ev.pos_x}, {ev.pos_y})")

Acceso curried

import vlrdevapi

series = vlrdevapi.series(754737)
replay = series.replay(game_id=283288)
round_1 = replay.round(1)
for ld in round_1.loadouts[:4]:
    print(f"{ld.name} ({ld.agent}): {ld.weapon} + {ld.armor} (${ld.spent} gastados)")

Última actualización el

En esta página