eliot/game
Olivier Teulière 664eec36ed New MoveSelector class, to help find the "best" move to play.
The best move has the highest possible score, but it is also the one
leading to the most interesting game. This is a subjective notion, but
some heuristics can help, such as:
 - a move sparing a blank is better than one using it
 - a move with many prefixes and suffixes is better than one without
   extensions
 - a move "opening" the game is better than one blocking it
 - a move leaving a nice rack is better than one leaving "bad" letters

At the moment, only the first heuristic is implemented.
2013-01-16 19:00:01 +01:00
..
cmd TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
ai_percent.cpp New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
ai_percent.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
ai_player.h Support saving/loading games (any game type) in XML format. 2009-11-29 16:01:31 +00:00
arbitration.cpp Topping: do not assign an empty move to the player immediately. 2013-01-15 11:43:30 +01:00
arbitration.h New "master game" feature. 2012-12-30 16:38:07 +01:00
bag.cpp Minor cosmetics changes (more C++-like) 2012-10-24 15:23:59 +02:00
bag.h Minor cosmetics changes (more C++-like) 2012-10-24 15:23:59 +02:00
board.cpp Board: allow one more type of invalid word when previewing a played word 2013-01-11 11:06:56 +01:00
board.h New BoardLayout class to wrap the board layout (size and special squares). 2012-12-29 17:50:18 +01:00
board_cross.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
board_layout.cpp New BoardLayout class to wrap the board layout (size and special squares). 2012-12-29 17:50:18 +01:00
board_layout.h New BoardLayout class to wrap the board layout (size and special squares). 2012-12-29 17:50:18 +01:00
board_search.cpp New BoardLayout class to wrap the board layout (size and special squares). 2012-12-29 17:50:18 +01:00
board_search.h New GameParams class to wrap a few game characteristics. 2011-08-27 21:55:49 +02:00
command.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
command.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
coord.cpp Coord: do not refuse lowercase coordinates. 2012-12-29 17:46:17 +01:00
coord.h Coord: remove useless code 2012-12-29 17:46:17 +01:00
cross.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
cross.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
duplicate.cpp New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
duplicate.h New "master game" feature. 2012-12-30 16:38:07 +01:00
freegame.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
freegame.h New "master game" feature. 2012-12-30 16:38:07 +01:00
game.cpp New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
game.h Topping: do not assign an empty move to the player immediately. 2013-01-15 11:43:30 +01:00
game_exception.cpp Print to stderr the complete stack trace in case of exception or segmentation fault. 2010-10-17 21:23:39 +00:00
game_exception.h Print to stderr the complete stack trace in case of exception or segmentation fault. 2010-10-17 21:23:39 +00:00
game_factory.cpp GameFactory: remove the useless releaseGame() method 2012-12-30 16:38:07 +01:00
game_factory.h GameFactory: remove the useless releaseGame() method 2012-12-30 16:38:07 +01:00
game_params.h New topping mode (very beginning) 2012-12-29 17:51:16 +01:00
hints.cpp Hints system, to retrieve partial information about a Move. 2013-01-08 16:04:23 +01:00
hints.h Hints system, to retrieve partial information about a Move. 2013-01-08 16:04:23 +01:00
history.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
history.h TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
Makefile.am New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
matrix.h New BoardLayout class to wrap the board layout (size and special squares). 2012-12-29 17:50:18 +01:00
move.cpp Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
move.h Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
move_selector.cpp New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
move_selector.h New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
navigation.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
navigation.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
player.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
player.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
pldrack.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
pldrack.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
public_game.cpp Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
public_game.h Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
rack.cpp Rack: add operator==() 2013-01-09 18:52:11 +01:00
rack.h Rack: add operator==() 2013-01-09 18:52:11 +01:00
results.cpp Make sure some class members are initialized (bugs reported by Coverity) 2012-10-11 23:21:32 +02:00
results.h Results: add a isEmpty() method, and use it where possible 2013-01-16 11:15:12 +01:00
round.cpp Round: add operator==() 2012-12-30 16:13:31 +01:00
round.h Round: add operator==() 2012-12-30 16:13:31 +01:00
settings.cpp Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
settings.h Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
topping.cpp New MoveSelector class, to help find the "best" move to play. 2013-01-16 19:00:01 +01:00
topping.h Topping: give the score penalty directly with the player move. 2013-01-16 17:46:47 +01:00
training.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
training.h New "master game" feature. 2012-12-30 16:38:07 +01:00
turn.cpp Change the copyright years for all the files modified in 2012 2012-10-11 13:45:24 +02:00
turn.h Turn: new findAllMatchingCmd() utility method 2012-12-29 17:44:39 +01:00
turn_data.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
turn_data.h TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
xml_reader.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
xml_reader.h Add myself to the authors, and fix some copyright headers 2012-10-11 13:45:24 +02:00
xml_writer.cpp TurnData: remove the m_playerId member 2013-01-16 14:40:34 +01:00
xml_writer.h Simplified the looging macros, and added logs in various key places. 2011-01-29 23:47:20 +00:00