传奇版本开发中,本服与跨服的数据双向传递是互通功能、跨服交互玩法的核心基础。二者通过专属指令触发QF脚本标签,实现字符串数据、玩家定位信息的跨区同步。
关键逻辑说明:进入跨服NPC的操作主体为本服,执行归属也为本服;仅QF、QM脚本逻辑会在跨服环境执行,这是数据交互调试的核心要点。
指令格式:BFBACKCALL 参数1 参数2 参数3 参数4
参数1:IDX,QF触发标签编号,用于定位跨服QF脚本中的专属触发段
参数2:UID,目标玩家唯一编号,赋值0时代表全服玩家统一触发
参数3:传递字符串1,自定义文本类交互数据
参数4:传递字符串2,第二类自定义文本类交互数据
[@BFSYSCALLX]
#IF
#ACT
;传递的字符串1:<$ PARAM1>,传递的字符串2:<$PARAM2>
SendMsg 6 <$PARAM1>-----------<$PARAM2>
指令格式:KFBACKCALL 参数1 参数2 参数3 参数4
参数1:IDX,QF触发标签编号,定位本服QF脚本触发入口
参数2:UID,目标玩家唯一编号,赋值0时代表全服玩家统一触发
参数3:传递字符串1,跨服向本服推送的自定义数据
参数4:传递字符串2,跨服向本服推送的第二类自定义数据
[@KFSYSCALLX]
#IF
#ACT
;传递的字符串1:<$ PARAM1>,传递的字符串2:<$PARAM2>
SendMsg 6 <$PARAM1>-----------<$PARAM2>
适用场景:仅可通过跨服QF、QM脚本触发调用
[@只能跨服QF/QM触发]
#ACT
KFBACKCALL 22 0 测试字符串1 测试字符串2
;本服QFunction-0.txt接收触发标签
[@KFSYSCALL22]
#ACT
SendMsg 6 <$PARAM1>=测试字符串1----------- <$PARAM2>=测试字符串2
适用场景:支持NPC、QF、QM多渠道触发调用
[@支持NPC、QF、QM触发]
#ACT
BFBACKCALL 33 0 测试字符串1 测试字符串2
;跨服QFunction-0.txt接收触发标签
[@BFSYSCALL33]
#ACT
SendMsg 6 <$PARAM1>=测试字符串1----------- <$PARAM2>=测试字符串2
1. 权限区分:BFBACKCALL为本服推跨服专属指令,KFBACKCALL为跨服推本服专属指令,不可混用
2. 编号对应:调用指令中的IDX编号,必须与QFunction脚本中的触发标签后缀编号完全一致,否则无法触发
3. 生效范围:UID参数设置为0时全服生效,指定玩家UID时仅目标玩家接收数据
4. 执行主体:NPC交互操作归属本服执行,数据同步类QF/QM逻辑归属跨服执行,调试时需区分环境