When a public transport vehicle (eg bus, metro, ...) are about to depart, it checks a few things. One of the things to check is whether all passengers have entered the vehicle.
What is the problem?
Sometimes, there are some passengers who declared that they have entered the vehicle, but actually did not. They would add themselves to the passenger list of the vehicles, but physically begin to move away from the vehicle themselves. It is as if they are "running away", so to speak.
The all-aboard check is actually checking whether the passengers are physically close to the vehicle, so that the vehicle may reset the passengers' state and despawn them.
So, public transport vehicles spend a lot of time waiting for those runaway passengers, and appear as if they are "stuck at boarding".
The solution
Simple. When we detect that this is happening, we force-despawn the problematic passengers, so that the check passes.
Normal Situation/Intended Behavior
When a public transport vehicle (eg bus, metro, ...) are about to depart, it checks a few things. One of the things to check is whether all passengers have entered the vehicle.
What is the problem?
Sometimes, there are some passengers who declared that they have entered the vehicle, but actually did not. They would add themselves to the passenger list of the vehicles, but physically begin to move away from the vehicle themselves. It is as if they are "running away", so to speak.
The all-aboard check is actually checking whether the passengers are physically close to the vehicle, so that the vehicle may reset the passengers' state and despawn them.
So, public transport vehicles spend a lot of time waiting for those runaway passengers, and appear as if they are "stuck at boarding".
The solution
Simple. When we detect that this is happening, we force-despawn the problematic passengers, so that the check passes.