如果你希望在 1.20.1 的数据包上通过宏函数实现更多功能,那么将它移植到 1.20.2 无疑是最佳选择!两版本之间的变化非常小,移植难度低。
通过该辅助脚本,能够将效果 NBT 数据(如“Effects”、“ActiveEffects”、“CustomPotionEffects”等等)以及记分板的“belowName”批量自动替换为 1.20.2 的对应格式,帮助作者或用户更加方便地将 1.20.1 的数据包移植到 1.20.2。
◉ 使用前说明
经过脚本转换完成后的数据包仍需要您进一步检查,因为仍有一些功能的变动不能通过机械的脚本处理,需要人工介入。
效果id的整数会自动替换为对应的字串(如4或4b变为"minecraft:mining_fatigue")
实体 mooshroom 的效果数据 EffectId 和 EffectDuration 由于两版本的数据结构不同,暂不支持在脚本中自动转换,需要人工处理。如 {EffectId: 4b, EffectDuration: 20} 需要修改为 {stew_effects: {id: "minecraft:mining_fatigue", duration: 20}}
◉ 特殊问题
不排除某些数据包的 NBT 数据处理较为特殊,可能会导致脚本无法正常处理。(该问题主要发生在data命令上)以下为脚本无法完美转换的数据处理方法:(“>”表示写入到目标的数据路径)
1
处理前:
处理后:
2
处理前:
处理后:
3(真的会有人这样玩吗?!)
处理前:
处理后:
◉ 人工帮助
如果您不想耗费精力在转换的过程中,也可以将数据包给我人工帮您移植并检查:(按数据包个数计价)
https://afdian.com/item/58506186571811ef8cb452540025c377
通过该辅助脚本,能够将效果 NBT 数据(如“Effects”、“ActiveEffects”、“CustomPotionEffects”等等)以及记分板的“belowName”批量自动替换为 1.20.2 的对应格式,帮助作者或用户更加方便地将 1.20.1 的数据包移植到 1.20.2。
◉ 使用前说明
经过脚本转换完成后的数据包仍需要您进一步检查,因为仍有一些功能的变动不能通过机械的脚本处理,需要人工介入。
效果id的整数会自动替换为对应的字串(如4或4b变为"minecraft:mining_fatigue")
实体 mooshroom 的效果数据 EffectId 和 EffectDuration 由于两版本的数据结构不同,暂不支持在脚本中自动转换,需要人工处理。如 {EffectId: 4b, EffectDuration: 20} 需要修改为 {stew_effects: {id: "minecraft:mining_fatigue", duration: 20}}
◉ 特殊问题
不排除某些数据包的 NBT 数据处理较为特殊,可能会导致脚本无法正常处理。(该问题主要发生在data命令上)以下为脚本无法完美转换的数据处理方法:(“>”表示写入到目标的数据路径)
1
处理前:
代码:
ActiveEffects > xxx
xxx[*].Id > ActiveEffects[*].Id
代码:
active_effects > xxx
xxx[*].Id > active_effects[*].id
^^ 错误
处理前:
代码:
ActiveEffects[*] > xxx
xxx.Id > ActiveEffects[*].Id
代码:
active_effects[*] > xxx
xxx.Id > active_effects[*].id
^^ 错误
处理前:
代码:
execute store result * ActiveEffects[*].Id int 24 ...
代码:
execute store result * active_effects[*].id int 24 ...
^^^ ^^ 错误
◉ 人工帮助
如果您不想耗费精力在转换的过程中,也可以将数据包给我人工帮您移植并检查:(按数据包个数计价)
https://afdian.com/item/58506186571811ef8cb452540025c377