Decision made: Mutagenesis - Algorithmic plant generation

I'm trying something a bit different this time. Rather than a traditional game, this will be more of a sandbox for playing around with plant structures based on L-systems.

You will start off with one fairly simple species of plant. You have two ways of creating new species:
  1. Induce a random mutation
  2. Cross-breed two existing species
The DNA of a plant will consist of a set of chromosome pairs, where each chromosome is a production in an L-system. The pairing is irrelevant to the operation of the L-system, but it comes into play during cross-breeding, where a crossing-over procedure will be applied to each pair of chromosomes.

Mutations will consist of randomly adding or deleting symbols in the chromosomes, and maybe some other things such as duplicating entire branches or chromosomes to increase the overall complexity of the genome.

No predefined goal or fitness function is currently planned; it will be up to the player to set his own goal and work towards it, or just have fun playing around and seeing what comes out.

I'm also not currently intending to let the player directly see or edit the L-system, although I might add that later if I get time.

Day 1 Progress

Thought up the initial idea (after considering adapting my idea for More Criticals, which could have been stretched via the idea of radiation-induced mutation, but it wouldn't have fitted so well). Performed some initial research by reading the first few chapters of The Algorithmic Beauty of Plants. Came up with a plan of attack for the main implementation problems.

Day 2 Progress

Put together a basic game skeleton and started implementing the core idea. Got the basic L-system substitution mechanism working, and the beginnings of a rendering system. Can generate and display simple plants consisting entirely of woody stems (example below).

Plan for tomorrow: Need to get more visual elements into the rendering -- leaves, flowers, etc. Will experiment with encoding of filled polygons and colour variations.