#define MAX_PLAYERS 16
+float match_stddev = 70.0f;
+
struct player {
int player_index;
int points, margin;
float draw_gaussian(float mu, float stddev)
{
static bool inited = false;
- static long unsigned seed = 123456789;
- int kn[128];
- float fn[128], wn[128];
+ static long unsigned seed = time(NULL);
+ static int kn[128];
+ static float fn[128], wn[128];
if (!inited) {
r4_nor_setup(kn, fn, wn);
inited = true;
{
int trials = atoi(argv[1]);
+ if (scanf("%f", &match_stddev) != 1) {
+ fprintf(stderr, "Could't read match stddev\n");
+ exit(1);
+ }
+
int num_players;
if (scanf("%d", &num_players) != 1) {
fprintf(stderr, "Could't read number of players\n");
}
if (num_players > MAX_PLAYERS) {
- fprintf(stderr, "Max %d players supported\n");
+ fprintf(stderr, "Max %d players supported\n", MAX_PLAYERS);
exit(1);
}
float mu = ratings[pl1] - ratings[pl2];
- int score = lrintf(draw_gaussian(mu, 82.9f));
+ int score = lrintf(draw_gaussian(mu, match_stddev));
scores[pl1][pl2] = score;
scores[pl2][pl1] = -score;
}