So the final tweak that made my projectile prediction feel right was to actually *delay* the client side prediction slightly. WTF right, delay is exactly what we’re trying to prevent with prediction. But the trouble is, if you pure predict, everyone else sees a projectile that always spawns quite far in front of you, because by the time the server knows you’ve done it, and has fast-forwarded for lag, that projectile has moved quite far ahead before it’s seen. So we split the difference a bit