Unless something is severely messed up with the RNG, which I'm pretty sure I tested, it should work fine over the internet. I'll check again.... eventually. Low priority shit here. I didn't really touch that part of the code, where it syncs the RNGs of the two systems so that random grants the same stage to both players. (It's leftover cruft from SWRCaster, where it was a mistake to begin with to use that particular value as an RNG seed, but it never got fixed, and fixing it up from there would require protocol changes that I didn't care enough to do, because I'm stupid like that.)
Now Broadcast/Debug is another story. myRand is initialized during GetPlayerSide, which is only called during actual network connections, and GetRand, which is only called when spectating. However, it is always zero for Broadcast and Debug.