DEV Community

Cover image for I turned VS Code into a cyberpunk RPG that fights your real bugs as a boss monster
John Facey
John Facey

Posted on

I turned VS Code into a cyberpunk RPG that fights your real bugs as a boss monster

A while back I built DevGotchi — a VS Code extension that turns your coding
sessions into an RPG. Four stats (Focus, Motivation, Energy, Health) decay in
real time as you work, saving files and pushing commits earns XP and Coffee
Beans, and a living developer avatar reacts to what you're actually doing.

2.1 just shipped, and this update is about tying the game closer to real
signals from your editor instead of simulated ones. Here's what's new.

🐛 The Boss Fight Is Now Real

The panel has always had a "Burnout Boss" card. In 2.1, when you have active
lint or build errors, that card transforms into a Bug Boss — and its HP is
tied 1:1 to your actual error count.

  • More active errors = a bigger, angrier boss (Syntax Wraith → NullPointerDemon → StackOverflow Behemoth → Overwhelmulus, depending on how bad it gets).
  • Every real error you fix does real damage to the boss.
  • Clear every error and the boss is defeated — +30 XP, +15 Coffee Beans, and a notification.
  • Zero errors reverts the card back to the standard health-based Burnout Boss.

No fake typing minigame here (that still exists separately as one of the
Challenges) — this is your actual getDiagnostics() error count, live.

⏱️ Focus Sprint (an actual Pomodoro timer)

Start a 15/25/50-minute sprint from the panel or Command Palette. While it's
running:

  • Everything you earn gets a 1.5× XP multiplier.
  • Your Focus stat decays 50% slower.
  • Finishing awards a completion bonus (+40 XP, +25 beans).
  • Cancelling early forfeits the bonus — same incentive structure as a real Pomodoro technique, just gamified.

📊 Weekly Recap

Once every ~7 days, a notification summarizes what you actually did that
week — XP earned, commits, bugs fixed, focus sprints completed, level
progress, current streak. If you didn't touch code that week, it stays
silent. No guilt-tripping, just a recap.

📤 Share Stats Card

New Share button that opens a shareable stats card with two export options:

  • Copy as Markdown — a paste-ready block for your GitHub README or a PR description.
  • Save as Image — a cyberpunk-styled PNG rendered client-side on an HTML canvas inside the panel, saved wherever you want.

Both run entirely locally — the extension has zero telemetry, so nothing
about your code or stats goes anywhere unless you explicitly export it.

The technical bit

The whole extension — UI, canvas-drawn pixel art scene, procedurally
synthesized cyberpunk music (Web Audio API, no audio files), and now the
stats-card renderer — lives in a single TypeScript file that compiles to a
VS Code webview. No external services, no backend, no accounts.

13 achievements, daily quests, a skill tree, a coffee-bean shop, git and
linter integrations, and now a boss fight your own bugs are directly
responsible for.

It's free and open source. I'd genuinely like feedback, especially from
anyone who tries running a Focus Sprint during a real work session.

🔗 Marketplace: search "DevGotchi" or visit
https://marketplace.visualstudio.com/items?itemName=johnfacey.vscode-devgotchi
🔗 GitHub: https://github.com/johnfacey/vscode-devgotchi

Code is a martial art.

Top comments (0)