Sockappella wars is an assassin-based game played around the city where participants attempt to "sock" (gently tap with a clean sock) their targets and eliminate them from the game. The last person standing wins.
Throughout the game period, a variety of "safety items" are introduced ranging from moving around with two different shoes to dancing the "Macarena". When a player is in possession of a safety item, they cannot be socked.
When you eliminate your target, you are reassigned to your target's target.
The game ends after a period of 4 weeks.
To see more rules: read rules
The main tech stack can be broken down into the following categories:
- Development:
- CI/CD:
- Google Cloud: Cloud Provider of choice. The project leverages its artifact registry and compute instances to deploy the bot 24/7.
- Docker & Docker Compose: Used a containerized workflow to create portable bot images.
- Github Actions: CI/CD framework to automatically build, push and deploy a docker image to a GCloud CE Instance.
- Efficient Data Recovery (Point In Time restore): Designed and implement an efficient method to rollback game eliminations, and assigned targets to any point in time (dictated by an elimination ID).
- Statistical views: Created several database views to effectively display table information.
To get started developing locally simply run
$ docker build . -t sockbot:latest
$ docker run sockbot:latest