pounce

Crates.iopounce
lib.rspounce
version2.0.2
created_at2025-05-27 17:44:26.23832+00
updated_at2025-08-18 20:56:10.488861+00
descriptionA mediocre (but trying its best) uci chess engine
homepage
repositoryhttps://github.com/0xflick/pounce
max_upload_size
id1691404
size37,257,609
alex flick (0xflick)

documentation

README

Pounce

A UCI compatible chess engine written in Rust.

Rating History

Version Estimated Elo
1.2.4 ~25001

Features

  • Fast, bitboard based move generation
  • PV alpha-beta search with quiescence search
  • Iterative deepening and aspiration windows
  • Lockless transposition tables
  • MVV-LVA capture ordering
  • Killer moves
  • History heuristic
  • Internal iterative reduction
  • Null move pruning
  • Reverse futility pruning
  • Late move reductions
  • Node effort based time management
  • Lazy SMP parallelism

There's also a magic bitboard generator in the wiz binary, and an alternate datagen binary (datagen) that's still WIP.

Building

You can build an optimized binary with:

make pgo-release

This requires cargo-pgo which will be installed automatically by the Makefile.

A normal release build can be built with:

cargo build --release

If you'd like to build either additional binaries (wiz or datagen), you can use:

cargo build --release --features wiz --bin wiz

or

cargo build --release --features datagen --bin datagen

Credits

Also the following engines for their inspiration and ideas:

Also Fastchess for sprt testing.

Footnotes

  1. Based on a 10+0.1 tournament against Loki@v3.0.0, Kimbo@1.0.0, and Shen Yu@2.0.1

Commit count: 106

cargo fmt