Repository navigation
Releases: guchang233/EndCraft
Release list
EndCraft 4.2.1
EndCraft 4.2.1
修正旧版按敌人最大生命换算伤害,导致普通敌人与 Boss 的击杀次数接近的问题。宿主模块升级为 endcraft.gameplay39。
伤害规则
原生伤害输入 = MC 命中伤害 ÷ 5 × 当前终末地角色攻击力 × damage_multiplier
不再使用目标最大生命作为伤害倍率。武器伤害和 MC 已计算的暴击继续参与换算,角色攻击力变化影响后续攻击;保留现有 NewDamage / ApplyModifier 提交路径。
damage_multiplier 默认为 1,可在 EFML 模块配置中调整,范围 0.01 到 100。无效配置被拒绝并保留原倍率;读取不到有效角色攻击力或计算溢出时,不退回旧版百分比算法。详细规则见 伤害说明。
升级
- 导入
EndCraft-gameplay39-4.2.1-win-x64.zip和EndCraft-probe-4.2.1-win-x64.zip,启用两者,停用 gameplay38 等旧玩法模块。 - 继续从官方鹰角启动器启动终末地,使用已验证的 EFML xinput 代理加载方式。
- 伤害修正位于宿主,已有 4.2.0 MC JAR 可继续使用。发行页同时提供版本号一致的 NeoForge 1.21.1 与 Fabric 26.3 JAR;两种客户端的存档不能混用。
- 附带包含固定版本上游代码的源码包及 SHA-256 校验和。第三方模组、个人配置和光影包不随附件分发。
诊断与验证
- 新增伤害公式回归,覆盖不同血量目标、武器伤害、MC 暴击、角色攻击力、倍率与异常数值。
- 模块 ABI/配置检查验证默认算法、动态倍率更新,以及无效初始化和更新不会破坏已有状态。
- 16 项 Python 工具检查通过,倍率调整保留世界锚点与启动器配置。
- 本机原生构建通过,gameplay39 已实际加载并接通正式 NeoForge 客户端,附近同步到 5 个敌人;从运行中的游戏确认了
System.Double get_atk()签名。 - 尚未收到真实命中记录,实际扣血、普通敌人与 Boss 的击杀次数及实战平衡未验证。 本版按用户要求在此范围下发布。
测试工具另外支持定位明确指定、已安装 EndCraft 的正式 NeoForge 实例;重新打开桥接存档时,可复位此前退出世界留下的打开标记。不会重复启动或强制终止已有游戏。
本版保留 4.2.0 的渲染、输入隔离、性能优化和已知限制;完整安装步骤见 README。
安装文档修正(2026-10-16)
README、安装、操作、排错和 NeoForge 文档已按当前流程重写:从官方鹰角启动器开始终末地,EFML 使用 xinput 代理加载模块,再启动 MC。清理了旧版第三方直接启动、直接注入和 3.0 教程的安装指引,操作教程同步改为 4.2.1 伤害规则。
最新安装说明见 main 分支 README。发行附件中的说明随文档修订更新;此修订不改变玩法代码。
源码包文档修订提交:22a903a。
EndCraft 4.2.0
EndCraft 4.2.0
适配终末地 1.6.3,更新宿主模块至 endcraft.gameplay38。本版重点修正 NeoForge 的界面颜色、TaCZ 配件预览和菜单点击穿透,并减少桥接网格、纹理与队列处理开销。
下载与升级
NeoForge 用户下载三个文件:
EndCraft-gameplay38-4.2.0-win-x64.zip:终末地玩法模块。EndCraft-probe-4.2.0-win-x64.zip:必需的共享内存模块。endcraft-neoforge-guest-4.2.0.jar:放入 MC 1.21.1 NeoForge 实例的mods目录。
推荐使用 EFML 的 xinput 代理,并从官方鹰角启动器进入终末地。导入并启用两个 ZIP,停用旧版玩法模块;关闭 MC 后替换 JAR,再重新启动。不要同时运行多个玩法模块或 MC 桥接客户端。操作见 README。
同时提供 Fabric 26.3 客户端 endcraft-guest-4.2.0.jar、包含固定上游源码的源代码归档及 SHA256SUMS.txt。下列本轮界面修复与光影预览针对 NeoForge;Fabric 与 NeoForge 的存档不能混用。
修正
- 修正宿主再次解码 MC 最终显示颜色导致的 HUD、背包和手持物品偏暗。HUD 保持原透明度,不透明界面不会变成半透明。
- TaCZ 的 Z 配件界面临时切为第一人称,关闭后恢复视角;去掉盖在枪械上的暗色菜单背景,预览使用全亮光照。普通手持物品保留原光照。
- 打开 MC 菜单时拦截终末地 UI 的事件派发,点击右上角配件按钮不会同时打开终末地菜单。关闭菜单后等待鼠标松开并经过释放帧,再恢复原生 UI。
- 跳过 MC 世界绘制时仍更新光照队列并重置漫反射灯光、shader 颜色,减少不同界面之间的渲染状态残留。
- 补充标准图集粒子、屏障标记、三角形动态网格和字体字形的导出。屏障本体仍遵循 MC 原版不可见规则。
- Mob 接入原生三角面碰撞,短程女仆行走验证通过;地形数据重建、离开采样区等情况下的长期支撑仍待完善,见下方已知限制。
性能与调试
- 复用区块、实体和透明裁剪的暂存缓冲区,减少重复直接内存和临时对象分配。
- 缓存最多 64MiB 的区块快照用于恢复重发,按脏标记失效;每帧最多建模两个区块,完成一个区块后检查 3ms 预算。
- 动画图集使用 PBO/fence 异步读回;渲染队列拥塞时暂停新捕获并重试必要消息。
- 航空学坐标变换改为每艘物理体采样一次仿射变换,顶点使用矩阵计算;尚未缓存整艘物理体的几何。
- F6 切换终末地原生人物模型显示,默认隐藏;没有打开 MC 界面且桥接就绪时生效。
- 增加可选 Iris/Sodium 光影预览流程,验证完整 MC 渲染及帧读回。预览覆盖原生场景,尚未实现终末地与 MC 光影的深度融合。
局部离线基准不代表双游戏 FPS;本版没有同场景优化前后的联动性能百分比。详细范围见 性能说明 与 渲染说明。
内容模组与构建
开发组合包含 TaCZ 1.1.8-hotfix-r7、Touhou Little Maid 1.5.3、GeckoLib 4.9.3,以及原有 Create、Aeronautics、Sable 和 Flight Control。第三方 JAR、枪包及用户光影包不附在发行附件中;来源与 SHA-512 见 mc-neoforge/modpack.lock.json。
YSM 2.6.3 因本机原生库加载失败(err: 54)保持停用,下载到 libs-disabled/ 仅用于字节码审计。Maid Addition 没有已锁定的发布下载地址,作为可选本地文件;缺少它不再阻断干净环境构建,提供文件时仍严格校验哈希。EFML 工具优先读取实际运行配置,通过 CLI 注册和切换模块,旧加载器卸载不会删除已归 EFML 管理的代理。
验证与限制
- NeoForge 本地构建和 58 项检查通过;安装、EFML 与依赖工具 15 项 Python 检查通过。
- 原生输入、焦点切换、菜单关闭释放、透明裁剪和 ABI 生命周期检查通过。
- 终末地 1.6.3 + NeoForge 实机中,HUD 抽查的 78,666 个不透明灰阶像素与 MC 源图完全一致。
- 新版配件界面已重新加载并截帧核对,用户确认“亮度正常,点击不再穿透”。
- 女仆曾完成 120 次短程采样、移动 7.2 格且未穿地;后续会话仍记录到女仆掉出世界,因此不能保证长期行走和地形重建期间的支撑。
- 尚未完成两台电脑各运行终末地的联机、复杂航空学起降、全部枪械特效及 YSM 的实机验收。
本版仍是实验性项目。终末地适配详情见 1.6.3 记录。
EndCraft 4.1.2
EndCraft v4.1.2
4.1.2 修正 4.1.0 发行附件的打包问题,并改进安装与退出体验;玩法功能与 4.1.0 相同。只用 4.1.0 附件无法连接,请改用本版本附件。(4.1.1 未发布,内容并入本版本。)
修复
| 现象 | 原因与修复 |
|---|---|
| 导入模块提示“模块声明缺少有效的 author” | 玩法模块的 module.json 缺少 Better-Endfield 3.5.4 要求的 author;已补上,默认配置含 auto_enable: true |
| MC 一直连不上终末地,日志显示 “Endfield has not created it yet” | 共享内存由 endcraft.probe 模块创建,玩法模块只负责打开;4.1.0 只发布了玩法模块。现新增附件 EndCraft-probe-4.1.2-win-x64.zip,玩法模块声明依赖它,漏装时 Better-Endfield 会直接提示 |
| 终末地闪退或被强制结束后,隐藏的 MC 一直留在后台 | “随终末地退出”默认关闭,且连接一断就丢了终末地进程号,退出检查永远不触发。现默认开启:记住所连终末地,进程消失 5 秒后(或连接中断超过 2 分钟)MC 正常保存并退出;-Dskycraft.quitWithSkyrim=false 可保留旧行为 |
| 同时开两个 MC 时两者抢同一个角色 | 第二个连接桥接的 MC 不再连接,并在 MC 中提示关闭其中一个 |
改进
| 内容 | 说明 |
|---|---|
| 内存不足提示 | MC 可用内存低于约 3 GB 时,连接后在聊天栏提示把游戏内存设为 4096 MB(启动器自动分配可能只给 512 MB,MC 会在加载中内存溢出) |
| 模块包精简 | 模块 ZIP 只保留 DLL、module.json、README 与许可文件 |
| 源码包 | 改为 EndCraft-4.1.2-source.tar.gz,不会再被误选为模块 ZIP |
| 构建 | CI 升级到 Node 24 版本的 GitHub Actions |
安装
- Better-Endfield 必须为 3.5.4;更新的版本关闭了「第三方模块」入口。
- 在「第三方模块」中分别导入并启用
EndCraft-gameplay34-4.1.2-win-x64.zip与EndCraft-probe-4.1.2-win-x64.zip,重启终末地。 - Minecraft 需自行安装:MC 1.21.1 + NeoForge 21.1.247 或更新、Java 25,游戏内存手动设为 4 GB。
endcraft-neoforge-guest-4.1.2.jar放入mods;机械动力与航空学为可选。 - MC 连上终末地后窗口会自动隐藏,约 1–2 分钟后终末地中出现 MC 物品栏;关闭终末地后 MC 自动保存退出。
EndCraft 4.1.0
EndCraft v4.1.0
4.1 为 NeoForge 1.21.1 客户端加入局域网联机,并修复首轮联机实测中的显示与按键问题。Fabric 26.3 客户端与 4.0 相同。
新增
| 内容 | 说明 |
|---|---|
| 开放局域网 | 主机在 MC 聊天输入 /endcraft lan [offline] [cheats] [端口],或在 skycraft.properties 设置 lan=true;offline 不验证正版账号,cheats 允许访客使用指令 |
| 普通访客 | 只运行 NeoForge 客户端即可加入;出生在主机身边,主机服务器同步附近的终末地地形碰撞和三角面,访客端显示为按材质着色的地面 |
| 自带终末地的访客 | /endcraft join [地址] 加入(不填地址时自动搜索局域网世界),/endcraft leave 返回;tools/show-anchor.py 与 configure-gameplay-startup.py --anchor 统一两边的世界锚点;快速传送通知服务器 |
| 地形线框 | 引号键 ' 在终末地中显示终末地发送给 MC 的地形三角面(绿:可行走地面,蓝:物体上的可行走面,橙:墙面与陡坡,黄:隐形台阶坡道) |
| 碰撞箱 | F3+B 的碰撞箱可在终末地中显示;终末地 NPC 的替身以品红色框显示 |
| F1 / F3 | 新宿主模块 gameplay34 把 F1、F3 转发给 MC(升级方法见 NeoForge 说明) |
| 一键重启 | restart-neoforge-mc.cmd:终末地仍在运行而 MC 崩溃时,重新启动桥接客户端并连回终末地 |
修复
| 现象 | 原因与修复 |
|---|---|
| MC 角色的手臂、身体、披风互相穿插 | 皮肤按半透明导出,终末地不写深度;皮肤改为镂空导出 |
| 角色头顶白条 | 名牌文字的背景和颜色在终末地中无法还原;不再导出文字 |
| 原生测试在 CI 上偶发卡死 | 模拟宿主输出写满管道后无法退出;改为写入临时文件,超时时报告模拟宿主状态 |
已知限制
- 两台电脑各自运行终末地的联机尚未实机验证;同一台电脑上的普通访客已验证。
- 普通访客只能看到主机终末地角色附近的地形;终末地 NPC 在普通访客端不可见。
gameplay34的 F1/F3 转发尚未实机验证。- 4.0 的已知限制仍然适用,见 4.0 更新说明。
联机步骤见 局域网联机说明。
EndCraft 3.0.0 · 透明与流体修复
EndCraft v3.0.0
日期:2026-10-08。实验性联动原型,作为预发行发布。宿主模块 endcraft.gameplay33,共享内存协议 12;保留 1.0、2.0 标签与附件。
主要变化
- 修复玻璃及染色玻璃透明显示;将透明方块和流体与实体网格拆分,保留原生场景深度遮挡。
- 修复 MC 水颜色、透明混合与纹理动画;接收图集区域更新并按帧合并应用。流体视觉网格不再生成实体碰撞墙。
- 修复高速上坡时遗漏坡面的问题,增加脚下/邻格采样;地形仍为高度场。
- 修复 MC 输入回调与保存退出之间的锁等待死锁。
- MC 命中后调用原生受击组件,实测 12 次伤害转交及 6 次受击状态变化。
- 热更新和启动保留已验证存档锚点,从实际宿主位置重新同步,避免建筑因重新初始化漂移。
- 重写 README,增加安装/升级、操作、排错及架构教程;启动脚本支持显式 JDK 与 ENDCRAFT_JAVA_HOME,不再依赖开发机目录名判断自己的 MC 进程。
保留 2.0 的原生传送恢复、MC 战斗伤害、创造免伤、鞘翅/烟花、实体显示及普通体型载具乘客功能。
验证
用户放置普通玻璃、染色玻璃与水后确认“玻璃和水都正常”。原生渲染错误为空,透明网格与图集动画计数持续更新。MC 30 项测试通过,原生分层/纹理区域、输入、模块生命周期及既有基础检查通过;安装文件保护另有 7 项测试。
详细证据与适用范围见 第 31 版、第 33 版;自动测试和调用计数不代替所有场景的实机验收。
下载与使用
| 附件 | 内容 |
|---|---|
EndCraft-gameplay33-3.0.0-win-x64.zip |
宿主模块、清单、教程与许可证 |
endcraft-guest-3.0.0.jar |
配套 Fabric MC 模组 |
EndCraft-3.0.0-source.zip |
对应项目源码与固定提交的两份上游源码 |
SHA256SUMS.txt |
以上附件的校验值 |
仍需配套 Host、加载器和独立 MC 源码实例,不是一键安装包。 完整流程见 安装与升级教程,按键、指令与恢复见 操作教程。
2.0 升级应保留原安装目录、存档和旧锚点,停止旧玩法模块后切到 gameplay33;只启用一个玩法模块。默认独占开关开启,分号关闭后 MC 仍可能响应同一按键。
未完成项
- 分号“切换快捷键使用对象”的双向互斥行为,按用户指示本版暂未改。
- TNT 炸原生岩石:需真实原生炸弹校准,实机验收未完成;MC 方块破坏和敌人伤害仍保留。
- 光影包、原生水域映射、完整水上浮力、水下效果、波浪反射/折射。
- 多层地形/洞穴/复杂墙体、NPC 寻路、所有 NPC 的载具适配与坐姿。
- 跨全新地图建筑语义锚定、战斗奖励与重登持久性、全设备和游戏构建兼容。
原型仅在开发机当前游戏构建实测。附件不含游戏二进制、账号与认证索引、用户存档、运行日志或含 UID 的截图;许可与对应上游源码一同保留。
EndCraft 2.0.0 (prototype)
EndCraft v2.0.0
日期:2026-10-08。模块身份 endcraft.gameplay27,共享内存协议版本 12,新增兼容的可选 invulnerable、可乘坐/已乘坐标志及乘客事件。1.0 标签与发行附件保持原样。
本次变化
- 修复原生地图传送的位置争夺、目的地同步和第三人称史蒂夫模型消失。
- 保留 Minecraft 剑、弓、暴击、冷却及 TNT 爆炸的实际伤害计算,按敌人最大生命增强伤害,转交宿主伤害流程。实机确认敌人掉血、死亡和原生任务击杀进度增加。
- 创造/旁观模式同步宿主免伤,切回生存或关闭桥接时撤销自己的保护。
- 加入船、箭、掉落物及粒子的实体场景网格;修复船在粗略地形高度与实际地面之间的位置纠正。
- 普通宿主生物接近船/载人矿车时自动乘坐,MC 管理座位与乘客位置,宿主本体同步移动;下船、销毁载具、失联或场景暂停会释放自己的 AI/移动控制。
- 关闭遗留的宿主地形方块化,TNT 不再补出石头、矿石坑壁,已放置 MC 方块的爆炸破坏和敌人伤害继续保留。
- 下船落点检查原生高度场和已放置方块,避免落进粗略碰撞地面下。
- 包含 1.0 后续修复:1920×1080 实测 HUD(上限 4K)、20% 菜单遮罩、鞘翅与烟花、游戏模式指令、死亡视角恢复和
/endcraft recover。
使用
本机已加载修复版并配置下次启动自动运行。F5 切视角;/gamemode creative 启用创造及宿主免伤,/gamemode survival 回到生存。只剩 UI 时输入 /endcraft recover。船需要空旷位置右键放置,右键乘坐、Shift 下船。切回聊天窗口会释放 MC 按键。
伤害映射为「MC 最终伤害 / 20 × 目标最大生命」,例如 7 点对应 35%。创造模式不会补满切换前的损伤。原生菜单和传送期间桥接暂停,以原游戏位置为准。
产物和构建
EndCraft-gameplay27-2.0.0-win-x64.zip:宿主模块、清单及许可证。endcraft-guest-2.0.0.jar:对应 Fabric MC 模组。EndCraft-2.0.0-source.zip:当前源码与固定提交的两个上游源码。SHA256SUMS.txt:附件校验。
需要配套 Better-Endfield Host、独立 Minecraft 实例和源码工具链;不是把 JAR 直接放进终末地目录即生效的独立安装器。构建与注册步骤见 README;只启用一个 gameplay 模块,升级时先停用旧桥接,保留已加载的 DLL,使用新身份注册。构建需要 Windows x64、Visual Studio C++、JDK 25、Python 3;固定版本见 THIRD-PARTY-NOTICES。
已知限制
这是实机联动原型。复杂地形、多层碰撞、NPC 寻路、原生 NPC 专用坐姿动画及所有友好 NPC 类型的验收、跨地图建筑持久锚定、完整输入隔离和宿主水域到 MC 流体的映射未完成。战斗中本地 HP、死亡和任务计数已验证,缓存 serverHp 未观察到下降,重登持久性与奖励结算未验证。仅确认本机当前游戏版本和图形管线。
完整证据与验收边界见 第 24 版验证 及 第 27 版验证。发行不包含账号配置、MC 存档、游戏文件、运行日志或含 UID 的截图;保留项目和上游许可声明。
旧版本生成的石头/矿石已成为存档中的 MC 方块,本版不自动清空这些方块。
EndCraft v1.0.0(实验原型)
EndCraft v1.0.0
日期:2026-10-07。此版本发布当前联动原型,实际玩法模块身份保留为 endcraft.gameplay15,共享内存协议版本为 12。
已实现并有本机验证
- 真实《终末地》中显示 MC 角色、装备、物品栏,以及放置的 MC 方块。
- MC 网格通过 HGRP 原生场景管线绘制,使用宿主场景深度,原生 UI 绘制在世界网格之后。
- 桥接接管移动及视角,俯仰范围为 ±90°;第三人称相机执行宿主射线避障。
- MC 客户端与内置服务器使用同一平滑地形碰撞算法,保留普通 MC 方块碰撞。
- 提供热加载、诊断、构建和按自有文件哈希保护的安装/卸载工具。
已知问题及尚未完成
- 用户报告鞘翅无法正常使用;装备与烟花存在不代表滑翔和推进已经完成。
- MC HUD/库存画面固定为 640×360,放大到宿主窗口后清晰度不足。
- 尚未将 MC 攻击转交给《终末地》的正常战斗流程;不能据此声称剑、弓或 TNT 可以伤害宿主敌人。
- 连续走路卡住的问题仍需复验。当前高度场不能完整表示墙壁、洞穴、桥洞等复杂碰撞。
- NPC 对新增方块的碰撞/寻路、输入隔离、场景切换及失联恢复尚未完整验收。
- 只在本机的一组版本上验证,尚无其他设备、显卡或后续游戏版本兼容保证。
版本和产物
验证环境:Windows x64、Unity 2021.3.34f5 IL2CPP/Vulkan、Minecraft Java 26.3、Fabric Loader 0.19.5、Fabric API 0.161.0+26.3、JDK 25。外部源码提交及许可证见 THIRD-PARTY-NOTICES.md。
EndCraft-gameplay15-1.0.0-win-x64.zip:玩法模块 DLL、1.0 发行清单及许可证。内部模块身份与第 15 版兼容。endcraft-guest-1.0.0.jar:独立 MC 端 Fabric 模组。EndCraft-1.0.0-source.zip:项目对应源码及两个固定提交的完整上游源码,可重建 Host 与加载器。SHA256SUMS.txt:本次发行附件的 SHA256 校验。
模块 ZIP 和 MC JAR 需要配套 Host、独立 MC 开发实例与安装配置,不能仅把 JAR 放入终末地目录后启动。当前发行面向源码构建和试验;入口、构建及安装步骤见 README。源码中部分实机诊断路径仍沿用开发机路径,移植到其他目录时需要调整。
公开仓库和发行包不含本机认证索引、安装状态、MC 存档、游戏文件、运行日志或截图。发行源码保留 AGPL-3.0 与 MIT 等许可;外部游戏及账号不随发行提供。