Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有可能以某种方式创建一个密钥或种子,您可以使用它来初始化随机数生成器,从而确保使用此密钥的所有随机数都是相同的。
或者我可以使用另一种技术来获得类似的结果吗?
我喜欢做的是创建一个随机种子。然后使用这个种子来初始化一个随机数生成器,使用这个随机数生成器来构建一个瓷砖地图或其他需要大量随机数的东西。
然后将相同的种子发送到另一个能够生成完全相同的地图的客户端,因为随机数是相同的?
我只是好奇这样的事情是否可能,并不真正关心平台等。
只要您使用的随机数生成器不执行您不告诉它的任何操作,这将起作用。例如,如果您使用种子“4”为 c 的 RNG 播种,然后打印 10 个随机数 100 次,那么相同的 10 个数字将被打印 100 次。这是因为 RNG 仅基于种子工作,并对种子进行一些算法转换以产生一组值。如果每次都给它相同的种子,那么每次都会重复相同的算法过程,从而导致相同的结果。
我没有强调任何内容,因为现代 RNG 可能会在生成过程中自动使用时间或某些随机系统规格,而您却不知道,这样对于那些不想要您想要的效果的人来说,就不会得到它。