介绍
Iron’s Spell Scroll Ponder
Iron’s Spell Scroll Ponder 为来自 Iron’s Spells ‘n Spellbooks 的卷轴添加了可交互的法术预览。将鼠标悬停在有效的法术卷轴上,并按住 Ponder 可配置的按键(默认为 W),即可打开实时预览。
本模组无需为每个法术单独制作场景,而是会在隔离的预览维度中,让服务端模拟玩家施放所选法术。实体、方块、粒子、声音、施法状态以及 Iron’s Spellbooks 的特定客户端数据包,都会投射到 Ponder 虚拟世界中。这样一来,内置法术和许多附属模组的法术都能获得实用的预览,无需为每个法术编写专属场景代码。
附属模组兼容性
大多数 Iron’s Spellbooks 附属模组都能自动兼容,因为本模组会通过 SpellRegistry 发现它们注册的法术,并让服务端模拟玩家施放真实法术。随后,它会将产生的实体、粒子、声音、方块变化、施法状态以及经过审核的视觉数据包投射到 Ponder 场景中。使用 Iron’s 标准施法和世界 API 的普通附属模组法术无需专门集成。
对于复杂法术,如果其关键行为发生在初次施法之后,例如再次施法、后续物理攻击、效果移除回调或其他游戏交互,则可能需要适配器。附属模组作者可以在通用初始化期间注册服务端 SpellPreviewAdapter:
SpellPreviewAdapters.register(
ResourceLocation.fromNamespaceAndPath("your_mod", "complex_spell"),
new SpellPreviewAdapter() {
@Override
public void onCastCompleted(SpellPreviewContext context) {
// Prepare any state required by the follow-up demonstration.
}
@Override
public Action tickAfterCast(SpellPreviewContext context) {
if (context.ticksSinceLastCast() == 12) {
context.performPhysicalAttack(1.0F);
}
return context.ticksSinceLastCast() >= 20 ? Action.COMPLETE : Action.WAIT;
}
});
适配器生命周期还提供 onSceneReady、beforeRecast 和 onSessionClosed,而 SpellPreviewContext 则提供用于常见交互的受限辅助方法。对于无法安全隔离的法术,例如持续存在的传送门或跨维度旅行,请在 allowsSimulation 中返回 false。自定义客户端专用数据包不会自动被信任:请优先使用标准实体、粒子、声音和方块 API,或为该数据包添加范围明确、经过严格审核的投射处理程序。完整 API 请参阅 SpellPreviewAdapter 和 SpellPreviewContext。
功能
- 查看卷轴提示时,按住常用的 Ponder 按键即可打开预览。
- 显示法术名称、描述、学派、稀有度、等级、施法类型、魔力消耗、冷却时间、法术强度、独特属性以及观测到的目标伤害。
- 呈现紧凑的
7 x 7战斗场地,其中包含一名模拟施法者和三个目标。 - 重放当前法术,同时保留摄像机视角。
- 按学派浏览已启用的法术、搜索法术并切换当前预览。
- 旋转、平移并缩放 Ponder 风格的场景。
- 显示充能型和持续型法术的服务端同步施法进度。
- 在服务端运行法术逻辑,同时让真实玩家保持原位。
- 在可分发的 JAR 中内置 Ponder 和 Flywheel。
要求
仍需安装 Iron’s Spellbooks 及其常规运行依赖。本模组必须同时安装在客户端和服务器上。
使用方法
- 打开物品栏界面,将鼠标悬停在有效的 Iron’s Spellbooks 卷轴上。
- 按住提示框中显示的 Ponder 键。
- 拖动鼠标旋转场景,滚动鼠标滚轮缩放,并使用界面显示的移动键平移镜头。
- 使用 Replay,重新构建并施放当前法术。
- 点击卷轴图标,搜索并预览其他已启用的法术。
- 按 Escape 键或关闭界面,结束服务端预览会话。
Ponder 键可在 Minecraft 的按键绑定中更改。生成的 config/iss_ponder-client.toml 文件还提供 tooltip.showScrollSpellDescription;将其设为 false,即可停止在卷轴提示框中添加法术指南说明,同时保留预览提示。
安全性与兼容性
法术代码属于可执行的模组代码,因此自动兼容性不可能做到绝对可靠。预览会将施法时间限制在 15 秒,并将每位玩家隔离在 iss_ponder:spell_preview 中一个遥远的区域里。内置的 pocket_dimension、recall 和 portal 法术仅供查看信息,因为它们可能会改变维度或持久化的世界状态。
依赖生物群系、结构、方块交互、真实玩家物品栏或额外游戏操作的附加内容法术,可能需要专用适配器。自定义客户端数据包在虚拟世界中重放之前,也必须经过明确审查。
本项目为多阶段、再次施放、反应式防御及后续投射物机制提供了专用的后续适配器。测试矩阵请参阅 SPECIAL\_SPELLS.md;已验证的架构、源码参考和升级检查清单请参阅 TECHNICAL\_NOTES.md。
常见问题
Iron’s Spells 3D Cast Preview 支持哪些 Minecraft 版本?
Iron’s Spells 3D Cast Preview 支持 Minecraft Java 版 1.20.1–1.21.1,共 2 个版本,可用的加载器:Forge / NeoForge。下载时注意选择和你游戏版本一致的文件。
Iron’s Spells 3D Cast Preview 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Forge / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端和服务端都要装。
_p1nero 的其他作品
查看全部 →Epic Fight – Sword Soaring
你将进入中国古典武侠小说的世界,体验史诗般的武功和英雄之旅。
Epic Fight – Invincible Lib
一个让你更轻松创建按键组合和技能的前置库。
Bountiful Villager
一个内容丰富的附属模组,新增了一种村民职业和一座新建筑。
EpicFight-Extra
为 Epic Fight 添加大量动画。
评论
登录后评论和评分