Many problems in the source code are in a form of a logic problem. There is a bridge problem which is introducing facing when the engine has no support for that for game objects. You can cross the bridge when walking but how about when swimming and trying to move on a bridge? It should block moving, but there is no default way to prevent that since bridge has no blocking value. I was able to solve that by checking when the player is swimming and block moving when there is a big enough object in that space. I guess it's not a perfect solution and may cause some unwanted side effects.
Another example is the pit problem which has troubled me quite a lot and I have mentioned it earlier. You can push a movable in the pit, but you can't push anything on top of that movable or you shouldn't be able to walk across the pit without falling into it. Then again, you should not be able to be on same spot with a large movable object. It's somewhat difficult problem to solve without producing strange side effects.