From e298621f02590b696508374276851d48a0f2272f Mon Sep 17 00:00:00 2001 From: Sander Land Date: Sat, 16 May 2020 14:09:35 +0200 Subject: [PATCH] pv fix --- README.md | 1 + katrain/core/game_node.py | 1 + katrain/gui/badukpan.py | 5 ++++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index a12f11b..f6a0177 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,7 @@ If you ever need to reset to the original settings, simply re-download the `conf * sgf_load: default path where the load SGF dialog opens. * sgf_save: path where SGF files are saved. * board_ui settings + * anim_pv_time: time in seconds between each stone when animating variations. * eval_dot_max_size: size of coloured dots when point size is maximal, relative to stone size. * eval_dot_min_size: size of coloured dots when point size is minimal * ... various other minor cosmetic options. diff --git a/katrain/core/game_node.py b/katrain/core/game_node.py index 991c0da..edce21d 100644 --- a/katrain/core/game_node.py +++ b/katrain/core/game_node.py @@ -83,6 +83,7 @@ class GameNode(SGFNode): self.policy = analysis_json.get("policy") self.analysis["root"] = analysis_json["rootInfo"] if self.parent and self.move: + analysis_json["rootInfo"]['pv'] = [self.move.gtp()] + (analysis_json["moveInfos"][0]["pv"] if analysis_json["moveInfos"] else []) self.parent.update_move_analysis(analysis_json["rootInfo"], self.move.gtp()) # update analysis in parent for consistency @property diff --git a/katrain/gui/badukpan.py b/katrain/gui/badukpan.py index 244b37b..8df99e0 100644 --- a/katrain/gui/badukpan.py +++ b/katrain/gui/badukpan.py @@ -327,7 +327,10 @@ class BadukPanWidget(Widget): alpha += self.ui_config["top_move_x_alpha"] elif move_dict["visits"] < self.ui_config["visit_frac_small"] * hint_moves[0]["visits"]: scale = 0.8 - self.active_pv_moves.append((move.coords, move_dict["pv"], current_node)) + if "pv" in move_dict: + self.active_pv_moves.append((move.coords, move_dict["pv"], current_node)) + else: + katrain.log(f"PV missing for move_dict {move_dict}",OUTPUT_DEBUG) self.draw_stone(move.coords[0], move.coords[1], [*self.eval_color(move_dict["pointsLost"])[:3], alpha], scale=scale) # hover next move ghost stone