Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/michaelowendyer/blackjack
A simple command-line Blackjack game in Rust
https://github.com/michaelowendyer/blackjack
Last synced: 28 days ago
JSON representation
A simple command-line Blackjack game in Rust
- Host: GitHub
- URL: https://github.com/michaelowendyer/blackjack
- Owner: MichaelOwenDyer
- Created: 2023-09-06T18:11:38.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-05T00:12:16.000Z (3 months ago)
- Last Synced: 2024-10-14T13:53:36.247Z (2 months ago)
- Language: Rust
- Size: 187 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Blackjack
This is a Blackjack game/simulator that I made in Rust, implemented via a state machine.
My goal with this project is to enable users to investigate the difference in the house edge between arbitrary table rules, by running millions of concurrent simulations.
One should be able to start two concurrent simulations with slightly different rules and see how the results change in the long run.The project consists of three separate crates:
- `blackjack-core`: The backend functionality, including the state machine and data object model.
- `blackjack-cli`: A simple command-line frontend. This was the original format of the application.
- `blackjack-gui`: A more advanced GUI application built using [Ratatui](https://github.com/ratatui-org/ratatui).## Features
- [x] Fully-featured Blackjack gameplay
- [x] Highly configurable
- [x] Surrendering (early and late)
- [x] Insurance (even though it's a bad idea)
- [x] Simulation with Basic Strategy
- [x] (GUI) Many simultaneous games
- [x] (GUI) Continuous game statistics## TODOs
- [ ] Display more visuals in the GUI
- [ ] Switch between gameplay and simulation on-the-fly
- [ ] Rule-adaptive basic strategy