Gene Graph Garden by kaliuresis

Gene Graph Garden is a programming puzzle game where you play as a gardener geneticist tasked with creating a plant to grow in a variety of hazardous environments. Create a graph of genes that control how your plant grows to complete each level as optimally as possible.
| Link | https://kaliuresis.itch.io/gene-graph-garden |
| Link | https://kaliuresis.itch.io/gene-graph-garden |
| Original URL | https://ldjam.com/events/ludum-dare/52/gene-graph-garden |
Ratings
| Overall | 66th | 3.825⭐ | 22🧑⚖️ |
| Fun | 71th | 3.75⭐ | 22🧑⚖️ |
| Innovation | 15th | 4.125⭐ | 22🧑⚖️ |
| Theme | 195th | 3.55⭐ | 22🧑⚖️ |
| Graphics | 221th | 3.25⭐ | 22🧑⚖️ |
| Audio | 225th | 2.842⭐ | 21🧑⚖️ |
| Humor | 210th | 2.389⭐ | 20🧑⚖️ |
| Mood | 252th | 2.917⭐ | 20🧑⚖️ |
| Given | 27🗳️ | 5🗨️ |
error: could not open progress.txt
could not open solutions/level0.sol, using default solution instead
I'm definitely going to come back to this and play around when I have more time to spend figuring out the puzzles. Dumping all the available growth functions on the player all at once in the opening level is a bit intense. If you introduced one function at all time with a stage that leverages that ability, I'd probably still be playing right now instead of putting the game down until I have more time to invest in getting to know how it all works.
Are the puzzles all solvable? Levels 4 and 5 don't seem to have enough reachable tiles to solve them.

It's nice that the progress is saved. My computer crashed when I was writing up the feedback the first time, and I was able to continue where I left off. That's just above and beyond, and it saved me time.
@matimat Hmm, those messages are intended when you have not solved any levels or made a solution yet. If there is nothing else in your log.txt there must be an unlogged error or crash somewhere. Sorry about that.
@3rdHunter Thanks for the feedback! If I ever get around to doing a post jam update I will definitely add more early levels to teach the individual mechanics.
@Pincushion You have 217 fruits in your screenshot, there was a bug in the counting code where it would skip some cells in certain situations. It should be fixed now.
A few more examples to better understand the nodes would be great!
`error:assert(hr == S_OK) in code/win32_gl_main.cpp (1114): `
I have a relatively Old PC (no Vulcan, no OpenGL 3).
One minor thing regarding level 6 - maybe I'm just stupid, but while I managed to find a (relatively) nice solution for 110 fruit, getting that last 1 was really annoying, and basically required me to add a special case for the last stretch, nearly doubling the amount of genes required (I've attached both solutions below). Again, maybe it's just me missing the obvious simple solution, but it felt a bit disheartening that my original algorithm which I spent time perfecting didn't work just because of that 1 missing fruit...


Interesting concept though!
I was surprised at one point to realize that the plant can branch when it loops back on itself but I'm still not really understanding my own plants.
I eventually got the first level with this spinny fruit but I don't really understand it.

I guess the idea is that it branches after every grow action and in my tree I tell it to restart after every branch. I can kind of reason about that but it would definitely be nice to have some more easy levels to figure things out.
Some examples of possible simple levels would be a plant with 4 fruit, and a plant that branches once and then grows in two straight lines.
The UI for placing and connecting nodes was pretty intuitive, so that is nice.
I liked how you even included a little debugger system where you can see which node a section of plant is currently on while stepping through the frames one by one. Great touch!
Here are my (minor) nitpicks:
- The growing fruit mechanic just seemed like platespinning. I would figure out the solution to the puzzle, remember "oh yeah, I have to stick a 'grow fruit' node before each 'grow forward' node", do that, and *then* I would win the level. It's an extra step that doesn't make the game any more difficult, but delays the level win.
- The "Grow Forward" node mentions a green arrow in its explanation text. I know now that this refers to the connection arrow. But at first, I thoight it referred to the green arrow on the node's icon, so I was kinda confused to what it meant.
- I think a separate "Start" node would have been a better choice instead of a Start label next to one of the nodes. It's more elegant, I think.
- A few more levels in between to get the user used to the mechanics wouldn't be a bad idea. I have some previous experience with state machines, so this was a lot easier for me.
- I wish you could set a numerical value for the "wait" node. My solution for level five involved a chain of 20 or so wait nodes and hooking those together was a bit tedious.
But those didn't do too much to damper my experience. Fantastic work!