概述
通过jagrosh开发的Discord Rich Presence API和DiscordIPC API,完全自定义你在Discord上显示的Minecraft游戏状态!
重要说明
- 从v2.5.0开始,需要依赖UniLib库
- UniLib是我新开发的通用库模组,用于抽象常见API功能
- 下载链接:UniLib模组
- 如果没有UniLib或版本不兼容,模组会崩溃
- 这是一个纯客户端模组
- 不会在服务器端运行
- Fabric和Quilt模组加载器会忽略此模组,其他加载器可能会崩溃
版本要求
- Minecraft 1.14.x及以上版本需要Fabric API和Fabric模组加载器
- Minecraft 1.13.x需要Rift API和Rift模组加载器
- Minecraft 1.1.0及以下版本需要Risugami的ModLoader
功能特色
除了可以更改Discord状态显示”正在玩Minecraft”外,本模组提供丰富的自定义选项:
- 显示当前生物群系
- 显示所在维度
- 显示所在服务器
- 更多自定义可能
启动器和整合包支持
CraftPresence可以检测以下启动器实例:
- ATLauncher (instance.json)
- Twitch/Overwolf/Curse/GDLauncher (manifest.json, minecraftinstance.json)
- MCUpdater (instance.json)
- Modrinth (profile.json)
- MultiMC (instance.cfg)
- Technic (installedPacks)
版本说明:
- v1.6.0之前:显示整合包名称和图标(不在服务器时)
- v1.6.0到v2.0.0:将整合包名称解析为&PACK&占位符
- v2.0.0之后:整合包信息解析为pack.name和pack.icon占位符
示例:整合包”All the Mods 7″会转换为图标键”allthemods7″
注意:MultiMC原生使用图标键属性,不会从显示名称转换
命令列表
命令前缀:/craftpresence 或 /cp
v1.5.0及以上版本只能在配置GUI的命令界面使用
命令 | 描述 |
---|---|
/cp compile “[expr]” | 测试占位符表达式输出(使用Starscript) |
/cp search (type:typeName, [searchTerm], all) | 搜索可用的Rich Presence占位符 |
/cp reload | 重新加载模组数据 |
/cp request | 查看加入请求信息 |
/cp export | 查看模组数据导出命令 |
/cp view | 显示可用查看和控制命令 |
/cp view placeholders | 显示所有可用RPC占位符 |
/cp view currentData | 以文本形式显示当前RPC数据 |
/cp view assets (custom | all) | 显示所有可用资产图标键 |
/cp view dimensions | 显示所有可用维度名称(需启用”显示当前维度”) |
/cp view biomes | 显示所有可用生物群系名称(需启用”显示当前生物群系”) |
/cp view servers | 显示所有可用服务器地址(需启用”显示游戏状态”) |
/cp view screens | 显示所有可用GUI名称(如果启用了”按GUI显示”) |
/cp view items | 显示所有可用物品名称(如果启用了”按物品显示”) |
/cp view entities | 显示所有可用实体名称(如果启用了”按实体显示”) |
/cp reboot | 重启RPC |
/cp shutdown | 关闭RPC(可通过/cp reboot重新开启) |
/cp (help | ?) | 显示帮助命令 |
快捷键绑定
- v1.5.5到v1.8.0:在配置GUI的辅助功能设置中自定义
- v1.8.0及以上:可在配置GUI专用菜单或常规控制菜单中设置
默认快捷键:GRAVE/TILDE键(打开配置GUI)
占位符和函数
v2.0.0后占位符已重写以兼容Starscript
所有占位符、函数和代码表达式必须用花括号包围(例如:{foo.bar})
常用占位符
占位符 | 描述 |
---|---|
general.brand | Minecraft品牌标签 |
general.icon | 默认显示图标 |
general.mods | 当前mods文件夹中的模组数量 |
general.title | Minecraft标题标签 |
general.version | Minecraft版本标签 |
general.protocol | Minecraft版本协议标签 |
菜单事件占位符
占位符 | 描述 |
---|---|
menu.message | 主菜单显示数据(适用时) |
menu.icon | 主菜单显示图标(适用时) |
整合包占位符
占位符 | 描述 |
---|---|
pack.name | 当前检测到的整合包名称 |
pack.icon | 当前检测到的整合包图标 |
pack.type | 当前检测到的整合包类型 |
玩家占位符
占位符 | 描述 |
---|---|
player.name | 你的用户名 |
player.uuid.short | 你的UUID(简短格式) |
player.uuid.full | 你的UUID(完整格式,如果是有效UUID) |
player.icon | 你的玩家头像图标(适用时) |
player.position.x | 当前游戏内X坐标 |
player.position.y | 当前游戏内Y坐标 |
player.position.z | 当前游戏内Z坐标 |
player.health.current | 当前生命值 |
player.health.max | 当前最大生命值 |
player.mode | 当前游戏模式 |
生物群系占位符
占位符 | 描述 |
---|---|
biome.message | 当前生物群系显示数据(游戏内) |
biome.name | 当前生物群系名称 |
biome.identifier | 当前生物群系标识符 |
biome.icon | 当前生物群系图标 |
biome.default.icon | 默认生物群系图标 |
维度占位符
占位符 | 描述 |
---|---|
dimension.message | 当前维度显示数据(游戏内) |
dimension.name | 当前维度名称 |
dimension.identifier | 当前维度标识符 |
dimension.icon | 当前维度图标 |
dimension.default.icon | 默认维度图标 |
物品占位符
占位符 | 描述 |
---|---|
item.message.default | 默认物品显示数据(适用时) |
item.message.holding | 手持物品显示数据(适用时) |
item.message.equipped | 装备物品显示数据(适用时) |
item.[slotId].name | 当前槽位物品名称 |
item.[slotId].message | 当前槽位物品消息 |
已知问题和额外信息
Minecraft版本问题
- 1.16及以上版本:
- 由于游戏更多部分变为数据驱动,某些模组数据需要先进入世界才能获取
- 目前生物群系和维度模块受此影响,只显示默认数据,额外数据需要先发现
- 1.15及以下版本:
- MC-112292:与RenderUtils#drawItemStack方法交互时(v2物品渲染器),某些使用特定渲染器的方块可能无法正确显示
- 仅1.15.x版本:使用此方法的屏幕上可能出现z层级问题
- a1.1.2_01及以下版本:
- 生物群系和维度模块使用默认数据占位,因为这些方法的逻辑缺失(最初在Alpha 1.2.6实现)
杂项问题
- 早期Minecraft版本由于混淆问题,使用模组某些部分时可能出现错误数据
- 作为后备方案,模组设计为在首次发现生物群系/维度时添加可选模块数据
- 某些模块列表中的”添加新”选项也可用于解决此问题
- 某些设置或API调用在不同MC版本下可能表现不同
图标请求
没有看到喜欢的图标或有建议添加/修改默认客户端ID的图标?
可以在我的问题跟踪器上提交请求,要求:
- 如果是添加维度的图标,需指定该维度来源模组的链接
- 必须使用特定的图标ID,可通过模组或进入维度后查看日志/聊天获取
- 图标尺寸在512×512到1024×1024之间(最佳质量)
- 如果要修改或移除默认客户端ID的图标,请说明原因
- 如果不会安装Mod,请点击查看我的世界Mod安装教程。
- 如发现网盘资源被吞,或者网盘资源不存在,请在下方评论中说明,我们将会尽快进行修复。