All devlogs
EP 01 · 9 May 2026 · ~6 min read

Why I'm building Open Hours

The thesis, the worldview, and the four non-negotiables that have to land Week 1. Why a town that remembers your match changes the whole feel of a competitive shooter.

J
Joe
Solo dev · building Open Hours in public

There's a quiet feeling in most competitive shooters that the room around the match doesn't really exist. You queue from a menu, you fight, you get a results screen, you queue again. The lobby is functional. The town, if there is one, is a vending machine with avatars walking past it.

Open Hours starts from a different premise. The town is the reason to come back. The match is what happens when you decide it's time. The bartender knows what just happened to you. The vendor notices you've been wearing the same chest piece for three weeks. None of that exists in most modern shooters because the loop wasn't designed for it — and retrofitting it after launch is nearly impossible.

The three pillars

I have three rules I check every decision against. They're written down, in order:

  1. Skill is the ceiling. Movement, aim, cooldown management — the things you bring into the match. A new player with starter gear should be able to beat a veteran with maxed gear by playing better. If that ever stops being true, we've broken the game.
  2. Gear is the lever. Cooldown reduction, utility tuning, mode-aware stats. Earned in matches. It amplifies skilled play, never replaces it. Gear with damage or health on it is a category we will not ship.
  3. Cosmetics are the flex. Pure social signal with zero gameplay impact, ever. The orange jacket goes harder than the K/D. That's a feature.

These pillars sound obvious until you watch how often they're broken. Most "free-to-play" shooters end up with paid gear that meaningfully closes the skill gap. Most "earned progression" turns into a treadmill that punishes new players. Both are choices that get made early, ossify quickly, and define the game forever. I'm choosing differently up front.

Thesis grid: Skill > Gear > Cosmetics Thesis
The thesis: Skill > Gear > Cosmetics, in that order, every decision.

Why a town that remembers

The thing nobody else in this genre is doing — and the thing that I think changes the feel of a competitive shooter most — is having NPCs that react to your actual play. Not generic flavor lines. Real, specific commentary on your last match. The bartender mentioning your 18-and-4 round. The vendor asking why you bought the orange jacket but never wear it.

Three NPCs in the Week 1 build: a bartender, an upgrade vendor, a cosmetics vendor. Each has a personality, each has a memory of you, each chooses what to say based on what happened. Most of the time it's a hand-written line from a bank, or a template with your stats injected. Some of the time — when something notable happened, when you're meeting them for the first time — it's a real LLM call to Anthropic, server-side, cost-capped.

The architecture is tiered specifically so the AI bill doesn't sink the game. Tier 1: pre-written line bank, $0. Tier 2: templates with match data injected, $0. Tier 3: real inference, ~2¢ a call, hard cap of five per player per hour. Episode 03 is the deep dive on this.

Bartender NPC dialogue overlay in town In-engine
The bartender, post-match. Lines reference your actual round, by name and score.

The four non-negotiables for Week 1

The build can fail in a hundred ways. Most of them are recoverable — we patch a bug, we rebalance, we add a feature later. But four things have to be right from the very first commit, because retrofitting them takes months:

  1. Telemetry from day one. Every match, every NPC interaction, every gear change, every disconnect fires a server-side event. Without this, every balance decision in Week 3 is blind.
  2. Server-authoritative architecture. Client predicts for responsiveness, server reconciles. If the client says "I shot them," the server checks: line of sight? In range? Off cooldown? Mismatch → server wins. Anti-cheat retrofit without this is a months-long rewrite.
  3. Tiered NPC inference. Not "build it now, optimize later." The cost ceiling has to exist on day one or the early playtests bankrupt the project.
  4. Disconnect / reconnect handling. Player drops → bot fills the slot in <5s → player has 60s to rejoin. Test this on Day 2, not Day 7. Every multiplayer game that ships without this has a player-retention crater.

Why solo, why now

I'm building this alone, in pre-alpha, in public. Not because I think solo is romantic — it isn't — but because the pillars matter more than the velocity. A small team that doesn't share the conviction would dilute the vision in week three. I'd rather move slower with a clear thesis than faster with a muddled one.

"In public" isn't a marketing strategy either. It's that the things that go right and the things that go wrong both teach me something, and writing them down forces me to be honest about which is which. The next devlog covers server-authoritative architecture — what that actually means in Photon Fusion 2 + Edgegap, what it costs upfront, and why retrofitting it is the kind of pain I refuse to inherit.


If any of this lands for you — the thesis, the build-in-public approach, the "we'll see what happens" of it — get on the list. The next thing real lands soon.

Get the next one in your inbox

No drip campaigns, no marketing fluff. Just the next real thing.

Get on the list