trictrac/doc/backlog.md

68 lines
1.6 KiB
Markdown
Raw Normal View History

2022-11-30 17:59:47 +01:00
# Backlog
2022-12-13 17:55:32 +01:00
tools
- config clippy ?
- bacon : tests runner (ou loom ?)
2022-12-01 18:04:03 +01:00
## Rust libs
cf. https://blessed.rs/crates
2022-12-13 17:55:32 +01:00
- cli : https://lib.rs/crates/pico-args ( ou clap )
2022-12-01 18:04:03 +01:00
- reseau async : tokio
- web serveur : axum (uses tokio)
- https://fasterthanli.me/series/updating-fasterthanli-me-for-2022/part-2#the-opinions-of-axum-also-nice-error-handling
2022-12-13 17:55:32 +01:00
- db : sqlx
- eyre, color-eyre (Results)
- tracing (logging)
- rayon ( sync <-> parallel )
- front : yew + tauri
- egui
2022-12-01 18:04:03 +01:00
2023-09-30 17:43:04 +02:00
- https://docs.rs/board-game/latest/board_game/
2022-12-01 18:04:03 +01:00
## Others
- plugins avec https://github.com/extism/extism
## Backgammon existing projects
2024-01-05 17:47:26 +01:00
* go : https://bgammon.org/blog/20240101-hello-world/
2024-01-09 17:58:10 +01:00
- protocole de communication : https://code.rocket9labs.com/tslocum/bgammon/src/branch/main/PROTOCOL.md
2024-01-05 17:47:26 +01:00
2022-11-30 17:59:47 +01:00
* lib rust backgammon
2024-01-09 17:58:10 +01:00
- https://github.com/carlostrub/backgammon
2022-11-30 17:59:47 +01:00
- https://github.com/marktani/backgammon
* network webtarot
* front ?
2023-12-30 21:53:17 +01:00
## Specs
2024-01-12 17:02:18 +01:00
## Représentation des cases :
2023-12-30 21:53:17 +01:00
2024-01-12 17:02:18 +01:00
cf. ./blog/game-state-notation.md
2024-01-04 14:26:48 +01:00
13 14 .. 23 24
12 11 .. 2 1
2024-01-12 17:02:18 +01:00
Encodage efficace : https://www.gnu.org/software/gnubg/manual/html_node/A-technical-description-of-the-Position-ID.html
2024-01-09 20:50:52 +01:00
2024-01-04 14:26:48 +01:00
#### State data
2024-01-09 20:50:52 +01:00
* piece placement -> 77bits (24 + 23 + 30 max)
2023-12-30 21:53:17 +01:00
* dames
2024-01-09 20:50:52 +01:00
* active player -> 1 bit
* step -> 2 bits
2023-12-30 21:53:17 +01:00
* roll dice
* mark points (jeton & fichet) & set bredouille markers (3rd jeton & pavillon)
* move pieces
2024-01-09 20:50:52 +01:00
* dice roll -> 4bits
* points 10bits x2 joueurs = 20bits
* points -> 4bits
* trous -> 4bits
* bredouille possible 1bit
* grande bredouille possible 1bit
Total : 77 + 1 + 2 + 4 + 20 = 104 bits = 13 * 8 (8^2 = 256) = 17.3333 * 6 (18 u64) -> 108 possible