Add more metrics

This commit is contained in:
sqozz 2018-05-11 19:12:30 +02:00
parent 395f5eca32
commit 49f5a03530
1 changed files with 17 additions and 6 deletions

View File

@ -11,7 +11,7 @@ import time
MESSAGES = { "GameInfo" : 0x00,
"WorldUpdate" : 0x01,
"BotSpawn" : 0x20,
"BotKill" : 0x21,
"BotKill" : 0x21,
"BotMove" : 0x22,
"BotStats" : 0x24
}
@ -110,13 +110,13 @@ class Game():
victim = self.users.get_user_by_worm(js.get("victim_id"))
killer = self.users.get_user_by_worm(js.get("killer_id"))
if js.get("killer_id") == js.get("victim_id"):
print("{} killed himself".format(victim.name))
#print("☕ {} killed himself".format(victim.name))
pass
else:
#print("☠ {} fragged {}".format(killer.name, victim.name))
pass
#killer.kills += 1
#victim.deaths += 1
killer.kills += 1
victim.deaths += 1
except AttributeError as e:
print(e)
print("Error in kill: {}".format(js))
@ -124,9 +124,9 @@ class Game():
elif typ == MESSAGES["BotStats"]:
msg_data = js.get("data")
for worm in msg_data:
user = self.users.get_user_by_worm(worm)
user = self.users.get_user_by_worm(int(worm))
if user != None:
print("updating {}".format(user.name))
user.update({ "id" : int(worm), "data" : msg_data.get(worm)})
pass
elif typ == MESSAGES["WorldUpdate"]:
bots = js.get("bots")
@ -178,6 +178,13 @@ class BotUser():
def update(self, data):
rev_id = data.get("db_id")
worm_id = data.get("id") #TODO: does this work?
if "data" in data.keys():
user = game.users.get_user_by_worm(worm_id)
current_rev = user.revs.get(user.current_rev)
current_rev.carrion_food_consumed = data.get("data").get("c")
current_rev.natural_food_consumed = data.get("data").get("n")
current_rev.hunted_food_consumed = data.get("data").get("h")
pdb.set_trace()
if rev_id in self.revs.keys(): # revision already known
rev = self.revs.get(rev_id)
rev.update(data)
@ -195,6 +202,7 @@ class BotRevision():
self.worms.update({self.current_worm : [self.rev_id]})
self.deaths = 0
self.kills = 0
self.mass = 0
self.natural_food_consumed = 0
self.carrion_food_consumed = 0
self.hunted_food_consumed = 0
@ -204,8 +212,11 @@ class BotRevision():
pass
def update(self, data):
if "food" in data.keys():
pdb.set_trace()
self.current_worm = data.get("id")
self.rev_id = data.get("db_id")
self.mass = data.get("mass")
self.worms.update({self.current_worm : [self.rev_id]})
pass