Cloakaml Documentation

This is the documentation for cloakaml!

For details on the project, see the Overview.

Background

I began working on this project after watching Parlor Room on Dropout.tv play Blood on the Clocktower. The main thing that caught my attention is that unlike computerized incarnations such as Town of Salem or chance-based Coup, a game of Blood on the Clocktower is ran by a GM (Game Master, aka Storyteller) who orchestrates the entire game. Not only do they handle the starting configuration, they are present throughout, making decisions on what would make the game most interesting and enjoyable for everyone involved. This is the kind of human touch that other iterations clearly lack, in exchange for their simplicity (e.g., being a card-game) or replayability (e.g., having online-matchmaking).

Essentially, I was drawn towards modelling the different structures of game-configurations possible from the setup of these kinds of social deduction games, and found the prospect of using this to create a platform that could facillitate engaging and playing with these games from a meta-perspective very exciting. Ideally, I can create a model that can describe these kinds of games, and system that can handle being the context in which they can be run. If done correctly, this could become a sandbox for creating new games, and exploring new ways to interact with existing ones. E.g., the Storyteller of Blood on the Clocktower would correspond to a portion of the matchmaking, setup and NPC-AI in games like Town of Salem, and by being linked in this way, it could provide better tools for making more interesting and fun games when a Storyteller is not available, without it being up to RNG.

Inspiration

Below are the games that I am consciously studying whilst developing this. Primaily, I am sampling their structrues as a kind of usecase in order to help me understand what problems I need to solve. Note: by no means is this project attempting to replace, eclipse or compete with any of these in any way whatsoever. I am simply following the dopamine/inspiration as it comes, and using this as an exercise in problem solving, and will run with it as far as I am able to. It has been really fun to do this in OCaml.

Social Deduction Games

Cloakaml Overview

Game

Spec

System

Server

Utils