|  | @@ -143,7 +143,7 @@ fn negamax(game: &mut Game, sc: &mut SearchControl, hash: &mut Cache, mut alpha:
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      if depth == 0 {
 |  |      if depth == 0 {
 | 
											
												
													
														|  | -        return quiescence_search(game, sc, hash, alpha, beta, 9);
 |  | 
 | 
											
												
													
														|  | 
 |  | +        return quiescence_search(game, sc, hash, alpha, beta, 100);
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      sc.nodes += 1;
 |  |      sc.nodes += 1;
 | 
											
										
											
												
													
														|  | @@ -153,8 +153,6 @@ fn negamax(game: &mut Game, sc: &mut SearchControl, hash: &mut Cache, mut alpha:
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -    if game.get_piece(KING, game.turn) == 0 { return (-mate(), false); }
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |      let mut moves = generate_legal_moves(game, game.turn);
 |  |      let mut moves = generate_legal_moves(game, game.turn);
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -213,7 +211,7 @@ fn negamax(game: &mut Game, sc: &mut SearchControl, hash: &mut Cache, mut alpha:
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          if val >= beta {
 |  |          if val >= beta {
 | 
											
												
													
														|  |              game.undo_move(undo);
 |  |              game.undo_move(undo);
 | 
											
												
													
														|  | -            hash.cache(game, CacheEntry::new_lower(depth, val));
 |  | 
 | 
											
												
													
														|  | 
 |  | +            hash.cache(game, CacheEntry::new_upper(depth, val));
 | 
											
												
													
														|  |              //println!("but ret {}: {}", depth, beta);
 |  |              //println!("but ret {}: {}", depth, beta);
 | 
											
												
													
														|  |              return (beta, false);
 |  |              return (beta, false);
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
										
											
												
													
														|  | @@ -229,7 +227,7 @@ fn negamax(game: &mut Game, sc: &mut SearchControl, hash: &mut Cache, mut alpha:
 | 
											
												
													
														|  |          hash.cache(game, CacheEntry::new_value(depth, alpha));
 |  |          hash.cache(game, CacheEntry::new_value(depth, alpha));
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |      else {
 |  |      else {
 | 
											
												
													
														|  | -        hash.cache(game, CacheEntry::new_upper(depth, alpha));
 |  | 
 | 
											
												
													
														|  | 
 |  | +        hash.cache(game, CacheEntry::new_lower(depth, alpha));
 | 
											
												
													
														|  |      }
 |  |      }
 | 
											
												
													
														|  |      //info!("best alpha {}", best);
 |  |      //info!("best alpha {}", best);
 | 
											
												
													
														|  |      return (alpha, false);
 |  |      return (alpha, false);
 |