Credits & licensing
燧拳 · Emberfist
Emberfist is completely self-contained. There are no downloaded models, no recorded sounds, no purchased animation, and no third-party artwork of any kind. Every fighter was built by our own scripts, every animation was written by hand as pose data, and every sound you hear is synthesised in your browser as it plays.
Open-source code we use
- three.js (r165) — 3D rendering,
plus its example modules for glTF loading and bloom post-processing.
MIT license, © three.js authors. The full licence text ships with the
game (
vendor/LICENSE-three.txt).
Fonts (self-hosted)
- Lilita One by Juan Montoreano — SIL Open Font License 1.1 (the logo, big numbers and banners).
- Baloo 2 by Ek Type — SIL Open Font License 1.1 (interface text).
Everything else is ours
| What | How it was made |
|---|---|
| The three fighters | Generated by our own Blender scripts — mesh, skeleton and materials. No marketplace assets, no scans, no "free for personal use" models. |
| Every animation | Written as pose data in code and interpolated against the game's own frame timings. No motion capture, no bought clips. |
| Stages, effects, interface | Procedural geometry and canvas drawing, generated fresh each time you play. |
| All sound and music | Synthesised live with the Web Audio API. There is not a single audio file in this game. |
About the fighting-game bits
Fighting games share a common vocabulary of ideas — meters, parries, armour, tag teams, comeback mechanics. Ideas like those belong to the genre. Names, characters, artwork, sound and presentation belong to the people who made them, and we have used none of anyone else's.
Everything in Emberfist wears a name we invented for it: the Ember Gauge and going Guttered, the Break, the Catch, the Surge, the Cut-In, the Beacon, the Hand Off, Skyweave, Last Light, and the Threshold Break. The fighters come from our own games and tools: Vixen and Bastion are the Garden's generals from Phyloca, and Risa is the guide who helps you find things across this whole site.
Nobody gets hurt in this game. There is no blood and nobody dies. When an envoy loses, their lamp gutters and they hand their Spark to whoever is still burning, so it can be carried the rest of the way. That is not a softened version of a fight — it is what the fight is for.