36 lines
1.3 KiB
Markdown
36 lines
1.3 KiB
Markdown
# Two Player Cleaning Game
|
|
|
|
A two-player cooperative cleaning game built with [Fennel](https://fennel-lang.org/) and [Löve 2D](https://www.love2d.org/).
|
|
|
|
The Löve2d Fennel setup is based on https://git.sr.ht/~benthor/absolutely-minimal-love2d-fennel/tree/master/item/README.md
|
|
|
|
Color pallet is ["curiosities", Created by sukinapan](https://lospec.com/palette-list/curiosities).
|
|
|
|
And though this is a git repo I use [Jujutsu](https://docs.jj-vcs.dev/latest/) for version control.
|
|
|
|
## Setup
|
|
|
|
1. Install LÖVE 2D following the [Getting Started guide](https://love2d.org/wiki/Getting_Started)
|
|
2. Run the game with:
|
|
```bash
|
|
love ./game
|
|
```
|
|
|
|
## Architecture
|
|
|
|
The game uses Fennel (a Lisp dialect) compiled to Lua at runtime. Fennel setup is shared across projects via symlinks:
|
|
|
|
- **fennel-1.5.3.lua** (root): The Fennel compiler
|
|
- **fennel_bootstrap.lua** (root): Module loader that auto-compiles `.fnl` files
|
|
|
|
|
|
The `game` directory contains:
|
|
- **main.fnl**: Game source code (Fennel)
|
|
- **main.lua** → symlink to `../fennel_bootstrap.lua`: Entry point
|
|
- **fennel.lua** → symlink to `../fennel-1.5.3.lua`: Compiler reference
|
|
|
|
## Development
|
|
|
|
The Löve2d Fennel setup is based on https://git.sr.ht/~benthor/absolutely-minimal-love2d-fennel/tree/master/item/README.md
|
|
|
|
And though this is a git repo I use [Jujutsu](https://docs.jj-vcs.dev/latest/) for version control.
|