Do you know why so many amateur game development efforts seem to stop at the "dude traipsing around a map" stage? Because that's the easy part. The moment you add even the simplest interactions, you start to sink... until you re-emerge many months later with a polished title and a little less sanity. And getting there takes serious persistence.

Game screenshot made of black-on-white ASCII characters, showing a dialog box.

All that considered, I shouldn't be surprised that my self-imposed schedule just slipped. Lucky me to be making games for fun.

My primary objective for the past week was to flesh out the combat system in Dungeon Romp. That meant mobs should be able to die... and the PC's death had to end the game. Which was easy. More difficult was to make snakes poison you. I had to create an infrastructure for weapons, and buffs + debuffs... and the former involved greatly expanding the combat system. Come to think of it, attack/defense bonuses still aren't handled. As for the latter, let's just say there were a few snags in the coding process.

Speaking of that, I had to stop a couple of times and refactor the code, which was starting to look quite ugly. But even my best efforts couldn't entirely get over Javascript's general verbosity when dealing with object-oriented code, as well as various little quirks. For all my reluctance, maybe I should consider CoffeeScript next time I try to tackle this sort of project on the browser side.

But most of the problems stemmed from each little feature spawning two others. Such as the increasingly complex combat rules pretty much requiring a debug console, and better message formatting... which in turn asked for proper handling of articles. Or when I added items to the map (no, you can't pick them up yet), and suddenly the game had to report them (cue more article code). They also turned out to render on top of mobs, due to the order in which they were added. Add code to handle that too.

What worked well was balancing the game for all the new additions. Apparently, the core rules I've created initially lend themselves to easy tweaking. Reducing dice rolls to an absolute minimum also helps, by making everything very predictable. (Not that you can afford being reckless: the RNG will slap you down when you least expect it.)

What didn't work so well was real life getting in the way just as I was hitting the aforementioned snags in development — a perfect storm which ensured that I still don't have an inventory system, or even the beginnings of ranged combat. At least weapons and armor will work on an auto-upgrade system like in Vicious Orcs; no such luck with things like food and potions.

Another thing I'll never forget again is that explanations don't work, period. You'll show your game to a few people — friends, mind you — and they'll find something that isn't done yet, or you couldn't add due to technical limitations... and they just won't get that it's only temporary, that the game is still in an early stage or that whatever they want is Just Too Difficult™. F.A.Q.s? Don't make me laugh. Developers read F.A.Q.s; players will fail to notice a single line of text on screen.

But try making the game without early feedback, and you'll run into an entirely different set of problems. So much for easy choices.