From c8d6712f0913b92b36289593e24d4c9890cc3950 Mon Sep 17 00:00:00 2001 From: Henri Bourcereau Date: Sat, 13 Sep 2025 17:42:08 +0200 Subject: [PATCH] fix: bot training : empty move if no other move allowed --- bot/src/training_common.rs | 6 +++++- bot/src/training_common_big.rs | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/bot/src/training_common.rs b/bot/src/training_common.rs index aa54c16..5d8e870 100644 --- a/bot/src/training_common.rs +++ b/bot/src/training_common.rs @@ -226,7 +226,11 @@ pub fn get_valid_actions(game_state: &crate::GameState) -> Vec { } TurnStage::Move => { let rules = store::MoveRules::new(&color, &game_state.board, game_state.dice); - let possible_moves = rules.get_possible_moves_sequences(true, vec![]); + let mut possible_moves = rules.get_possible_moves_sequences(true, vec![]); + if possible_moves.is_empty() { + // Empty move + possible_moves.push((CheckerMove::default(), CheckerMove::default())); + } // Modififier checker_moves_to_trictrac_action si on doit gérer Black assert_eq!(color, store::Color::White); diff --git a/bot/src/training_common_big.rs b/bot/src/training_common_big.rs index db9ee2b..9f8bae4 100644 --- a/bot/src/training_common_big.rs +++ b/bot/src/training_common_big.rs @@ -146,7 +146,11 @@ pub fn get_valid_actions(game_state: &crate::GameState) -> Vec { } TurnStage::Move => { let rules = store::MoveRules::new(&color, &game_state.board, game_state.dice); - let possible_moves = rules.get_possible_moves_sequences(true, vec![]); + let mut possible_moves = rules.get_possible_moves_sequences(true, vec![]); + if possible_moves.is_empty() { + // Empty move + possible_moves.push((CheckerMove::default(), CheckerMove::default())); + } // Modififier checker_moves_to_trictrac_action si on doit gérer Black assert_eq!(color, store::Color::White);