Commit Graph

96 Commits

Author SHA1 Message Date
e4b19b8bdd fix: unmake broken 2024-10-25 20:26:41 -04:00
21add6fec8 feat: debug tools for movegen/perft 2024-10-25 20:25:02 -04:00
1b250f224d test: movegen tool 2024-10-25 12:02:27 -04:00
611cdd4d51 stub: proper make/unmake
fails tests
2024-10-25 11:59:53 -04:00
17bec263d9 perf: make_unlinked takes reference instead of ownership 2024-10-22 18:09:32 -04:00
00bfbd7fbc perf: remove redundant is_check direction for queen 2024-10-22 17:52:55 -04:00
09551e802e fix: en passant bug
also added more depth on some perft positions
2024-10-22 17:11:04 -04:00
61e5a6114b fix: bitboard not reflecting captures
also implemented perft
2024-10-22 16:31:30 -04:00
8b066b3933 test: use anti-test cases for more tests 2024-10-22 13:45:06 -04:00
16141e851c feat: ensure king does not castle through check 2024-10-22 12:51:22 -04:00
ba0dffab22 chore: refactor 2024-10-21 14:43:18 -04:00
30b401fb2b refactor: don't clone for check checker 2024-10-21 14:43:02 -04:00
b0b91232d5 test: test augmenting with color flips 2024-10-21 14:23:47 -04:00
26a88adefc feat: color flip board 2024-10-20 19:12:18 -04:00
4a2f3b5830 feat: king check checker 2024-10-20 18:33:35 -04:00
1e38040270 refactor: centralize conversion to signed row/column 2024-10-20 15:40:34 -04:00
0c5d28b724 refactor: have movegen traits use iterables instead of vectors 2024-10-20 15:22:57 -04:00
c669aa6f89 refactor: move direction coordinates into module scope constants 2024-10-20 14:59:31 -04:00
605ce75f42 feat: castle movegen 2024-10-20 14:53:55 -04:00
f0f73bb656 chore: format 2024-10-20 13:54:23 -04:00
a30a695275 feat: horse movegen 2024-10-20 13:54:12 -04:00
35f0585979 feat: pawn promotion movegen 2024-10-20 13:45:33 -04:00
5ea9a0d184 feat: pawn movegen (except promotion) 2024-10-20 13:33:38 -04:00
2ec229ad09 chore: format 2024-10-20 13:09:26 -04:00
37260b4d38 feat: king queen rook bishop slider movegen 2024-10-20 13:09:04 -04:00
2316e23530 feat: rook slider movegen 2024-10-20 12:06:00 -04:00
23fec6541b refactor: use Rust idiomatic traits for Square to string conversion 2024-10-20 11:41:10 -04:00
23f4ff68b4 stub: rook slider movegen 2024-10-20 11:37:44 -04:00
5b65f9b756 feat: bitboard iterator 2024-10-18 17:12:06 -04:00
2350932559 feat: make move castling 2024-10-18 16:24:15 -04:00
64b5187a1f stub: make move castling 2024-10-06 21:48:21 -04:00
4efb48244f feat: make en-passant moves 2024-10-06 21:28:11 -04:00
a4efad3c14 fix: square error public 2024-10-04 23:02:00 -04:00
4acdf8063e refactor: en passant target square calculation 2024-10-04 23:00:58 -04:00
ecda71f176 test: make pawn promotion move 2024-10-04 22:34:45 -04:00
f73d34ee41 feat: construct move from uci algebraic 2024-10-04 22:25:16 -04:00
98b4f116d6 feat: promotion moves 2024-10-04 20:03:19 -04:00
8804c0e1c4 feat: make move forfeits castling rights 2024-10-01 21:13:06 -04:00
ca0c17cbbe feat: unmake move 2024-09-29 14:14:20 -04:00
c29a7ff789 feat: basic make move 2024-09-29 13:47:02 -04:00
8db3a236c0 feat: FEN printing 2024-09-29 12:32:11 -04:00
77838fd417 stub: movegen 2024-09-29 10:43:45 -04:00
1914d812e4 refactor: split off fen parser into trait 2024-09-27 21:22:51 -04:00
795cd1028b test: fen parser 2024-09-27 20:59:38 -04:00
cccf41e7b0 implemented full FEN parser
todo: fix bugs
2024-09-24 22:01:49 -04:00
c3439bdd46 initial commit
partial FEN parser with an internal board representation
2024-09-22 21:08:40 -04:00