Milky Helps People – Postmortem

Posted by
September 1st, 2015 8:06 am

Milky Helps people is a logic puzzle game. (Timelapse here.)

milky6

You have to place devices in the grid, according to some rules:

  • You need to place exactly one device in every group of tiles
  • When two devices line up, they automatically connect to each other. Each device must be connected to exactly one other device in the same row, and exactly one other device in the same column.

The solution to the above puzzle is as follows:

milky7

But the puzzles quickly get more complex.

milky8

In later levels, the game adds barriers that prevent connections from going through, making the puzzles more complex.

The puzzles are motivated by a story told in the form of a picture book with audio narration. The story is that Milky always likes being helpful, but sometimes he finds that he could be more helpful if he was just a little bit bigger. So he has to operate the professor’s devices to collect some mangosteen juice, a powerful substance that will make him bigger. But every time he gets big enough to solve one problem, a new problem arises that requires him to be even bigger.

milky9 milky2

What went well: puzzle rules

I usually make a puzzle game. My Ludum Dare 32 entry, Wellbeing (game, postmortem), had rules that enabled me to design some satisfying puzzles (I think the most satisfying puzzles are “smooth” – you can chip away at them piece by piece). I was pleased with Wellbeing’s puzzles… except the rules were kind of complex and confusing. Some players were put off in the first three levels while the rules were being explained. So, for LD33 I worked hard to come up with puzzle rules with a balance between simple enough to be easily understood and complex enough to allow me to design satisfying puzzles. Even when I had rules I thought were completely clear, when I showed it to my friend Brian Corr (who has entered LD in the past but didn’t have the time this time) he pointed out and helped to clear up some ambiguities. I haven’t had complaints about confusing rules this time so the plan seems to have succeeded!

Wellbeing had a storyline that branches depending on how you solve one of the puzzles. That went down well with players, so I decided to take it a step further: this game has two endings; once you’ve decided which ending you want, the solution of the final puzzle is determined uniquely. Well, I’m pleased with myself, even if you don’t like it.

What went badly: stylistic incongruity

Some players enjoyed both the story and the gameplay but felt that they seemed unrelated. I think that a big factor in this is the visual style. The puzzles are displayed in a clean, abstract way, and the story is told with some sketchy picture book drawings. If the puzzles were displayed in the same sketchy style, with a few mangosteen fruits here and there, players would have swallowed the connection more easily. But making sketchily-drawn tiles line up properly would have taken a lot of work, so there’s a trade-off to be made here.

Notes on how long tasks took

Going over my timelapse, I made some notes on how long certain tasks took. Naturally YMMV but perhaps these numbers give an idea of how much content it’s possible to create in a given time frame.

  • Recording and editing the 5 minutes of narrative took about 1h20m, while drawing the corresponding art took nearly 5h. (Not counting the in-puzzle art)
  • The 5 minutes of music took about 2h to make, all up.
  • I didn’t write a line of code for the first 4h30m…. I was thinking up puzzle rules and puzzles, and planning everything out on paper. Is that weird?
  • I planned the game out giving myself 10h of contingency time, i.e. planned to be done by 1am Melbourne time, and actually finished at 7am. So… good decision.

One Response to “Milky Helps People – Postmortem”

  1. I loved your game! The puzzles were fantastic and the difficulty was just right. Nice post-mortem too, I think you’re right about the disparity in the styles.

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]