= Magic Indigo's Spell Cards
:toc:
:icons: font

*A transformation card game for 2-5 players, ages 8+*

== Overview

Cast spells to transform objects! Combine simple spells into powerful combos. But beware - spells have rules, and casting wrong fizzles your magic!

*Players:* 2-5
*Time:* 20-30 minutes
*Ages:* 8+ (Cuttle stage)

== What's In The Box

* 30 Object Cards (things to transform)
* 40 Spell Cards (transformations)
* 10 Combo Cards (multi-step spells)
* 6 Fizzle Cards (failed spells)
* 1 Cauldron Board (center play area)
* Rules card

== Object Types

[cols="1,2"]
|===
|Type |Examples

|🪨 Stone |Rock, Pebble, Boulder
|💧 Water |Drop, Puddle, Wave
|🔥 Fire |Spark, Flame, Blaze
|🌱 Plant |Seed, Flower, Tree
|✨ Magic |Dust, Crystal, Star
|===

== Spell Types

**Basic Transformations:**
----
🪨→💧 "Melt" - Stone becomes Water
💧→🔥 "Evaporate" - Water becomes Fire (steam)
🔥→🌱 "Ash Grow" - Fire becomes Plant
🌱→🪨 "Petrify" - Plant becomes Stone
----

**Any→✨ "Enchant"** - Any type becomes Magic
**✨→Any "Manifest"** - Magic becomes any type

== Setup

1. Shuffle Object cards, deal 3 to each player
2. Place 5 Objects face-up in the Cauldron (center)
3. Shuffle Spell cards, deal 5 to each player
4. Keep Fizzle deck separate

== How To Play

=== On Your Turn

1. **Cast** a spell on an Object (yours, cauldron, or opponent's)
2. **Transform** the object if spell matches
3. **Score** if you create a target combination
4. **Draw** back to 5 spell cards

=== Casting Rules

Your spell MUST match the object type:

----
✅ VALID: Cast "Melt" (🪨→💧) on a 🪨 Stone → becomes 💧 Water
❌ INVALID: Cast "Melt" on 💧 Water → FIZZLE!
----

=== Fizzle!

If you cast an invalid spell:
* Spell card is discarded
* Draw 1 Fizzle card (negative points)
* Turn ends immediately

=== Combos

Chain multiple spells in one turn!

----
Example: "Grand Transformation"
🪨 Stone → (Melt) → 💧 Water → (Evaporate) → 🔥 Fire → (Ash Grow) → 🌱 Plant

Each step must be valid! One wrong step = entire combo fizzles!
----

**Combo Scoring:**
* 2-spell combo: +1 bonus
* 3-spell combo: +3 bonus
* 4-spell combo: +5 bonus
* 5+ spell combo: +10 bonus!

== Winning

Game ends when Spell deck is empty.

**Scoring:**
* +1 per successful transformation
* +X combo bonuses
* +2 per ✨ Magic object you own
* -1 per Fizzle card

Highest score wins!

== The Secret (Don't Tell the Kids!)

[NOTE]
====
*What they're learning:*

* **Transformation rules:** Input type → Output type
* **Valid operations:** Not every spell works on every object
* **Composition:** Chaining transformations
* **Compile-time checking:** Invalid spells "fizzle" before executing

This is metaprogramming!

----
// In code terms:
macro melt(input: Stone) -> Water
macro evaporate(input: Water) -> Fire

// This works:
let result = evaporate(melt(rock))

// This fizzles (type error at compile time!):
let result = melt(water)  // Error: melt expects Stone
----

Indigo is teaching macros and compile-time computation!
====

== Quick Reference

----
TRANSFORMATIONS:
🪨→💧 Melt
💧→🔥 Evaporate
🔥→🌱 Ash Grow
🌱→🪨 Petrify
Any→✨ Enchant
✨→Any Manifest

CASTING:
- Spell input MUST match object type
- Wrong type = FIZZLE
- Chain spells for combos

SCORING:
+1 per transform
+X combo bonus
+2 per ✨ Magic owned
-1 per Fizzle
----

== Variants

=== Spell Crafting
Players can create NEW spells by combining two basic spells. Write on blank cards!

=== Duel Mode
Players target each other's objects. Transform opponent's objects to score!

=== Cooperative Cauldron
Everyone works together to transform a starting object through ALL types in order.
