use better PRNG and handle archers properly