Compare commits
1 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
bb3bb36665 |
9
elo.py
9
elo.py
|
|
@ -5,9 +5,6 @@
|
|||
from elo_tracker import EloTracker
|
||||
from pyclient.games import TicTacToe
|
||||
|
||||
import pyclient
|
||||
import time
|
||||
|
||||
GAME_FILE = "games.jsonl"
|
||||
PLAYER_FILE = "known_players.json"
|
||||
|
||||
|
|
@ -20,14 +17,14 @@ def main() -> int:
|
|||
|
||||
tracker.start_periodic_matches(
|
||||
game=TicTacToe.empty(),
|
||||
interval_seconds=60,
|
||||
interval_seconds=10 * 60,
|
||||
player_count=2,
|
||||
)
|
||||
|
||||
try:
|
||||
while True:
|
||||
pass
|
||||
tracker.start_server(import_name=__name__)
|
||||
except KeyboardInterrupt:
|
||||
print("Noticed KeyboardInterrupt, stopping match daemon...")
|
||||
tracker.stop_periodic_matches()
|
||||
|
||||
return 0
|
||||
|
|
|
|||
|
|
@ -206,7 +206,7 @@ class Match:
|
|||
|
||||
participants : list[tuple[PlayerIdentifier, FinishState]] = []
|
||||
for i, agent in enumerate(players):
|
||||
finish_state = results.get(i, None)
|
||||
finish_state = results.get(i + 1, None)
|
||||
if finish_state is None:
|
||||
continue
|
||||
|
||||
|
|
@ -395,6 +395,9 @@ class EloTracker:
|
|||
rating_1 = self.__get_stat(player_id=player_id1).elo
|
||||
|
||||
for player_id2, result2 in m.participants:
|
||||
if player_id1 == player_id2:
|
||||
continue
|
||||
|
||||
rating_2 = self.__get_stat(player_id=player_id2).elo
|
||||
|
||||
expected_score = 1 / (1 + 10 ** ((rating_2 - rating_1) / STD_DEV_DIFF))
|
||||
|
|
@ -583,7 +586,7 @@ class EloTracker:
|
|||
:rtype: pyclient.GameReplay
|
||||
:raises ValueError: One of the URLs could not be accessed.
|
||||
"""
|
||||
agents = [
|
||||
agents : list[Any] = [
|
||||
pyclient.Agent.from_url(url, debug=self.debug)
|
||||
for url in players
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
{
|
||||
"players": [
|
||||
"https://bmt001.noordstar.me"
|
||||
"https://bmt001.noordstar.me",
|
||||
"https://bmt002.noordstar.me"
|
||||
]
|
||||
}
|
||||
Loading…
Reference in New Issue