ClanZZ

ClanZZ

ZZClan是ZZ生态系统中面向Hytale的氏族系统。它结合了JSON持久化、可视化氏族面板、内部军衔权限、氏族领土与战争系统,以及被其他ZZ模块使用的社交提供者。

游戏玩法

ZZClan 的功能

  • 处理公会创建、邀请、成员管理、入会公告(MOTD)、描述以及主要公会面板。
  • 使用存储在 permissions.json 中可编辑的内部公会等级。
  • 在生态系统的领土层之上支持公会领地、访客规则和基于等级的访问权限。
  • 支持公会战争流程,包括宣战、准备阶段、活跃窗口期以及对边境领地的征服。
  • 注册组织和前缀提供者,供其他模块使用。

命令与工作流程

  • /clan 是根命令界面。
  • 当前公会的流程包括创建、邀请、加入、离开、踢出、晋升、降级、占领、放弃占领、聊天、语音、信息、成员、入会公告(MOTD)和等级权限。
  • 主要玩家体验以公会面板的 UI 为先。
  • 领地和战争行为取决于公会内部权限,而不仅仅是 clan.use

运行时文件与数据

  • config.json 存储费用、限制、冷却时间、社交设置和战争规则。
  • messages.json 存储可编辑的消息目录。
  • permissions.json 存储基础公会等级和内部权限模型。
  • ui.json 存储仪表盘和面板的行为设置。
  • 该模块的运行时数据存储在 ZonaZeroMc/ZZClan 下。
  • clans/ 为每个公会存储一个文件。
  • players/ 存储玩家索引和状态。
  • audit/clans/ 存储扩展的公会历史记录。
  • wars.json 存储战争、占领和征服状态。

可见配置示例

这是模块生成设置时你将会看到的主要 config.json 文件类型:

{
  "version": 1,
  "prefix": "&6[&eZZClan&6] &r",
  "allowConsoleCommands": true,
  "auditEnabled": true,
  "auditMaxEntries": 250,
  "auditInlineEntries": 20,
  "inviteOnlyOnlinePlayers": true,
  "creationCost": 0.0,
  "memberUpgradeCost": 5000.0,
  "memberUpgradeSlots": 5,
  "maxExtraMemberSlots": 30,
  "claimUpgradeCost": 2500.0,
  "claimUpgradeGroups": 1,
  "maxExtraClaimGroups": 12,
  "creationCooldownSeconds": 3600,
  "inviteCooldownSeconds": 15,
  "inviteExpiresSeconds": 86400,
  "maxMembers": 20,
  "maxPendingInvitesPerClan": 20,
  "maxPendingInvitesPerPlayer": 3,
  "maxCustomRanks": 8,
  "rankNameMaxLength": 24,
  "nameMinLength": 3,
  "nameMaxLength": 16,
  "tagMinLength": 2,
  "tagMaxLength": 5,
  "descriptionMaxLength": 120,
  "messageMaxLength": 80,
  "maxActionsPerWindow": 8,
  "rateLimitWindowSeconds": 15,
  "removeExpiredInvitesOnLoad": true,
  "grantSingleplayerOwnerAdmin": true,
  "enableClanBalance": true,
  "enableClanProgression": false,
  "useClanTreasuryForMemberUpgrades": true,
  "useClanTreasuryForClaimUpgrades": true,
  "notifyMembersOnJoinLeave": true,
  "defaultClanPvpEnabled": false,
  "enableChatPrefixes": true,
  "enableNameplatePrefixes": true,
  "enableVoicePreparation": true,
  "enableClanWars": true,
  "warWarmupMinutes": 15,
  "warDurationMinutes": 180,
  "warCaptureShieldMinutes": 20,
  "warMinOnlineDefenders": 0,
  "warMaxCapturesPerWar": 8,
  "warDeclarationCost": 0.0,
  "allowedNamePattern": "^[A-Za-z0-9_-]+$",
  "allowedTagPattern": "^[A-Z0-9]+$",
  "defaultDescription": "Clan recien fundado.",
  "defaultMotd": "Bienvenidos al clan.",
  "blacklistedNames": ["admin", "staff", "owner", "mod"],
  "blacklistedTags": ["gm", "adm", "mod"],
  "offensiveWordBlacklist": [],
  "usePermissionNodes": ["clan.use", "clan.admin"],
  "adminPermissionNodes": ["clan.admin"],
  "adminPlayers": [],
  "adminRanks": [],
  "rankPermissionTemplates": ["rank.{rank}", "group.{rank}"]
}

permissions.jsonui.json 是独立的可编辑文件,下文也会进行说明。

配置参考

config.json 中的主要公会设置

  • version (数字):内部配置架构版本。
  • prefix (文本):模块使用的聊天前缀。
  • allowConsoleCommands (是/否):启用时允许控制台流程。
  • auditEnabled (是/否):启用或禁用审计存储。
  • auditMaxEntries (数字):每个公会历史记录中存储的最大审计条目数。
  • auditInlineEntries (数字):在内联预览中使用的审计条目数。
  • inviteOnlyOnlinePlayers (是/否):启用时,邀请仅限在线玩家。

费用、升级与限制

  • creationCost (数字):创建公会的费用。
  • memberUpgradeCost (数字):每次成员上限升级的费用。
  • memberUpgradeSlots (数字):每次升级授予的额外成员槽位。
  • maxExtraMemberSlots (数字):可获得的最大额外成员槽位。
  • claimUpgradeCost (数字):每次领地上限升级组的费用。
  • claimUpgradeGroups (数字):每次升级授予的额外领地组。
  • maxExtraClaimGroups (数字):可获得的最大额外领地组。
  • creationCooldownSeconds (数字):创建另一个公会的冷却时间。
  • inviteCooldownSeconds (数字):邀请操作之间的冷却时间。
  • inviteExpiresSeconds (数字):邀请过期时间。
  • maxMembers (数字):每个公会的基础最大成员数。
  • maxPendingInvitesPerClan (数字):单个公会存储的最大待处理邀请数。
  • maxPendingInvitesPerPlayer (数字):单个玩家可持有的最大待处理邀请数。
  • maxCustomRanks (数字):允许的最大自定义等级数。
  • rankNameMaxLength (数字):等级名称的最大长度。

验证与速率限制

  • nameMinLengthnameMaxLength (数字):允许的公会名称长度范围。
  • tagMinLengthtagMaxLength (数字):允许的公会标签长度范围。
  • descriptionMaxLength (数字):公会描述的最大长度。
  • messageMaxLength (数字):入会公告(MOTD)的最大长度。
  • maxActionsPerWindow (数字):当前速率限制窗口内的操作限制。
  • rateLimitWindowSeconds (数字):速率限制窗口大小。
  • removeExpiredInvitesOnLoad (是/否):启用时,加载时移除过期的邀请。
  • grantSingleplayerOwnerAdmin (是/否):启用时,在单人游戏风格设置中授予所有者管理员便利。

社交与经济开关

  • enableClanBalance (是/否):启用公会余额支持。
  • enableClanProgression (是/否):启用进度支持。
  • useClanTreasuryForMemberUpgrades (是/否):启用时,使用公会金库支付成员升级费用。
  • useClanTreasuryForClaimUpgrades (是/否):启用时,使用公会金库支付领地升级费用。
  • notifyMembersOnJoinLeave (是/否):当玩家加入或离开时通知成员。
  • defaultClanPvpEnabled (是/否):默认公会 PvP 状态。
  • enableChatPrefixes (是/否):在聊天中启用公会前缀。
  • enableNameplatePrefixes (是/否):在名牌上启用公会前缀。
  • enableVoicePreparation (是/否):启用语音准备支持。

公会战争设置

  • enableClanWars (是/否):启用或禁用公会战争。
  • warWarmupMinutes (数字):战争开始前的准备阶段。
  • warDurationMinutes (数字):战争持续时间。
  • warCaptureShieldMinutes (数字):占领发生前的保护时间。
  • warMinOnlineDefenders (数字):所需的最低在线防守者数量。
  • warMaxCapturesPerWar (数字):每场战争计入的最大占领次数。
  • warDeclarationCost (数字):宣战费用。

文本规则、黑名单和管理员列表

  • allowedNamePattern (文本):用于验证公会名称的正则表达式。
  • allowedTagPattern (文本):用于验证公会标签的正则表达式。
  • defaultDescription (文本):默认公会描述。
  • defaultMotd (文本):默认公会入会公告(MOTD)。
  • blacklistedNames (列表):被封禁的公会名称。
  • blacklistedTags (列表):被封禁的公会标签。
  • offensiveWordBlacklist (列表):被封禁的攻击性词汇。
  • usePermissionNodes (列表):授予普通公会访问权限的外部节点。
  • adminPermissionNodes (列表):授予公会管理员访问权限的外部节点。
  • adminPlayers (列表):始终被视为管理员的玩家名称。
  • adminRanks (列表):始终被视为管理员的等级名称。
  • rankPermissionTemplates (列表):用于解析基于等级的外部权限的模板。

permissions.json

  • version (数字):等级配置的内部架构版本。
  • cloneDefaultRanksIntoClan (是/否):启用时,将默认等级模板克隆到新公会中。
  • defaultRanks (条目列表):模块使用的有序等级模板。

ui.json

  • version (数字):UI 配置架构版本。
  • dashboardTitle (文本):主仪表盘标题。
  • dashboardSubtitle (文本):主仪表盘子标题。
  • memberListLimit (数字):玩家 UI 中显示的成员行数。
  • inviteListLimit (数字):玩家 UI 中显示的邀请行数。
  • auditPreviewLimit (数字):玩家 UI 中的审计预览大小。
  • adminClanListLimit (数字):管理员 UI 中显示的公会行数。
  • adminMemberListLimit (数字):管理员 UI 中显示的成员行数。
  • adminAuditPreviewLimit (数字):管理员 UI 中的审计预览大小。
  • auditPageLimit (数字):完整审计页面大小。
  • showAuditPreview (是/否):启用内联审计预览。
  • dateFormatPattern (文本):UI 渲染中使用的日期格式。

权限

外部节点:

  • clan.use
  • clan.admin

permissions.json 中定义的内部等级权限包括:

  • open_panel
  • invite_members
  • kick_members
  • accept_invites
  • edit_description
  • edit_message
  • promote_members
  • demote_members
  • transfer_leadership
  • manage_alliances
  • manage_claims
  • claim_build
  • claim_interact
  • bank_deposit
  • bank_withdraw
  • manage_bank
  • manage_ranks
  • manage_voice
  • edit_settings
  • disband_clan
  • view_audit

安装

  1. 首先,将 ZZCore.jar 复制到服务器的 mods 文件夹中。
  2. 之后,将 ZZClan.jar 复制到同一个服务器的 mods 文件夹中。
  3. 如果你需要公会领地、征服和战争领土支持,请同时安装 ZZFrontier.jar
  4. 启动 Hytale。
  5. 配置费用、等级、社交设置和战争规则。

许可证

保留所有权利。

未经作者书面许可,不允许再分发、转载、销售修改版或重新上传分支版本。

链接