COPY FROGUE Postmortem

The Good

JavaScript as C: Every time I touch JavaScript, I enjoy it for about an hour. In that
first hour, I’m not drowning in callbacks, confused about this, or installing node so I can install bower so I can fight with a dozen awful frameworks. This time, though, I used one library (rot.js) and pretended like I was writing in C. I used a closure as a namespace, but inside it was all pre-allocated arrays and simple functions. Glorious.

Working on level generation in the browser was super fun since I had great visualization options:

Debugging many levels simultaneously
Debugging many levels simultaneously

Google Analytics: This is the most useful of the game’s 1359 lines:

ga("send", "event", "cf", "die", cause, player_score);

With this, I can see who’s playing, how they’re dying, and how well they’re doing. Here’s the situation as of this posting:

Screen Shot 2015-03-19 at 5.18.32 PM

From other views, I can see that 4 runs have come close to winning, but no player has reached that final gate. Maybe I shouldn’t have spent those few hours on the win sequence, though YOU COULD BE THE FIRST! [UPDATE: you can no longer be the first to win, but you CAN still be the first to see one of the alternate endings]

Self-promotion: I hate tweeting my own horn! But I forced myself, and it generally paid off. Surprisingly, the best results came from posting to RogueBasin. Darren Grey suggested this in his wrap-up email, and it’s good advice, accounting for a third of my plays.

The Bad

Slightly wrong abstractions: On day three I did some refactoring but afterwards I forced myself to live with the code, gross as it was. This was better than cleaning up needlessly, but it meant I wrote awful recalculation and reindexing code to compensate for not saving the right bits of state. This was particularly true in rendering; the most explicit scene representation lacks important things like color, which made it hard to write effects or overlays.

The Dogue: I struggled to find good ways of mixing up the gameplay. Since COPY FROGUE is fundamentally a mash note to the authors of that other froguelike, I wanted to include a nod to both their character customizations and their gleefully obnoxious 7DFPS. I justified it to myself as a reasonable roguelike hallucination effect, but in the post-challenge light of day it just looks tired and frustrating.

The Really Bad

Self-promotion: In the overcaffeinated excitement of finishing, I sent what might have been the world’s worst promotional email to the good folks at Warp Door. Apologies.

That said, I haven’t alienated YOU with terrible email, so what are you waiting for? Go play some COPY FROGUE!


Leave a Reply