Very interesting! Thanks.
There seems to be a bug somewhere else in the framework, though, since when I tested a player from your class I noticed that the win/loss stats aren't adding up!
Bingo: line 156 in SkunkGame.pm is $Players[$last_player]->lose(); should be $Players[$_]->lose()
That didn't affect the money totals, just the win/loss stat display. I think the bug you reported was more seriously affecting the stats... Solo might have been winning more because he was first.
Anyway, I found that
SkunkGame::create_player ("Single Roller", "Solo");
SkunkGame::create_player ("N Roller", "Trey");
SkunkGame::create_player ("N Roller", "Ducky", N => 2);
SkunkGame::create_player ("Random Roller", "Randy", R => 0.50);
consistantly gives results that Randy is the big loser at 7 to 7.5 chips per game, and Ducky wins 6 to 7 chips per game.
As posted, R=1.0 would always skunk, as it doesn't know to stop when it does manage a hundred points.
—John |