Both sides run for the rebound
basketball.casa is a basketball league where every game is simulated. Nobody scripts the plays. Each one comes out of who the players are at that moment: how tall, fast and tired they are, what they can see, and what they decide. You can watch any game back exactly as it happened. This update is about what happens when a shot misses.
A race you can see
When a shot misses, the game holds a race for the ball. It works out how quickly each player can get to where the ball comes down, from where they were standing when the shot went up and how fast they move at that moment. The first one there gets the rebound.
The race had two runners, but the replay only drew one. The winner ran to the ball, and the player who came second stayed where they were, however close they had come. You could see someone win a race with nobody else in it.
Now both run. The other team's quickest player sets off from where they stood at the shot and arrives when the race said they would, just beside the winner on their own side, out of the winner's path. Who wins is decided exactly as before. What changed is that you can see how close it was.
Fewer players running through each other
Adding a runner to every missed shot meant more bodies sharing the space under the basket, so their paths had to work round each other. Along the way two smaller things were fixed. A player dribbling the ball up the floor now goes round teammates still standing where the play began, not only round defenders. And a driver slipping between a trailing defender and a player waiting near the basket now takes a wider way past them. Across a test set of 24 games, the times two opponents' bodies overlapped fell from 911 to 853.
Why it matters
Every picture in a replay is drawn from the numbers that decided the play. A rebound that one team "nearly got" should look like one: two players running for the same ball, one a step behind. Watch the next miss and look for the player who just loses the race.