CobblemonGym
方可梦道馆插件
信息
- 性质: 免费
- 支持核心: Arclight[Fabric/NeoForge] Youer[NeoForge]
- 插件前置: Cobblemon[MOD][depend],LCCobbleEvent[MOD][depend]
- 游戏版本: 1.21.1
- 下载方式: 链接
温馨提示
- 由于不是云端注入
- 支持Youer 请不要联系作者询问为什么免费插件支持Youer
- 如果想用NeoForge 我仍推荐使用Arclight的NeoForge版本
插件介绍
CobblemonGym 是一款基于 Cobblemon 模组开发的宝可梦道馆系统插件,提供完整的道馆馆主申请、挑战、审核和管理机制。支持虚拟NPC训练师代替馆主、道馆申请条件验证、馆主奖励系统、挑战冷却、战斗条款等高级特性。
指令列表
| 指令 | 权限要求 | 含义 |
|---|---|---|
| /cg help | 无权限要求 | 查看命令帮助 |
| /cg open | 无权限要求 | 打开道馆主界面 |
| /cg giveitem | 无权限要求 | 馆主领取道馆物品 |
| /cg gymbattle <accept|refuse> | 无权限要求 | 接受或拒绝馆主挑战请求 |
| /cg setgym <道馆名> <玩家ID> | cobblemongym.admin | 设置某玩家为道馆馆主 |
| /cg remove <道馆名> | cobblemongym.admin | 移除某道馆的馆主 |
| /cg removeplayer <玩家ID> | cobblemongym.admin | 移除某玩家的馆主身份 |
| /cg reload | cobblemongym.admin | 重新加载配置文件 |
占位符支持(PlaceholderAPI)
| 变量 | 含义 |
|---|---|
| %cobblemongym_title% | 馆主拥有的道馆称号 |
config 主配置文件说明
作用
配置文件 config.yml ,是主配置文件,它能配置数据库、道馆审核设置、超进化条款等配置。
yaml
# 日志配置
debug: false
# 数据库配置
database:
# 数据库类型: sqlite 或 mysql
type: sqlite
# MySQL数据库配置 (仅当type为mysql时生效)
mysql:
host: localhost
port: 3306
database: CobblemonGym
username: root
password: password
# 连接参数
properties: "?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai"
# 道馆配置
gymConfig:
# 自动审核
# 开启时 只要条件通过就会自动通过申请 成为道馆
# 关闭时 需要管理员审核
# true为开启 false为关闭
automaticReview: false
# 超进化条款禁止携带的超级进化石
superEvolveStone:
- "mega_showdown:mega_stone"
- "mega_showdown:abomasite"
# ... 更多超级进化石gym 道馆配置文件说明
作用
位于 plugins/CobblemonGym/gym/ 目录下的配置文件,每个文件代表一个道馆配置,可创建多个不同的道馆。
yaml
# 道馆
# 能无限创建道馆配置
一般道馆:
# 道馆称号
# 该馆主拥有的称号 papi变量为cobblemongym_title
Title: "一般道馆"
# 填写rules配置文件夹里的配置文件里的申请配置名称
# 如rules配置文件夹example配置文件里的"一般道馆申请要求"
Rules: "一般道馆申请要求"
# 该道馆无道馆主时使用对战道馆训练师代替申请
# 也要像申请一样遵循Rules配置的要求 没有满足无法申请道馆npc对战
# 填入配置好的虚拟道馆npc后玩家申请道馆变成直接挑战道馆虚拟训练师
# 挑战胜利后直接成为该道馆主
# 该配置为空时 则为申请道馆
UseMatch: "一般道馆npc"
# 挑战馆主对战或者馆主离线时与馆主训练师代替对战时的战斗配置
Battle: "一般道馆战斗规则"
# 如果是使用对战道馆训练师代替申请情况下
# 挑战多少次才能成为馆主
MatchCount: 1
# 挑战者挑战馆主
# 挑战多少次才能成为新馆主
ChallengeCount: 1
# 挑战者挑战馆主/馆主离线时馆主训练师
# 挑战冷却 -1 或者0为 无限制 单位秒
MatchCooldown: -1
# 道馆物品
# 馆主使用指令/cg giveitem 给予自己该物品
Items:
name: "&7一般道馆徽章"
type: "cobblemonpokemonbadges:balance_badge"
lore:
- "&7一般道馆馆主: &a{p}"
- "&7身份的象征!!!!"
# 成为馆主执行的命令
# command 玩家执行
# op 玩家以 op 执行
# console 玩家以控制台执行
# broadcast 广播信息
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
InheritReward:
- '[broadcast]&7玩家 &f{p} &7成为了 {gymName} 馆主!!'
# 失去馆主执行的命令
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
LostReward:
- '[broadcast]&7玩家 &f{p} &7失去了 {gymName} 馆主!!'
# 挑战馆主胜利时执行的命令
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{gymPlayName}' 道馆馆主玩家名称
WinReward:
- '[broadcast]&7玩家 &f{p} &7挑战了 {gymName} 馆主 {gymPlayName},挑战成功!!'
# 挑战馆主失败时执行的命令
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{gymPlayName}' 道馆馆主玩家名称
LoseReward:
- '[broadcast]&7玩家 &f{p} &7挑战了 {gymName} 馆主 {gymPlayName},挑战失败!!'
# 馆主击败挑战者时执行的命令
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{gymChallengePlayName}' 道馆挑战者玩家名称
WinChallengeReward:
- '[tell]&f{p} &7击败了 {gymChallengePlayName} 挑战者'
# 馆主被挑战者击败时执行的命令
# 变量:
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{gymChallengePlayName}' 道馆挑战者玩家名称
LoseChallengeReward:
- '[tell]&f{p} &7被 {gymChallengePlayName} 挑战者击败'
#设置在gui中显示的图标
GuiItem:
#物品显示名称
name: "&6☆ &7一般道馆 &6☆"
#显示物品id
type: "cobblemonpokemonbadges:balance_badge"
#物品数量
data: 1
#已有馆主时显示的lore
HaveLore:
- "&a当前馆主: &e{p}"
- ""
- "&a点击进入道馆"
#无馆主时申请的lore
NotLore:
- "&d馆主要求:"
- "&a一般系精灵 × 3"
- "&a精灵数量 × 6"
- "&a6v精灵 × 3"
- "&a满努力值精灵 × 3"
- "&a等级不得低于100级"
- "&f条件: {rules}"
- ""
- "&c点击申请馆主"
# 馆主奖励
Reward:
# 多久可领取一次 秒
cooldown: 86400
# 奖励
rewardCommands:
# 领取奖励执行时的指令
# '{p}' 玩家名称
- '[tell]&7恭喜你 &f{p} &7获得了奖励'rules 道馆申请规则配置文件说明
作用
位于 plugins/CobblemonGym/rules/ 目录下的配置文件,用于配置道馆申请时的宝可梦队伍验证规则。
yaml
# 道馆申请配置
# 能无限创建申请配置
一般道馆申请要求:
# 禁止携带那些宝可梦
banPokemon:
tip: "您队伍拥有禁止携带的宝可梦或者相关属性的宝可梦!不可申请!"
# 禁止的宝可梦以及宝可梦的相关属性
list:
# 能无限创建禁止宝可梦的配置
# 该配置跟原版指令类似
# 能写原版指令的所有标签包括模组增加的标签
# 如何了解自定义宝可梦的标签
# 可以使用模组原版/pokemonspawn或者/givepokemon
# 然后tab 就可以查看所有宝可梦标签
# 这些标签都可以填写在下面配置中
# 自由度超乎你的想象
# 禁用皮卡丘 等级100 闪光
- "pikachu level=100 s"
# 禁用超梦 所有属性 形态 携带物等
- "mewtwo"
# 禁用所有100级的宝可梦
- "level=100"
# 禁用所有携带物为dragon_fang且闪光宝可梦
- "s helditem=cobblemon:dragon_fang"
# 禁止技能所有为恶意计划、多变光束、大地之力的宝可梦
- "moves=nastyplot,ficklebeam,earthpowe"
# 禁止恶意计划技能
- "moves=nastyplot"
# 禁止多变光束技能
- "moves=ficklebeam"
# 禁止能量吸收技能
- "moves=gigafrain"
# 禁止大地之力技能
- "moves=earthpowe"
# 固定需要哪些宝可梦
fixedPokemon:
tip: "您队伍没有所需要的固定宝可梦!"
list:
# 自由度以上所示
- "pikachu level=100 s"
- "mewtwo"
# 精灵属性要求
attributePokemon:
tip: "您队伍不满足精灵属性要求!"
# amount:填写要求需达到的精灵数量
# type:填写要求的类型:
# ivs(个体)、evs(努力值)、level(等级)、type(属性)
# value:填写要求的值
# ivs:填写要求精灵个体总和至少 >= ?
# evs:填写要求精灵努力值总和至少 >= ?
# level:填写要求精灵等级至少 >= ?
# type:填写属性本地化名称
# 一般、火、水、电、草、冰
# 格斗、毒、地面、飞行、超能力
# 虫、岩石、幽灵、龙、恶、钢、妖精
# 能无限创建配置
精灵个体总和186×3:
amount: 3
type: "ivs"
value:
- "186"
精灵努力值总和510×3:
amount: 3
type: "evs"
value:
- "510"
精灵等级100×6:
amount: 6
type: "level"
value:
- "100"
一般属性精灵×3:
amount: 3
type: "type"
value:
- "一般"battlerules 战斗规则配置文件说明
作用
位于 plugins/CobblemonGym/battlerules/ 目录下的配置文件,用于配置馆主挑战对战或馆主离线时虚拟训练师对战的战斗规则。
yaml
# 馆主/馆主离线虚拟训练时对战规则
# 能无限创建申请配置
一般道馆战斗规则:
battle:
# 回合数量限制 达到回合数强制结束
# -1则不受限制
roundLimit: -1
# 回合内多久内没有动作视为挂机, 如果超过这个时间则强制结束战斗
# -1则不受限制
timeOut: -1
# n只神规则: 只能携带n只传奇宝可梦 -1表示不限制
Legend: -1
# n只究极异兽规则: 只能携带n只究极异兽宝可梦 -1表示不限制
Monster: -1
# n只幻兽规则: 只能携带n只幻兽宝可梦 -1表示不限制
Phantom: -1
# 条款
clause:
# 是否开启条款
enable: true
# 条款
# 一站到底规则:禁止逃跑
forfeitClause: false
# 包包条款:玩家不可以在战斗时使用背包中的道具。
bagClause: false
# 队伍顺序条款: 玩家不可以在战斗时切换宝可梦。
teamOrderClause: false
# 种类条款: 队伍中不可存在重复的宝可梦
speciesClause: false
# 超级进化条款: 禁止携带超级进化石 可以在config里自由删减添加
superEvolutionClause: false
# 条件
# 评估条件表达式 支持的比较运算符: ==, !=, >, <, >=, <=
# 支持 placeholderapi papi变量
# {teamNumber} - 玩家队伍数量
condition:
- '{teamNumber} >= 1'virtualnpc 虚拟训练家配置文件说明
作用
位于 plugins/CobblemonGym/virtualnpc/ 目录下的配置文件,用于配置虚拟NPC训练家的队伍和属性,当道馆无馆主时代替馆主进行对战。
yaml
# 虚拟训练家配置
一般道馆npc:
# 虚拟训练家名称
name: "一般道馆虚拟人机"
# 虚拟训练家等级
aiLevel: 5
# 虚拟训练家宝可梦队伍
team:
- "mewtwo level=100 s ability=zerotohero mega_evolution=mega_x helditem=cobblemon:dragon_fang"
- "pikachu level=100 s"
- "pikachu level=100 s moves=discharge,thunder,lightscreen,thunderbolt ability=regenerator"
# 战胜虚拟训练师 胜利时执行的指令
# command 玩家执行
# op 玩家以 op 执行
# console 玩家以控制台执行
# broadcast 广播信息
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{virtualName}' 虚拟训练家名称
# '{currentWins}' 当前胜利次数
# '{requiredWins}' 所需胜利次数
winCommands:
- '[tell]&7恭喜你 &f{p} &7战胜了{virtualName}道馆训练师!进度: {currentWins}/{requiredWins}'
# 输与虚拟训练师 失败时执行的指令
# '{p}' 玩家名称
# '{gymName}' 道馆名称
# '{virtualName}' 虚拟训练家名称
# '{currentWins}' 当前胜利次数
# '{requiredWins}' 所需胜利次数
loseCommands:
- '[tell]&7失败了 希望你&f{p} &7再接再厉! 当前进度: {currentWins}/{requiredWins}'language 语言配置文件说明
作用
配置文件 language.yml ,插件的语言文件,可自定义所有提示词。
yaml
# 语言配置文件
# 馆主挑战请求消息
challenge:
# 发送给馆主的挑战消息
# 变量: {challenger} 挑战者名称, {gymName} 道馆名称, {accept} 接受按钮, {refuse} 拒绝按钮
request-message: "&7玩家 &f{challenger} &7向你发起了 {gymName} &7馆主挑战 {accept} {refuse}"
# 接受按钮文本
accept-button: "&a[接受]"
# 接受按钮悬浮提示
accept-hover: "&a点击接受挑战"
# 拒绝按钮文本
refuse-button: "&c[拒绝]"
# 拒绝按钮悬浮提示
refuse-hover: "&c点击拒绝挑战"
# 挑战冷却消息
# 变量: {time} 剩余冷却时间
cooldown: "&c挑战冷却中,剩余时间: &e{time}"
# 战斗配置消息
battle:
# 回合超时消息
timeOut: "&c回合内超时未行动,强制结束战斗"
# 回合限制消息
roundLimit: "&c已超过设定的回合数{roundLimit},强制结束"
# 传奇宝可梦数量限制消息
legendLimit: "&c你的队伍中有 &e{count} &c只传奇宝可梦,超过了限制 &e{limit} &c只!第一只检测到: &e{pokemon}"
# 究极异兽宝可梦数量限制消息
ultraBeastLimit: "&c你的队伍中有 &e{count} &c只究极异兽,超过了限制 &e{limit} &c只!第一只检测到: &e{pokemon}"
# 幻兽宝可梦数量限制消息
mythicalLimit: "&c你的队伍中有 &e{count} &c只幻兽宝可梦,超过了限制 &e{limit} &c只!第一只检测到: &e{pokemon}"
# 条件检查失败消息
conditionFailed: "&c不满足战斗条件!未满足的条件: &e{condition}"
# 条款消息
clause:
# 一站到底规则(禁止逃跑)
forfeit: "&c一站到底规则:禁止逃跑!"
# 包包条款(禁止使用背包道具)
bag: "&c包包条款:禁止使用背包中的道具!"
# 队伍顺序条款(禁止切换宝可梦)
teamOrder: "&c队伍顺序条款:禁止切换宝可梦!"
# 种类条款(禁止队伍中重复宝可梦)
species: "&c种类条款:队伍中不可存在重复的宝可梦!检测到重复: &e{pokemon}"
# 超级进化条款(禁止携带超级进化石)
superEvolution: "&c超级进化条款:禁止携带超级进化石!检测到: &e{pokemon} &c携带 &e{stone}"
# 馆主奖励消息
reward:
# 奖励冷却中消息
cooldown: "&c奖励领取冷却中!\n&7剩余时间: &e{time}"
# 成功领取奖励消息
success: "&a成功领取馆主奖励!"
# 未配置奖励消息
notConfigured: "&c该道馆没有配置馆主奖励!"gui 道馆主界面配置文件说明
作用
配置文件 gymmaingui.yml ,用于配置道馆主界面的按钮显示。
yaml
# 精灵道馆主界面配置
# 槽位19 - 查看精灵馆主按钮
gymListButton:
name: "&b查看精灵馆主"
lore:
- "&7查看所有道馆信息"
- "&7以及当前的馆主"
- ""
- "&e点击打开"
# 槽位22 - 审核信息按钮
applicationButton:
name: "&c审核信息"
# 有权限时的lore
lore:
- "&7查看玩家的馆主申请"
- "&7并进行审核处理"
- ""
- "&e待审核: &f{pending}"
- ""
- "&e点击打开"
# 无权限时的lore
noPermissionLore:
- "&7查看玩家的馆主申请"
- "&7并进行审核处理"
- ""
- "&c你没有权限查看!"
# 槽位25 - 管理道馆按钮
manageButton:
name: "&d管理道馆"
lore:
- "&7查看你管理的道馆"
- "&7以及道馆信息"
- ""
- "&e点击打开"游戏截图



