Xorshiftという乱数生成アルゴリズムの実装です。
Random.Nextはリプレイしても違うシード値になるのでリプレイ再現性がありません。
この乱数生成アルゴリズムはシード値が毎回固定なのでリプレイ再現性があります。
しかしながら、乱数を生成したいときだけ生成するとプレイするたびに同じ結果になってしまいます。
これを防ぐには、例えばキー/ボタン入力があったときにも無駄に乱数を生成したり
ノーツを叩いた結果の種類(Cool, Safe)に応じて違う回数で無駄に乱数を生成することが必要です。
こうするとシード値が固定でも毎回違うプレイ感を味わえるはずです。