Duckmon: The Demo Was Ready, But the Game Was Not
It's been a long time since my last dev.to post, the 12th of February, to be exact. Back then, Duckmon was getting closer and closer to becoming demo ready. After another four or five weeks, it was right on the edge of a release. The loop worked. The systems were stable. The artwork was 99% complete and implemented. The UI flowed end to end, achievements popped, everything was working as intended, and even the server-authoritative backend was humming along with no issues.
I had registration, verification, card packs, a binder, a shop, factions, and over 300 cards with full art, stats, and lore. I had player profiles, avatars, quote systems, experience and leveling systems, a full soundtrack, and full SFX.
I was polishing. I was debugging. I was preparing for a real demo release not just a small vertical slice, but a full demo, fully playable, with some sections intentionally blocked off.
And then something happened.
I realised the demo was ready… but the game wasn't.
Not in the sense of bugs or missing features, those were tamed and handled after months of solo work. It was something deeper.
The loop worked, but it didn't feel alive yet. There was no excitement for me. Every developer's worst self-doubt kicked in: my game is almost finished, but it's boring. After a few matches, even I was bored.
It needed more depth.
More retention.
More strategy.
More "just one more match" energy.
Some excitement.
So instead of releasing the demo, I made one of the hardest decisions a solo dev can probably make: I paused the release and expanded the game.
Falling Off, Then Finding My Way Back
At the same time, I'd been neglecting everything around the project, not just the game itself. My website hadn't been updated since I made it. My Discord had been abandoned. Even here on dev.to, I'd gone quiet for six months.
Eventually I neglected the project itself too. I didn't touch Unity for about six weeks or more. Supabase kept pausing my backend from lack of activity. I lost my motivation.
What pulled me back was simple: I didn't want to have wasted all this time and effort. I wanted to get this project past the point where "working" is enough.
Duckmon started as a minigame in the first project I ever attempted - my first time ever using Unity or writing code. Then it tried to be a game in Roblox, who weren't too happy with my art style and handed me multiple bans. So I came back to Unity, where nothing restricted me, and it became its own standalone project. After a lot of cursing, late nights, and effort, it finally started to feel like my own multiverse.
When I booted the project back up to "finish the fight", the battle loop, as functional as it was, felt too shallow for the kind of game I wanted players to sink into. It felt like a cheap knockoff. A poser. An imposter.
I didn't want Duckmon to be a play-once-and-forget indie game, or something people looked at and called AI slop. I wanted it to be a game people return to, a game with layers, with strategy, with its own identity. Rough, yes. Amateur, hell yeah. But mine.
So I asked myself: what would make Duckmon worth playing for weeks instead of minutes? What does it need to actually feel replayable and engaging?
The answer was obvious: depth, systems, strategy, choice, tactics, all balanced with a little luck and future competition. And that meant expanding the battle system far beyond the original scope.
Squad Battle Mode: The Big Expansion
The first major addition was Squad Battle Mode, a full team-based battler inspired by games like Pokémon and from other RPG battle systems, plus my own obsession with tactical card combat.
This wasn't just "add more cards." It was a structural reimagining, taking my existing dataset, my card databases, and figuring out how to actually use and expand what I already had.
Using the cards a player has collected and their active deck, Squad Battle Mode is a 5v5 battle with active and bench units. Every card becomes a unit with 4 unique skills, HP, team energy, elemental typing, and strengths/weaknesses. On top of that:
- KO → auto-swap logic
- Graveyard tracking
- Team energy economy
- A hybrid system of turn-based and action-based status ticking
- Damage over time, crowd control, buffs, and debuffs
- Team buffs and enemy debuffs
- Faction synergy
- Real tactical decision making, with a little luck mixed in
Suddenly Duckmon wasn't just a card battler. It was a team strategy game. And it felt right.
Story Mode: A Second Pillar of Duckmon
While Squad Battle Mode was growing the tactical side of the game, a completely different part of the project was growing alongside it, slower, more atmospheric, a narrative-driven aspect.
Story Mode is inspired by classic choose-your-own-adventure books. Every decision leads to a new node, every node branches into two choices, and every choice pushes the player toward one of ten real endings, plus plenty of game-over endings along the way. It's not a card battler. It's backstory. It's lore you can actually walk through.
Chapter one of the Electric Faction is already done — full artwork, its own soundtrack, a complete narrative arc. The rest of the faction chapters will get built out depending on how Story Mode lands in the demo.
Story Mode rewards gold for card packs, but it's not required for progression. It sits alongside the other modes as something optional and atmospheric — a way to explore the world behind the cards without having to fight for it.
The Battle Modes That Now Define Duckmon
Duckmon now has multiple gameplay pillars working together instead of competing with each other: Story Mode for narrative depth, the original battle mode for fast matches, and Squad Battle Mode for tactical depth. Squad Battle Mode itself is planned to expand into six variants:
- Classic Squad Battle Mode — the core 5v5 team battler, built around a player's own cards, deck, synergies, and strategy.
- Ranked PVP — a competitive mode where players fight each other with their own squads, rewarding consistency, strategy, and mastery.
- Friendly PVP — the casual version. No pressure, no ranking, just play.
- Seasonal Squad Mode — a rotating format using predetermined batches of cards. One season might be Ice Faction only, another Epic rarity only, another a curated balance set. Ranked and friendly versions will exist here too.
- Challenge Mode — fighting AI-controlled squads with predetermined cards. No deck building, no collection advantage, just pure tactical problem-solving.
- AI Squad Battles — the AI brain is already built specifically for Squad Battle Mode. It reads the board state, tracks energy, evaluates threats, and makes decisions using the same rules the player does, so players can test their squads against something genuinely smart.
Building a Pokémon-Style Battler With My Existing Assets
I didn't want to reinvent the wheel. I wanted to evolve what I already had.
So I took my existing Duckmon cards : the art, the stats, the lore, and built a full Pokémon-style combat system around them, including:
- A draft system based on the player's currently equipped deck
- Element types and a full type-effectiveness chart
- Status conditions, DOT effects, skip-turn CC, action-based penalties, turn-based durations
- Team energy gain rules
- Server-authoritative combat resolution
Everything had to be formula accurate, consistent, and scalable. This wasn't a minigame anymore. It was a battle engine.
The Skill System: The Heart of the Depth
To make battles actually mean something, I needed real skills, not placeholders. So I built, and I'm still actively expanding:
- A full skill system
- A CSV-driven skill database, expanded into a dual-purpose master data holder
- A runtime skill executor
- A buff/debuff manager and a status manager
- A DOT system and a team buff system
- A damage calculator, hit chance formula, and turn order formula
- Shield and reflect systems
- A battle stat recalculation pipeline
Every skill is a mix of power values, percent values, flat values, duration and tick rules, stat scaling (attack, defence, intelligence, dexterity), element synergies, rarity, status effects, team effects, and healing/cleansing/recovery/revival.
I've expanded the CSV to include attack skills, support skills, DOT, CC, team buffs, debuffs, healing, shields, reflects, avoidance, energy manipulation, faction-specific moves, and mythic-tier abilities.
Every Duckmon now has a real identity, not just stats, but a moveset that feels like it belongs to that specific card, built with team synergy and playstyle in mind.
Debugging: The Solo Dev Reality
This part isn't glamorous, but it's real.
I've spent countless nights debugging and refactoring: status stacking, duration ticking, DOT timing, energy economy, turn order, skill resolution, shield absorption, reflect damage, bench logic, KO logic, graveyard logic, swap logic, UI flow, server sync, race conditions, edge cases, null references, CSV parsing, runtime stat recalculation.
Solo dev isn't just building. It's fixing. And fixing. And fixing again. And once it's all fixed (it isn't, so break it and fix it again), every fix still made the game stronger.
The Decision to Reject Monetization
This part matters to me.
I don't want Duckmon to be a gacha trap. I don't want it to be a microtransaction machine. I don't want it to be a "pay to progress" game. I want it to be a game first.
So I made the decision:
*No monetization in the demo. No monetization in the core game loop. No monetization until the game is worth paying for — if ever, and if that happened, the only monetization would be the purchasing of the game at a cheap price anyway (to possibly cover the steam fees, if i ever get there), no micro transactions in the game ... ever *
The cards you get, from the second you get them, are yours at full potential. No grinding for duplicates, no leveling up cards. You own it, you use it, that's it.
I'm building Duckmon because I wanted to build something I can be proud of , something I built alone, by myself, starting with zero coding experience, not for the money, just for the love of it. Something I can point to and say, "I built that." Not because I want to squeeze players.
Where Duckmon Stands Today
Duckmon is no longer a minigame. It's no longer a prototype. It's no longer a "maybe someday" project.
It's a real game:
- Server-authoritative backend
- Email registration and verification
- Card packs, binder, shop, factions
- 310 cards
- Full battle engine, skill system, status system, DOT/CC system
- Full team battle mode
- Full UI flow and full demo loop
- Story Mode chapter one
- Multiple planned Squad Battle variants
Real depth. Real strategy. Real retention. Real fun.
The demo isn't delayed. It's evolving. Slowly, i am getting there and i also plan to post updates here more regularly, no promises, but that is my intention.
Top comments (0)