
Petting - Tame any mob!
宠物生物,并使之成为忠实的伙伴,跟随你在冒险途中提供支持与帮助。
查看大图Petting 是一个我的世界模组,允许你驯服游戏中几乎所有生物——无论是敌对还是被动,普通还是Boss。驯服的宠物会听从你的指令、在战斗中保护你、携带你的物品、与你一同骑乘,并在死亡后于指定的床上重生。所有的行为都可以深度配置,使其适用于生存、冒险地图和整合包。
功能概览
- 可驯服几乎所有生物,包括凋灵、末影龙和监守者
- 完整支持陆地、飞行和游泳生物的骑乘
- 每个宠物拥有独立的物品栏,包含盔甲槽、手部槽和 14 个物品存储槽
- 四种AI模式:跟随、坐下、等待、游荡
- 战斗模式:攻击、防御、守卫
- 宠物床方块可实现无限重生——宠物死亡时会传送到它们的床,甚至跨维度有效
- 每个宠物独立的控制映射系统,支持自定义动作和条件
- 被动免疫:已驯服宠物免疫摔落伤害、火焰和熔岩伤害
- 可通过山羊角进行全局口哨,立即召回所有宠物
- 分类系统用于对宠物分组并强制执行每组数量限制
- 通过
petting-common.toml进行完整的服务器和整合包配置
快速开始
安装
- 从 CurseForge 或 Modrinth 下载最新版本。
- 将
.jar文件放入你的mods/文件夹。 - 启动游戏。将在
config/petting-common.toml生成默认配置文件。
驯服
驯服是获得宠物的方式。默认情况下,手持金小麦(petting:golden_wheat)右键点击生物即可尝试驯服。每次尝试都会消耗该物品。成功时会出现爱心粒子;失败时会出现烟雾粒子。驯服物品可通过 tamingItem 完全配置。
驯服成功后,所有三种战斗模式——攻击、防御和守卫——默认启用。宠物也会自动命名为 "[你的名字]的[生物类型]",并隐藏其头顶的名字标签。
在主手或副手持有金小麦时,12 格范围内未驯服的动物会跟随你。
成功因素
| 因素 | 配置键 | 描述 |
|---|---|---|
| 基础概率 | tameChance |
每次尝试默认 33% |
| 血量影响 | healthScalesTamingChance |
血量越低,成功概率越高 |
| 血量阈值 | tameHealthThreshold |
生物必须损失一定百分比的生命值才能被驯服 |
| 击杀要求 | requireKillToTame |
必须先击杀过至少一只该类型的生物 |
| 自定义物品 | customTamingItems |
为特定生物指定驯服物品(格式:实体ID|物品ID) |
| 白名单 | whitelistOnly, tamingWhitelist |
只有列表中的生物可以被驯服 |
| 黑名单 | blacklistEnabled, tamingBlacklist |
列表中的生物不能被驯服(支持 modid:* 通配符) |
| 冷却时间 | interactionCooldown |
同一生物两次驯服尝试之间允许的间隔刻数(默认:20) |
控制与宠物管理
空手(默认映射)
默认情况下,控制系统使用每个宠物独立的映射。新驯服的宠物具有以下默认设置:
| 输入 | 默认动作 |
|---|---|
| 右键点击 | 切换坐下状态 |
| Shift + 右键点击 | 循环切换跟随/传送距离预设(5/10 → 10/20 → 20/50 格) |
这些都可以在宠物设置界面中按每个宠物或全局重新映射(在看着宠物时按 P 键,或在控制选项中绑定
controls.petting.open_settings)。
宠物设置界面(P 键)
在目标宠物上按 P 键打开设置 GUI。在这里你可以:
- 切换AI模式:坐下、等待、攻击、守卫、自卫、忽略口哨
- 设置精确的跟随和传送距离
- 打开控制映射子界面以自定义右键和Shift+右键动作
控制映射系统
每个宠物(以及玩家默认)支持一系列针对右键和Shift+右键的有序规则。规则遵循 动作\|条件 格式,从上到下进行评估;执行第一个匹配的规则。
可用动作
| 动作 | 描述 |
|---|---|
SIT |
切换坐下状态 |
TOGGLE_WAIT |
切换等待状态 |
RIDE |
骑乘宠物 |
OPEN_INV |
打开宠物物品栏 |
CYCLE |
循环切换距离预设(5/10 → 10/20 → 20/50) |
TOGGLE_FOLLOW_TELEPORT |
交换跟随和传送距离的值 |
OPEN_SETTINGS |
打开宠物设置界面 |
RUN_COMMAND |
执行服务器命令(需要主人拥有相应权限) |
NONE |
什么都不做 |
可用条件
| 条件 | 通过时机 |
|---|---|
NONE |
始终 |
SADDLE |
宠物装备了鞍 |
SNEAK |
主人正在潜行 |
HEALTH_LT_50 |
宠物生命值低于 50% |
HOLD_ITEM |
主人手中持有任何物品 |
可以使用 ; 链式连接多条规则,例如 RIDE\|SADDLE;SIT\|NONE(如果装备了鞍则骑乘,否则切换坐下)。
互动工具
所有工具物品ID都可以在 petting-common.toml 的 [Tool Settings] 部分进行配置。
| 工具 | 默认物品 | 功能 |
|---|---|---|
| 状态棍 | minecraft:stick |
右键点击:循环切换AI模式(跟随 → 坐下 → 等待 → 游荡)。Shift+右键点击:在聊天栏中显示详细状态报告 |
| 哨子 | petting:follow_whistle |
循环切换跟随距离预设:5 → 10 → 20 → 50 格 |
| 宝珠 | petting:teleport_orb |
循环切换传送触发距离预设:10 → 20 → 50 → 100 格 |
| 时钟 | minecraft:clock |
切换此宠物是否响应全局山羊角口哨 |
| 剑 | 任意剑 | 切换攻击模式——攻击主人攻击的目标 |
| 盾牌 | minecraft:shield |
切换防御模式——受到攻击时进行反击 |
| 曲奇 | minecraft:cookie |
切换守卫模式——攻击任何击中主人的东西 |
| 拴绳 | petting:pet_tether |
将宠物绑定在其当前位置周围可配置的漫游半径内 |
| 剪刀 | minecraft:shears |
潜行 + 右键点击可将宠物释放回野外 |
| 山羊角 | minecraft:goat_horn |
右键点击将所有已拥有的宠物立即传送到你的位置 |
骑乘
骑乘适用于所有移动类型——陆地、飞行和游泳。
| 输入 | 动作 |
|---|---|
| 空格 | 跳跃(陆地上)/ 向上飞 / 向上游 |
| S | 后退 / 向下飞 / 向下游 |
| 疾跑(Ctrl) | 1.3 倍速度加成 |
飞行和游泳生物在你停止移动时会保持当前的高度或深度。宠物的旋转始终与你的视角同步。使用 RIDE\|SADDLE 控制映射可在骑乘前要求装备鞍。
AI 模式
宠物有四种移动状态:
| 状态 | 行为 |
|---|---|
| 跟随 | 走向主人,距离过远时传送 |
| 坐下 | 停留在原地;如果 sitHealEnabled 开启,会随时间恢复生命值 |
| 等待 | 停留在原地,不恢复生命值 |
| 游荡 | 在区域内自由漫步 |
战斗模式独立于移动状态:
| 模式 | 切换工具 | 行为 |
|---|---|---|
| 攻击 | 任意剑 | 攻击主人攻击的目标 |
| 防御 | 盾牌 | 宠物自身受到攻击时进行反击 |
| 守卫 | 曲奇 | 攻击任何击中主人的东西 |
宠物物品栏与装备
通过 OPEN_INV 控制映射动作或宠物设置界面打开宠物物品栏。
- 盔甲槽 — 可装备头盔、胸甲、护腿和靴子
- 手部槽 — 可装备剑或盾牌;宠物会实际持有并使用它们
- 存储 — 14 个物品槽,用于携带战利品
- 装备槽会根据生物类型自动检测;可通过
extraEquippableMobs强制添加额外槽位 - 通过
petBaseArmor和petBaseArmorToughness对所有宠物应用全局属性加成
宠物安全
被动免疫
所有已驯服宠物永久免疫:
- 摔落伤害
- 火焰和熔岩伤害
相互和平
宠物永远不会攻击其他已驯服的宠物,即使是通过溅射投射物。
坐下恢复
宠物在坐下状态下会恢复生命值。可通过 sitHealAmount 和 sitHealInterval 配置。
宠物床
宠物床方块允许宠物在固定位置无限次重生。
- 右键点击放置好的宠物床进入绑定模式。
- 右键点击你的宠物将其与床绑定。
- 如果宠物死亡,死亡将被取消——宠物会传送到它的床,完全恢复生命值,并坐下。
床可以跨维度工作。维度信息在绑定时存储,因此即使宠物在地狱或末地死亡也能重生。在绑定模式下右键点击空气可取消。
Boss 宠物
| Boss | 特殊行为 |
|---|---|
| 凋灵 | 永久抑制侧头;空闲(无目标)时取消中心头颅的骷髅攻击 |
| 末影龙 | 支持骑乘战斗;驯服后隐藏血条 |
| 监守者 | 持续清除对主人和其他宠物的愤怒等级 |
hideTamedBossBars 配置选项可以隐藏任何已驯服 Boss 的血条。
实体转化
当驯服的生物转化为新实体类型时(例如僵尸转化为溺尸),所有宠物数据会自动继承:
- 主人 UUID
- 自定义名称
- AI 模式和跟随/传送距离
- 鞍和已装备物品
- 宠物床绑定(包括存储的维度)
进阶系统
宠物分类
将生物分组到具有共享每玩家数量限制的命名类别中。适用于整合包和服务器。
格式: 槽位ID|显示名称|生物列表|默认限制
示例: 1|Undead|minecraft:zombie,minecraft:skeleton|5
槽位 ID 1–20 对应于 petting:max_pets_category_X 玩家属性。
自定义属性
装备和 perk 模组可以使用以下玩家属性为玩家提供额外的宠物容量:
petting:max_pets— 增加全局宠物上限petting:max_pets_category_1至petting:max_pets_category_20— 增加每个类别的上限
管理员与地图制作者工具
命令
/pet <目标生物> <目标玩家>
立即驯服一个生物并将其分配给一名玩家。需要管理员权限。
通过 NBT 生成已驯服生物
使用 /summon 命令生成已经是驯服状态的生物:
/summon minecraft:zombie ~ ~ ~ {ForgeData: {pettingtamed: 1b, ownerUUID: "你的-UUID-在这里"}}
以这种方式生成的生物将禁用其敌对 AI,并绑定到指定的主人。RUN_COMMAND 映射动作也允许通过宠物互动执行受主人权限限制的命令。
配置参考
所有设置都在 config/petting-common.toml 中。
通用
| 键 | 默认值 | 描述 |
|---|---|---|
disableRespawnOnTame |
true |
驯服时保留原始生物装备和NBT,而不是重生 |
interactionCooldown |
20 |
同一生物再次进行驯服互动前的间隔刻数 |
enableParticles |
true |
驯服成功时显示爱心粒子 |
maxPetsPerPlayer |
-1 |
每名玩家的基础宠物上限(-1 = 无限制;同时也是一个玩家属性) |
enableGoatHornWhistle |
true |
允许右键山羊角召回所有宠物 |
whistleTeleportsTethered |
false |
将已被拴绳的宠物包含在山羊角召回中 |
hideTamedBossBars |
true |
隐藏已驯服 Boss 的血条 |
commandFeedbackStyle |
ACTION_BAR |
状态更改的显示方式:ACTION_BAR、CHAT 或 NONE |
驯服
| 键 | 默认值 | 描述 |
|---|---|---|
tameChance |
0.33 |
每次驯服尝试的基础成功率 |
healthScalesTamingChance |
false |
生物血量越低,成功概率越高 |
tameHealthThreshold |
0.0 |
允许驯服前所需损失的生命值百分比(0.0–1.0) |
requireKillToTame |
false |
必须先击杀过一只此类型的生物 |
allowGoldenWheat |
true |
启用通用的金小麦驯服物品 |
whitelistOnly |
false |
只有 tamingWhitelist 中的生物可以被驯服 |
tamingWhitelist |
[] |
允许的生物ID |
blacklistEnabled |
true |
启用驯服黑名单(默认列表为空) |
tamingBlacklist |
[] |
需屏蔽的生物ID(支持 modid、modid:*、modid:prefix*) |
customTamingItems |
[] |
针对特定生物的自定义驯服物品(entity_id|item_id 格式) |
AI 与生存
| 键 | 默认值 | 描述 |
|---|---|---|
followDistance |
10.0 |
开始跟随行为的距离 (1–100) |
teleportDistance |
20.0 |
宠物传送至主人的距离 (5–200) |
boundRoamRadius |
10.0 |
被拴绳宠物的漫游半径(1–100 格) |
allowOwnerToHurtPets |
false |
允许友军伤害 |
preventPetToOwnerDamage |
true |
防止宠物伤害其主人 |
sitHealEnabled |
true |
坐下时恢复生命值 |
sitHealAmount |
1.0 |
每次恢复的生命值(以半颗心为单位) |
sitHealInterval |
40 |
两次恢复之间的间隔刻数(20 = 1 秒) |
骑乘与移动
| 键 | 默认值 | 描述 |
|---|---|---|
allowPetRiding |
true |
所有骑乘功能的总开关 |
mountRequireSaddle |
false |
骑乘需要鞍 |
landRidingSpeedMultiplier |
1.0 |
陆地骑乘速度倍率 |
flyingRidingSpeedMultiplier |
1.0 |
飞行骑乘速度倍率 |
swimmingRidingSpeedMultiplier |
1.0 |
游泳骑乘速度倍率 |
ridingWhitelistOnly |
false |
只有白名单中的生物可以被骑乘 |
ridingWhitelist |
[] |
允许骑乘的生物ID |
ridingBlacklistEnabled |
false |
启用骑乘黑名单 |
ridingBlacklist |
[] |
不能被骑乘的生物ID |
manualFlyingMobs |
[] |
为特定生物ID强制启用 3D 飞行 |
manualSwimmingMobs |
[] |
为特定生物ID强制启用 3D 游泳 |
allowPetAttackWhileRiding |
true |
骑乘凋灵/末影龙时允许进行投射物攻击 |
物品栏与属性
| 键 | 默认值 | 描述 |
|---|---|---|
petBaseArmor |
0.0 |
所有已驯服宠物的全局护甲加成 |
petBaseArmorToughness |
0.0 |
全局护甲韧性加成 |
extraEquippableMobs |
[] |
为特定生物ID强制添加装备槽 |
alwaysShowEquipmentSlots |
false |
为所有生物强制显示盔甲和手部槽 |
inventoryWhitelistOnly |
false |
只有白名单中的生物会获得物品栏 |
inventoryWhitelist |
[] |
允许拥有物品栏的生物ID |
inventoryBlacklistEnabled |
false |
禁用黑名单中生物的物品栏 |
inventoryBlacklist |
[] |
禁止拥有宠物物品栏的生物ID |
petPortraitRenderScale |
45.0 |
宠物物品栏界面中肖像的缩放比例 |
工具与物品设置
所有工具物品均可配置。配置键对应一个注册ID(命名空间:物品名)。
| 键 | 默认值 | 功能 |
|---|---|---|
tamingItem |
petting:golden_wheat |
主要驯服物品 |
statusTool |
minecraft:stick |
模式切换和状态报告 |
aggressionTool |
minecraft:iron_sword |
攻击模式切换(默认任何剑都可以) |
defenseTool |
minecraft:shield |
防御模式切换(默认任何盾牌都可以) |
guardTool |
minecraft:cookie |
守卫模式切换 |
followDistTool |
petting:follow_whistle |
切换跟随距离 |
teleportDistTool |
petting:teleport_orb |
切换传送距离 |
whistleTool |
minecraft:clock |
切换口哨响应 |
tetherTool |
petting:pet_tether |
区域绑定 |
releaseTool |
minecraft:shears |
释放回野外 |
globalWhistleTool |
minecraft:goat_horn |
全局宠物召回 |
互动开关
| 键 | 默认值 | 描述 |
|---|---|---|
allowPerPetStatus |
true |
启用木棍(模式切换) |
allowPerPetAggression |
true |
启用剑(攻击模式) |
allowPerPetSelfDefense |
true |
启用盾牌(防御模式) |
allowPerPetGuard |
true |
启用曲奇(守卫模式) |
allowPerPetFollowDist |
true |
启用哨子(跟随距离) |
allowPerPetTeleportDist |
true |
启用宝珠(传送距离) |
allowPerPetWhistleToggle |
true |
启用时钟(口哨响应切换) |
allowPetTethering |
true |
启用拴绳(区域绑定) |
allowPetReleasing |
true |
启用剪刀(释放回野外) |
许可协议
Petting 使用 GNU 宽通用公共许可证 v3.0 授权。详情请参阅 LICENSE。
显示 1-12 条,共 12 条
以上为资源接口提供的文件记录。安装时请在客户端确认文件、游戏版本及依赖。





还没有人评论,去客户端里说两句吧。
评论在新手盒子客户端中发表,这里同步展示。