[1.13-1.21+|Folia] WarZGuild - 一款支持TacZ无友伤的高级公会插件|全Gui自定义|商店|任务|签到|称号|

原创 付费 [1.13-1.21+|Folia] WarZGuild - 一款支持TacZ无友伤的高级公会插件|全Gui自定义|商店|任务|签到|称号| 1.7.9

请登录后获取
🛠️ 修复与更新内容
1. 修复公会升级连点漏洞

- 问题 :玩家在升级界面未关闭时多次点击,可能导致重复扣费或状态异常。
- 修复 :修改了 GuiManager.java 的点击处理逻辑,现在玩家点击“公会升级”按钮时会自动关闭 GUI 界面,防止连续操作。
2. 修复公会签到机制 (由公会限制改为个人限制)

- 问题 :之前是整个公会每天只能签到一次,导致一个成员签到后其他人无法签到。
- 修复 :
- 在数据库中新增了 player_sign_ins 表,用于记录每个玩家的签到时间。
- 修改了 GuildCommand.java 中的签到逻辑,现在每位公会成员每天都可以独立签到并为公会增加资金。
- 更新了 GuildManager.java 以支持新的数据存取。
3. 修复跨服玩家名显示 "Unknown" 问题

- 问题 :在跨服环境下(或玩家离线时),无法通过 UUID 获取到玩家名,导致公会列表、成员列表和申请列表中显示为 "Unknown"。
- 修复 :
- 优化了数据库结构,在 guilds 、 guild_members 和 guild_requests 表中增加了玩家名称字段进行缓存。
- 新增了 PlayerJoinListener.java ,玩家进服时自动更新数据库中的名称记录。
- 修改了 GuiManager.java ,优先读取数据库缓存的名字,解决了 Unknown 问题。
4. 新增 "退出公会" 按钮

- 更新 :在公会主菜单 (Dashboard) 中添加了退出公会的功能按钮。
- 配置文件 :已更新 dashboard.yml 。
- 注意 :如果您服务器上已经生成了 plugins/WarZGuildClaim/gui/dashboard.yml 文件,插件 不会 自动覆盖它。您需要手动添加以下配置,或者删除该文件让插件重新生成:
```
leave:
enable: true
slot: 40
material: RED_BED
name: "&c退出公会"
lore:
- ""
- "&8▪ &7退出当前公会"
- "&8▪ &7如果是会长,需先转让或
解散"
- ""
- " &8[&c✔&8] &c点击退出"
actions:
- "[COMMAND] guild leave"
- "[CLOSE]"
```
修复签到Bug和重载命令

v1.5.9​

  • 新增:<span>/guild reload</span> 指令,支持重载配置文件(无需重启服务器)
  • 优化:精简代码结构,提升插件运行效率

v1.5.8​

  • 修复:购买并设置公会图标后,图标选择界面中图标消失的问题(数据加载遗漏)

v1.5.7​

  • 修复:公会列表和主界面中「我的公会」图标不显示的问题

v1.5.6​

  • 修复:BanItem 插件兼容性问题,防止公会保护机制绕过 BanItem 的放置限制

v1.5.5​

  • 优化:升级数据库连接池,提升数据读写稳定性
修复内容 :

1. 修复 GUI 调度逻辑 :

- 修改了 GuiManager.java ,在 openGui 方法中添加了对 icon_selector 的判断分支,正确调用 populateIconSelector 方法。
2. 版本更新 :

- 将插件版本升级为 1.5.5 。
修复内容 :

1. 数据库初始化优化 :

- 修改了 DatabaseManager.java ,将 guild_purchased_icons 表的创建移至插件启动时的初始化流程中,确保表一定存在。
- 顺便添加了 last_sign_in_time 字段的自动迁移逻辑,防止类似字段缺失问题。
2. 代码清理 :

- 移除了 GuildManager.java 中脆弱的“捕获异常后建表”逻辑,改用标准的初始化流程。
3. 版本更新 :

- 将插件版本升级为 1.5.4 。
📢 公会系统更新日志

版本号:WarZGuildClaim v1.5.3

✨ 新增功能
1️⃣ 实时数据同步(Real-time Sync)

同步机制
引入 BungeeCord 插件消息通道 warz:guild_update,实现跨服务器实时通信。

同步效果
当任意服务器上的公会数据发生变更(包括创建 / 解散公会、成员变动、职位调整、领地占领等),会立即向所有服务器广播更新通知。

性能与体验提升
各子服务器在接收到通知后会 立即重载公会数据,不再依赖原有的 30 秒轮询,实现真正的“秒级同步”。

稳定性保障
保留原有 30 秒自动刷新机制 作为兜底方案,即使在极端情况下消息丢失,也能确保数据最终一致。

🛠 问题修复
2️⃣ 管理员升降职数据不保存问题

问题说明
/guild promote 与 /guild demote 操作此前仅修改了内存数据,未写入数据库,导致服务器重启后职位变更失效。

修复内容
在 GuildManager 中补全数据库更新逻辑,现在:

升职 / 降职操作会 永久保存至数据库

所有服务器可 即时同步并正确生效

🔧 代码优化与重构
3️⃣ 数据同步逻辑统一重构

为 GuildManager 中 所有涉及公会数据修改的方法 增加同步广播调用,包括但不限于:

公会公告修改

公会图标变更

PVP 状态切换

领地占领与释放

确保 任意细节变动 都能第一时间同步到所有服务器,避免数据不一致问题。

🚀 部署说明

请将 WarZGuildClaim-1.5.3.jar 更新并分发至 所有子服务器

确保 BungeeCord / Velocity 代理端 已开启插件消息转发(默认情况下为开启状态)
### v1.5.3 (最新构建)
- 优化 : 将数据库同步任务的刷新间隔从 5 分钟大幅降低至 30 秒 ,显著提升了跨服数据同步的实时性。
- 修复 : 修复了对离线玩家的管理操作问题。现在管理员可以对不在线的玩家执行以下指令:
- /guild kick <玩家> (踢出公会)
- /guild promote <玩家> (升任管理员)
- /guild demote <玩家> (降级为成员)
### v1.5.2
- 构建 : 同步了 pom.xml 与 plugin.yml 的版本号,确保构建版本的一致性。
- 维护 : 包含了一些底层的代码优化和构建配置调整。
### v1.5.1
- 修复 : 修复了 GUI 中公会升级费用变量 ${upgrade_cost} 无法正确显示数值的问题。
- 优化 : 完善了 GUI 变量替换逻辑,增加了对公会满级状态的显示支持。
### v1.5.0
- 新增 : 在 GUI 中添加了 公会升级 功能模块,方便玩家提升公会等级。
- 新增 : 领地列表支持 点击传送 功能。
- 新增 : 指令 /guild tp <领地ID> ,支持快速传送到指定领地。
- 配置 : config.yml 新增 claim.teleport_enabled 选项(默认关闭),用于控制传送功能的开启。
### v1.4.9
- 修复 : 修复了公会成员列表在成员变动后不实时刷新(缓存同步)的问题。
- 优化 : 优化了 入会申请列表 GUI ,增加了翻页功能,支持处理更多申请。
- 修复 : 修复了部分 WorldGuard 区域保护提示信息错误的问题。
- 修复 : 补全了缺失的 requests.yml 配置文件。
### v1.4.8
- 优化 : 重构并优化了配置文件结构,清理了部分冗余代码。
### v1.4.7
- 新增 : 在公会主菜单添加了 “入会申请” 入口。
- 新增 : 全新的 入会申请审核 GUI ,支持左键同意、右键拒绝申请。
- 修复 : 修复了 StrongholdManager 在据点功能关闭时,服务器关闭可能导致的 NullPointerException 报错。
- 修复 : 修复了公会领地内的 WorldGuard 权限问题(确保成员在己方领地拥有最高权限)。
- 修复 : 修复了公会成员列表头像不显示的问题。
### v1.4.6
- 优化 : 完善了插件启动和关闭时的日志输出格式。
- 修复 : 修复了 StrongholdManager 据点系统的一些逻辑漏洞。
### v1.4.5
- 新增 : 公会据点 (Stronghold) 系统 (实验性功能上线)。
- 优化 : 改进了 GUI 打开逻辑。
插件更新总结 1. WarZGuildClaim (v1.4.4)
- 核心变更 :新增“据点争夺系统 (Stronghold System)”。
- 多据点支持 :允许管理员在公会领地内创建多个资源点(如伐木场、矿场)。
- 资源生产 :据点箱子会根据配置定期产出物品。
- 归属联动 :据点无需单独占领,其归属权自动跟随所在的 WorldGuard 领地。
- 动态保护 :平时领地受严格保护(仅成员可操作),但在 WarZGuildWar 开启的战争期间,保护会自动失效。
- 无感集成 :功能默认关闭( enabled: false ),普通用户更新后不受任何影响。
- 技术调整 :修复了部分依赖关系,优化了模块间的 API 调用。 2. WarZGuildWar (v1.2.0 - Rebuild)
- 核心变更 :主要是 兼容性更新 。
- 依赖升级 :将对 WarZGuildClaim 的依赖版本从 1.4.2 升级至 1.4.4 ,确保能正确调用新的据点保护接口。
- 功能保持 :原有公会战逻辑保持不变,继续作为“战争状态提供者”为 WarZGuildClaim 提供数据支持。
- **领地资源产出**: 增强 `IncomeTask`,支持执行自定义命令奖励。
- 新增配置项 `claim.income_rewards`,可配置物品奖励或其他指令。
- 奖励支持 `{player}` 和 `{guild}` 变量替换。
- 修复了与 WarZGuildWar 的依赖兼容性。
WarZGuild更新摘要 (v1.4.1)
1. 版本更新 :

- 插件版本从 1.4 升级至 1.4.1 。
- 涉及文件: pom.xml 和 plugin.yml 。
2. 修复内容 :

- 修复了玩家资金不足创建公会时提示 null 的问题。
- 修复了公会银行资金不足时可能出现的 null 提示。
- 修复了领地占领成功后可能出现的 null 提示。
- 在 messages.yml 中补全了缺失的语言键:
- error.not_enough_money : &c你的金钱不足以创建公会!
- error.guild_not_enough_money : &c公会银行资金不足!
- guild.claimed : 成功占领区域 &6{region}&7!
后退
顶部 底部