Recast graph penalty. Rvo problems ontop

I’m trying to do a small project to see how a cRPG system works. Basically 5 party members, a single small map and a few enemies.

I’m using recast graphs and i’m left scratching my head on how to handle blocking off paths. For example, doorways. If I have 1 or 2 characters standing in a doorway, how should I block the path off completely UNTIL they move out of the way. Another example would be between crates. Let’s say I have 2 crates near each other with enough room for 1 character to fit/pass through. I want to make it so, that if someone is standing there, another AI that’s trying to go to the other side will not try to bang his head against the other AI between the crates, but rather move around.

Just how possible is this with recast graphs?

Another thing is i’m having RVO problems. As a very basic example lets say I have ai X standing in position x, and ai Y standing in position y. I want X to go to y and Y to go to x position. Yet when they both meet, they start doing a “little dance” together, spinning around. Then after 2-10 seconds, they barely slip past each other. I’m using the default settings on RVO, with just the radius down to be the same size as the characters. Is this how they should behave?

Any help would be greatly appreciated with either issues.

A quick update. So far i’m able to “fix” the 1st problem by adding a navmesh cut, that I activate when the target reaches his destination/speed is at 0. It works quite well, considering the recast graph is tiled.

The new problem that I found is pathing in general. I have a tent object and I want to move from the top right corner of it to the bottom right corner. Sometimes it just moves in a straight path, that’s obviously the shortest and the path that makes the most sense. But 80% of the time the character will take a long way around, going counter clockwise, and then reaching the destination, which causes the path to become muuuuuuch longer. Here’s an example http://i.imgur.com/D7R3TK2.png

I was able to fix all the problems, except the RVO problem. No matter what, when 2 RVOs are moving towards each other, they just fight and do a little dance to see who will give up the path to whom.