我的世界随机数字怎么生成 我的世界随机数字怎么生成的

在游戏中我们有着各种不同指令可以进行使用,而其中随机数字生成指令相信很多玩家都非常好奇,相信还有很多小伙伴不清楚,对此小编特地为大家准备了相关的详细内容,让我们一起来看看吧!

我的世界随机数字指令分享

我在写scoreboard的指令教程的时候突然猛醒这里不是有一个超方便的随机数生成吗?找到了一种,至少在7位数以内有效的方法。

我不卖关子:

1、 如果没有指定生成的实体UUID,他的UUID不是随机的么?

2、 我们不是可以用execute store把UUID导入记分板里么?

那、、、、、、我们还用什么谓词,用什么战利品表,还用什么、、、复杂的数据包?

好吧好吧,我不能肯定UUID是真绝对随机,但、、、、、、说真的,你要那么随机干嘛?

而且,逻辑学告诉你,永远无法判断一串数是不是随机的。(笑)

UUID有几位?

说是4个32位数字。但测试后,不一定有多长。

一般来说,有个8到10位。

记分板最多也就10位而已。

而把大数变小绝对不难。

例:

1、 生成一个随便什么东西,为了方便,我们用盔甲架。再创建一个记分板。

/scoreboard objectives add r dummy

/summon armor_stand ~1 ~ ~ {Tags:[random]}

记分板就叫r,盔甲架加了个标签以便管理。

然后用execute store:

/execute store result score @e[tag=random,limit=1] r run data get enetity @e[tag=random,limit=1] UUID[0]

把大数缩小用记分板求余就好了,一点不难。比如,要一百以内随机数:

/scoreboard players add max 100

设定一个叫max的虚拟对象分数为100。

然后使用max对分数求余:

/scoreboard players operation @e[tag=random,limit=1] r %= max r

比如190478653输出53

结束:

当然,这方法对7位以上大数可能不太好就是了。

所以基本上可以宣布:有关7位数以下的随机器设置解决了(强迫症患者除外)。