Skip to content

1. Genesis. From the idea to the design

Siorki edited this page Oct 25, 2014 · 3 revisions

Pest Control : Weasels

Pest Control : Weasels was my contribution to the 2014 edition of js13kgames. It ended up winning both the desktop and mobile categories. This series of articles describe how it was made and the inner workings of the game.

  1. Genesis. From the idea to the design
  2. Architecture and framework
  3. Critter tasks and animation
  4. Level design and display
  5. Minification and size constraints

Genesis

At the beginning there was nothing. No, that's not true. Even at the beginning, there were memories of 25+ years playing games on 8-bits and 16-bit platforms, memories of days and days spent levelling up (Elite), solving puzzles (Lemmings), fighting armies (Civilization, Populous), escaping destruction (Wreckers), or leading a haphazard squad through dark tunnels (Dungeon Master, Black Crypt).

Everything I fondly remembered, I wrote down. An insightful method to choose a game to develop can be summed up as "list 100, prototype 10, produce 1". I did not go as far as listing 100 different ideas though - I stopped at a solid 35, then went on to the next stage. The third design screamed so loud "I am the one you need" that I did not bother spending more time on any other idea. In retrospect, the time I saved on exploring designs was more than welcome during the final rush. So that early decision was definitely a good one.

The prototype was actually a mix of two of the original ideas, that read, straight from my notes :

"Lemmings + tower defense. Shoot them directly or place traps and machineguns, prevent them from eating any preys"

"Worms + Lemmings mix, critters walk like Lemmings and can use some weapons too (bazooka, grenade, ninja push)"

Use cases

I then went on to define more precisely the use cases:

  • critters' walk is similar to Lemmings. They can walk up ramps up to a certain limit, but do not turn around unless they hit an obstacle
  • critters should be able to reach the exit on their own if left undisturbed, no matter the obstacles or gaps
  • critters should recognize traps and react appropriately to avoid and circumvent them to reach the exit
  • critters should not leave the play area intentionally
  • critters can become blockers in order to guide others. They can resume walking at any time, in the opposite direction (not to be abused to make u-turns)
  • gravity applies, but falling from any height does not kill critters
  • critters can build stairs, dig down or sideways while making a path to the exit
  • there is no limit to how many critters can become floaters, builders, blockers or diggers, including multiple occurrences for the same one
  • critters can pick up balloons and use them to fly upwards
  • the player does not interact directly with the critters, but place traps or objects on the playfield that do
  • the shotgun must not be used as the main weapon, the game shall not become an Operation Wolf clone

First came the mines (a reminiscence from Worms) and the shotgun. The latter had a limited efficiency in the original design, it took several shots to get rid of a critter. Or, should I say, of a moving blue square. The prototype featured no fancy graphics.

Water was introduced at the bottom of the screen, first to match the theme, then as a way to deal with the bottom of the screen. Gravity meant that, sooner or later, critters would fall below the world limits, and simply having them vanish was not satisfying.

The final title came much later. I needed a critter that was smart and cunning yet despicable, that most players would not hesitate a second to kill. Not to mention some are delighted to maim a cute furry creature. The initial codename was Hyenas, and later in the project I remembered from a trip to New Zealand the damage that introduced mustelids (stoats, minks, weasels) cause to native animals. Players would then be slaughtering weasels, the pests more than deserve it :)


  1. Genesis. From the idea to the design
  2. Architecture and framework
  3. Critter tasks and animation
  4. Level design and display
  5. Minification and size constraints