I've been making a game called InterSection. It's a puzzle platformer that I first came up with for Ludum Dare 30 (theme 'Connected Worlds'), and a few months ago I decided to continue working on it.
The mechanic is pretty simple, but allows for some crazy levels:
My current challenge is designing levels: How can I make every level unique and solved in a different manner yet presenting a smooth and fun difficulty curve?
My first approach was to come up with as many level ideas for a certain set of mechanics, then add another mechanic, make as many levels as I can involving that, then add another, etc., then make levels with both mechanics, etc.etc. Then organize those levels in order of increasing complexity.
The problem with this is that difficulty was jumping too much; I wasn't able to catch this until I had some people playtest it. For example, I watched my friend spend nearly 20 minutes trying to beat one level. It was gratifying that he refused to give up, but I don't know if that was because he enjoyed or was just stubborn.
The 'unbeatable' level:
As a result, I'm now making a lot of 'filler levels' that are solved in the same way as other levels but with slightly more complexity.
Another thing I need to work on is making the game more 'puzzley'. In the current demos I have available, the 'puzzles' are more about how to figure out certain jumps. One person who played the demo told me he expected a more 'puzzley' experience; levels more focused on puzzles then weird jumps.
Which makes sense; the main game mechanic (worlds- aligning themselves to the player) practically begs to be exploited for puzzles.
So I wrote out the mindset I needed: instead of "make levels that can be beaten" I need to "make levels that must be beaten mentally with a limited amount of physical skill".
So that's been my focus for the latest levels and mechanics:
These levels look really frickin complex. The whole game looks mindfking (or so I've been told), even though it's pretty simple.
So on top of everything, I've been looking into complete minimalism: make everything as smooth and easily understandable as possible. Right now there are a lot of unnecessary bumps and whatnot in levels that make them look more organic, but make them harder to understand:
The second picture shows a level after I've simplified it; it still looks organic, but the parts that the player actually walks on is all flat and easily maneuverable. The bumps in the first picture add what I believe is called "fake difficulty" (essentially making things pointlessly harder).
On top of simplicity, I have to remember to teach the player through level design: No mechanic in the game is explained (beyond controls), each is purely learned from how the level is built. So levels must be organized according to teachability as well.
Anyways, that's all for now; I'm off to explore game dev some more!