UCI chess engine written in object pascal
Be the first to post a text review of Critter Chess. Rate and review a project by clicking thumbs up or thumbs down in the right column.
Version 0.39a (2009.06.12) ========================== * bugfix release only - playing strength same as plain 0.39 * fixed a crash when engine wants to display a PV and there is no PV available yet * fixed a deadlock when input thread receives 'ponderhit' before thinking thread started to ponder * fixed PV display when running under polyglot (was sending algebraic notation instead of coordinate) Version 0.39 (2009.06.07) ========================= * fixed a bug in attack table generation (which caused misbehaving king safety eval) * added LMR and futility pruning * added zugzwang verification search * tweaked time management * draw by insufficient material detection * pondering Version 0.38 (2009.05.19) ========================= * First version with real evaluation function * pawn structure, king safety, piece mobility, development, etc. * very ugly, untuned, but 100 elo stronger than 0.37 Version 0.37 (2009.05.01) ========================= * Opening book support * New commands "makebook" and "mergebook" for book creation from pgn files Version 0.36 (2009.04.26) ========================= * smooth transition between midgame and endgame scoring in eval * rewritten / simplified move generator, tweaked move ordering * temporary workaround for a timing problem which caused forfeits on time Version 0.35 (2009.04.20) ========================= * SEE rewritten from scratch, now its slightly faster and much more accurate (previous implementation was very buggy) * QSearch is now divided into 3 methods: Quiesce, QChecks, QEvasions * Changed internal representation of pieces - all pieces are unsigned, bit 0 = color, bits 1-3 = piece, all sliding pieces have bit 3 set Version 0.34 (2009.04.16) ========================= * checks in first ply of quiescent search * null-move always with R=3 * fixed one-reply search extension * fixed a bug that caused mate scores to be off by 1 ply * built-in epd test, command "epdtest <filename.epd>" Version 0.33 (2009.04.09) ========================= * fixed a bug in transpositon table, entries with same depth were not overwritten in depth-prefered part of hash table. this caused significant search instability problems * temporarily switched off IID - it seems it doesnt help much, sometimes even hurts Version 0.32 (2009.04.08) ========================= * avoiding null-move in pv-nodes * avoiding null-move when a TT hit tells it will not fail high * mate values depth-adjusted before TT store / probe * when aspiration window fails at root it is widened in 3 steps Version 0.31 (2009.04.04) ========================= * failing soft instead of failing hard * switched back to MVV/LVA capture ordering (after separating losing captures by SEE) * root moves ordered by nodecount from previous iterations Version 0.30 (2009.04.02) ========================= * workaround for a bug when movegen.ply != search ply (eg after null-move) * other minor bugfixes Version 0.29 (2009.03.28) ========================= * resizable hash table using UCI 'setoption hash' * internal iterative deepening when no hashmove found * fixed a bug in 3-fold repetition detection * fixed a bug in qsearch mate detection Version 0.28 (2009.03.26) ========================= * added null move pruning (R=2) * incremental move generation * losing captures ignored in qsearch * check evasions in qsearch Version 0.27 (2009.03.24) ========================= * early move legality testing (saves time making/unamking the move) * fast checking move detection * added evasion generator * added search extentensions (check, pawn on 7th) * 274/300 in WAC (10s/move) Version 0.26 (2009.03.19) ========================= * fixed bugs in transposition table code * restructured makemove/undomove methods, many other code cleanups * 225/300 in WAC test (10s/move) Version 0.25 (2009.03.16) ========================= * improved attack chcecking code, exploiting feautres of the new 0x88 board * sligtly improved move generation * fixed few minor bugs in SEE * implemented transposition table (somewhat buggy for now) Version 0.24 (2009.03.14) ========================= * board class and move generator rewritten to use 0x88 board representation * implemented static exchange evaluation * separate piece-square tables for game ending (for pawns and king) * scores 204/300 in WAC test suite (10s/move on Athlon 64 4000+) Version 0.23 (2009.03.09) ========================= * added piece-square tables for all pieces * added killer move heuristic * changed move representation from struct to single integer Version 0.22 (2009.03.06) ========================= * optimized castling rigts status update * fixed UCI command "stop" * added support for "go infinite" in UCI * added full/half move counters to FEN output * implemented zobrist key calculation * implemented 50-move rule * implemented 3-fold repetition detection Version 0.21 (2009.03.04) ========================= * slightly better move ordering * stops deepening when mate found * stalemate now evaluates to SCORE_DRAW * many bugfixes Version 0.2 (2009.03.03) ========================= * Added quiescent search * Root moves are now sorted by scores from previous iteration Version <=0.1 (2009.01.17 - 2009.03.01) ========================= * basic move generator using int[64] board representation * standard alpha-beta search with iterative deepening * very simplistic evaluation (material + simple piece-square table) * MVV/LVA ordering for captures, history heuristic for noncaptures * UCI protocol support
Version 0.39a (2009.06.12) ========================== * bugfix release only - playing strength same as plain 0.39 * fixed a crash when engine wants to display a PV and there is no PV available yet * fixed a deadlock when input thread receives 'ponderhit' before thinking thread started to ponder * fixed PV display when running under polyglot (was sending algebraic notation instead of coordinate) Version 0.39 (2009.06.07) ========================= * fixed a bug in attack table generation (which caused misbehaving king safety eval) * added LMR and futility pruning * added zugzwang verification search * tweaked time management * draw by insufficient material detection * pondering Version 0.38 (2009.05.19) ========================= * First version with real evaluation function * pawn structure, king safety, piece mobility, development, etc. * very ugly, untuned, but 100 elo stronger than 0.37 Version 0.37 (2009.05.01) ========================= * Opening book support * New commands "makebook" and "mergebook" for book creation from pgn files Version 0.36 (2009.04.26) ========================= * smooth transition between midgame and endgame scoring in eval * rewritten / simplified move generator, tweaked move ordering * temporary workaround for a timing problem which caused forfeits on time Version 0.35 (2009.04.20) ========================= * SEE rewritten from scratch, now its slightly faster and much more accurate (previous implementation was very buggy) * QSearch is now divided into 3 methods: Quiesce, QChecks, QEvasions * Changed internal representation of pieces - all pieces are unsigned, bit 0 = color, bits 1-3 = piece, all sliding pieces have bit 3 set Version 0.34 (2009.04.16) ========================= * checks in first ply of quiescent search * null-move always with R=3 * fixed one-reply search extension * fixed a bug that caused mate scores to be off by 1 ply * built-in epd test, command "epdtest <filename.epd>" Version 0.33 (2009.04.09) ========================= * fixed a bug in transpositon table, entries with same depth were not overwritten in depth-prefered part of hash table. this caused significant search instability problems * temporarily switched off IID - it seems it doesnt help much, sometimes even hurts Version 0.32 (2009.04.08) ========================= * avoiding null-move in pv-nodes * avoiding null-move when a TT hit tells it will not fail high * mate values depth-adjusted before TT store / probe * when aspiration window fails at root it is widened in 3 steps Version 0.31 (2009.04.04) ========================= * failing soft instead of failing hard * switched back to MVV/LVA capture ordering (after separating losing captures by SEE) * root moves ordered by nodecount from previous iterations Version 0.30 (2009.04.02) ========================= * workaround for a bug when movegen.ply != search ply (eg after null-move) * other minor bugfixes Version 0.29 (2009.03.28) ========================= * resizable hash table using UCI 'setoption hash' * internal iterative deepening when no hashmove found * fixed a bug in 3-fold repetition detection * fixed a bug in qsearch mate detection Version 0.28 (2009.03.26) ========================= * added null move pruning (R=2) * incremental move generation * losing captures ignored in qsearch * check evasions in qsearch Version 0.27 (2009.03.24) ========================= * early move legality testing (saves time making/unamking the move) * fast checking move detection * added evasion generator * added search extentensions (check, pawn on 7th) * 274/300 in WAC (10s/move) Version 0.26 (2009.03.19) ========================= * fixed bugs in transposition table code * restructured makemove/undomove methods, many other code cleanups * 225/300 in WAC test (10s/move) Version 0.25 (2009.03.16) ========================= * improved attack chcecking code, exploiting feautres of the new 0x88 board * sligtly improved move generation * fixed few minor bugs in SEE * implemented transposition table (somewhat buggy for now) Version 0.24 (2009.03.14) ========================= * board class and move generator rewritten to use 0x88 board representation * implemented static exchange evaluation * separate piece-square tables for game ending (for pawns and king) * scores 204/300 in WAC test suite (10s/move on Athlon 64 4000+) Version 0.23 (2009.03.09) ========================= * added piece-square tables for all pieces * added killer move heuristic * changed move representation from struct to single integer Version 0.22 (2009.03.06) ========================= * optimized castling rigts status update * fixed UCI command "stop" * added support for "go infinite" in UCI * added full/half move counters to FEN output * implemented zobrist key calculation * implemented 50-move rule * implemented 3-fold repetition detection Version 0.21 (2009.03.04) ========================= * slightly better move ordering * stops deepening when mate found * stalemate now evaluates to SCORE_DRAW * many bugfixes Version 0.2 (2009.03.03) ========================= * Added quiescent search * Root moves are now sorted by scores from previous iteration Version <=0.1 (2009.01.17 - 2009.03.01) ========================= * basic move generator using int[64] board representation * standard alpha-beta search with iterative deepening * very simplistic evaluation (material + simple piece-square table) * MVV/LVA ordering for captures, history heuristic for noncaptures * UCI protocol support
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?
Thanks for your review!
Get credit for your review by logging in via OpenID. Click your account provider: