[git fast commit] 29. Jan 2019 - 19:00:22

This commit is contained in:
Yannik Schmidt
2019-01-29 19:00:22 +01:00
parent d6480e2411
commit 62fa05962c
4 changed files with 37 additions and 18 deletions

View File

@@ -1,7 +1,7 @@
import socket import socket
import TrueSkillWrapper as TS import TrueSkillWrapper as TS
import Player import Player
import Storrage import StorrageBackend as SB
from threading import Thread from threading import Thread
import PSQL import PSQL
@@ -61,7 +61,7 @@ def t_listen(conn):
topN = 0 topN = 0
if "," in data: if "," in data:
topN = int(data.split(",")[1]) topN = int(data.split(",")[1])
tmp = Storrage.dump_rating(topN) tmp = SB.dump_rating(topN)
elif data.startswith("stats"): elif data.startswith("stats"):
tmp = "Clean: {}\nDirty: {}\n".format(TS.clean_rounds,TS.dirty_rounds) tmp = "Clean: {}\nDirty: {}\n".format(TS.clean_rounds,TS.dirty_rounds)
elif data.startswith("getteam,"): elif data.startswith("getteam,"):
@@ -125,7 +125,7 @@ def get_rebuild_team(string):
for pair in string.split(","): for pair in string.split(","):
p = DummyPlayer(pair.split("|")[0]); p = DummyPlayer(pair.split("|")[0]);
players += [p] players += [p]
players = list(map(players,lambda p: Storrage.known_players[p])) players = list(map(players,lambda p: SB.known_players[p]))
players = sorted(players,key=lambda x: TS.get_env().expose(x.rating),reverse=True) players = sorted(players,key=lambda x: TS.get_env().expose(x.rating),reverse=True)
count = 0 count = 0
@@ -182,15 +182,15 @@ def parse_teams(data):
for sid in team1: for sid in team1:
sid = sid.strip() sid = sid.strip()
tmp = Player.DummyPlayer(sid, sid) tmp = Player.DummyPlayer(sid, sid)
if tmp in Storrage.known_players: if tmp in SB.known_players:
ret[0].update({Storrage.known_players[tmp]:Storrage.known_players[tmp].rating}) ret[0].update({SB.known_players[tmp]:Storrage.known_players[tmp].rating})
else: else:
ret[0].update({tmp:TS.new_rating()}) ret[0].update({tmp:TS.new_rating()})
for sid in team2: for sid in team2:
sid = sid.strip() sid = sid.strip()
tmp = Player.DummyPlayer(sid, sid) tmp = Player.DummyPlayer(sid, sid)
if tmp in Storrage.known_players: if tmp in SB.known_players:
ret[1].update({Storrage.known_players[tmp]:Storrage.known_players[tmp].rating}) ret[1].update({SB.known_players[tmp]:Storrage.known_players[tmp].rating})
else: else:
ret[1].update({tmp:TS.new_rating()}) ret[1].update({tmp:TS.new_rating()})
return ret return ret
@@ -207,17 +207,17 @@ def parse_players(data, lol=False):
tmp = Player.DummyPlayer(str(sid[0]),sid[1]) tmp = Player.DummyPlayer(str(sid[0]),sid[1])
else: else:
tmp = Player.DummyPlayer(str(sid), str(sid)) tmp = Player.DummyPlayer(str(sid), str(sid))
if tmp in Storrage.known_players: if tmp in SB.known_players:
ret += [Storrage.known_players[tmp]] ret += [SB.known_players[tmp]]
else: else:
ret += [tmp] ret += [tmp]
return ret return ret
def find_player(string): def find_player(string):
if string.isdigit(): if string.isdigit():
if string in Storrage.known_players: if string in SB.known_players:
return TS.get_player_rating(string, string) return TS.get_player_rating(string, string)
else: else:
tmp = Storrage.fuzzy_find_player(string) tmp = SB.fuzzy_find_player(string)
return TS.get_player_rating(tmp) return TS.get_player_rating(tmp)

23
PSQL.py Normal file
View File

@@ -0,0 +1,23 @@
import psycopg2
def save(dname,user,host,password,data):
conn = psycopg2.connect("dbname={} user={} host={} password={}".format(dname,user,host,password))
cur = conn.cursor()
tup = ()
if type(data) == dict:
for player in data:
d = dict()
d.update("steamid",p.steamid)
d.update("name",p.name)
d.update("wins",p.wins)
d.update("games",p.games)
d.update("mu",p.rating.mu)
d.update("sigma",p.rating.sigma)
tup += (d,)
cur.executemany("""INSERT INTO ratings(steamid,name,wins,games,mu,sigma) \
VALUES (%(steamid)s,%(name)s,%(wins)s,%(games)s,%(mu)s,%(sigma)s)""",d)
elif isinstance(data,Event):
cur.exceutemany("""INSERT INTO events(etype,timestamp,line) \
VALUES (%(etype)s,%(timestamp)s,%(line)s)""",data)
def query_buddies(steamid):
return []

View File

@@ -1,11 +1,8 @@
#!/usr/bin/python3 #!/usr/bin/python3
from trueskill import TrueSkill, Rating from trueskill import TrueSkill, Rating
import trueskill import StorrageBackend
import Storrage
import threading import threading
import Player import Player
import itertools
import math
env = TrueSkill(draw_probability=0, mu=1500, sigma=833, tau=40, backend='mpmath') env = TrueSkill(draw_probability=0, mu=1500, sigma=833, tau=40, backend='mpmath')
env.make_as_global() env.make_as_global()

5
startInsurgency.py Normal file → Executable file
View File

@@ -1,8 +1,7 @@
#!/usr/bin/python3 #!/usr/bin/python3
import Storrage
import sys import sys
import NetworkParser import NetworkParser
import FileInStream import FileReader
import argparse import argparse
parser = argparse.ArgumentParser(description='Insurgency rating python backend server') parser = argparse.ArgumentParser(description='Insurgency rating python backend server')
@@ -17,7 +16,7 @@ parser.add_argument('--no-follow','-nf',dest='nofollow', action='store_const',\
if __name__ == "__main__": if __name__ == "__main__":
args = parser.parse_args() args = parser.parse_args()
FileInStream.readfiles( args.files ,\ FileReader.readfiles( args.files ,\
args.start_at_end,\ args.start_at_end,\
args.nofollow, args.nofollow,
) )