Wildflower Child – GitHub Game Off

This year I submitted an entry to GitHub Game Off 2017. It’s called Wildflower Child.

The challenge for the game jam was to create a game on the theme throwback during the month of November. I actually started right away, and came up with a very cool idea that I’d still like to implement someday. To nobody’s surprise, I didn’t carve out enough time to actually work on the game. I got as far as downloading the Godot engine and walking through a few of it’s tutorials before realizing I’d probably picked something too ambitious, given the holidays and this being a busy time of year at work. So I gave up on the jam.

Alleson encouraged me to pick something up again, and when I got sick enough to miss work in the last week of the month I started noodling on an old idea for a gardening game. I wanted to play with dynamically generated and animated flowers, so I threw together a little JavaScript that would build them in SVG.

In the space of about four hours I was generating a matrix of randomized nice-looking flowers with a sort of antique illustration look. It was kind of fun just to reload the page and see what new flowers appeared, so I figured I might be on to something. I went to bed that night thinking I’d be done with the project, and I could feel good about building something game-like this month.

The next morning I woke up sicker than the day before, so I figured I could at least use my sick day to turn my experiment into something worth sharing. The first step was to change flower generation, giving each flower a ‘genome’ so I could generate exact copies on demand. I could still generate random flowers by generating a random genome.

A flower genome is just a string of hex characters, with every pair representing a gene and controlling one characteristic of the flower. In some cases a gene is treated as a raw random seed, in other cases it’s used as a normalized value (out of 0xFF) to replace a Math.random() result.

Next of course, was mixing genomes.

Then I realized arranging flowers in a hex grid might be nicer visually, and provide a nice logic for generating descendants from neighbors.

The remaining work (drag-and-drop with snapping to the hex grid, flower generation rules) took quite a while, but I ended up with something you can “play.”

I gave up on coming up with a compelling objective and decided to leave it as a toy. Maybe in the future I’ll revisit this and build a puzzle game, but for now I’m proud of building a cool little HTML5 toy and submitting it to the game jam!

Leave a Reply

Your email address will not be published. Required fields are marked *