#+title: Bitter Duel

This is a really simple tactics game for the [[https://itch.io/jam/spring-lisp-game-jam-2026][2026 Spring Lisp Game Jam]].

It is made in Chicken Scheme, using my own game framework [[https://git.cyan.sh/BirDt/imugi][Imugi]].

* Build

First install Chicken 5, then install Imugi using the instructions in its repo. You will also need to ~chicken-install csm~ for easier building.

Once both of those dependencies are installed, run:
#+begin_src shell
  mkdir build && cd build
  csm -program bitter-duel ..
  ./bitter-duel
#+end_src

* How To Play
First to 3 hits wins.

You are blue.

Each unit on the board has a stance and a hand position.

The stance can be high, mid, or low. You can change your stance each turn.

Hand position can be high-right, high-left, mid-right, mid-left, low-right, low-left --- forming a circle.
Each turn you can choose to attack from your current hand position, or from an adjacent one on the circle.
For example, from high-right, you can attack from high-right, high-left, or mid-right.
After the attack, your hand moves to the opposite position.
For example, attacking from high-right, your hand becomes low-left.

You can move 1 square on each turn.

Build your order: move, change stance, and attack.

Orders are submitted simultaneously and then resolved: movement first, then stance change, then attack if in range (neighboring squares).

** Stances
Your chance to hit is higher if your attack matches your stance. A mid-right attack has a lower chance of hidding from a high stance than a high-right attack.

Your stance also determines your defense.
A high stance has bonus defense against high attacks, but weak defense against low attacks.
A low stance is the opposite.
A mid stance has bonus defense against mid attacks, but weak defense against high and low.
