Hi, I'm Hoppy, producer at Change Entertainment Studio.
This is the seventh dev diary, covering August 10th through September 6th. This one runs long; from here on it's every two weeks. The biggest thing that happened in this stretch is that we threw out a puzzle we'd already half-built — I'll save that for the end and start with everything else.
■ Design
・The puzzles were rebuilt from scratch, once. The original idea was to give every item its own kind of puzzle. Laid out side by side, several of them turned out to be the same thing wearing a different skin.
・The rule now: each puzzle type is paired with exactly two items, and each item uses only one type. All 20 collectibles have a home, and no two of them play the same way.
・The two items sharing a type are always placed apart. You'll never hit the same operation twice in a row.
・The mechanism boxes became sliding puzzles — five difficulty tiers, larger boards for harder ones. On the hardest tiers some of the numbers on the board are worn past reading, and the rewards go up to match.
・Items cut from 37 to 20, each one re-tagged with what you'll do to get it and what you'll see once you have it.
Not every lock needs its own invented key. You pay the learning cost once, and the number of puzzles didn't go down — that's a trade, not a shortcut.
Rather than scattering a pile of things that mean nothing when you pick them up, we'd rather every one of them had its own moment.
■ Ghosts
・The behaviour of two kinds of ghost is locked down.
・One blows out your lamp. They patrol their own routes, moving a little slower than you do.
・The other doesn't move, but it is always facing you. It's faster than you when it does move, and whether it moves at all depends on how bright your oil lamp is: at full brightness it just stands there and watches you; as the light drops it follows along the edge of your lamplight; darker still, and it starts to chase.
・Lighting the lamp is a whole action now. Pouring oil buys you time proportional to how much you pour, and then you strike a match — and the match takes one to five strikes, at random.
・What the mechanism boxes are hiding is lamp oil and matches.
It didn't stop because you scared it. It stopped because the light in your hand made it stop.
With something chasing you, getting that lamp lit again takes a few seconds.
■ Programming
・Occlusion is integrated. Final brightness is lamp falloff multiplied by visibility — everything behind a wall is black, and the edge of the light is soft.
・The puzzles went from specification to something that actually runs: 24 script files written or rewritten, and 4 underlying systems built (precision tearing, sliding puzzles, sequence memory, ordered steps).
・Automated testing gained 55 new cases; of 668 in total, 666 pass, and the remaining 2 are pre-existing warnings. Nothing new went red.
・The puzzles' internal logic is complete and passing its tests. The interface for operating them is still being built, so you can't actually sit down and play them yet.
・15 more automated checks went in, two of which guard something other than the code:
The fear doesn't come from what you can see. It comes from the part you can't.
Ruling Guard — it protects design decisions that have already been settled. There's a particular frustration late in development: something was decided after a long discussion, then a few refactors later a perfectly reasonable-looking cleanup quietly undoes it, and no test goes red, because the code is still logically correct. By the time anyone notices, nobody remembers why it was done that way.
Decisions that have been made deserve someone standing watch over them.
Sentinel Message Rot — it checks whether our own checks are lying to us. If a test's failure message still points at something renamed long ago, that test is already broken even while it's green: one day it will fail and hand you a reason that doesn't exist.
We check our checks too.
■ Art
・The map for this stretch is fully delivered and can be walked end to end.
・Character scale and fade on the map are finalised and signed off, with 92 alignment checks all passing.
・Ghost fade is now contrast-aware — darker things fade faster than lighter ones. Everything used to fade at the same rate, which meant a dark shoe was always the last thing left, like the fade hadn't finished properly.
・Three more scene CGs are done, with a fourth's background finished and its figures not yet composited in. The children's set is on its second piece.
・Supply item art is underway: the oil can is finalised, and so is the matchbox. You pick matches up by the box but spend them one at a time — and how many are left is written right there beside it, so you always know how many chances you have.
・The old photographs in the album are finalised. Not a handful of stock old photos pasted in: every one is something this family would actually have taken — a family portrait, someone on their own, someone at the piano, someone holding a newborn. They sit in the same album, and what you have to do is tear one of them out.
・Two things we'd planned got cut: the backs of the photographs, and the half-torn intermediate state. The reason is simple — players don't turn them over, and they don't stop halfway.
・The project went on a diet, clearing out around 12.5 GB of dead intermediate files.
It's a detail nobody will notice. But once you've noticed it, you can't go back.
Making those would be making something for a place nobody looks.
■ Writing
・We built a Text Meaning Dependency List — a line-by-line record of where a piece of dialogue only means what it means because of something else, somewhere else. For instance: the weight of one line rests entirely on a certain corner being empty. If somebody thinks the emptiness looks like an oversight and helpfully puts something there, that line stops meaning anything — and they'd never know what they'd broken, because the thing they changed wasn't the line.
・We set down a writing rule: the protagonist is never allowed to tell you where the horror is. He won't say "this feels wrong." He describes what he sees — why that should unsettle you is yours to decide.
・After that, writing had no new progress; the effort went into the puzzle systems and the CGs.
Some things can't be changed, because what you'd be changing isn't them.
Once fear is stated out loud, it becomes information.
■ This last week: we threw out a puzzle we'd half-built
・What got replaced was a mechanism where you put things back where you remembered them being. The specification was complete. Art had already started on it.
・The problem was the image: when we tried to actually draw it, nobody could say what the player would be looking at on screen. That isn't "not finished yet" — that's a piece of gameplay whose image doesn't hold up.
・Art ran a round of 3D tests to check it. The conclusion was that the visual condition it needed is physically impossible to produce.
・It was replaced with something in an entirely different direction — you talk to the dead in the house. They mutter to themselves, saying things with no beginning and no end; press them, and those fragments start to fit together, one line at a time, and point at something that happened in this house a long time ago.
・The hard part is that they can't tell you directly. Each of them gives you one fragment: an observation that goes nowhere, one specific small object, something a person said at the time. Heard alone, every line holds up on its own, and none of them sounds like a clue.
・And they were saying these things all along. You hear them the first time you walk past, and it means nothing to you. Once you've put the whole thing together and walk back to hear the same line again — you realise it was telling you the same story the entire time.
・One more thing we held firmly to: the ones saying all this are not the people it happened to. They say "they," throughout. Never "we." A witness and a participant don't sound the same.
The most expensive thing in making a game isn't the making. It's admitting that something you've already half-built doesn't work.
■ Next time
The interface for the new puzzle, and the maps keep moving.
■ One more thing, not yet settled
We've registered for Steam's October Next Fest.
Whether we actually take part depends on whether the demo makes the submission window. That timing is tight, so I'm not going to state it as a fact yet.
If it makes it, you'll be able to walk into this house yourself during the festival. If it doesn't, I'll say so plainly in the next entry — I won't pretend it never came up.
Thank you for still watching Haunted House. If you'd like to see this house and what's in it sooner, add it to your wishlist.
Haunted House — Steam, 2026.
Wishlist → https://da.gd/qsfphi
- News and updates
- Haunted House
- Haunted House — Dev Diary #7 (Aug 10 – Sep 6)