· 5 years ago · Jan 19, 2021, 10:40 AM
1from pubg_python import PUBG, Shard
2
3# load the pubg API key
4api = PUBG('eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxOWMxNDhmMC0wZWVjLTAxMzktNjg0Ny0wMjUxZDFmMTIwMzkiLCJpc3MiOiJnYW1lbG9ja2VyIiwiaWF0IjoxNjA2MDQ4MDg3LCJwdWIiOiJibHVlaG9sZSIsInRpdGxlIjoicHViZyIsImFwcCI6ImthbGxhaHN0YXRzIn0.9N8B3_taReQw3-YY7QWMghp8iXNWmq5jqedAZGLYNEY', Shard.PC_EU)
5
6#
7players = api.players().filter(player_names=['AngryStripper01'])
8
9player = players[0]
10
11match = api.matches().get(player.matches[0].id)
12
13ranked_pool = [ "Desert_Main", # Miramar
14 "Baltic_Main", # Erangel (remastered)
15 "DihorOtok_Main", # Vikendi
16 "Savage_Main" # Sanhok
17 ]
18
19other_maps = [ "Chimera_Main", # Paramo
20 "Erangel_Main", # Erangel (non-remastered)
21 "Heaven_Main", # Haven
22 "Range_Main", # Camp Jackal (training mode)
23 "Summerland_Main" # Karakin
24 ]
25
26class Person:
27 def __init__(self, name):
28 self.rank = 16
29 self.name = name
30 self.damage_dealt = 0
31 self.kills = 0
32 self.assists = 0
33 self.dbnos = 0
34 self.headshot_kills = 0
35 self.revives = 0
36 self.team_kills = 0
37 self.walk_distance = 0
38 self.ride_distance = 0
39 self.i = 0
40
41def print_stats(current_player, match_history_lenght):
42 for pm in player.matches:
43 id = api.matches().get(pm.id)
44
45
46
47 # Check for what maps are being played to rule out fpp squad on Haeven
48 if any(id.map_name in rp for rp in ranked_pool):
49 ranked_map = True
50
51
52 total_players = 0
53 for x in id.rosters:
54 for y in x.participants:
55 total_players += 1
56
57 for r in id.rosters:
58 for p in r.participants:
59 if (p.name == current_player.name) & (id.game_mode == "squad-fpp") & (total_players <= 64):
60 current_player.rank += r.stats["rank"]
61 current_player.damage_dealt += p.damage_dealt
62 current_player.kills += p.kills
63 current_player.assists += p.assists
64 current_player.dbnos += p.dbnos
65 current_player.headshot_kills += p.headshot_kills
66 current_player.revives += p.revives
67 current_player.team_kills += p.team_kills
68 current_player.walk_distance += p.walk_distance
69 current_player.ride_distance += p.ride_distance
70 current_player.i += 1
71 if current_player.i == match_history_lenght:
72 break
73 if current_player.i == match_history_lenght:
74 break
75 if current_player.i == match_history_lenght:
76 break
77
78 print("Stats from the last", current_player.i, "ranked matches for", current_player.name)
79 print("rank = ", round(current_player.rank / current_player.i, 2))
80 print("Damage = ", round(current_player.damage_dealt / current_player.i, 2))
81 print("Total kills = ", current_player.kills)
82 print("Kills per game= ", round(current_player.kills / current_player.i, 2))
83 print("Total assists = ", current_player.assists)
84 print("Assists per game = ", round(current_player.assists / current_player.i, 2))
85 print("Total DBNOS = ", current_player.dbnos)
86 print("DBNOS per game = ", round(current_player.dbnos / current_player.i, 2))
87 print("Headshot kills = {}%".format(round(current_player.headshot_kills / current_player.i*100, 2)))
88 print("Revives = ", current_player.revives)
89 print("Total team kills = ", current_player.team_kills)
90 print("Travel distance = ", round((current_player.walk_distance / current_player.i) + (current_player.ride_distance / current_player.i), 2))
91 print("####################################\n")
92
93
94
95match_history_lenght = 1000
96
97
98
99print_stats(Person("AngryStripper01"), match_history_lenght)
100exit()
101print_stats(Person("Avalanche_Alpha"), match_history_lenght)
102print_stats(Person("Cilveran"), match_history_lenght)
103print_stats(Person("Dagslakter"), match_history_lenght)
104print_stats(Person("Icebear42"), match_history_lenght)
105print_stats(Person("Screamis"), match_history_lenght)
106print_stats(Person("Sir_ODJO"), match_history_lenght)
107print_stats(Person("Stubbur1991"), match_history_lenght)
108