-
Notifications
You must be signed in to change notification settings - Fork 0
Home
vv111y edited this page Jan 6, 2016
·
28 revisions
####TODO Nick
-
code
- BoardNode
- create children
- comment
- SearchTree
- convert pseudocode
- comment
- BoardNode
-
review
- Class MoveList
- math
- makeMove, makeMoveEP, makeMoveCastle in Class Board
- math
- Class MoveList
-
breakdown
- search eval
- iterative deepening (OPTIONAL)
- transposition tables (OPTIONAL)
- zobrist keys (OPTIONAL)
- search eval
####TODO Will
- class Player: main, uci implementation
- go
- stop
- position
- newgame
- isReady
-
setOptions?
- class Thinker
- constructor, init engine
- run method. Main engine code starts here
- timer. (other search options?)
-
bestMove. returns the best move available
- DEBUG
- perft in player class. use console
- games on arena
- Report
####NOTES
- UCI not case-sensitive
- Player creates separate thread (object thinker) for engine searching, keeps watching input.
- All output: use System.out.println
- final implementation:
- Windows 64bit - for optimum bitboard implementation
- Launch4j - wrap .jar file into .exe to use with any chess GUI
- java 8.x - for unsigned long integer support
- bundled with Chess Arena
#####Nick TODO DONE
- breakdown
- board rep.
- generating moves
- pawns
- en passant
- promotions
- sliding pieces
- bishops
- rooks
- queens
- knights
- king
- castling
- white/black differences
- pawns
- search eval
- minimax + alpha-beta (needs to be typed)
- heuristic function