Skip to content

sleepyfran/duets

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Duets 🎸

Duets is a music/life simulation game focused on allowing the player to be the leader of their own band, composing songs and making gigs to become a star.

📷 Screenshots

🛠 Run it locally

Duets is built with F# as an interactive CLI game. Start by cloning the repository and entering in it:

git clone --recurse-submodules https://github.com/sleepyfran/duets.git
cd duets

Warning

Duets currently uses a fork of Spectre.Console, so it's important to clone the submodules as well to bring that dependency.

Once you have it, you can either chose to run it with a local installation of the .NET SDK or, if you prefer, through Docker to avoid installing the SDK on your computer and instead running the game inside a container.

Running with local .NET

If you you want to install .NET, follow the instructions here to get the latest version of .NET. Once you have it, you can simply run:

dotnet build
dotnet run --project src/Cli/Cli.fsproj

Running with Docker

There's an included Dockerfile in the repo that allows you to run the game inside a Docker container if you prefer to do so, simply run it with:

docker build -t duets .
docker run -it duets

Warning

The game is nowhere near done or bug-free. I'm constantly doing changes to the savegame format and thus constantly breaking savegames. In the future when the game will be more complete I'll introduce some mechanism to automatically migrate savegames but for the time being you either need to tinker with the savegame file to adapt it when new versions come up or be okay with losing your savegames.

🧪 Testing

You can run the tests with:

dotnet test

😄 Contributions

Right now the game is in concept phase and it'll probably change quickly until it has certain features so there's no public roadmap. The best way of contributing right now is running the game and reporting bugs, if you want to contribute to the code check the project a little bit later, I'll update this section as soon as it's possible to have external contributions!