This topic has really had me thinking. Rather than wishing for what KS doesn't have, I try to develop clever ways to do what I want with what's provided. So, in response to Zydragazum's opening post. I've compiled a lengthy comment on what is already possible, and how I think improvements could be added.
Critters: Non-moving enemies can be covered with a custom object (CO) for a new appearance. For example see: Farik - Homeland (look in editor.) With Purple Pineapple's KS mod (http://nifflas.lpchip.nl/index.php?topic=2458.0) you can make your own Flier, Follower (like the rat), or something that moves in a straight line. You can also toggle the deadliness of enemies. However, I like your idea better. If we could instruct the game to replace any default object's sprite sheet, that would be awesome.
Items & Power-ups: This can be simulated with a shift, a CO, a flag check, and a warp object. Put a CO representing a power-up on a shift object. When Juni touches the shift, the shift turns on the power up and moves Juni to a nearly identical screen. The new screen is missing the power-up CO. A warp object here and a flag check for the power-up in the original room ensure the custom power-up acts like the real thing. The drawback is screen flash on shifting, all objects blink out and reset. For example see: Jerom - Knytt 8bit. Again, if we could instruct the game to replace any default object's sprite sheet that would be a much more elegant solution.
Keys and Locks: This can be simulated too. You can create your own key colors using the method described for custom power-ups. Use a flag to track possession. Custom locks can be created by layering a band of color over the color stripe on a normal lock. if the background matches the band of color then it will be undetectable when the lock disappears. This also requires flag checks, warp objects, and additionally you must already have the standard key to the lock you are trying to open. For example see: egomassive - Shipwrecked. More key and lock combos wouldn't hurt, but I don't think the complexity of declaring colors would be worthwhile. Why not have 8 set colors?
Ghost Objects: I don't know about dynamically desaturating standard objects. That seems too involved. Again, If we could declare custom sprite sheets for standard objects then we could make our own intelligent ghosts. As is, ghostly CO's can be made to appear simply by doing a flag check for the Eye power-up. I know of no examples.
Music and Ambiance: Purple Pineapple's mod can loop music. Or, you can put your music in the Ambiance folder. The drawback is it behaves differently, starts and stop abruptly. For example see: Salmoneous - Mashu Prapa.
Water: I really can't get away from talking about custom sprite sheets for standard objects. You want transparent water, override a standard water object. You want non-deadly water that behaves like regular water override a waterfall object with a surface water spite sheet. These things (as well as a waterfall splash) can be done now very convincingly with CO's. For example see: Farik - Camping. (Edit: I see you already mentioned that.)
It would feel much more like being under water if Juni's movements were retarded. A new object like no-jump would be terrific for this. It could just reduce her velocity. If that's a global variable, I don't think it would be too hard to implement. If Juni's sound effects could be altered to sound more appropriate the effect would be superb. Furthermore, a new power-up diving fins could be added that would allow unlimited double-jumping when in a "retard" object, swimming! Currently, you can turn off run and high jump to simulate retardation (or weakness, see Carn - Escape from Pain), but it's not convincing.
While we're dreaming up possibilities. Here's my wish list.
Immobilize Object: It's just Sticky, No-jump, and No-Climb rolled into one because it's such a useful but bulky combination.
Custom Sprite Sheets for Standard Objects: CO's just run in loops and they're bulky. I want random seeding and AI. And, it could be so simple for level makers. Add a sprite sheet to the Custom Object folder. In the World.ini declare:
[BankObject 0,1]
Image=Save.png
And, you've got a new save point. Then again, the save point probably doesn't use a sprite sheet. Even Juni could be replaced, but I'm sure it's a lot harder to implement than I think. *resists urge to buy MMF2*
Custom Shift Sounds: To make a custom shift sound now you have to change rooms and use the music track in the new room. Music must not have been playing when the shift was activated. If only I could declare a sound the way I declare a cutscene.
Layer 6.5: In the same vein as what Headgrinder was saying, I want to use tiles in front of Juni. Tiles as CO's is cumbersome and they blink on screen entry revealing what's behind.
Counters and Flags: What's better than exploring a game world? Collecting stuff along the way. We do that in KS, but what if I wanted to hide 100 coins in a level keeping track of which ones are found (so they don't reappear) and incorporating a way to let the player see how many they have. It's impossible. With 10 flags and up to 3 flag-checks upon entering a room, I've figured out a way to count to 7. I want more.
A Map System: Tracking your position and your objectives' positions is part of the challenge. But, that's only fun in a well designed level.
Make it an official 1.3 release: Backwards compatible if at all possible. I'm not saying Nifflas would have to be the one to do it. I'm saying it should be made well enough to garner his official approval. Also, mods don't get a lot of attention and sometimes include questionable design decisions. *cough* dying from a fall *cough*