Skip to content

changcheng967/Luminex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,181 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Luminex

A UCI chess engine written in C++23. All evaluation values are self-engineered from chess first principles.

Download

Latest release: github.com/changcheng967/Luminex/releases

Platform Binary
Linux (AVX2) luminex-linux-x86-64-modern
Linux (SSE4.2) luminex-linux-x86-64
Windows (ClangCL) luminex-windows-x86-64-modern.exe
Windows (MSVC) luminex-windows-x86-64.exe
macOS (Apple Silicon) luminex-macos-arm64

Usage

uci
isready
position startpos
go movetime 1000

UCI Options

Option Default Description
Hash 128 TT size in MB
Threads 1 Search threads (lazy SMP)
Contempt 0 Draw avoidance (centipawns)
BookFile <empty> Polyglot opening book path

Build

Requires C++23 compiler (GCC 12+, Clang 15+, MSVC 2022+) and CMake 3.20+.

cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release

Architecture

src/
  luminex.h          # Core types and constants
  types.h            # Value types, enums
  bitboard.h         # Bitboard operations
  magic.cpp          # Magic bitboard generation
  board.h / cpp      # Position representation, make/unmake
  movegen.h / cpp    # Legal move generation
  evaluation.h / cpp # Hand-crafted evaluation
  search.h / cpp     # PVS search with LMR, phased move generation
  transposition.h / cpp # Transposition table
  uci.h / cpp        # UCI protocol
  main.cpp           # Entry point

License

Luminex is licensed under the GNU General Public License v3.0.

Some foundational code derives from Stockfish, which is also GPL-3.0 licensed. All original contributions to Luminex are released under the same license.

About

A UCI chess engine written in C++23.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors