No description
Find a file
2026-06-01 21:12:44 +02:00
bot refact: remove python & c++ bindings 2026-04-04 20:53:09 +02:00
clients feat(web client): free play mode 2026-05-26 18:28:56 +02:00
container chore(nix): update web client front package hash 2026-05-25 21:01:08 +02:00
doc doc: design variations 2026-06-01 21:12:44 +02:00
server feat(server): user account deletion 2026-05-25 17:12:23 +02:00
spiel_bot refact: remove python & c++ bindings 2026-04-04 20:53:09 +02:00
store feat(web client): free play mode 2026-05-26 18:28:56 +02:00
.envrc devenv with rust 2022-11-30 16:15:03 +01:00
.gitignore fix: integrate multiplayer 2026-04-23 20:54:52 +02:00
Cargo.lock feat(web client): free play mode 2026-05-26 18:28:56 +02:00
Cargo.toml chore: bump version to 0.2.15 2026-05-25 21:44:00 +02:00
devenv.lock chore: devenv.lock 2026-05-27 16:18:49 +02:00
devenv.nix feat: add email verification & password reset link 2026-05-03 21:39:07 +02:00
devenv.yaml chore(devenv): pin cmake package (for burn-rl > sdl2) 2026-02-13 20:58:24 +01:00
flake.lock feat: nix module 2026-05-07 22:52:15 +02:00
flake.nix chore: bump version to 0.2.15 2026-05-25 21:44:00 +02:00
justfile chore: bump version to 0.2.13 2026-05-25 21:02:27 +02:00
LICENSE Initial commit 2022-11-30 15:37:20 +01:00
module.nix feat(web client): content pages 2026-05-25 16:14:25 +02:00
README.md chore: clean doc 2026-05-26 20:52:22 +02:00

Trictrac

This is a game of Trictrac rust implementation.

Usage

Install devenv, start a devenv shell devenv shell, and run the following commands.

# Run the relay server
just build-relay
just run-relay  # listens on :8080

# Run the game (separate terminal)
just dev

Open a browser window at http://127.0.0.1:9091. You can play against a very basic bot, or invite an other player to connect at the same address.

Code structure

  • game rules and game state are implemented in the store/ folder.
  • a server for the network game is implemented in server/relay-server, which uses server/protocol
  • the web client is in clients/web, it connects to the server using the clients/backbone-lib library
  • the command-line application is implemented in clients/cli/; it allows you to play against a bot, or to have two bots play against each other
  • the bots algorithms and the training of their models are implemented in the bot/ and spiel_bot folders. This is a work in progress, they are not performant at all.

Inspirations

The multiplayer game architecture, implemented in packages clients/backbone-lib, clients/web/game, server/protocol and server/relay-server is a Leptos-optimized adaptation of the macroquad-based Carbonfreezer/multiplayer project.

The web client UX/UI is inspired by https://playtiao.com.