为什么我的Scratch Cloud变量没有更新?

时间:2020-03-30 21:03:26

标签: variables mit-scratch

我正在制作一个多人游戏,可以在这里找到:project.在主脚本之前有以下脚本。我已经对该脚本进行了彻底的测试,但似乎无法正常工作。出于某种原因,尽管事实上我的云变量应该每0.2秒更新一次,但在其他浏览器上,它不会在五秒内更改。怎么回事,我该如何解决?

单击绿色标志时
将[tick_p1 v]设置为(☁p1)
将[tick_p2 v]设置为(☁p2)
等待(5)秒
如果<(☁p1)=(tick_p1)>然后
将[(g)播放器v]设置为(1)
其他
如果<(☁p2)=(tick_p2)>然后
将[(g)播放器v]设置为(2)
其他
停止[此项目中的每件事v
结束
结束

2 个答案:

答案 0 :(得分:2)

这很可能是由于网络滞后造成的。暂存云变量通常可能会出现故障,并且需要花费大量时间进行更新。我知道这可能不是您要寻找的答案,但是要立即制作在线更新的在线多人游戏非常困难,即使不是没有可能。如scratch wiki article中所述:

“为避免云数据基础架构超载,运行项目时云数据更新被限制为每秒一定数量。应始终避免尝试在不等待更新之间进行快速循环的情况下尝试更新云变量通常,应该仔细考虑云变量的更新频率,并尝试将任何更新限制为仅在需要时(例如,值实际更改的时间)进行更新,并限制变量的更新频率。”

换句话说,云变量无法快速更新,并且更适合保存诸如高分用户名之类的数据,而不是实时在线多人游戏。

答案 1 :(得分:0)

云变量有局限性,例如不能在云变量中存储字母和符号。此外,云变量总是需要很长时间才能重新加载,就像我在从头开始的游戏中尝试过的那样。它更适合用于跟踪 WR 而不是加密的帐户变量。还有一个有趣的事实:griffpatch 的多人游戏不再运行