A tactical RPG · visual novel · full campaign live

RAVAGE

A tactics game wrapped around a visual novel. Twenty-one painted characters who plot, plead, fall in love, and betray each other across a thirty-battle campaign with seven endings — every one of which you can still lose.

Play Ravage →
free · runs in your browser · suspend & resume anywhere
Published by Pencat Games
scroll
Ravage key art — Amar and Selene stand back to back with blades drawn in a burning Anthros street at sunset

Amar and Selene — the night the war stopped being someone else's.

In Motion

The first battle, uncut.

Battle One — The Palace Coup, captured live. No cuts, no staging.
The Game

Tactics that bite. Stories that stick.

Every choice in battle is a posture. A ready stance counters a charge. A brace soaks the inevitable hit. A sword cuts a shieldbearer down — but a spear behind that shield gets you first. Then the swords sheathe and a full visual novel unfolds: twenty-one painted characters, branching dialog, romance, humor, and the kind of plot twist you'll text your friend about.

The Story

A visual novel between every battle.

Ravage isn't combat with cutscenes wedged in. It's a hand-painted visual novel that happens to have one of the meanest tactics engines we could build — twenty-one named characters who plot, plead, fall in love, and betray each other across hundreds of expressions. The campaign turns on whether you trust the wrong person at the wrong moment.

Amar smiling warmly
Amara warm half-smile
Maya tearful
Mayatearful
Fergus unmasked
Fergusunmasked treachery
Leo smirking
Leococky smirk
Dawn's mask slipping
Dawnthe mask slipping
Khione revelation
Khionerevelation
Veya with a wry smile
Veyaan engineer's told-you-so
Corin in quiet grief
Corinquiet grief
The Hinge

Seven names. One choice.

Halfway through the campaign, three days out on open water, Amar finally learns whose son he is — and chooses what that man does about it. Five of the seven paths fight on to the end of the world, each with its own climaxes and its own finale. Two walk away from the war entirely, and the game lets them.

What's inside

Built on six honest systems.

No gacha, no menus inside menus. Each system is small enough to teach in a sentence and deep enough to argue about for an hour.

Weapon Triangle

Sword beats spear, spear beats shield, shield beats sword. Bows ignore the dance — and pay for it up close. And one late ally's lens ignores everything, answering armor with light.

Stances & Counters

Ready a counter-zone; brace defensively; or stay neutral and swing first. Your stance changes every adjacent fight.

Action Points

Move, strike, or take a stance — two to four AP a turn, and a promotion raises the tempo for good. Turns are short. Decisions aren't.

Cover & Terrain

Forest, rubble, and obstacles change defence and line-of-sight. The map is half your strategy.

Seven Paths

At the campaign's hinge, Amar chooses one of seven answers to his own name. Five fight through to divergent finales; two walk away from the war — and the game honors the walking.

Built in the open

Every commit is on GitHub. Every system is small TypeScript. Procedural fallbacks for every asset.

The World

From palace courtyards to the cliffs of Grude.

Each battle has its own map, its own mood, and its own music.

Where we are

The campaign is finished. Now it gets finer.

What's live today is the whole game: thirty battles, seven paths, seven endings, an eight-strong endgame company, promotions into every Tier 2 class, and a soundtrack where every track earns its place. From here it's polish, not promises.

Now

The full campaign, live

Every battle, every path, every ending. Suspend a fight mid-turn and resume it later. A guided first battle. Hand-painted portraits with living expressions for the principal cast.

Next

Polish from playtests

Difficulty modes at New Game, balance tuning from real runs, and bespoke sprites for the newest classes — the lenscaster and the cavalry deserve their own silhouettes.

Later

Beyond the browser

An itch.io release, then Steam. Animated sprite strips for every class, and the HD-2D presentation experiments if the appetite holds.

Ready to fight?

Play Ravage →
free · no sign-up needed · the whole campaign
Played it? Tell me what worked and what didn't — kaseyfuwaterloo@gmail.com
Support

Ravage is free. It always will be.

No paywall, no ads, no account required — thirty battles and seven endings, start to finish. If it was worth a few hours of your evening, you can put something toward the next one.

☕ Buy me a coffee
Goes to art, music, and the hours after the day job.