So there is somewhat of an eclectic mix of drivers going into this post. As I talk with individual Splunk users, Splunk administrative teams, and larger teams that have access to Splunk (security, operations, etc) I sometimes come across a subset of folks who have a tough time trying to figure out how to take advantage of the data they have access to. In some cases it is because they lack imagination, vision, or strategy relative to what they are trying to accomplish. Sometimes it is being so heads down in the daily grind they have trouble 'looking up' so to speak and collecting their thoughts. More often than not though they are wearing multiple hats and could use a hand getting over the Splunk language learning curve. This post is designed to help a bit - some Splunk Processing Language (SPL) exposure mixed with a bit of dialogue on why I made the dashboard/dashboard panels the way I did.
To start with I need data. Turns out I've started playing a mobile game called Darkfire Heroes. It isn't quite in a beta state but isn't available globally quite yet. The other day, Dec 8 & 9 to be exact, they had a 2 day Player vs Player (PvP) contest. Individual match wins were tracked as well as aggregate win total if you belonged to a group within the game; a clan. As a total side note it is interesting to see people's gaming pedigree based on descriptions they use. Are some of the bad guys/monsters you fight creeps, mobs, trash, etc and are you a part of a clan, guild, or alliance? Outside of this mini event there is a clan rewards chest that also gives varying level of rewards based on aggregate PvP wins over a week. PvP matches won during this 2 day event will count towards that reward chest.
There are any number of business related questions the game company might want to ask of game data that could range from who to give individual rewards to all the way to game performance: how many players participated, who are the top winners, did the event cause an increase in game play, did the system respond well to the increased load or were there issues, was there increased spending via in game purchases during this time and if so what items, etc etc.
Since I don't have access to the backend system I had to manually collect data. The first bit of collected data is for the top 150 clans I captured aggregate clan results and the number of players in that clan; clans can have a max of 50 members. The second bit was for clans currently in spots 1, 2, 3, 10, 20, 30, 40, 50, & 60th place I captured individual contributions. I should mention that since the event data would be wiped after it ended and I wanted to get to sleep at a sane time, when I collected the data there was still about 4hrs left to go. So while the clan placement and individual contribution data is generally accurate (as in directionally correct) it isn't 100% precise. To be fair this data isn't very complex and based on volume you could do lots of this analysis in Excel or something else. Where Splunk really shines is if we had access to the hundreds of thousands of data points that would be available to the game developers in the same way that Splunk shines for InfoSec, IT Ops, and BI teams when the data volume might range from thousands to billions of events or transactions per day.
So with that out of the way here are the visualizations I created. Mentally I'm somewhat putting myself in the shoes of the game design team and trying to get an overview of the event. Below the dashboard screenshots I will walk through each of the panels and the query used. In some cases I didn't use a more expedient query method to give a bit more range in my examples. Ultimately I will post the data in case you want to play with it!
The first three panels are about giving high level summary snapshots of activity
1 - Total Clan Wins
While I only captured aggregate numbers for the top 150 clans I did note how many clans participated. There are probably individuals not in clans who had wins but that data is beyond the scope of what I have access to or care about. I used the makeresults command to generate 1 event, created a field to hold the number of clans who participated, and since Splunk is a time based engine and makeresults creates an event with a timestamp I removed that field. Obviously this is the single value visualization
| eval foo = 236
| fields - _time
2 - Total Matches Played
A good high level metric is how many PvP matches were played. The only real data I have here though is the number of wins by the top 150 clans. This starts to be a bit of a fermi problem in that a player could face a human or a bot so it isn't a zero sum game where one person has to lose. Some players are better than others and might only win a percentage of their games. To make things simple I'm just going to assume a 50% win rate when you average across the player base. The data I've captured was in csv format so I've uploaded that into Splunk as a lookup. So I'm going to pull that csv up, add up the wins, and then multiply that number by 2.
| stats sum(wins) as wins
| eval games = wins * 2
3 - Clan Chests Filled
If we go back to that concept of filling the weekly clan reward chest you might wonder how many clans had enough wins to fill that up over the span of the event? This is more of a fun little metric but also points toward participation at a broader scale. We will explore the clan chest filling bit in a bit more granularity in a later panel. To max out the clan chest you need like 1,186 wins. Because I've captured the data 4 hrs before the event ended I want to give folks the benefit of the doubt. I bring in the leaderboard csv, filter results to clans who have more than 1k wins, and count the number of results.
| where wins > 1000
| stats count
4 - Who Likes Pie?
The next question you'd likely want to know is the leaderboard - which clans finished 1, 2, 3 etc. There are a lot of ways to display that data. In this case I did a pie graph because some people like the visual element. TBH I'm not a big pie graph fan - there are generally too many data dimensions not captured in it. Anyway, that's why it has this goofy title. The query is simple enough. Bring in the leaderboard, get rid of fields that are not needed (alternatively I could have explicitly kept the fields I wanted to keep), and just to cover my bases sort the results. Not in this case but often sorting results in Splunk that are being displayed in a pie graph make the visualization a bit more organized.
| fields - members finish_position
5 - Clan Wins and Percent of Total Battles
So when you mouse over pie graphs in Splunk the UI will automagically show you percentages to the total for that wedge. In this case I wanted to display that in a statistical view. There are a couple different ways to do this. In this case I wanted to highlight the eventstats command. When you use a stats command it is 'destructive' in that the only fields that will persist are the ones you use in that command. Alternatively you can use an eval command to do mathematical things but they are constrained to each row. In this case I need to calculate the total number of wins across all rows and compare each clan's (each row's) wins against the total. To that end eventstats is like stats and eval had a baby. For my query I'm going to bring in the leaderboard once again, add up the total number of wins and create a new field called "totalWins", get the percentage of each clan's wins to totalWins and then just display the fields I want
| eventstats sum(wins) as totalWins
| eval percOfTotalWins = round((wins/totalWins)*100)
| table clan wins percOfTotalWins
6 - Contributors Relative to Wins
This was one of my more favorite panels and made me wish I had more data! I wanted to get a feel for how active folks were over the event and what participation actually looked like. I also find it curious that most clans are full of people even if they are inactive (why clans don't kick inactive people is beyond me). Now I only captured individual contributions from 9 clans; places 1, 2, 3, 10, 20, 30, 40, 50, 60. Like a goof though I didn't actually write down the clan name that was in 60th place which is why there are only 8 dots on the graph. This query uses a join (green) to bring both datasets together. Generally speaking you don't need to do joins with data in Splunk but if you need to use them the tool is there. So the green bits are getting the number of people in each of the tracked clans (9) who actually contributed. The join type is left because otherwise the only data displayed would be that where the linking field is a match (clan in this case). Then it is just a simple matter of displaying the fields in the order I want.
| join type=left clan
[| inputlookup clan_efforts.csv
| search wins > 0
| stats count as contributors by clan]
| table clan contributors wins members
I'm also using 2 Y axis on this visualization by leveraging a chart overlay. The contributors and members fields leverage the Y axis on the right side of the graph.
7 - Clan Chest Filled / 8 - Chan Chest Filled
The queries behind these two panels are the same. What I wanted to show here is a couple different visualization options. Some people are more drawn to one vs another. Sometimes it is worthwhile to use different visualizations simply from a visual interest perspective. Anyway, while 6 clans would have totally maxed out their weekly reward chest we know that any wins would have contributed in some measure. We could figure out what that percentage is for each of the 150 but how do you display that in some meaningful way without taking up a ton of screen real estate? One answer is to figure out that percentage and then lump those results into various size buckets. This is an easy process to do in Splunk of course. I'm going to go with buckets of 10% sizes so for any given clan the data would say 0-10, 40-50, 80-90 as applicable. Unfortunately because of the data there is also going to be a bucket with 100-110 that we need to take care of. The query starts out simple enough - bring up the data, create a field with the number of wins to max out the chest (I used the actual number here for some reason), line 3 creates a new field that gets the fill percentage. At line 4 I introduce an IF statement because the top clans have several folks who played a bunch of games. If the percentage field is over 100 then just make that value 100, otherwise just round the percentage field to clean it up a bit. That isn't really needed but shows you how to include different functions. At this point we are going to 'bucketize' that perc_field field with buckets that are 10 points wide. Now it is simply a matter of counting the number of clans by each of the buckets with the stats command followed by fixing the 100-110 issue in eval that follows it.
| eval full_chest = 1186
| eval perc_filled = (wins/full_chest)*100
| eval perc_filled = if(perc_filled>=100, 100, round(perc_filled) )
| bin perc_filled span=10
| eval perc_filled = if(perc_filled LIKE "100%", 100, perc_filled)
| sort perc_filled
| sort -clan_wins
clan,"clan_member",wins
Diablo2,"Diablo2_1",504
Diablo2,"Diablo2_2",500
Diablo2,"Diablo2_3",349
Diablo2,"Diablo2_4",335
Diablo2,"Diablo2_5",222
Diablo2,"Diablo2_6",209
Diablo2,"Diablo2_7",177
Diablo2,"Diablo2_8",152
Diablo2,"Diablo2_9",137
Diablo2,"Diablo2_10",129
Diablo2,"Diablo2_11",124
Diablo2,"Diablo2_12",118
Diablo2,"Diablo2_13",116
Diablo2,"Diablo2_14",102
Diablo2,"Diablo2_15",85
Diablo2,"Diablo2_16",78
Diablo2,"Diablo2_17",75
Diablo2,"Diablo2_18",74
Diablo2,"Diablo2_19",67
Diablo2,"Diablo2_20",59
Diablo2,"Diablo2_21",56
Diablo2,"Diablo2_22",56
Diablo2,"Diablo2_23",56
Diablo2,"Diablo2_24",52
Diablo2,"Diablo2_25",51
Diablo2,"Diablo2_26",51
Diablo2,"Diablo2_27",49
Diablo2,"Diablo2_28",43
Diablo2,"Diablo2_29",41
Diablo2,"Diablo2_30",39
Diablo2,"Diablo2_31",34
Diablo2,"Diablo2_32",31
Diablo2,"Diablo2_33",28
Diablo2,"Diablo2_34",24
Diablo2,"Diablo2_35",24
Diablo2,"Diablo2_36",18
Diablo2,"Diablo2_37",17
Diablo2,"Diablo2_38",16
Diablo2,"Diablo2_39",14
Diablo2,"Diablo2_40",9
Diablo2,"Diablo2_41",8
Diablo2,"Diablo2_42",5
Diablo2,"Diablo2_43",5
Diablo2,"Diablo2_44",3
Diablo2,"Diablo2_45",1
SpawnsofDiablo,"SpawnsofDiablo_1",488
SpawnsofDiablo,"SpawnsofDiablo_2",307
SpawnsofDiablo,"SpawnsofDiablo_3",272
SpawnsofDiablo,"SpawnsofDiablo_4",266
SpawnsofDiablo,"SpawnsofDiablo_5",199
SpawnsofDiablo,"SpawnsofDiablo_6",171
SpawnsofDiablo,"SpawnsofDiablo_7",166
SpawnsofDiablo,"SpawnsofDiablo_8",161
SpawnsofDiablo,"SpawnsofDiablo_9",151
SpawnsofDiablo,"SpawnsofDiablo_10",138
SpawnsofDiablo,"SpawnsofDiablo_11",130
SpawnsofDiablo,"SpawnsofDiablo_12",120
SpawnsofDiablo,"SpawnsofDiablo_13",110
SpawnsofDiablo,"SpawnsofDiablo_14",103
SpawnsofDiablo,"SpawnsofDiablo_15",98
SpawnsofDiablo,"SpawnsofDiablo_16",80
SpawnsofDiablo,"SpawnsofDiablo_17",78
SpawnsofDiablo,"SpawnsofDiablo_18",72
SpawnsofDiablo,"SpawnsofDiablo_19",62
SpawnsofDiablo,"SpawnsofDiablo_20",53
SpawnsofDiablo,"SpawnsofDiablo_21",51
SpawnsofDiablo,"SpawnsofDiablo_22",49
SpawnsofDiablo,"SpawnsofDiablo_23",49
SpawnsofDiablo,"SpawnsofDiablo_24",48
SpawnsofDiablo,"SpawnsofDiablo_25",44
SpawnsofDiablo,"SpawnsofDiablo_26",38
SpawnsofDiablo,"SpawnsofDiablo_27",32
SpawnsofDiablo,"SpawnsofDiablo_28",32
SpawnsofDiablo,"SpawnsofDiablo_29",27
SpawnsofDiablo,"SpawnsofDiablo_30",27
SpawnsofDiablo,"SpawnsofDiablo_31",26
SpawnsofDiablo,"SpawnsofDiablo_32",24
SpawnsofDiablo,"SpawnsofDiablo_33",23
SpawnsofDiablo,"SpawnsofDiablo_34",23
SpawnsofDiablo,"SpawnsofDiablo_35",22
SpawnsofDiablo,"SpawnsofDiablo_36",21
SpawnsofDiablo,"SpawnsofDiablo_37",17
SpawnsofDiablo,"SpawnsofDiablo_38",13
SpawnsofDiablo,"SpawnsofDiablo_39",13
SpawnsofDiablo,"SpawnsofDiablo_40",11
SpawnsofDiablo,"SpawnsofDiablo_41",11
SpawnsofDiablo,"SpawnsofDiablo_42",11
SpawnsofDiablo,"SpawnsofDiablo_43",9
SpawnsofDiablo,"SpawnsofDiablo_44",9
SpawnsofDiablo,"SpawnsofDiablo_45",8
SpawnsofDiablo,"SpawnsofDiablo_46",5
SpawnsofDiablo,"SpawnsofDiablo_47",3
SpawnsofDiablo,"SpawnsofDiablo_48",2
SpawnsofDiablo,"SpawnsofDiablo_49",0
LegendsOnly,"LegendsOnly_1",560
LegendsOnly,"LegendsOnly_2",399
LegendsOnly,"LegendsOnly_3",190
LegendsOnly,"LegendsOnly_4",147
LegendsOnly,"LegendsOnly_5",131
LegendsOnly,"LegendsOnly_6",102
LegendsOnly,"LegendsOnly_7",89
LegendsOnly,"LegendsOnly_8",77
LegendsOnly,"LegendsOnly_9",53
LegendsOnly,"LegendsOnly_10",52
LegendsOnly,"LegendsOnly_11",49
LegendsOnly,"LegendsOnly_12",48
LegendsOnly,"LegendsOnly_13",43
LegendsOnly,"LegendsOnly_14",40
LegendsOnly,"LegendsOnly_15",38
LegendsOnly,"LegendsOnly_16",37
LegendsOnly,"LegendsOnly_17",37
LegendsOnly,"LegendsOnly_18",30
LegendsOnly,"LegendsOnly_19",27
LegendsOnly,"LegendsOnly_20",22
LegendsOnly,"LegendsOnly_21",19
LegendsOnly,"LegendsOnly_22",18
LegendsOnly,"LegendsOnly_23",17
LegendsOnly,"LegendsOnly_24",17
LegendsOnly,"LegendsOnly_25",16
LegendsOnly,"LegendsOnly_26",16
LegendsOnly,"LegendsOnly_27",16
LegendsOnly,"LegendsOnly_28",15
LegendsOnly,"LegendsOnly_29",15
LegendsOnly,"LegendsOnly_30",14
LegendsOnly,"LegendsOnly_31",14
LegendsOnly,"LegendsOnly_32",14
LegendsOnly,"LegendsOnly_33",12
LegendsOnly,"LegendsOnly_34",11
LegendsOnly,"LegendsOnly_35",9
LegendsOnly,"LegendsOnly_36",9
LegendsOnly,"LegendsOnly_37",9
LegendsOnly,"LegendsOnly_38",9
LegendsOnly,"LegendsOnly_39",8
LegendsOnly,"LegendsOnly_40",7
LegendsOnly,"LegendsOnly_41",7
LegendsOnly,"LegendsOnly_42",7
LegendsOnly,"LegendsOnly_43",7
LegendsOnly,"LegendsOnly_44",7
LegendsOnly,"LegendsOnly_45",4
LegendsOnly,"LegendsOnly_46",4
LegendsOnly,"LegendsOnly_47",4
LegendsOnly,"LegendsOnly_48",3
LegendsOnly,"LegendsOnly_49",3
LegendsOnly,"LegendsOnly_50",0
Worldwarriors,"Worldwarriors_1",167
Worldwarriors,"Worldwarriors_2",66
Worldwarriors,"Worldwarriors_3",58
Worldwarriors,"Worldwarriors_4",50
Worldwarriors,"Worldwarriors_5",33
Worldwarriors,"Worldwarriors_6",29
Worldwarriors,"Worldwarriors_7",27
Worldwarriors,"Worldwarriors_8",24
Worldwarriors,"Worldwarriors_9",21
Worldwarriors,"Worldwarriors_10",21
Worldwarriors,"Worldwarriors_11",19
Worldwarriors,"Worldwarriors_12",16
Worldwarriors,"Worldwarriors_13",15
Worldwarriors,"Worldwarriors_14",13
Worldwarriors,"Worldwarriors_15",12
Worldwarriors,"Worldwarriors_16",12
Worldwarriors,"Worldwarriors_17",11
Worldwarriors,"Worldwarriors_18",11
Worldwarriors,"Worldwarriors_19",11
Worldwarriors,"Worldwarriors_20",10
Worldwarriors,"Worldwarriors_21",10
Worldwarriors,"Worldwarriors_22",8
Worldwarriors,"Worldwarriors_23",7
Worldwarriors,"Worldwarriors_24",7
Worldwarriors,"Worldwarriors_25",6
Worldwarriors,"Worldwarriors_26",6
Worldwarriors,"Worldwarriors_27",6
Worldwarriors,"Worldwarriors_28",6
Worldwarriors,"Worldwarriors_29",5
Worldwarriors,"Worldwarriors_30",5
Worldwarriors,"Worldwarriors_31",5
Worldwarriors,"Worldwarriors_32",4
Worldwarriors,"Worldwarriors_33",3
Worldwarriors,"Worldwarriors_34",3
Worldwarriors,"Worldwarriors_35",2
Worldwarriors,"Worldwarriors_36",2
Worldwarriors,"Worldwarriors_37",2
Worldwarriors,"Worldwarriors_38",2
Worldwarriors,"Worldwarriors_39",1
Worldwarriors,"Worldwarriors_40",1
Worldwarriors,"Worldwarriors_41",0
Worldwarriors,"Worldwarriors_42",0
Worldwarriors,"Worldwarriors_43",0
Worldwarriors,"Worldwarriors_44",0
Worldwarriors,"Worldwarriors_45",0
Worldwarriors,"Worldwarriors_46",0
Worldwarriors,"Worldwarriors_47",0
Worldwarriors,"Worldwarriors_48",0
Worldwarriors,"Worldwarriors_49",0
Worldwarriors,"Worldwarriors_50",0
ColoradoCasual,"ColoradoCasual_1",23
ColoradoCasual,"ColoradoCasual_2",21
ColoradoCasual,"ColoradoCasual_3",21
ColoradoCasual,"ColoradoCasual_4",20
ColoradoCasual,"ColoradoCasual_5",19
ColoradoCasual,"ColoradoCasual_6",17
ColoradoCasual,"ColoradoCasual_7",16
ColoradoCasual,"ColoradoCasual_8",12
ColoradoCasual,"ColoradoCasual_9",11
ColoradoCasual,"ColoradoCasual_10",10
ColoradoCasual,"ColoradoCasual_11",10
ColoradoCasual,"ColoradoCasual_12",9
ColoradoCasual,"ColoradoCasual_13",9
ColoradoCasual,"ColoradoCasual_14",8
ColoradoCasual,"ColoradoCasual_15",8
ColoradoCasual,"ColoradoCasual_16",7
ColoradoCasual,"ColoradoCasual_17",7
ColoradoCasual,"ColoradoCasual_18",7
ColoradoCasual,"ColoradoCasual_19",7
ColoradoCasual,"ColoradoCasual_20",7
ColoradoCasual,"ColoradoCasual_21",6
ColoradoCasual,"ColoradoCasual_22",5
ColoradoCasual,"ColoradoCasual_23",5
ColoradoCasual,"ColoradoCasual_24",5
ColoradoCasual,"ColoradoCasual_25",4
ColoradoCasual,"ColoradoCasual_26",4
ColoradoCasual,"ColoradoCasual_27",3
ColoradoCasual,"ColoradoCasual_28",1
ColoradoCasual,"ColoradoCasual_29",1
ColoradoCasual,"ColoradoCasual_30",0
ColoradoCasual,"ColoradoCasual_31",0
ColoradoCasual,"ColoradoCasual_32",0
ColoradoCasual,"ColoradoCasual_33",0
ColoradoCasual,"ColoradoCasual_34",0
ColoradoCasual,"ColoradoCasual_35",0
ColoradoCasual,"ColoradoCasual_36",0
ColoradoCasual,"ColoradoCasual_37",0
ColoradoCasual,"ColoradoCasual_38",0
ColoradoCasual,"ColoradoCasual_39",0
ColoradoCasual,"ColoradoCasual_40",0
ColoradoCasual,"ColoradoCasual_41",0
ColoradoCasual,"ColoradoCasual_42",0
ColoradoCasual,"ColoradoCasual_43",0
ColoradoCasual,"ColoradoCasual_44",0
ColoradoCasual,"ColoradoCasual_45",0
ColoradoCasual,"ColoradoCasual_46",0
ColoradoCasual,"ColoradoCasual_47",0
ColoradoCasual,"ColoradoCasual_48",0
ColoradoCasual,"ColoradoCasual_49",0
ColoradoCasual,"ColoradoCasual_50",0
Armyofall,"Armyofall_1",34
Armyofall,"Armyofall_2",30
Armyofall,"Armyofall_3",25
Armyofall,"Armyofall_4",14
Armyofall,"Armyofall_5",13
Armyofall,"Armyofall_6",11
Armyofall,"Armyofall_7",11
Armyofall,"Armyofall_8",8
Armyofall,"Armyofall_9",7
Armyofall,"Armyofall_10",5
Armyofall,"Armyofall_11",4
Armyofall,"Armyofall_12",3
Armyofall,"Armyofall_13",2
Armyofall,"Armyofall_14",2
Armyofall,"Armyofall_15",2
Armyofall,"Armyofall_16",2
Armyofall,"Armyofall_17",2
Armyofall,"Armyofall_18",2
Armyofall,"Armyofall_19",1
Armyofall,"Armyofall_20",1
Armyofall,"Armyofall_21",1
Armyofall,"Armyofall_22",0
Armyofall,"Armyofall_23",0
Armyofall,"Armyofall_24",0
Armyofall,"Armyofall_25",0
Armyofall,"Armyofall_26",0
Armyofall,"Armyofall_27",0
Armyofall,"Armyofall_28",0
Armyofall,"Armyofall_29",0
Armyofall,"Armyofall_30",0
Armyofall,"Armyofall_31",0
Armyofall,"Armyofall_32",0
Armyofall,"Armyofall_33",0
Armyofall,"Armyofall_34",0
Armyofall,"Armyofall_35",0
Armyofall,"Armyofall_36",0
Armyofall,"Armyofall_37",0
Armyofall,"Armyofall_38",0
Armyofall,"Armyofall_39",0
Armyofall,"Armyofall_40",0
Armyofall,"Armyofall_41",0
Armyofall,"Armyofall_42",0
Armyofall,"Armyofall_43",0
Armyofall,"Armyofall_44",0
Armyofall,"Armyofall_45",0
Armyofall,"Armyofall_46",0
Armyofall,"Armyofall_47",0
Armyofall,"Armyofall_48",0
Armyofall,"Armyofall_49",0
Armyofall,"Armyofall_50",0
HordeSmashers,"HordSmashers_1",17
HordeSmashers,"HordSmashers_2",16
HordeSmashers,"HordSmashers_3",14
HordeSmashers,"HordSmashers_4",11
HordeSmashers,"HordSmashers_5",10
HordeSmashers,"HordSmashers_6",7
HordeSmashers,"HordSmashers_7",7
HordeSmashers,"HordSmashers_8",3
HordeSmashers,"HordSmashers_9",3
HordeSmashers,"HordSmashers_10",2
HordeSmashers,"HordSmashers_11",2
HordeSmashers,"HordSmashers_12",2
HordeSmashers,"HordSmashers_13",2
HordeSmashers,"HordSmashers_14",2
HordeSmashers,"HordSmashers_15",1
HordeSmashers,"HordSmashers_16",1
HordeSmashers,"HordSmashers_17",1
HordeSmashers,"HordSmashers_18",1
HordeSmashers,"HordSmashers_19",1
HordeSmashers,"HordSmashers_20",0
HordeSmashers,"HordSmashers_21",0
HordeSmashers,"HordSmashers_22",0
HordeSmashers,"HordSmashers_23",0
HordeSmashers,"HordSmashers_24",0
HordeSmashers,"HordSmashers_25",0
HordeSmashers,"HordSmashers_26",0
HordeSmashers,"HordSmashers_27",0
HordeSmashers,"HordSmashers_28",0
HordeSmashers,"HordSmashers_29",0
HordeSmashers,"HordSmashers_30",0
HordeSmashers,"HordSmashers_31",0
HordeSmashers,"HordSmashers_32",0
HordeSmashers,"HordSmashers_33",0
HordeSmashers,"HordSmashers_34",0
HordeSmashers,"HordSmashers_35",0
HordeSmashers,"HordSmashers_36",0
HordeSmashers,"HordSmashers_37",0
HordeSmashers,"HordSmashers_38",0
HordeSmashers,"HordSmashers_39",0
HordeSmashers,"HordSmashers_40",0
HordeSmashers,"HordSmashers_41",0
HordeSmashers,"HordSmashers_42",0
HordeSmashers,"HordSmashers_43",0
HordeSmashers,"HordSmashers_44",0
HordeSmashers,"HordSmashers_45",0
HordeSmashers,"HordSmashers_46",0
HordeSmashers,"HordSmashers_47",0
HordeSmashers,"HordSmashers_48",0
HordeSmashers,"HordSmashers_49",0
HordeSmashers,"HordSmashers_50",0
SinCityKnights,"SinCityKnights_1",14
SinCityKnights,"SinCityKnights_2",14
SinCityKnights,"SinCityKnights_3",10
SinCityKnights,"SinCityKnights_4",8
SinCityKnights,"SinCityKnights_5",7
SinCityKnights,"SinCityKnights_6",5
SinCityKnights,"SinCityKnights_7",4
SinCityKnights,"SinCityKnights_8",3
SinCityKnights,"SinCityKnights_9",3
SinCityKnights,"SinCityKnights_10",3
SinCityKnights,"SinCityKnights_11",3
SinCityKnights,"SinCityKnights_12",2
SinCityKnights,"SinCityKnights_13",1
SinCityKnights,"SinCityKnights_14",1
SinCityKnights,"SinCityKnights_15",1
SinCityKnights,"SinCityKnights_16",1
SinCityKnights,"SinCityKnights_17",1
SinCityKnights,"SinCityKnights_18",1
SinCityKnights,"SinCityKnights_19",1
SinCityKnights,"SinCityKnights_20",0
SinCityKnights,"SinCityKnights_21",0
SinCityKnights,"SinCityKnights_22",0
SinCityKnights,"SinCityKnights_23",0
SinCityKnights,"SinCityKnights_24",0
SinCityKnights,"SinCityKnights_25",0
SinCityKnights,"SinCityKnights_26",0
SinCityKnights,"SinCityKnights_27",0
SinCityKnights,"SinCityKnights_28",0
SinCityKnights,"SinCityKnights_29",0
SinCityKnights,"SinCityKnights_30",0
SinCityKnights,"SinCityKnights_31",0
SinCityKnights,"SinCityKnights_32",0
SinCityKnights,"SinCityKnights_33",0
SinCityKnights,"SinCityKnights_34",0
SinCityKnights,"SinCityKnights_35",0
SinCityKnights,"SinCityKnights_36",0
SinCityKnights,"SinCityKnights_37",0
SinCityKnights,"SinCityKnights_38",0
SinCityKnights,"SinCityKnights_39",0
SinCityKnights,"SinCityKnights_40",0
SinCityKnights,"SinCityKnights_41",0
SinCityKnights,"SinCityKnights_42",0
SinCityKnights,"SinCityKnights_43",0
SinCityKnights,"SinCityKnights_44",0
SinCityKnights,"SinCityKnights_45",0
SinCityKnights,"SinCityKnights_46",0
SinCityKnights,"SinCityKnights_47",0
SinCityKnights,"SinCityKnights_48",0
SinCityKnights,"SinCityKnights_49",0
SinCityKnights,"SinCityKnights_50",0
Valhalla,"Valhalla_1",10
Valhalla,"Valhalla_2",9
Valhalla,"Valhalla_3",9
Valhalla,"Valhalla_4",8
Valhalla,"Valhalla_5",6
Valhalla,"Valhalla_6",4
Valhalla,"Valhalla_7",2
Valhalla,"Valhalla_8",2
Valhalla,"Valhalla_9",2
Valhalla,"Valhalla_10",2
Valhalla,"Valhalla_11",2
Valhalla,"Valhalla_12",1
Valhalla,"Valhalla_13",0
Valhalla,"Valhalla_14",0
Valhalla,"Valhalla_15",0
Valhalla,"Valhalla_16",0
Valhalla,"Valhalla_17",0
Valhalla,"Valhalla_18",0
Valhalla,"Valhalla_19",0
Valhalla,"Valhalla_20",0
Valhalla,"Valhalla_21",0
Valhalla,"Valhalla_22",0
Valhalla,"Valhalla_23",0
Valhalla,"Valhalla_24",0
Valhalla,"Valhalla_25",0
Valhalla,"Valhalla_26",0
Valhalla,"Valhalla_27",0
Valhalla,"Valhalla_28",0
Valhalla,"Valhalla_29",0
Valhalla,"Valhalla_30",0
Valhalla,"Valhalla_31",0
Valhalla,"Valhalla_32",0
Valhalla,"Valhalla_33",0
Valhalla,"Valhalla_34",0
Valhalla,"Valhalla_35",0
Valhalla,"Valhalla_36",0
Valhalla,"Valhalla_37",0
Valhalla,"Valhalla_38",0
Valhalla,"Valhalla_39",0
Valhalla,"Valhalla_40",0
Valhalla,"Valhalla_41",0
Valhalla,"Valhalla_42",0
Valhalla,"Valhalla_43",0
Valhalla,"Valhalla_44",0
Valhalla,"Valhalla_45",0
Valhalla,"Valhalla_46",0
Valhalla,"Valhalla_47",0
Valhalla,"Valhalla_48",0
Valhalla,"Valhalla_49",0
Valhalla,"Valhalla_50",0
////////////////////////////////
Clan Leaderboards
clan,"finish_position",members,wins
Diablo2,1,49,4439
SpawnsofDiablo,2,50,3883
LegendsOnly,3,50,2536
Assassins,4,50,2032
Deplorables,5,50,1119
WeAreGroot,6,50,1018
PlanetExpress,7,50,802
Resurrected,8,45,770
Worldwarriors,9,50,656
imperialguard2,10,48,652
Heathens,11,50,567
Covid,12,50,450
Sofaklanen,13,50,382
ActiveOnly,14,50,369
HiddenLeaf,15,50,303
TeamQc,16,50,298
F3ARLESS,17,50,297
Revansheer,18,50,295
CatchThzHandz,19,50,277
ColoradoCasual,20,50,274
NuBeginnings,21,50,271
MisfitToys,22,50,270
WolfiesClan,23,50,256
DutchTigers,24,49,241
ZeroFukGiven,25,50,237
SpectralSpartans,26,50,229
Fighters,27,50,215
KINGSnQUEENS,28,50,206
FerdaBoys,29,50,192
Armyofall,30,48,165
TurtleGang,31,50,149
Logitek,32,50,147
BreganDaerthe,33,44,146
NorthernElysia,34,48,138
WarDogz,35,48,132
Exile,36,50,128
Fusion,37,50,121
TheWarForged,38,50,120
13thLegion,39,50,102
HordeSmashers,40,50,95
Dreamwalkers,41,50,90
Akatsuki,42,50,89
DarkfireMambas,43,50,88
Sparrago,44,50,87
Raiders,45,50,84
JustForFun,46,50,82
WARHAMMER,47,50,77
CustardSGood,48,50,76
SinCityKnights,49,50,75
BigChunges,50,50,74
"clan_51",51,50,70
"clan_52",52,50,69
"clan_53",53,50,66
"clan_54",54,50,65
"clan_55",55,50,64
"clan_56",56,50,60
"clan_57",57,50,59
"clan_58",58,50,57
"clan_59",59,50,56
"clan_60",60,50,54
"clan_61",61,50,53
"clan_62",62,50,53
"clan_63",63,50,51
"clan_64",64,47,49
"clan_65",65,50,48
"clan_66",66,50,48
"clan_67",67,50,47
"clan_68",68,32,42
"clan_69",69,50,40
"clan_70",70,50,39
"clan_71",71,50,38
"clan_72",72,50,38
"clan_73",73,19,37
"clan_74",74,50,36
"clan_75",75,50,36
"clan_76",76,50,33
"clan_77",77,50,33
"clan_78",78,50,33
"clan_79",79,50,32
"clan_80",80,33,30
"clan_81",81,50,29
"clan_82",82,50,29
"clan_83",83,50,29
"clan_84",84,50,27
"clan_85",85,50,26
"clan_86",86,50,25
"clan_87",87,50,25
"clan_88",88,50,25
"clan_89",89,50,24
"clan_90",90,50,21
"clan_91",91,50,20
"clan_92",92,50,20
"clan_93",93,50,19
"clan_94",94,12,18
"clan_95",95,15,17
"clan_96",96,28,16
"clan_97",97,50,16
"clan_98",98,18,16
"clan_99",99,50,16
"clan_100",100,50,16
"clan_101",101,22,16
"clan_102",102,50,16
"clan_103",103,43,15
"clan_104",104,50,15
"clan_105",105,22,15
"clan_106",106,50,15
"clan_107",107,50,15
"clan_108",108,50,14
"clan_109",109,50,14
"clan_110",110,50,14
"clan_111",111,50,14
"clan_112",112,50,14
"clan_113",113,50,14
"clan_114",114,50,14
"clan_115",115,50,13
"clan_116",116,49,13
"clan_117",117,50,13
"clan_118",118,48,13
"clan_119",119,50,13
"clan_120",120,50,12
"clan_121",121,50,12
"clan_122",122,23,12
"clan_123",123,50,12
"clan_124",124,50,12
"clan_125",125,13,11
"clan_126",126,50,11
"clan_127",127,50,11
"clan_128",128,50,11
"clan_129",129,50,11
"clan_130",130,50,11
"clan_131",131,50,10
"clan_132",132,50,10
"clan_133",133,50,10
"clan_134",134,50,10
"clan_135",135,50,10
"clan_136",136,50,10
"clan_137",137,50,10
"clan_138",138,50,10
"clan_139",139,50,9
"clan_140",140,50,9
"clan_141",141,50,8
"clan_142",142,50,8
"clan_143",143,50,8
"clan_144",144,50,8
"clan_145",145,50,8
"clan_146",146,50,8
"clan_147",147,50,8
"clan_148",148,50,8
"clan_149",149,50,8
"clan_150",150,50,7
No comments:
Post a Comment