Things like gripping a ledge or wall-jumping aren't such general features though, and should probably be coded as needed by the user. Just my opinion on the matter.
Well yeah, I agree. I actually meant that there could be additional conditions to help coding there features, something like that there would be events testing a bump on the wall and then user could code that if jump control is pressed within a certain time, jump would happen. Currently that needs detectors. I thought that if behavior knows internally when it has bumped to a wall, it could as well trigger an event too.
And I guess I don't see what what you mean about the jump, it looks pretty natural to me. Maybe you could try fiddling around more with gravity and jump strength and such, you can get different looking jumps out of it.
I mean that when the jump key is pressed, the jumping sprite rises at very steady speed, like it was floating. This stands out especially with long jump sustain times. Seems like the "gravity" starts to effect only after the jump key is released or the maximum sustain time has elapsed. If the sprite's upward motion was decelerating even when the sustain key is pressed, it would look more natural. Of course, when jump key was released, the decelerating/downward acceleration must be greater. Maybe there should be "gravity during sustain" so that user could tweak this setting?