index
:
chessnost
canary
master
shannon-type-b
Somewhat decent chess engine written in Rust
about
summary
refs
log
tree
commit
diff
log msg
author
committer
range
Commit message (
Collapse
)
Author
Age
Lines
*
feat: basic En Passant implementation
eug-vs
2023-01-23
-7
/
+71
|
*
fix: correct RANK_7 constant
eug-vs
2023-01-23
-3
/
+3
|
*
refactor: store kind in a move struct
eug-vs
2023-01-23
-20
/
+63
|
*
test: count checks in perft
eug-vs
2023-01-23
-12
/
+18
|
*
test: increase perft depth up to 3
eug-vs
2023-01-23
-12
/
+19
|
*
fix: do not push pawns into other pieces
eug-vs
2023-01-23
-2
/
+2
|
*
feat: implement is_king_in_check
eug-vs
2023-01-23
-4
/
+24
|
*
feat: implement is_square_attacked
eug-vs
2023-01-23
-6
/
+52
|
*
test: implement perft
eug-vs
2023-01-23
-0
/
+48
|
*
refactor: separately store pawn double pushes
eug-vs
2023-01-23
-16
/
+33
|
*
fix: consider blocking pieces when double pushing
eug-vs
2023-01-23
-1
/
+7
|
*
refactor: update occupancy in an optimal way
eug-vs
2023-01-23
-11
/
+24
|
*
feat: implement unmake_move
eug-vs
2023-01-23
-10
/
+55
|
*
feat: return captured piece from make_move
eug-vs
2023-01-23
-13
/
+27
|
*
refactor: rename apply_move -> make_move
eug-vs
2023-01-23
-6
/
+6
|
*
fix: derive necessary traits
eug-vs
2023-01-23
-4
/
+8
|
*
feat: implement apply_move
eug-vs
2023-01-23
-0
/
+54
|
*
fix: add pawn attacks to move generation
eug-vs
2023-01-23
-1
/
+5
|
*
refactor: use Square as type everywhere
eug-vs
2023-01-23
-113
/
+120
|
*
refactor: use FromPrimitive to consturct enums
eug-vs
2023-01-23
-59
/
+45
|
*
chore: install num_enum
eug-vs
2023-01-23
-0
/
+112
|
*
feat: implement basic move generation
eug-vs
2023-01-23
-20
/
+104
|
*
feat: implement visual moves printing
eug-vs
2023-01-23
-6
/
+12
|
*
fix: correct RANK_6 constant
eug-vs
2023-01-23
-4
/
+4
|
*
feat: implement bitboard serialization
eug-vs
2023-01-23
-0
/
+32
|
*
refactor: compute pieces by color separately
eug-vs
2023-01-22
-3
/
+11
|
*
feat: compute occupancy by color
eug-vs
2023-01-22
-0
/
+13
|
*
feat: compute board occupancy and empty squares
eug-vs
2023-01-22
-29
/
+51
|
*
feat: align bitboard print with board print
eug-vs
2023-01-22
-2
/
+2
|
*
feat: add initial moves module
eug-vs
2023-01-22
-0
/
+23
|
*
feat: compute pawn pushes
eug-vs
2023-01-22
-0
/
+26
|
*
feat: compute pawn attacks
eug-vs
2023-01-22
-19
/
+48
|
*
feat: compute queen attacks
eug-vs
2023-01-22
-0
/
+19
|
*
feat: compute rook attacks
eug-vs
2023-01-22
-5
/
+60
|
*
feat: compute bishop attacks
eug-vs
2023-01-21
-19
/
+73
|
*
feat: improve bitboard print
eug-vs
2023-01-21
-5
/
+9
|
*
test: add visual prints
eug-vs
2023-01-21
-2
/
+3
|
*
feat: precompute ray attacks
eug-vs
2023-01-21
-11
/
+115
|
*
refactor: return generated arrays
eug-vs
2023-01-21
-52
/
+74
|
*
feat: precompute first rank attacks
eug-vs
2023-01-21
-2
/
+68
|
*
feat: precompute knight and king attacks
eug-vs
2023-01-21
-3
/
+104
|
*
feat: implement FEN parsing
eug-vs
2023-01-21
-0
/
+140
|
*
refactor: create board module
eug-vs
2023-01-21
-20
/
+25
|
*
feat: add Square enum
eug-vs
2023-01-21
-0
/
+21
|
*
refactor: do not pass u64 by reference
eug-vs
2023-01-21
-17
/
+16
|
|
|
|
|
This is pointless since size of a pointer is also 64 bit on x64 systems, so we are not saving any memory at this point
*
refactor: do not wrap Bitboard into struct
eug-vs
2023-01-21
-28
/
+49
|
*
chore: add project files
eug-vs
2023-01-20
-0
/
+16
|
*
feat: implement Bitboard.pop_count()
eug-vs
2023-01-20
-16
/
+46
|
*
feat: implement Display for Bitboard
eug-vs
2023-01-20
-0
/
+19
|
*
feat: hello, world!
eug-vs
2023-01-20
-0
/
+3