Start simple, then build off of it. Follow up on what the player knows.
A challenge perfectly identical to a previous challenge doesn’t teach anything.
Make sure the player always knows where to go next. Make paths clear.
Use visual information to give the player subtle clues on where the path leads.
Break up overwhelming challenges into smaller, more manageable tasks.
Avoid situations where the effort outweighs the player’s desire to continue.
Threats can influence how a player navigates even without any real danger.
Create compositions that give the player information about the level and goal.
Create a story for the player by giving them a context for the levels.
Use or break symmetry to create the feeling of an artificial or natural space.
Make levels feel thematically connected but unique in identity.
Create a visual connection between one scene and the next.
Avoid player fatigue by alternating between different types of play.
Find ways to meaningfully build on and spin challenges introduced earlier.