Saman Bemel Benrud • Jan 08 2019

This game needs a name. It’ll make these devlogs less awkward. I spent some time today thinking about the name. Here’s my scratchpad:

So many bad ideas. This wasn’t the first time I tried to come up with a name. Here are some previous explorations:

The first prototype I built had the name forest adventure (too glib). For a while I was attached to symbiosis land (too pretentious).

Most of the simple, elegant name ideas I could think of were already taken. I liked Anima, Flora, Fauna, and Biota but someone else got there first. And, really, I don’t think any of these fit the mood quite right.

The name that’s rising to the top right now is Wilderplace. I like that it takes two serious words: wilderness (sublime nature) and place (which, to me at least, evokes highbrow art speak and postmodern philosophy), into a single, silly word. I’m going to try it out for a while and see how it fits.

Besides spending too much time on naming, I started writing code again today. I haven’t touched the prototype’s code in a few months, and in that time the game design has moved beyond the prototype. As a result, there’s a lot of refactoring and clean up to do.

I removed code that implemented what I was calling “board buffering” where edge tiles from adjacent boards were added to the currently active board. The original idea behind buffered boards was to allow for smooth transitions from one board to another when the player moved off the edge of the current board. It was a cool effect, but added a lot of complexity, and no longer fits with the vision for the game.

I rewrote some of the render layer so all “tile occupants” (like monsters and obstacles) use absolute positioning instead of relative positioning to enable tile occupants to change positions on the board.

Lastly, I did some planning:

  • Wrote up a plan for separating rendering, game state, and event handling into distinct classes. This will allow me to work on each aspect of the game in isolation and more easily test my code. I need to set myself up to focus on implementing mechanics without getting caught up in how everything looks and feels, because I have a habit of doing that. My goal is to be able to use test driven development, plus a simple ascii renderer, to design game mechanics.

  • Planned a new data structure for describing tile occupants. By using plain JSON objects instead of Javascript to describe each occupant, I’ll be able to dramatically simplify level editing.