summaryrefslogtreecommitdiff
path: root/ausbutler/butler.py
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2017-01-04 00:34:59 +0100
committeremkael <emkael@tlen.pl>2017-01-04 20:56:21 +0100
commita992859c23b9fe33d2623f5ec53c58c48699ed05 (patch)
treeca1ea96c2e9081e4cf0960ee5e7a40faef57c0f9 /ausbutler/butler.py
parent66cd9985aec868e393842d302beb3f01bcd2ba31 (diff)
Moving config read to entry script
Diffstat (limited to 'ausbutler/butler.py')
-rw-r--r--ausbutler/butler.py21
1 files changed, 7 insertions, 14 deletions
diff --git a/ausbutler/butler.py b/ausbutler/butler.py
index 2fae840..2766069 100644
--- a/ausbutler/butler.py
+++ b/ausbutler/butler.py
@@ -1,17 +1,10 @@
-import json
-from os import path
-import __main__
-
-config = json.load(
- open(path.join(path.dirname(__main__.__file__), 'config', 'butler.json')))
-
-def cutoff(score):
+def cutoff(score, cutoff_point=32, cutoff_rate=0.1):
sign = 1 if score > 0 else -1
score = abs(score)
- if score > config['cutoff_point']:
- score -= config['cutoff_point']
- score *= config['cutoff_rate']
- score += config['cutoff_point']
+ if score > cutoff_point:
+ score -= cutoff_point
+ score *= cutoff_rate
+ score += cutoff_point
return score * sign
def get_opponents(butler, player):
@@ -32,10 +25,10 @@ def get_room(butler, player):
if player in [table.closeE, table.closeW, table.closeN, table.closeS]:
return 'closed'
-def normalize(butler):
+def normalize(butler, opp_factor=0.5):
if butler.board_count == 0:
return 0.0
return (
butler.cut_score / butler.board_count
- + butler.opp_score * config['opponent_factor']
+ + butler.opp_score * opp_factor
) * butler.board_count