Thanks people!
Yeah, they should be able to get past each other easier. I'll look into a "walk above" solution. Thanks!
Update 212Today I finished(?) the "social AI" as I call it, a horrible thing that's way too complex for a game like this. Theoretically it's able to simulate shakespearian dramas such as taking pups 1 and 2 off to the side, place 1 in the sight of 3, who's a little bit to the side, killing 1, but make sure that 3 thinks that 2 were closest to 1 at the time, making 3 hate 2.

Because of bad communication between the game and the player this whole system will basically look like "a weird bug happened, where one pup suddenly became aggressive" but it was fun to make lol.
Each pup has, for each other bear creature, a value -100 to 100 for how much they like that creature. They also have a temporary "like" value, on the same scale, that slowly adjusts to the base value. This is used for a situation like if you throw a rock at a pup - then they will all get a very negative temporary value towards you, meaning that they'll flee. But the base value is only lowered slightly, meaning that after the initial shock settles, they'll come back to you and be your friends again. But the base value is still lowered, so if you throw a lot of rocks, they'll eventually lose their temper and start to avoid you for real.
The relationship will only be able to heal (by throwing up food, rescue from lizards) until a certain degree of hostility, after which they will never trust you again. But that is more or less reserved for spearing them to death one by one in a room where no lizards are around.
By now we have an engine that can understand that a violent situation is going on, who is the victim, who is the offender, who is able to see the crime, etc. And, as I mention above, if they are not able to see the offender they'll make their own assumptions about who did it, which will probably not show up in the game, but it was fairly easy to implement, so well. They can also understand if an act of violence was an accident, by looking if there are enemies close to the offender or victim, and if so react less harshly to the crime.
If you commit an act of violence towards a pup, the other's will react depending on how much they like that specific individual. If they were enemies with it, they won't react as negatively.
It's a mess. But hopefully we won't see much of that mess, because it's not that usual for players and pups to hit each other with weapons - most of the times those situations are accidents, which the violence recognition engine accounts for. But if you are a crazy evil person, the game is able to understand that and react accordingly, which I'm happy with.