Engineering 5 Min Read Devlog-01

Engineering the Core: Why We Rely on Test-Driven Development

Building a match-3 RPG sounds deceptively simple. Swap tiles. Trigger abilities. Score points. But when those tiles are living, breathing characters from a canonized universe — and every swap carries narrative weight — you discover very quickly that "simple" is the most dangerous word in game development.

By Teq Vault Engineering Team 5 Min Read

The Problem With "Build First, Test Later"

Most indie studios fall into the same trap: prototype fast, ship a demo, then scramble to fix the bugs that collapse everything once the feature set grows. We've watched it happen to talented teams. A match-3 grid works perfectly in isolation. Then someone adds a chain reaction mechanic. Then a status effect. Then an elemental damage modifier. Then it explodes — not the cool kind.

At Teq Vault, we decided early that QUETIEMALS would not be built that way. Every mechanic in our match-3 combat system — every tile swap, every ability trigger, every status chain — is written test-first. That means before we write a single line of gameplay code, we write the test that proves it works. This is Test-Driven Development, and it sounds slow until you realize it's the only thing that lets you move fast without falling apart.

How TDD Works in a Match-3 Context

Here's what the workflow actually looks like on a Friday afternoon when we're building, say, Ice Heart's freeze mechanic — the ability where a successful match near an enemy tile encases it in ice for two turns, reducing its damage output by 40%.

Step one: we write the test. Given a board state where Ice Heart is adjacent to an enemy tile and a 3-match is completed, the enemy tile should enter a "frozen" status with a duration of 2 turns and a damage modifier of 0.6. That test fails immediately, because the mechanic doesn't exist yet. That failing test is the target.

Step two: we write the minimum code required to make that test pass. Not the prettiest code. Not the most optimized code. Just enough to make the test green.

Step three: we refactor. Now that it works, we clean it up — pull out hardcoded values, make the status effect system extensible so Hotly's burn mechanic and Volt's static shock can plug into the same architecture without rewriting it.

The result is a game where a three-month-old mechanic can coexist with something shipped last week and neither one breaks the other. That is not an accident. It is the product of a test suite that currently covers over 90% of our core combat loop.

"A failing test is not a setback. It is a specification. It tells you exactly what the code needs to do before you write a single line of it."

— Teq Vault Engineering Team

The CI/CD Pipeline: Our Automated Safety Net

TDD gives us confidence at the function level. Our Continuous Integration and Continuous Deployment (CI/CD) pipeline gives us confidence at the system level. Every time a developer pushes code to our shared repository, the pipeline runs automatically — no human has to remember to trigger it, no step gets skipped because someone is in a hurry.

Here's what runs on every single push: unit tests for all combat logic, integration tests that spin up a simulated board and run 500 randomized match sequences to catch edge cases we wouldn't think to write manually, a performance benchmark that fails the build if the average frame time of a chain reaction exceeds our threshold, and a linting step that enforces code style so the codebase stays readable as the team grows.

If any step fails, the push is blocked and the developer gets a notification. The main branch is never in a broken state. This matters enormously for a team that is simultaneously managing game mechanics, narrative integration, and mobile porting — three tracks that need to merge cleanly without anyone's work destroying anyone else's.

Why It Matters for a Transmedia IP

There's a reason this engineering discipline matters even more for us than it would for a studio building a standalone title. QUETIEMALS is not just a game. Every character in it — Ice Heart, Hotly, Puff, Pip, Volt — exists in a canonized lore universe established in For Land and Kin, our flagship manuscript. Their abilities in the game are not arbitrary. They're mechanical translations of who these characters are in the story.

When Ice Heart's freeze ability is implemented, it has to feel like the same creature who stood toe-to-toe with a mechanized wolf twice his size and refused to back down. When Hotly's thermal surge mechanic triggers, it has to carry the weight of a phoenix who burned herself out carrying an injured wolf into the sky because the alternative was unthinkable.

That kind of fidelity requires a codebase that is stable enough to be precise — not just correct in aggregate, but correct in detail. TDD and CI/CD aren't just engineering choices for us. They're how we keep a promise to the people who read the book before they ever downloaded the game.

What's Next in the Pipeline

Our current development sprint is focused on the board state serialization system — the component that saves and restores a mid-battle snapshot so the game can be suspended and resumed on mobile without losing turn order or status effects. It sounds unglamorous. It is one of the most failure-prone systems in any tile-based RPG.

Naturally, we're writing the tests first. Forty-three of them, before a single line of serialization logic exists. By the time you're reading this, the build is either green or we're having a very educational Thursday.

Follow our devlog series to watch the process unfold in real time. If you're a developer who thinks this way — if you write tests because you actually want to, not because a tech lead is watching — take a look at our open roles. The Vault has room for engineers who build things that last.

Continue Reading

Lore & IP

The Factions of Eyuforyia: Designing Non-Humanoid Characters

Why we removed the master/pet dynamic entirely — and what it unlocked.