I don't see anything that would cause it not to work when there are other players. The logic is pretty simple:
if (tripping->value)
{
xyspeed = sqrt(ent->velocity[0]*ent->velocity[0] + ent->velocity[1]*ent->velocity[1]);
if (ent->groundentity && !pm.groundentity && xyspeed > 450 && CanInteract(ent))
{
if (!ent->client->always.verbpref) // jit - verbose
safe_cprintf(ent, PRINT_MEDIUM, "You've tripped... (Slow down!)\n");
ent->velocity[0] = 0;
ent->velocity[1] = 0;
ent->velocity[2] = 0;
if (pm.cmd.upmove > 0)
pm.cmd.upmove = 0;
}
}