Output raw full ranking info for analysis.

These are handy to see why certain changes occur in the
ratings and may serve to easy my mind as to why they
appear fluctuating.
This commit is contained in:
Auke Kok 2019-01-31 20:02:47 -08:00
parent bab8a611a1
commit c5bafb0a70

75
main.go
View File

@ -409,6 +409,34 @@ func main() {
// sort and we're done, no need to normalize ranking values
sort.Slice(players, func(a, b int) bool { return players[a].combined > players[b].combined })
var player_raw = make(map[string]string)
for i := 0; i < len(players); i++ {
var name string
err = db.QueryRow(fmt.Sprintf("SELECT name FROM player WHERE id = \"%v\"", players[i].player_id)).Scan(&name)
if err != nil {
log.Fatal(err)
}
player_raw[fmt.Sprintf("%v", i+1)] = fmt.Sprintf("%v (%v): %v - %v %v %v %v",
players[i].player_id,
name,
players[i].combined,
players[i].completed_rank,
players[i].time_rank,
players[i].damage_rank,
players[i].deaths_rank)
}
j, err := json.Marshal(player_raw)
if err != nil {
log.Fatal(err)
}
// write to disc!
of, err = os.Create("raw_players.json")
if err != nil {
log.Fatal(err)
}
of.Write(j)
of.Close()
// write out ranking JSON
var player_topranks = make(map[string]string)
var ranklen = 30
@ -425,7 +453,7 @@ func main() {
player_topranks[fmt.Sprintf("%v", i+1)] = name
}
j, err := json.Marshal(player_topranks)
j, err = json.Marshal(player_topranks)
if err != nil {
log.Fatal(err)
}
@ -599,7 +627,32 @@ func main() {
}
// sort and output
sort.Slice(boxes, func(a, b int) bool { return boxes[a].combined > boxes[b].combined })
var boxes_raw = make(map[string]string)
c := 0
for i := range boxes {
c = c + 1
boxes_raw[fmt.Sprintf("%v", c)] = fmt.Sprintf("%v: %v - %v %v %v %v %v %v",
boxes[i].box_id,
boxes[i].combined,
boxes[i].avg_damage_rank,
boxes[i].avg_deaths_rank,
boxes[i].avg_time_rank,
boxes[i].avg_rating_rank,
boxes[i].completed_players_rank,
boxes[i].completed_times_rank)
}
j, err = json.Marshal(boxes_raw)
if err != nil {
log.Fatal(err)
}
of, err = os.Create("raw_boxes.json")
if err != nil {
log.Fatal(err)
}
of.Write(j)
of.Close()
c = 0
var boxes_topranks = make(map[string]string)
for i := range boxes {
if (boxes[i].builder == "sofar") || (boxes[i].builder == "nore") {
@ -692,6 +745,26 @@ func main() {
builders[i].box_count_rank
}
sort.Slice(builders, func(a, b int) bool { return builders[a].combined > builders[b].combined })
var builder_raw = make(map[string]string)
for i := range builders {
builder_raw[fmt.Sprintf("%v", i+1)] = fmt.Sprintf("%v: %v - %v %v",
builders[i].name,
builders[i].combined,
builders[i].box_rank_avg_rank,
builders[i].box_count_rank)
}
j, err = json.Marshal(builder_raw)
if err != nil {
log.Fatal(err)
}
// write to disc!
of, err = os.Create("raw_builders.json")
if err != nil {
log.Fatal(err)
}
of.Write(j)
of.Close()
var builder_topranks = make(map[string]string)
for i := range builders {
if i > 30 {