From 97fc7b6b69ea83d4f450f47559d2f764d717f348 Mon Sep 17 00:00:00 2001 From: Ziga Magajna Date: Thu, 27 Aug 2020 14:00:00 +0200 Subject: [PATCH 01/12] Changed keys and added values --- pubg_python/domain/telemetry/events.py | 64 ++++++++++++++++++++------ 1 file changed, 51 insertions(+), 13 deletions(-) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 0a89685..8a7b0c9 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -78,6 +78,38 @@ def from_dict(self): self.damage_reason = self._data.get('damageReason') self.damage = self._data.get('damage') self.damage_causer_name = self._data.get('damageCauserName') + self.is_through_penetrable_wall = self._data.get( + 'isThroughPenetrableWall') + + +class LogPlayerUseFlareGun(Event): + + def from_dict(self): + super().from_dict() + self.attack_id = self._data.get('attackId') + self.fire_weapon_stack_count = self._data.get('fireWeaponStackCount') + self.attacker = objects.Character(self._data.get('attacker', {})) + self.attack_type = self._data.get('attackType') + self.weapon = objects.Item(self._data.get('weapon', {})) + + +class LogPlayerUseThrowable(Event): + + def from_dict(self): + super().from_dict() + self.attack_id = self._data.get('attackId') + self.fire_weapon_stack_count = self._data.get('fireWeaponStackCount') + self.attacker = objects.Character(self._data.get('attacker', {})) + self.attack_type = self._data.get('attackType') + self.weapon = objects.Item(self._data.get('weapon', {})) + + +class LogPlayerDestroyBreachableWall(Event): + + def from_dict(self): + super().from_dict() + self.attacker = objects.Character(self._data.get('character', {})) + self.weapon = objects.Item(self._data.get('weapon', {})) class LogPlayerKill(Event): @@ -100,6 +132,8 @@ def from_dict(self): self.distance = self._data.get('distance') self.victim_game_result = objects.GameResult( self._data.get('victimGameResult', {})) + self.is_through_penetrable_wall = self._data.get( + 'isThroughPenetrableWall') class LogParachuteLanding(Event): @@ -161,6 +195,7 @@ def from_dict(self): super().from_dict() self.character = objects.Character(self._data.get('character', {})) self.item = objects.Item(self._data.get('item', {})) + self.care_package_unique_id = self._data.get('carePackageUniqueId') class LogItemPickupFromLootBox(LogItemPickup): @@ -169,13 +204,16 @@ def from_dict(self): super().from_dict() self.creator_id = self._data.get('creatorAccountId') self.team_id = self._data.get('ownerTeamId') + self.creator_account_id = self._data.get('creatorAccountId') class LogHeal(Event): def from_dict(self): super().from_dict() - self.heal_amount = self._data.get('healAmount') + self.character = objects.Character(self._data.get('character', {})) + self.item = objects.Item(self._data.get('item', {})) + self.heal_amount = self._data.get('healamount') class LogObjectDestroy(Event): @@ -197,7 +235,6 @@ def from_dict(self): self.object_type_status = self._data.get('objectTypeStatus') self.object_type_additional_info = self._data.get( 'objectTypeAdditionalInfo') - self.object_type_count = self._data.get('objectTypeCount') class LogVaultStart(Event): @@ -205,6 +242,7 @@ class LogVaultStart(Event): def from_dict(self): super().from_dict() self.character = objects.Character(self._data.get('character', {})) + self.is_ledge_grab = self._data.get('isLedgeGrab') class LogVehicle(Event): @@ -276,6 +314,16 @@ def from_dict(self): self.season_state = self._data.get('SeasonState') +class LogBlackZoneEnded(Event): + + def from_dict(self): + super().from_dict() + self.survivors = [ + objects.Character(data) + for data in self._data.get('characters', []) + ] + + class LogMatchEvent(Event): def from_dict(self): @@ -398,14 +446,4 @@ class LogPhaseChange(Event): def from_dict(self): super().from_dict() self.phase = self._data.get('phase') - - -class LogPlayerUseThrowable(Event): - - def from_dict(self): - super().from_dict() - self.attackId = self._data.get('attackId') - self.fire_weapon_stack_count = self._data.get('fireWeaponStackCount') - self.attacker = objects.Character(self._data.get('attacker', {})) - self.attack_type = self._data.get('attackType') - self.weapon = objects.Item(self._data.get('weapon', {})) + self.elapsed_time = self._data.get('elapsedTime') From 68a484cf9221c9e1786513fd5775896c13a6e8d8 Mon Sep 17 00:00:00 2001 From: Ziga Magajna Date: Thu, 27 Aug 2020 16:16:13 +0200 Subject: [PATCH 02/12] Handle Event and Live match --- pubg_python/domain/telemetry/events.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 8a7b0c9..e2e6129 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -213,7 +213,10 @@ def from_dict(self): super().from_dict() self.character = objects.Character(self._data.get('character', {})) self.item = objects.Item(self._data.get('item', {})) - self.heal_amount = self._data.get('healamount') + if self._data.get('healamount'): + self.heal_amount = self._data.get('healamount') + else: + self.heal_amount = self._data.get('healAmount') class LogObjectDestroy(Event): From 5ba9d79fd98e4cbde3b3d357ebf6574faafb888d Mon Sep 17 00:00:00 2001 From: Ziga Magajna Date: Tue, 6 Oct 2020 17:39:39 +0200 Subject: [PATCH 03/12] Add object --- pubg_python/domain/telemetry/events.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index e2e6129..df631f9 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -292,6 +292,10 @@ def from_dict(self): self.distance = self._data.get('distance') +class LogVehicleDamage(Event): + pass + + class LogCarePackageEvent(Event): def from_dict(self): From 4a1d1e2834b3552b0e3f49d6b53513cfe1934fa1 Mon Sep 17 00:00:00 2001 From: Ziga Magajna Date: Thu, 22 Oct 2020 11:46:26 +0200 Subject: [PATCH 04/12] Fix --- pubg_python/domain/telemetry/events.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index df631f9..ff5d3e4 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -312,6 +312,10 @@ class LogCarePackageLand(LogCarePackageEvent): pass +class LogItemPickupFromCustomPackage(LogCarePackageEvent): + pass + + class LogMatchDefinition(Event): def from_dict(self): From 7d535cc3fc7110c2ad5bcb5b4e008f6d8a724aaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=BDiga=20Magajna?= Date: Fri, 11 Dec 2020 08:51:33 +0100 Subject: [PATCH 05/12] Fix new event LogPlayerKillV2 --- pubg_python/domain/telemetry/events.py | 5 +++++ pubg_python/domain/telemetry/objects.py | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index ff5d3e4..2bee49b 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -135,6 +135,11 @@ def from_dict(self): self.is_through_penetrable_wall = self._data.get( 'isThroughPenetrableWall') +class LogPlayerKillV2(Event): + + def from_dict(self): + pass + class LogParachuteLanding(Event): diff --git a/pubg_python/domain/telemetry/objects.py b/pubg_python/domain/telemetry/objects.py index 7991cfc..0a3898c 100644 --- a/pubg_python/domain/telemetry/objects.py +++ b/pubg_python/domain/telemetry/objects.py @@ -189,3 +189,16 @@ def from_dict(self): self.team_id = self._data.get('teamId') self.stats = Stats(self._data.get('stats', {})) self.account_id = self._data.get('accountId') + + +class DamageInfo(Object): + + def from_dict(self): + super().from_dict() + self.damage_reason = self._data.get('damageReason') + self.damage_type_category = self._data.get('damageTypeCategory') + self.damage_causer_name = self._data.get('damageCauserName') + self.additional_info = self._data.get("additionalInfo") + self.distance = self._data.get("distance") + self.is_through_penetrable_wall = self._data.get( + 'isThroughPenetrableWall') \ No newline at end of file From 2370dd84d39726430732b0da3314e05cba922d17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=BDiga=20Magajna?= Date: Fri, 11 Dec 2020 16:58:53 +0100 Subject: [PATCH 06/12] Fix LogKillsV2 --- pubg_python/domain/telemetry/events.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 2bee49b..5e54145 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -138,7 +138,20 @@ def from_dict(self): class LogPlayerKillV2(Event): def from_dict(self): - pass + super().from_dict() + self.attack_id = self._data.get('attackId') + self.dbno_id = self._data.get('dBNOId') + self.victim = objects.Character(self._data.get('victim', {})) + self.victim_weapon = self._data.get('victimWeapon') + self.victim_weapon_additional_info = self._data.get( + 'victimWeaponAdditionalInfo') + self.dbno_marker = objects.Character(self._data.get('dBNOMaker', {})) + self.dbno_damage_info = objects.DamageInfo('dBNODamageInfo', {}) + self.finisher = objects.Character(self._data.get('dBNOMaker', {})) + self.finisher_damage_info = objects.DamageInfo('finishDamageInfo', {}) + self.killer = objects.Character(self._data.get('killer', {})) + self.killer_damage_info = objects.DamageInfo('killerDamageInfo', {}) + self.is_suicide = self._data.get('isSuicide') class LogParachuteLanding(Event): From 45d9fe4060e3db162c2867ba207d659d03153993 Mon Sep 17 00:00:00 2001 From: Ziga Magajna Date: Wed, 23 Dec 2020 20:21:03 +0100 Subject: [PATCH 07/12] Fix matches --- pubg_python/domain/telemetry/events.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 5e54145..ce0195b 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -146,11 +146,11 @@ def from_dict(self): self.victim_weapon_additional_info = self._data.get( 'victimWeaponAdditionalInfo') self.dbno_marker = objects.Character(self._data.get('dBNOMaker', {})) - self.dbno_damage_info = objects.DamageInfo('dBNODamageInfo', {}) + self.dbno_damage_info = objects.DamageInfo(self._data.get('dBNODamageInfo', {})) self.finisher = objects.Character(self._data.get('dBNOMaker', {})) - self.finisher_damage_info = objects.DamageInfo('finishDamageInfo', {}) + self.finisher_damage_info = objects.DamageInfo(self._data.get('finishDamageInfo', {})) self.killer = objects.Character(self._data.get('killer', {})) - self.killer_damage_info = objects.DamageInfo('killerDamageInfo', {}) + self.killer_damage_info = objects.DamageInfo(self._data.get('killerDamageInfo', {})) self.is_suicide = self._data.get('isSuicide') From dce67edefbc038408ef0f6e08644bdb7617b1e96 Mon Sep 17 00:00:00 2001 From: zmagajna Date: Wed, 31 Mar 2021 13:03:44 +0200 Subject: [PATCH 08/12] Ignore event --- pubg_python/domain/telemetry/events.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index ce0195b..648777e 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -476,3 +476,7 @@ def from_dict(self): super().from_dict() self.phase = self._data.get('phase') self.elapsed_time = self._data.get('elapsedTime') + + +class LogEmPickupLiftOff(Event): + pass \ No newline at end of file From 7d2dbade67f6c62263bef18cafee06d1695dc7f7 Mon Sep 17 00:00:00 2001 From: zmagajna Date: Sat, 5 Jun 2021 10:22:56 +0200 Subject: [PATCH 09/12] Added inital event --- pubg_python/domain/telemetry/events.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 648777e..5e64890 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -135,8 +135,9 @@ def from_dict(self): self.is_through_penetrable_wall = self._data.get( 'isThroughPenetrableWall') + class LogPlayerKillV2(Event): - + def from_dict(self): super().from_dict() self.attack_id = self._data.get('attackId') @@ -146,11 +147,14 @@ def from_dict(self): self.victim_weapon_additional_info = self._data.get( 'victimWeaponAdditionalInfo') self.dbno_marker = objects.Character(self._data.get('dBNOMaker', {})) - self.dbno_damage_info = objects.DamageInfo(self._data.get('dBNODamageInfo', {})) + self.dbno_damage_info = objects.DamageInfo( + self._data.get('dBNODamageInfo', {})) self.finisher = objects.Character(self._data.get('dBNOMaker', {})) - self.finisher_damage_info = objects.DamageInfo(self._data.get('finishDamageInfo', {})) + self.finisher_damage_info = objects.DamageInfo( + self._data.get('finishDamageInfo', {})) self.killer = objects.Character(self._data.get('killer', {})) - self.killer_damage_info = objects.DamageInfo(self._data.get('killerDamageInfo', {})) + self.killer_damage_info = objects.DamageInfo( + self._data.get('killerDamageInfo', {})) self.is_suicide = self._data.get('isSuicide') @@ -479,4 +483,8 @@ def from_dict(self): class LogEmPickupLiftOff(Event): - pass \ No newline at end of file + pass + + +class LogPlayerDestroyProp(Event): + pass From 744f2f0d8e3e88183b29814a965bbcb2d6197900 Mon Sep 17 00:00:00 2001 From: zmagajna Date: Wed, 7 Jul 2021 13:14:18 +0200 Subject: [PATCH 10/12] Added new events to telemetry parsing --- pubg_python/domain/telemetry/events.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 648777e..01ca600 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -479,4 +479,12 @@ def from_dict(self): class LogEmPickupLiftOff(Event): + pass + + +class LogPlayerRedeployBRStart(Event): + pass + + +class LogPlayerRedeploy(Event): pass \ No newline at end of file From 9ba6ea232b78c2a933775d42e9426e588f29f031 Mon Sep 17 00:00:00 2001 From: zmagajna Date: Wed, 8 Sep 2021 11:48:07 +0200 Subject: [PATCH 11/12] Added new attirbutes and passed them on --- pubg_python/domain/telemetry/events.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 97ea53c..155c1ad 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -497,3 +497,10 @@ class LogPlayerRedeployBRStart(Event): class LogPlayerRedeploy(Event): pass + +class LogItemPutToVehicleTrunk(Event): + pass + + +class LogItemPickupFromVehicleTrunk(Event): + pass \ No newline at end of file From 616723a13cfb044bb7207b95f5224fe91d0d0bf0 Mon Sep 17 00:00:00 2001 From: zmagajna Date: Wed, 6 Oct 2021 14:30:15 +0200 Subject: [PATCH 12/12] Add LogCharacterCarry to telemetry --- pubg_python/domain/telemetry/events.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pubg_python/domain/telemetry/events.py b/pubg_python/domain/telemetry/events.py index 155c1ad..835a788 100644 --- a/pubg_python/domain/telemetry/events.py +++ b/pubg_python/domain/telemetry/events.py @@ -503,4 +503,8 @@ class LogItemPutToVehicleTrunk(Event): class LogItemPickupFromVehicleTrunk(Event): + pass + + +class LogCharacterCarry(Event): pass \ No newline at end of file