Character Control and unconventional movement

About year or so back questions were asked about rotating and scaling the character Control and the answer pretty much was “u probably shouldn’t do that”, is that still the case, I want to add some complex movement skills to characters… pretty much want a heads up about what I could do easily and what might take some work to achieve and a bit of advice

crouching, proning, diving and sliding around: assuming that its still not a good idea to rotate and scale the character control , what would be the best way to handle the Character control so that it doesn’t get snagged on objects the character should be able to crawl, slide or dive over/under etc in short what would be the best way have the character control fit a models shape and orientation

getting a character to (run up and push off) or even temporarily stand on walls and ceilings I am thinking using walk direction to propel the character which ever direction I need it to move and temporarily kill the -y only gravity, but I not sure of the best approach to creating that pinball type movement in a controllable way, in some instances I want the character to “stick” to a point on a wall or ceiling for several seconds.

hope I am clear

thanks in advance