InvSync文档

March 16, 2025 / Administrator / 333阅读 / 0评论 / 分类:

介绍

支持版本1.12.2-1.21

  1. InvSync是一款高效的跨服同步插件,它可以让您在多个服务器之间同步玩家背包、物品、经验等数据

  2. InvSync采用了redis + mysql的储存方式,确保数据的安全性和实时性。

  3. InvSync易于配置和使用,可以轻松实现跨服同步,提高服务器的玩家体验和管理效率。

  4. InvSync还支持从多种插件进行数据迁移,因此您可以轻松地切换到InvSync而无需担心玩家数据丢失

  5. 对于在线玩家,您可以使用其他插件如CMI来编辑他们的背包数据。对于离线玩家,您可以使用InvSync的编辑功能来修改他们的背包和末影箱数据

支持同步的数据

原版数据

  • statistic (统计数据)

  • exp (经验与等级)

  • ender (末影箱)

  • inventory (背包)

  • health (血量)

  • food (饥饿值)

  • advancement (成就)

  • buff (药水效果)

  • maxHealth (最大血量) 默认关闭

  • persistentDataContainer (玩家PDC持久化数据) 1.14.1+才有 默认关闭

  • gameMode (游戏模式) 默认关闭

  • op (是否为管理员) 默认关闭

  • location (是否同步服务器中的位置) 默认关闭

  • 可根据API 安全的自行同步任意数据 详见 API

Mod数据

  • 像素宝可梦(Pixelmon) 世代 (1.12.2) 默认关闭

  • 像素宝可梦(Pixelmon) 重铸 (1.12.2) 默认关闭

  • 时装工坊(armourersWorkshop) (1.12.2) 默认关闭

  • FTBQuests (1.12.2) 默认关闭

  • 精妙背包 需要额外购买扩展(扩展非本人开发)

  • 1.16.5宝可梦 需要额外购买扩展(扩展非本人开发)

其他插件数据

  • LibsDisguises

  • cmiFlyCharge (CMI飞行能量)

  • vault (vault经济系统) 默认关闭

插件API文档

点我 或直接复制 https://halo.xbaimiao.com/archives/invsynckai-fa-zhe-wen-dang

bStats

此数据仅供参考 因为此数据只会统计2.0.0版本+

数据迁移

从PlayerDataSQL迁移

需要打开配置文件中的migrator-pds 如下
# PlayerDataSQL 迁移程序 执行迁移命令后还需一直开着这个选项 增加这个开关是因为并不是所有人都有pds
migrator-pds: true
先不要动PlayerDataSQL
关闭所有正在运行的子服 选择其中一个子服 安装好InvSync 
执行/invsync migrator playerdatasql all
等待迁移完成 关服删除PlayerDataSQL即可

从KnapsackToGo4迁移

先不要动KnapsackToGo4 插件和配置都别动
关闭所有正在运行的子服 选择其中一个子服 安装好InvSync 
InvSync需要确保数据库 redis 链接正常
运行命令 /invsync migrator ktg4 all
等待迁移完成 关服删除KnapsackToGo4即可

从MysqlPlayerDataBridge迁移

先不要动MysqlPlayerDataBridge 插件和配置都别动
关闭所有正在运行的子服 选择其中一个子服 安装好InvSync 
InvSync需要确保数据库 redis 链接正常
运行命令 /invsync migrator mysqlplayerdatabridge all
等待迁移完成 关服删除MysqlPlayerDataBridge即可

从HuskSync迁移

先不要动HuskSync 插件和配置都别动
关闭所有正在运行的子服 选择其中一个子服 安装好InvSync 
InvSync需要确保数据库 redis 链接正常
运行命令 /invsync migrator husksync all
等待迁移完成 关服删除HuskSync即可

当您发现您无论怎么尝试都无法连接MySQL应该怎么办

在 MySQL5.7+ 的版本之中 某些安装方式会在数据库启动的时候添加 -SSL 这个启动项
如果您已经证实自己的 MySQL 账户 密码 端口 数据库都没有的问题的时候 
请在服务器关闭的情况下修改 InvSync 的配置文件
把 ssl: 中的 false 改为 true 保存后重新启动服务器 

PAPI变量

  • %invsync_servername% 获取指定服务器在线玩家数量

  • %invsync_totalOnline% 获取当前BC在线玩家数量

配置某些物品不同步

配置文件中有 skip-items,skip-items-lore 配置项 配置后这些物品将在同步时被过滤 适用于这个物品不想让玩家带去别的服务器,这个物品并且无关紧要的情况下

内置文件

配置文件

# 调试模式(开启此选项后台日志会变多)
debug: false
# 是否 hook plan插件
hook-plan: false
redis:
  host: localhost
  port: 6379
  #  password: ""
  #  prefix: "server"
# 玩家冻结系统
# def 使用Bukkit拦截事件(默认)
# pe 使用PacketEvents拦截数据包
# plib 使用ProtocolLib拦截数据包
freeze: 'def'
# 自动保存
auto-save:
  # 是否启用
  enable: false
  # 保存的时间 这里单位是tick   1秒=20tick
  time: 6000
# 是否在世界保存的时候保存玩家数据
world-save-player-data: true
mysql:
  host: 'localhost'
  port: 3306
  database: 'database'
  user: 'user'
  passwd: 'passwd'
  ssl: false
mobs:
  # 是否同步宝可梦数据
  pixelmon: false
  # 是否同步时装工坊数据
  armourersWorkshop: false
  # 是否同步 ftbQuests
  ftbQuests: false
sync:
  # 是否同步统计数据
  statistics: true
  # 是否同步经验等级
  exp: true
  # 是否同步末影箱
  ender: true
  # 是否同步血量
  health: true
  # 是否同步饥饿值
  food: true
  # 是否同步背包
  inventory: true
  # 是否同步成就数据
  advancement: true
  # 是否同步药水效果
  buff: true
  # 是否同步游戏模式
  gameMode: false
  # 是否同步最大血量
  maxHealth: false
  # 是否同步PersistentDataContainer数据
  persistentDataContainer: false
  # 是否同步OP
  op: false
  # 是否同步CMI飞行能量
  cmiFlyCharge: true
  # 如果数据库没有飞行能量数据是否从这个服务器读取
  initFlyCharge: true
  # 是否同步vault经济
  vault: false
  # 如果数据库没有vault数据是否从这个服务器读取
  initVault: true
  # 是否同步服务器中的位置
  location: false
# 同步时跳过的物品名称 名称会忽略颜色符号完全匹配
skip-items:
  - '不同步物品名1'
  - '不同步物品名2'
# 同步时跳过的物品lore 有这个lore就会跳过 会检测颜色符号
skip-items-lore:
  - '不同步的lore'
# PlayerDataSQL 迁移程序 执行迁移命令后还需一直开着这个选项 增加这个开关是因为并不是所有人都有pds
migrator-pds: false

语言文件

inventory:
  lock: '&7[&e&l!&7] &c你的背包已被锁定'
  error: '&7[&e&l!&7] &c数据同步出错,请联系管理处理'
  timeout-new: '&7[&e&l!&7] §c加载数据超时,请等待15秒后进入服务器'
  not-exist: '&7[&e&l!&7] §c玩家数据不存在'
  # 填空不会触发
  load-start: '&7[&e&l!&7] &c正在加载数据'
  load-done: '&7[&e&l!&7] &c同步已完成 主线程耗时 {0} 异步耗时 {1}'
  edit:
    success: '&7[&e&l!&7] &a编辑已生效'
    title:
      inventory: '&7编辑玩家 &a{0} &7背包数据'
      ender: '&7编辑玩家 &a{0} &7末影箱数据'
command:
  save: '&7[&e&l!&7] &7玩家 &a{0} &7的数据已保存'
  freeze: '&7[&e&l!&7] &7玩家 &a{0} &7被冻结的状态为{1}'
  unlockAll: '&7[&e&l!&7] &a成功解锁所有玩家数据'
  lock: '&7[&e&l!&7] §a锁定状态: {0}'
  edit-online: '&7[&e&l!&7] §c玩家在线,请使用CMI编辑或其他插件'
  restoresMaxHealth:
    start: '&7[&e&l!&7] §a开始恢复所有玩家最大血量,此过程可能有点漫长,请不要关服'
    end: '&7[&e&l!&7] §a成功恢复玩家最大血量'

购买

价格 128RMB 购买联系QQ 3104026189 无任何验证系统, 有售后网站随时下载最新版插件

#minecraft(3)

文章作者:Administrator

文章链接:https://halo.xbaimiao.com/archives/invsyncwen-dang

版权声明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议,转载请注明出处!


评论