README.md
Download v0.1.0CLATIUMPOOL
Sixteen balls, two players, one stubborn eight ball. A 2D eight ball pool game in Rust with deterministic physics.
| Project | CLATIUMPOOL |
|---|---|
| Status | Active Development / Experimental |
| Tags | Pool Rust Game Windows Experimental |
| Release | v0.1.0, first public build |
| Platform | 64-bit Windows 10 or newer |
| Licence | MIT OR Apache-2.0 |
| Repository | CLATUIMPOOL on GitHub |
Screenshots


Overview
- CLATIUMPOOL is a 2D eight ball pool game in Rust with deterministic physics.
- Everything between the cue tip and the pocket is a deterministic Rust simulation.
- The same shot always ends in the same place.
Current state
Version 0.1.0 is the first public build, for 64-bit Windows 10 or newer.
Works
- Single self-contained Windows x64 binary, no installer and no console window.
- Deterministic swept-collision physics with follow, draw and side spin.
- Two-player eight ball with group assignment, fouls, ball in hand and win/loss on the eight.
- Menu, pause, settings and game over screens; settings persist to
clatuimpool.cfg.
On the table
| Feature | Details |
|---|---|
| Regulation geometry | 2.54 m × 1.27 m playing surface, six pockets, 57.15 mm balls and the standard rack. |
| Cue ball spin | Follow, draw and side spin. |
| Aiming aids | Dashed cue path, ghost ball, the object ball’s projected line and the cue ball’s deflection. Every layer can be switched off. |
| Ball in hand | A ghost cue ball follows the cursor: green where it may be placed, red against a ball, a cushion or a pocket mouth. |
| Potted tray | The balls each player has sunk stay visible in the bottom bar. |
| Settings | Sixteen settings, all saved to clatuimpool.cfg. |
Controls
| Input | Action |
|---|---|
| Move mouse | Aim |
| Hold left button, drag away | Pull the cue back; further is harder |
| Release | Shoot |
| Drag inside the spin pad | Follow and draw up and down, side spin left and right |
| Left click | Place the cue ball when the banner says BALL IN HAND |
R | New rack |
Esc | Pause menu |
Enter | Play again on the game over screen |
Physics
- Continuous collision: swept time-of-impact for ball to ball and ball to cushion, so a 6.5 m/s break cannot tunnel through the pack.
- Fixed step: 240 Hz sub-steps with at most 64 impacts per step.
- Cloth: 0.6 m/s² rolling deceleration.
- Cushions: 0.86 restitution, with mouths cut out of the rails.
- Determinism: the same input reproduces the same final positions exactly, asserted by the test suite.
Known limitations
- The release binary is for 64-bit Windows 10 or newer. Other systems need to build from source.
Downloads
Download clatuimpool-v0.1.0-win64.zip from the v0.1.0 release. Unzip and run clatuimpool.exe.
Build from source
Needs a Rust toolchain with edition 2024 support (1.85+).
cargo run --release
cargo test -p pool-core # 14 simulation and rules tests
Licence
MIT OR Apache-2.0, at your option.
Downloads
- Download clatuimpool-v0.1.0-win64.zip
clatuimpool-v0.1.0-win64.zipv0.1.0 404 KB Windows x64. Unzip and run clatuimpool.exe.
Current state
Active Development / Experimental
Version 0.1.0 is the first public build, for 64-bit Windows 10 or newer.
Works
- Single self-contained Windows x64 binary, no installer and no console window.
- Deterministic swept-collision physics with follow, draw and side spin.
- Two-player eight ball with group assignment, fouls, ball in hand and win/loss on the eight.
- Menu, pause, settings and game over screens; settings persist to clatuimpool.cfg.
Releases
CLATUIMPOOL v0.1.0
LatestPublished
- First public build.
- Single self-contained Windows x64 binary, no installer and no console window.
- Deterministic swept-collision physics with follow, draw and side spin.
- Two-player eight ball with group assignment, fouls, ball in hand and win/loss on the eight.
- Menu, pause, settings and game over screens; settings persist to clatuimpool.cfg.