私のゲームでは、ランダムな値を使用して、プレイヤーがチェストから得る報酬を選択します。問題は、クイック保存とクイックロードが可能であるため、プレイヤーが望むものを手に入れるまで、再ロードしてランダム化を繰り返すことができるということです。オブジェクトの現在のシード値を取得しRandom
、ロード時に同じポイントに戻ってランダム化を悪用できないようにする方法はありますか?
ベストアンサー1
これは不可能です。
Random
代わりに、バイナリ シリアル化を使用してインスタンスをシリアル化できます。
Random
であり[Serializable]
、シードと内部状態は保持されます。
ただし、ランダム シードを保存すると、プレイヤーは将来を予測できるようになり、戦闘中に保存できるようにする場合に非常に役立ちます。
また、ユーザーは引き続き保存し、チェストを開いてロードし、乱数を生成するアクションを実行して、チェストから別のアイテムを取得できることにも注意してください。