Blank DG-LAB —— 让郊狼与玩家进行绑定[1.20~1/1.21.1/1.21.11/26.x(多人强度互换已更新)]⚡️

原创 闭源 Blank DG-LAB —— 让郊狼与玩家进行绑定[1.20~1/1.21.1/1.21.11/26.x(多人强度互换已更新)]⚡️ 1.0.0

完成注册/登录后下载
版权类型
原创
版权链接
#
语言支持
中文(简体)
模组加载器
  1. Forge
  2. Fabric
  3. NeoForge
前置组件
YACL≥ 3.9.0 https://www.curseforge.com/minecraft/mc-mods/yacl
YACL≥ 3.6.6 https://www.curseforge.com/minecraft/mc-mods/yacl
适配版本(Java)
  1. 26.x
  2. 1.21
  3. 1.20
[MD] # Blank DG-LAB **将您的 DG-LAB Coyote 3.0 设备连接到 Minecraft,体验实时、由游戏驱动的触觉反馈。** Blank DG-LAB 是一款 Minecraft 客户端模组,通过 DG-LAB Coyote 3.0 设备将游戏内事件转化为物理触觉脉冲。感受每一次击中、每一次坠落、每一次死里逃生——通过深度 Create 与 Aeronautics 集成,**感受每一次转向、爬升与引擎轰鸣**。 > **这是一款触觉/生物反馈外设模组。** 不含任何性主题、NSFW 元素或年龄限制内容。所有反馈完全基于游戏内伤害、玩家动作与载具物理。 --- ## ✨ 特性 ### 🔗 连接 | 功能 | 说明 | | :--- | :--- | | 二维码配对 | 内嵌 WebSocket 服务器生成二维码;DG-LAB App 扫码即连 | | 无需外部后端 | 模组内置 WebSocket 服务器,无需 Node.js 或其他独立服务 | | 自动端口检测 | 自动查找可用端口,并提供随机化按钮快速更换 | | 重连支持 | App 断开后自动尝试重连,无需手动操作 | | IP 输入净化 | 自动识别并处理中文标点与全角数字等手动输入问题 | ### 🌐 多人联机(伤害互换) 多人伤害互换让伤害事件在玩家之间流动,用于丰富联机互动玩法。模式由**服务端权威**决定,全员一致。 | 功能 | 说明 | | :--- | :--- | | 总开关 | 多人伤害互换总开关(默认开) | | 随机转发(RANDOM) | 公共"随机池"机制:默认池为空,需**互相邀请并在弹窗中同意**后才加入;伤害只在池成员之间随机传递;未加入池则不转发。同一玩家始终可作为接收者。**单次伤害事件内锁定同一位接收者**(含归零脉冲),避免强度卡住不消退 | | 链式定向(CHAIN) | 每个玩家可自行**设置转发目标**,支持形成环链(A→B→C→A)与多人指向同一人;收到的强度仅驱动自身设备/显示,**不会二次转发**,避免链式放大 | | 提示规则(只提示相关的人) | 受伤者收到"你的伤害已随机转发给 XXX";被选中的接收者收到"XXX 受伤,传给您的强度:A=.. B=..(持续 N 秒)";其他人无任何提示。持续性伤害(烧伤/中毒等)会做限频防刷屏,持续时间以**秒**显示 | | 伤势传递 | 受伤者**正常扣血**;强度转发给接收者,接收者**只感受到强度、不额外掉血** | | 无硬件参与(服务端权威) | 未连接郊狼硬件且未开启"允许无硬件参与"时会自动退出联机并提示。一条链路成立的条件是**双方都连接了硬件,或双方都开启"允许无硬件参与"**,否则建立时直接拒绝、已建立的自动断开并提示双方 | | 房主准入策略 | 房主可设置对**未安装本模组玩家**的处理(默认允许加入) | | 联机面板 | 游戏内按 `G` 键直接打开(也可从主菜单进入):可**滚轮滚动**的在线玩家列表;随机池"邀请/退出";"设置/解除转发目标";"解除被控制"(被控制方可主动解除他人对自己的控制,无需对方操作);"全局同步预设"入口 | | 全局预设同步 | 需 OP 权限、每次间隔 10 秒;发起端会**反馈所有参与玩家按"拒绝 / 接受"分组排序的结果**;接收方弹出接受/拒绝弹窗,接受则应用预设与通道模式 | | 被控方战斗提示 | 被控制方受伤时聊天栏提示对应强度数值(可开关) | | HUD 联机链路显示 | 在黑底半透明面板内、"郊狼连接/未连接"状态行下方,显示自己链路"上一位 → 自己 → 下一位"(缺失则省略对应部分) | | 郊狼连接图标 | 在玩家头顶名牌名字前、以及原版 Tab 玩家列表名字前,显示郊狼连接状态图标(**绿色=已连接,灰色=未连接,未连接带红色斜杠**);两项各有独立开关(默认开) | ### ✈️ 载具集成(Create + Aeronautics) > 需安装对应模组;未安装时集成功能自动隐藏,不影响基础功能。 - **Create: Aeronautics**:载具速度 / 转向 / 高度 / 碰撞映射为触觉强度,气囊损伤渐隐脉冲;提供轻 / 中 / 强 / 极限四种预设与自定义曲线。 - **Create**:引擎 RPM 振动、过热 / 损坏警报脉冲、机械运转微振动。 ### ⚡ 伤害与状态检测 | 类别 | 说明 | | :--- | :--- | | 战斗伤害 | 每种伤害类型独立配置倍率、最小/最大强度与脉冲时长 | | 伤害类型 | 通用、弹射物、火焰、坠落、持续伤害、魔法、爆炸、溺水、环境、死亡、攻击、破坏方块 | | 低生命值触发 | 生命值低于最大值时持续脉冲,每损失 10% 可独立配置强度 | | 低饥饿值触发 | 饥饿值低于最大值时持续脉冲,每损失 10% 可独立配置强度 | | 吸收心 | 金苹果提供的吸收心计入有效生命值 | | 创造/旁观者免疫 | 创造或旁观模式下自动禁用所有触觉反馈 | | 暂停检测 | 游戏暂停(ESC)时暂停生命/饥饿检测 | ### 📊 强度系统 | 功能 | 说明 | | :--- | :--- | | 最大强度唯一上限 | 强度以游戏内配置的「最大强度」(默认 40)为**唯一上限**,不再依赖 APP 上报的上限值 | | APP 端上限需手动设置 | APP 端的通道上限仍需在 App 内**手动**设置;模组无法代为设置,也无法与其同步 | | A/B 通道独立 | 每个通道独立跟踪 | | 浮点精度累加 | 所有伤害贡献使用浮点运算,仅最终输出时取整 | | 自动钳制 | 输出强度永远不会超过最大强度 | ### 🖥️ HUD 显示 | 功能 | 说明 | | :--- | :--- | | 4 种样式 | BAR、WAVE、PULSE、NUMBER 自由切换 | | 拖放定位 | 游戏内 HUD 编辑器直接拖拽调整位置 | | 缩放调节 | 0.5× ~ 2.0× 缩放,适配不同屏幕 | | 平滑动画 | 受伤时快速上升,恢复时渐变下降(线性插值) | | 连接状态 | 实时显示"✓ 已连接"或"✗ 已断开" | | 暂停感知 | 游戏暂停时波形与脉冲动画自动冻结 | | 半透明背景 | 轻量设计,任何场景下均可读 | ### ⚙️ 配置系统(YACL) | 功能 | 说明 | | :--- | :--- | | 快捷入口 | 按 `B` 键打开主菜单(含"HUD 位置编辑""联机面板""二维码连接""返回游戏");按 `G` 键直接打开"联机面板",也可直接通过 YACL 访问 | | 精细调校 | 每种伤害类型独立设置倍率、最小值、最大值与时长 | | 预设系统 | 保存、加载、导入、导出强度预设(滚动列表) | | 内置预设 | 轻、中、重、极限四种预设开箱即用 | | 安全导入 | 导入超过当前限制的预设时弹出确认警告 | --- ## 🌍 当前版本支持情况 | 协议 | Minecraft | 加载器 | 状态 | | :---: | :--- | :--- | :---: | | **V4** | **26.1 / 26.1.1 / 26.1.2 / 26.2 / 26.3** | Fabric / NeoForge | ✅ 已发布 | | V4 | 1.21.11 | Fabric | ✅ 已发布 | | V4 | 1.21.1 | NeoForge | ✅ 已发布 | | V4 | 1.20.1 | Fabric / Forge | ✅ 已发布 | > 注:1.21.1 另提供 **Create Edition**(Create 集成特别版)。 --- ## 📋 环境要求 ### 必备软件 | 项目 | 要求 | | :--- | :--- | | Minecraft | 26.1 / 26.1.1 / 26.1.2 / 26.2 / 26.3 / 1.21.11 / 1.21.1 / 1.20.1 | | 模组加载器 | Fabric ≥ 0.18.0 / NeoForge / Forge | | API | Fabric API / NeoForge / Forge(无需额外 API) | | YACL | ≥ 3.9.0+26.1-fabric(26.x)<br>≥ 3.9.0+1.21.1-neoforge(1.21.1) | | Java | ≥ 25(26.x)· ≥ 21(1.21.x / 1.20.1) | > Fabric API 版本需与 Minecraft 版本匹配;YACL 选择对应的最新版本即可。 ### 可选依赖 | 模组 | 用途 | | :--- | :--- | | **Create** | 启用引擎振动与机械反馈 | | **Create: Aeronautics** | 启用速度、转向、高度与碰撞反馈 | | **CC:Sable** | 提升 Aeronautics 载具检测精度(推荐) | ### 硬件要求 - DG-LAB Coyote 3.0 设备 - 装有官方 DG-LAB 4.0+ App 的手机 --- ## 🚀 快速开始 | 步骤 | 操作 | | :---: | :--- | | 1 | 将 `blankdglab-<version>.jar` 放入 `mods` 文件夹(并安装对应加载器所需依赖) | | 2 | (可选)一并安装 Create 和/或 Aeronautics 以获得完整载具反馈 | | 3 | 游戏内按 `B` 键打开主菜单 | | 4 | 点击"二维码连接",用 DG-LAB App 扫描二维码 | | 5 | App 内进入 Socket 控制页,点击 A/B 通道限制的 `+` 按钮设定上限 | | 6 | **在 App 中选择您喜欢的波形,然后点击「开始」按钮** | | 7 | 开始游戏,HUD 显示"✓ 已连接"即配置成功 | > ⚠️ **重要提示(最新版本):** 为尊重您的波形选择,模组仅发送数字强度,**不发送波形**。信号需要您在 App 上选择想要的波形并点击「开始」按钮后才会发送,设备才会实际输出触觉反馈。 --- ## ⚙️ 配置说明 所有设置可通过 `B` → 主菜单 → 设置访问,或直接通过 YACL 图形界面。 配置文件保存于 `config/blankdglab.json`。 ### 连接设置 | 设置 | 说明 | 默认 | | :--- | :--- | :---: | | 服务器端口 | 内嵌 WebSocket 服务器端口 | 8877 | | 手动 IP | 覆盖自动检测的 IP(留空则自动) | - | | 通道模式 | 双通道 / 仅 A / 仅 B;仅 A 时 B 通道上限置灰不可调,反之亦然 | 双通道 | | 最大强度 | 游戏端强度上限(唯一上限) | 40 | | 最小强度 | 脉冲强度下限 | 0 | | 同步 A/B 通道 | 将合并后的强度发送至两个通道 | true | > **端口回退机制**:默认端口为 **8877**。端口被占用时会自动回退——优先尝试 **20000–21000**,其次配置端口附近,最后回退 **8877–8900**;全部占用则明确报错。二维码界面提供"随机化端口"按钮(在 **20000–20999** 中随机,避开系统动态端口范围)。若回退到 20000 段,会把实际端口**写回配置并保存**,确保"配置端口 / 界面显示 / 二维码内容"三处一致。 ### 联机设置 | 设置 | 说明 | 默认 | | :--- | :--- | :---: | | 多人伤害互换 | 多人联机总开关 | 开 | | 转发模式 | 随机转发 / 链式定向 | 随机转发 | | 未装模组玩家 | 房主准入策略(允许加入等) | 允许 | | 允许无硬件参与 | 未连接硬件也能参与联机 | 开 | | 被控方伤害提示 | 收到转发强度时聊天栏提示 | 开 | | 名牌显示郊狼图标 | 玩家头顶名字前显示连接图标 | 开 | | 玩家列表显示郊狼图标 | Tab 列表名字前显示连接图标 | 开 | ### 伤害反馈 每种伤害类型均独立配置以下三项: | 设置 | 说明 | | :--- | :--- | | 启用 | 切换该伤害类型的触觉反馈 | | 强度 A / B | A/B 通道各自脉冲强度 | | 脉冲时长 | 脉冲持续时间(毫秒) | **支持类型**:通用、弹射物、火焰、坠落、持续伤害、魔法、爆炸、溺水、环境、死亡、攻击、破坏方块 ### 状态反馈 | 设置 | 说明 | 默认 | | :--- | :--- | :---: | | 低生命值反馈 | 生命低于最大值时触发脉冲 | true | | 低生命值强度 / 10% | 每损失 10% 生命值的强度 | 5 | | 低生命值脉冲间隔 | 脉冲间隔(毫秒) | 2000 | | 低饥饿值反馈 | 饥饿低于最大值时触发脉冲 | false | | 低饥饿值强度 / 10% | 每损失 10% 饥饿值的强度 | 3 | | 低饥饿值脉冲间隔 | 脉冲间隔(毫秒) | 3000 | ### Aeronautics 反馈 *需安装 Create: Aeronautics 模组* | 设置 | 说明 | 默认 | | :--- | :--- | :---: | | 速度反馈 | 载具速度映射振动强度 | true | | 转向反馈 | 角速度触发额外脉冲 | true | | 高度反馈 | 垂直速度控制强度 | true | | 碰撞反馈 | 撞击时瞬间强脉冲 | true | | 引擎振动 | RPM 映射持续振动 | true | | 故障警告 | 引擎损坏时警报脉冲 | true | | 气球损伤 | 气囊破裂渐隐脉冲 | true | ### HUD 设置 | 设置 | 说明 | 默认 | | :--- | :--- | :---: | | 显示 HUD | 切换 HUD 可见性 | true | | HUD 样式 | BAR / WAVE / PULSE / NUMBER | BAR | | HUD 布局 | VERTICAL / HORIZONTAL | VERTICAL | | HUD 位置 | 在 HUD 编辑器中拖放 | 左侧,距顶部 30% | | HUD 缩放 | 0.5× ~ 2.0× | 1.0 | --- **享受您的触觉 Minecraft 旅程!** 🎮 --- ## 📡 工作原理 **工作流程:** Minecraft → 内嵌 WebSocket 服务器 → DG-LAB App(手机)→ 蓝牙 → Coyote 设备 模组内嵌一个实现 DG-LAB SOCKET V4 协议的 WebSocket 服务器。当您扫描二维码时,DG-LAB App 直接连接到模组——无需外部后端或 Node.js 服务器。模组发送结构化的强度与脉冲命令,App 通过蓝牙将它们中继到设备;波形由您在 App 中自行选择,模组不会向 App 写入波形,以确保体感始终符合您的偏好。 对于 Create/Aeronautics 集成,模组实时读取载具物理数据(速度、角速度、高度、RPM),并使用您配置的曲线将它们映射到触觉强度。 --- ## 🔮 未来计划 ### ✅ 已完成 - **多版本支持** —— 26.x(Fabric / NeoForge)、1.21.11、1.21.1、1.20.1(Fabric / Forge)均已支持。 - **Socket 协议重写(V2 → V4)** —— 全部版本已基于 V4 协议完成重写并发布。 - **t:4 强度控制修复** —— 全版本使用 SetTempIntensity 绝对强度控制,修复强度叠加超限与无真实输出的问题。 - **服务器特殊玩法(伤害转移)** —— 已实现多人伤害互换系统:随机转发池 / 链式定向 / 无硬件参与 / 全局预设同步。 ### 📋 计划中 - **持续维护** —— 继续维护已发布分支,修复已知问题并持续优化性能。 - **版本跟进** —— 跟随 Minecraft 官方更新,逐步兼容后续新版本。 - **生态集成** —— 根据社区反馈,积极探索与其他模组的联动玩法,拓展模组生态。 --- ## ❓ 常见问题 - **问:这个模组在服务器上允许使用吗?** 答:看版本。**不含「多人伤害互换」的版本是纯客户端模组**——只作用于本机,不与服务器逻辑交互、无需服务器安装,通常不会被判定为违规。**含「多人伤害互换」的版本(目前仅 26.1~26.2)是客户端 + 服务端模组**,会引入服务器侧交互(服务端权威的转发、准入与预设同步),需要服务端配合,**因此不保证不会被封禁**。 - **问:会被封号吗?** 答:**纯客户端版本**不提供任何不公平优势、也不修改服务器数据包,一般不会被封。**但含「多人伤害互换」的版本(目前仅 26.1~26.2)会收发自定义数据包并与服务端逻辑交互,无法保证不被封禁**;若后续为其他版本更新该功能,情况同样如此。请以目标服务器的规则为准。 - **问:需要运行独立后端吗?** 答:不需要。模组有自己的内嵌 WebSocket 服务器。只需扫描二维码并连接。 - **问:为什么 APP 中 A/B 通道限制是 0?** 答:SOCKET 协议未提供设置 APP 端限制的命令。连接后,请进入 APP 的 SOCKET 控制页,手动点击 A 与 B 通道限制的 `+` 按钮,将其设置为您期望的最大值。 - **问:为什么 APP 显示强度但没有实际输出?** 答:最新版本为尊重您的波形选择,模组仅发送数字强度、不发送波形。请在 APP 中**选择您想要的波形并点击「开始」按钮**,此后信号才会发送、设备才会输出触觉反馈。 - **问:可以与其他触觉设备一起使用吗?** 答:目前仅支持通过官方 SOCKET 协议连接的 DG-LAB Coyote 3.0。 - **问:需要 Create 或 Aeronautics 才能使用吗?** 答:不需要。两者都是**可选的**。没有它们,模组仍提供完整的基于伤害的触觉反馈。飞行功能是额外加分项。 - **问:发现 bug / 有建议——在哪里反馈?** 答:请访问 [GitHub Issues](https://github.com/kskongbai/Blank-DG-LAB/issues) 提交问题或建议,我会及时跟进。 - **问:扫码连接时 App 提示“网络异常?请稍后再试”,但又能正常连上,这是为什么?** 答:这是**手机端 DG-LAB App 自己弹出的提示,与模组无关,无害**。二维码内容整体指向一个在线域名前缀(`dungeon-lab.cn`),App 扫码后若手机当时无法访问外网(只连局域网、DNS 解析失败等),会先弹这个提示;但真正要连接的局域网地址已内嵌在二维码参数里,App 仍能读取并正常连上模组的 WebSocket 服务器。因此“提示了却又能正常使用”。让手机能访问外网即可不再出现该提示。 - **问:多人伤害互换怎么用?随机转发和链式定向有什么区别?** 答:见上文“多人联机”章节——随机池需邀请并在弹窗中同意后才能加入,伤害在池成员间随机传递;链式定向需各自设置转发目标。 - **问:被转发/被控制的玩家会掉血吗?** 答:不会。受伤者正常扣血,接收者只感受到强度、不额外掉血。 --- ## 💬 支持与反馈 | 入口 | 说明 | 链接 | | :--- | :--- | :--- | | 📦 仓库 | 模组源码与 Releases 发布 | [Blank-DG-LAB 仓库](https://github.com/kskongbai/Blank-DG-LAB) | | 🐛 问题反馈 | 提交 Bug 报告、功能建议与改进意见 | [Issues](https://github.com/kskongbai/Blank-DG-LAB/issues) | | 📖 Wiki | 使用指南、FAQ 与详细文档 | [Wiki](https://github.com/kskongbai/Blank-DG-LAB/wiki/) | > ⭐ 喜欢这个模组吗?麻烦在 [GitHub](https://github.com/kskongbai/Blank-DG-LAB) 上点一个 **Star** 收藏支持,谢谢喵~🐱 --- ## 📜 许可证 本模组基于 **GNU 宽通用公共许可证 v3.0 (LGPL-3.0)** 授权。详情见 `LICENSE` 文件。 --- ## 🤝 致谢 * DG-LAB 提供开源的 SOCKET 通信协议 * Fabric 团队提供优秀的模组开发工具链 * NeoForge / Forge 团队对社区驱动加载器生态的奉献 * YetAnotherConfigLib 提供简洁的配置 GUI 框架 * Create 与 Aeronautics 团队创造了令人惊叹的模组,使此次集成成为可能 --- **负责任地享受全新的沉浸体验!** **最后更新:2026 年 10 月 | 支持 Minecraft 26.1 / 26.1.1 / 26.1.2 / 26.2 / 26.3 / 1.21.11 / 1.21.1 / 1.20.1 | 2026 夏季版** [/MD]
  • QQ20260529-025020.webp
    QQ20260529-025020.webp
    11.6 KB · 查看: 21
  • QQ20260529-025803.webp
    QQ20260529-025803.webp
    40.8 KB · 查看: 26
  • QQ20260529-025831.webp
    QQ20260529-025831.webp
    32.4 KB · 查看: 17
  • QQ20260529-024819.webp
    QQ20260529-024819.webp
    3.8 KB · 查看: 22
  • fengmian.webp
    fengmian.webp
    32 KB · 查看: 25
作者
空白Burst!
下载
19
查看
621
首次发布
最后更新

评分

0.00 星 0 次评分

空白Burst! 的其他资源

后退
顶部 底部