From 460bf617e41d379aef49769b2356b3d6b7cd490b Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Tue, 9 Nov 2010 18:42:38 +0100 Subject: [PATCH] Moggy mq_tag: Base at 0, not 1 (one extra bit available) --- playout/moggy.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/playout/moggy.c b/playout/moggy.c index 0a8b917..b50cb5e 100644 --- a/playout/moggy.c +++ b/playout/moggy.c @@ -36,7 +36,7 @@ * receive a penalty; penalty tags should be used only when it is * certain the move would be considered anyway. */ enum mq_tag { - MQ_KO = 1, + MQ_KO = 0, MQ_LATARI, MQ_L2LIB, MQ_PAT3, @@ -419,7 +419,7 @@ mq_tagged_choose(struct playout_policy *p, struct board *b, enum stone to_play, for (unsigned int i = 0; i < q->moves; i++) { double val = 1.0; assert(q->tag[i] != 0); - for (int j = 1; j < MQ_MAX; j++) + for (int j = 0; j < MQ_MAX; j++) if (q->tag[i] & (1<move[i], b), q->tag[i], j, val, pp->mq_prob[j]); val *= pp->mq_prob[j]; @@ -742,7 +742,7 @@ playout_moggy_init(char *arg, struct board *b, struct joseki_dict *jdict) p->choose = optval && *optval == '0' ? playout_moggy_seqchoose : playout_moggy_fullchoose; } else if (!strcasecmp(optname, "mqprob") && optval) { /* KO%LATARI%L2LIB%PAT3%GATARI%JOSEKI */ - for (int i = 1; *optval && i < MQ_MAX; i++, optval += strcspn(optval, "%")) { + for (int i = 0; *optval && i < MQ_MAX; i++, optval += strcspn(optval, "%")) { optval++; pp->mq_prob[i] = atof(optval); } -- 2.11.4.GIT