(01-04-2021, 01:10 AM)37thchamber Wrote: using system clock time as a seed for random makes sense. thats pretty common. what's amazing to me is that they don't recalculate with a fresh seed on a case by case basis when something needs to be calculated within the sim engine -- as evidenced by the duplicate plays. that's... basic logic, i thought.
once again, wolverine studios proving that i think (or at least thought) too highly of them. smh my head.
In my experience, most PRNGs init the seed at startup (or maybe start of game in this case) but then will mutate it as it generates more numbers. However, they're basically* all deterministic given a starting seed, so in this case sounds like they're doing something like systime << 32 or something for some reason (maybe systime is a 64 bit int and they're trimming down to 32 MSB because their PRNG seed only accepts int32s? Edit: though taking the LSB would probably produce higher variance. Maybe they did it this way to get consistent 'randomness' in their tests or something)
*: all the simple ones, anyway. I am not a cryptologist and don't write cryptographically secure RNG algorithms but my impression is they try to pull in more than a single seed such as network traffic patterns that are nominally unpredictable.
Draft Steal (retired S35 CB) - Profile/Update | Wiki
Troen Egghands (retired S22 DE) - Profile | Update | Wiki