```
~/chromatic-hero>
├── /Cargo.lock
├── /Cargo.toml
├── /docs
│ ├── /docs/CRAFTING.md
│ └── /docs/DESIGN.md
├── /.gitignore
├── /README.md
└── /src
└── /src/main.rs
```
> A world stripped of color. A warrior tasked with restoring it — one fight and one color at a time.
---
## Why This Game
I've wanted to build a game since I was a kid. Not work on someone else's game. Not mod an existing one. Build mine. The one I carry around in my head.
The idea for the color mechanic came loosely from Brandon Sanderson's *Warbreaker*, where color is a tangible resource. Something you consume, invest, and wield. I liked that. I liked the idea of color being *mechanical*, not just decorative. What if the entire combat system hinged on it?
So here's the pitch: four colors in a fixed cycle. Red beats Green, Green beats Yellow, Yellow beats Blue, Blue beats Red. You attack with your affinity's weakness - massive damage. You attack with the same color you do nothing, or worse, you heal the thing you're trying to kill.
That's it. The complexity comes from switching affinities mid-fight, reading what the enemy is, and reacting. Not from grinding numbers. Not from stat trees. From color.
I'm inspired by the loop of *Diablo II* and *Path of Exile* - that satisfying grind - and the exploration of *Zelda: A Link to the Past*. But stripped down. One core system. Everything else orbits it.
This game is for me. If you fancy it, you're welcome to play. If not - play something else.
---
## The Problem I Haven't Solved Yet
Here's the thing about building a game around color: **what if you can't see them?**
Roughly 8% of men and 0.5% of women (According to AI) have some form of color vision deficiency. That's not a niche edge case. That's millions of people who would boot up Chromatic Hero and immediately hit a wall because the one mechanic the entire game revolves around is invisible to them.
I can't ship a game about color and pretend that's not a problem.
My current thinking is to pair every color with a distinct shape, Triangle for Red, Circle for Green, Square for Yellow, Diamond for Blue. These overlays render on top of sprites alongside the color tint. So whether you parse the world through hue or geometry, the information is identical.
But I'm not sure that's enough. Shapes help, but they add visual noise. They might clutter the screen during fast encounters where readability matters most. I also haven't decided whether the shapes belong on the entity sprites, the UI, or both. And there are other considerations beyond colorblindness contrast ratios, motion sensitivity, font legibility for any HUD text.
I don't have answers yet. I have a direction. The implementation will probably change three times before it feels right. That's fine. What matters is that accessibility isn't a stretch goal at the bottom of a roadmap, it's a constraint I think about from the start.
If you're reading this and you have thoughts on what works for you, I'd genuinely like to hear them.
---
## Open Source
The code is open. Not because I think it'll attract contributors. It's a solo project built in stolen hours between work and family. It's open because transparency matters to me. I preach reducing attack surfaces and auditing dependencies at my day job. Hiding my own source behind a binary would be casting stones from a glass house.
If you want to fork it, learn from it, or tell me I'm doing something stupid - the repo is [here](https://github.com/phn0me/chromatic-hero)
## What's Next
How would I know... I'll figure something out.