
分发变量动作
Distribute Variable 是在多用户研究中,将一个参与者的实验值移动到另一个参与者实验中的动作。没有它,每个参与者的实验在同一会话内是完全隔离的;这是唯一一个实际跨越该边界传递信息的动作,允许刺激位置、聊天文本、分数或任何其他值在另一个参与者的屏幕上显示。

它是如何工作的
一旦被选定为事件的动作,弹出框会详细说明具体哪个值正在被分发以及分发给谁。

| 设置 | 控制内容 |
|---|---|
Distribute value to | 接收该值的参与者:所有参与者或选择的参与者列表。 |
Choose target variable and value | 接收参与者的屏幕上的变量,以及它应该设置为的值(一个常量、当前变量值或计算表达式)。 |
Block | 如果启用,目标变量在当前分发完成之前不能再次更改,以防止两个几乎同时的分发发生冲突。 |
Rate Limit Strategy | 防止在一个动作触发速度快于服务器处理速度时过载服务器(每100 ms多于一次)。选择防抖(只有在安静间隔后最近的消息发送)、限流(每100 ms窗口内仅发送最近的消息)、丢弃(窗口内的额外消息被丢弃)或排队(额外消息排队,最多10个)。 |
何时使用块
当多个参与者可能在几乎同一时间向同一目标变量写入时,例如两个玩家在游戏中同时提交一个动作时,打开Block。启用Block时,第一个到达的分发将被处理,而后续尝试将等待其完成。禁用Block时,分发将在到达时应用,这可能使目标变量保留最后到达的值。