概述
MCobblemonRaidMixin 是一款面向 Cobblemon 的模组,基于 Necro's Raid Dens 深度增强巢穴玩法。提供精细化的奖励宝可梦 IV 生成控制、物种黑名单过滤以及灵活的权重随机命令奖励系统——全部按巢穴星级独立配置。支持服务端和客户端,可独立在任意一侧使用。
平台支持
依赖要求
安装步骤
服务端
从 Releases 下载对应平台的 JAR 文件
放入服务器
mods/目录确保上述所有依赖也存在于
mods/中启动服务器——默认配置将自动生成于
config/mcobblemonraidmixin.yml
客户端(单人游戏)
从 Releases 下载对应平台的 JAR 文件
放入客户端
mods/目录确保上述所有依赖也存在于
mods/中启动游戏——默认配置将自动生成于
config/mcobblemonraidmixin.yml
注意: 模组在两侧均可独立运行。你可以仅安装在服务端、仅安装在客户端,或两侧同时安装。
核心功能
IV 生成引擎
提供四种 IV 生成模式,每种模式均支持按 1-7 星独立参数配置:
按物种覆盖系统
为特定宝可梦单独指定 IV 生成规则,优先级高于全局模式。每种覆盖独立支持全部四种 IV 模式:
overrideSet:
mewtwo: [10, 3, 31] # [最小, 保底V, 最大]
overrideRandom:
ditto: 120 # 最大总 IV 和
overrideExact:
ditto: [31, 31, 31, 31, 31, 31]
overrideMinMax:
pikachu: [15, 31] # [最小, 最大] 每项生成黑名单
阻止特定宝可梦在巢穴中生成。支持 cobblemon:name 和简写 name 两种格式:
spawnBlacklist:
- "mewtwo"
- "rayquaza"
- "cobblemon:arceus"权重随机奖励命令
玩家完成巢穴后执行自定义命令,支持权重随机选择。每个星级(1-7)可独立配置奖励池:
rewardCommandsPerTier:
Tier1:
- command: "give {player} cobblemon:rare_candy 1"
weight: 50
- command: "give {player} cobblemon:super_rod 1"
weight: 30
- command: "give {player} cobblemon:luxury_ball 3"
weight: 20参与者追踪
自动记录所有加入巢穴的玩家。巢穴首领被击败后,奖励将分发给所有参与者——而非仅限最后一击的玩家。
配置参考
默认路径:
config/mcobblemonraidmixin.yml
language: "zh"
raidIVMode: "SET"
# ── SET 模式 ──────────────────────────────────
guaranteedVPerTier: [0, 1, 1, 1, 2, 2, 3]
minIVPerTier: [0, 0, 0, 0, 0, 0, 0]
maxIVPerTier: [20, 20, 20, 20, 20, 20, 20]
# ── RANDOM 模式 ───────────────────────────────
maxVPerTier: [80, 90, 100, 110, 120, 130, 140]
# ── MIN_MAX 模式 ──────────────────────────────
minIVRangePerTier: [0, 5, 10, 15, 20, 25, 31]
maxIVRangePerTier: [10, 15, 20, 25, 31, 31, 31]
# ── EXACT 模式 ────────────────────────────────
exactIVsPerTier:
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
- [31, 31, 31, 31, 31, 31]
spawnBlacklist: []
overrideExact: {}
overrideRandom: {}
overrideSet: {}
overrideMinMax: {}
rewardCommandsPerTier: {}所有数组值按索引 0-6 对应 1-7 星巢穴。
多语言
语言文件在首次运行时自动生成于 config/mcobblemonraidmixin/lang_*.yml。修改配置中的 language 字段即可切换。
项目架构
MCobblemonRaidMixin/
├── common/ # 平台无关共享代码
│ └── src/main/java/
│ └── MengSama/Mod/mcobblemonraidmixin/
│ ├── Config.java # YAML 配置加载器
│ ├── Lang.java # 多语言 i18n 引擎
│ ├── RaidParticipantTracker.java
│ └── mixin/
│ ├── RaidBossMixin.java # IV 注入 + 奖励分发
│ └── RaidRegistryMixin.java # 生成黑名单过滤
├── fabric/ # Fabric 加载器入口
│ ├── build.gradle # Fabric Loom
│ └── src/main/
│ ├── java/.../fabric/Mcobblemonraidmixinfabric.java
│ └── resources/
│ ├── fabric.mod.json
│ └── mcobbleraidmixinfabric.mixins.json
├── neoforge/ # NeoForge 加载器入口
│ ├── build.gradle # NeoForge ModDev
│ └── src/main/
│ ├── java/.../neoforge/Mcobblemonraidmixin.java
│ ├── resources/mcobblemonraidmixin.mixins.json
│ └── templates/META-INF/neoforge.mods.toml
├── build.gradle # 根项目
├── settings.gradle # 多模块配置
└── README.md
从源码构建
前置要求: JDK 21+
git clone https://github.com/MengSama0502/MCobblemonRaidMixin.git
cd MCobblemonRaidMixin
# 将依赖 JAR 放入 libs/ 目录:
# - Cobblemon-fabric-1.7.3+1.21.1.jar
# - cobblemonraiddens-fabric-0.11.1+1.21.1.jar
# 构建 Fabric
./gradlew :fabric:build
# 输出 → fabric/build/libs/MCobbleRaidMixinFabric-1.1.0.jar
# 构建 NeoForge
./gradlew :neoforge:build
# 输出 → neoforge/build/libs/MCobbleRaidMixinNeoForge-1.1.0.jar
# 构建全部
./gradlew build常见问题
Q: 此模组可以在客户端使用吗? A: 可以。模组在服务端和客户端均可独立运行。可以在服务端用于多人游戏,在客户端用于单人游戏,或两侧同时使用。
Q: 能在同一服务器上同时使用 Fabric 和 NeoForge 版本吗? A: 不能。请选择与服务器 Mod Loader 匹配的版本。两者功能完全一致。
Q: 不配置奖励命令会怎样? A: 模组仅执行 IV 生成和黑名单过滤。奖励命令是可选的。
Q: 权重随机是如何工作的? A: 每条命令有权重值 weight。选中概率 = weight / totalWeight。权重越高的命令越容易被选中。
Q: 覆盖规则是应用于全局模式之前还是之后? A: 按物种覆盖具有完全优先权。如果某物种存在覆盖规则,则该宝可梦完全跳过全局模式。
开源协议
本项目采用 MIT 许可证
作者
MengSama0502 — 主要开发者 niumadadi520 — 联合开发者