[管理] OneSync 跨服同步 —— 支持成就、背包、经济、PDC、药水 - 服务端插件 - Minecraft(我的世界)中文论坛 -.html

[管理] OneSync 跨服同步 —— 支持成就、背包、经济、PDC、药水 - 服务端插件 - Minecraft(我的世界)中文论坛 -

Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 269|回复: 10
打印 上一主题 下一主题

[原创插件] [管理] OneSync 跨服同步 —— 支持成就、背包、经济、PDC、药水

[复制链接]
hello09x 当前离线
积分
380
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-6-1
查看详细资料

来自:广东

跳转到指定楼层
楼主
服务端插件
英文名称:OneSync
中文名称:
插件来源:原创
适用服务端:Paper 
插件类型:管理 
语言支持:简体中文 
适用版本:1.20.X 
前置Mod|插件:CommandAPI, ProtocolLIB
下载地址:https://www.mcbbs.net
原帖地址:-
插件Logo:-
插件简介:只需要 MySQL 的跨服同步

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 hello09x 于 2023-12-26 19:51 编辑

OneSync

—— 跨服同步一切你想要的内容






注意:依赖于 1.20.2 的数据包特性,仅支持 1.20.2 以上 Paper 及其下游

支持 Folia



描述
OneSync 是一款仅依赖 MySQL 的跨服同步插件,不需要 Redis,也不需要在 BungeeCord 安装插件。

功能:
一)支持以下数据的同步:
  • 背包
  • 末影箱
  • 玩家档案:饥饿值、经验值、是否 OP、游戏模式、氧气值
  • PDC (Persistent Data Container)
  • 成就数据
  • 药水效果
  • 经济 (Vault)
  • 提供标准 API 让第三方插件接入本插件实现跨服同步数据,详细查看后面

二)数据快照(备份)
歧义解释:OneSync 的数据快照不仅仅是备份,也是玩家当前的数据。最后一份快照将会在玩家登陆时用来恢复数据。
  • 提供用户友好的 GUI 操作界面
  • 可配置「必须多少天内至少保留一份快照备份」
  • 可配置快照备份的触发节点,如:玩家死亡、服务器存档、玩家游戏模式切换。
  • 背包和末影响快照可直接查看与取出物品
  • 支持快照整体恢复或指定某项恢复
  • 箱子菜单的点击任何空白地方返回上一页


优点:
  • Less is more:不需要 Redis,仅仅需要 MySQL;不需要在 BungeeCord 端安装任何插件。
  • 延迟低:安全的异步加载数据,玩家退出重登只占用主线程 1~5ms, 切换服务器占用 5 ~ 30ms
  • 由工作 3 年,30年 JAVA 开发经验程序员(加班加出来的)开发




[玩家的所有快照]





[玩家快照的细则]


[效率]


前置插件:


命令
  • /onesync reload:重新加载配置文件
  • /onesync unlock <玩家>:异常关闭服务器时解锁玩家
  • /onesync unlock-all: 异常关闭服务器时解锁所有玩家
  • /onesync snapshot <玩家>:查看玩家快照备份
  • /onesync save <多名玩家>:主动保存玩家数据




使用须知:
  • 插件不会自动在 MySQL 上建立对应的数据库,请手动建立,默认数据库名为 onesync
  • 插件不会处理多个服已有数据的合并,启用插件后,玩家第一次进入的服务器的存档将会成为他的跨服存档
  • 插件不会清理原版存档,如果你不再需要此插件,请自行清理玩家存档文件
  • 为了你的数据安全,服务器启动时插件加载失败,将会停止服务器

安装方法:
  • 确保你电脑安装了 MySQL
  • 将此插件安装到你需要跨服同步的多个服务器上
  • 初次安装时没有配置文件,你可以启动一次服务器自动生成或者手动创建。启动时可能会因为数据库地址或者账号密码错误而启动失败。
  • 编辑配置文件,将 datasource.url 配置为你的数据库地址,确保账号密码正确
  • 启动服务器






如果你觉得我的插件好用,不妨请我喝杯奶茶,以支持我出更多的免费插件:









配置文件
  1. version: 2

  2. datasource:
  3.   driver-class: com.mysql.cj.jdbc.Driver
  4.   url: jdbc:mysql://127.0.0.1:3306/onesync
  5.   username: root
  6.   password: 123456
  7.   size: 2

  8. # 是否打印调试日志
  9. debug: true

  10. # 服务器 ID
  11. # 如果配置了这项, 那么在服务器重启的时候能自动解锁因为异常关闭而锁住的玩家
  12. # 注意 1: 要么别配置, 如果配置就一定不能重复!!!
  13. # 注意 2: 因为服务器异常关闭的锁定, 可能导致玩家的数据不是最新的!!!
  14. server-id: ''

  15. synchronize:

  16.   # 玩家背包
  17.   inventory: true

  18.   # 末影箱
  19.   ender-chest: true

  20.   # 玩家持久化数据 PersistentDataContainer(PDC)
  21.   pdc: false

  22.   # 玩家成就数据
  23.   advancements: false

  24.   # 效果, 如药水效果、Buff
  25.   potion-effects: false

  26.   # 经济, 对 Vault 插件的支持
  27.   vault: false

  28.   # 玩家档案
  29.   profile:

  30.     # 游戏模式
  31.     game-mode: false

  32.     # 是否 OP
  33.     op: false

  34.     # 生命值, 最大生命值
  35.     health: false

  36.     # 经验
  37.     exp: false

  38.     # 饥饿值, 饱食度, 饥饿度
  39.     food: false

  40.     # 氧气值
  41.     air: false

  42. snapshot:

  43.   # 每位玩家最大快照数量
  44.   capacity: 45

  45.   # 多少天内必须至少保存一份最后的快照
  46.   keep-days: 7

  47.   # 何时保存玩家快照
  48.   # 除了这里可以指定的节点以外, 玩家退出游戏, 服务器关闭也会保存快照
  49.   # 可选值:
  50.     # WORLD_SAVE              : (全体) 保存地图时触发, 约 5 分钟一次, 经测试 50 名玩家约 400 ms
  51.     # PLAYER_DEATH            : (个人) 玩家死亡时触发, 适合死亡掉落的服务器
  52.     # PLAYER_GAME_MODE_CHANGE : (个人) 玩家游戏模式切换
  53.   when:
  54.     - WORLD_SAVE
  55.     - PLAYER_GAME_MODE_CHANGE
复制代码



OneSync-0.0.3.jar (288.94 KB, 下载次数: 12)


开发者接入此插件
  • 继承 SnapshotComponent,记录你同步的数据
  • 继承 SnapshotHandler,实现快照的读写方法。如果你的插件不会修改快照的内容,可直接继承 CacheableSnapshotHandler,使用缓存来减少读取时间。
  • 在你的插件 onEnable 方法里,使用 Bukkit.getServicesManager().register() 注册你的 SnapshotHandler


评分

参与人数 3人气 +6金粒 +6收起 理由
2923408390+ 2+ 6MCBBS有你更精彩~
coby_Cola+ 2MCBBS有你更精彩~
Re-Kotori+ 2支持下

查看全部评分

帖子永久链接: 

Minecraft中文论坛 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖若有内容转载自其它媒体,不代表本站赞同其观点和对其真实性负责
6、若本帖涉及任何版权问题,请立即告知本站,本站将及时予以删除并致以最深的歉意
7、Minecraft(我的世界)中文论坛管理员和版主有权不事先通知发贴者而删除本文

Re-Kotori 当前离线
积分
2869
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2019-7-31
查看详细资料

来自:浙江

沙发
发表于 6 天前 | 只看该作者
冒昧反编译看了下代码 tql 前排支持
回复

使用道具 举报

hello09x 当前离线
积分
380
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-6-1
查看详细资料

来自:广东

板凳
 楼主| 发表于 5 天前 | 只看该作者
Re-Kotori 发表于 2023-12-25 23:57
冒昧反编译看了下代码 tql 前排支持

参考学习无所谓的,程序员都热爱开源
回复

使用道具 举报

coby_Cola 当前离线
积分
6088
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2015-1-23
查看详细资料

来自:上海

地板
发表于 5 天前 | 只看该作者
能支持folia吗
回复

使用道具 举报

hello09x 当前离线
积分
380
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-6-1
查看详细资料

来自:广东

5#
 楼主| 发表于 5 天前 | 只看该作者

刚发布的 0.0.2 版本已支持
回复

使用道具 举报

月亮星空 当前离线
积分
2394
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2021-9-10
查看详细资料

来自:广东

6#
发表于 5 天前 | 只看该作者
昨天刚买了一个invsync,128同步。今天就看到大佬这个插件,感觉像个小丑
回复

使用道具 举报

hello09x 当前离线
积分
380
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-6-1
查看详细资料

来自:广东

7#
 楼主| 发表于 5 天前 | 只看该作者
月亮星空 发表于 2023-12-26 12:40
昨天刚买了一个invsync,128同步。今天就看到大佬这个插件,感觉像个小丑

我这个刚发布,也许没有那么稳定,现阶段花了钱不一定是件坏事
回复

使用道具 举报

月亮星空 当前离线
积分
2394
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2021-9-10
查看详细资料

来自:广东

8#
发表于 5 天前 | 只看该作者
hello09x 发表于 2023-12-26 14:44
我这个刚发布,也许没有那么稳定,现阶段花了钱不一定是件坏事

哈哈哈,谢谢安慰呜呜呜
回复

使用道具 举报

2923408390 当前离线
积分
2182
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2014-6-28
查看详细资料

来自:山西

9#
发表于 5 天前 来自手机 | 只看该作者
好好好,有了这个可以安心开群组服了
回复

使用道具 举报

hello09x 当前离线
积分
380
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-6-1
查看详细资料

来自:广东

10#
 楼主| 发表于 5 天前 | 只看该作者
2923408390 发表于 2023-12-26 15:41
好好好,有了这个可以安心开群组服了

感谢支持
回复

使用道具 举报

白魂ww 当前离线
积分
1045
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2022-7-4
查看详细资料

来自:山东

11#
发表于 昨天 21:13 | 只看该作者
建议加一个恢复备份前 备份一次当前数据
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2023-12-31 18:54 , Processed in 0.047469 second(s), Total 26, Slave 25 queries, Release: Build.2023.11.27 0934, Gzip On, Redis On.

"Minecraft"以及"我的世界"为美国微软公司的商标 本站与微软公司没有从属关系

© 2010-2023 我的世界中文论坛 版权所有 本站内原创内容版权属于其原创作者,除作者或版规特别声明外未经许可不得转载