滑铲穿越 — 障碍登踏与间隙跨越插件
注:此模组的编码与实现完全由AI完成。
概述在《天际》中,人物在斜坡上被细小障碍物绊住,或卡在物体间的狭窄缝隙里,会无缘无故地突然停下脚步。
滑铲通过 是一个SKSE C++插件,用于解决这一问题。它能检测到您被障碍物卡住或挤入缝隙中的情况,然后自动帮您跨过或推过去,让您的移动保持流畅。
特性障碍台阶斜坡上的低矮障碍物——突出的岩石、小台地——无需跳跃即可自动跨过。
狭窄缝隙挤身穿过柱子、架子、家具——如果两侧缝隙狭窄但前方畅通,插件会帮你滑过去。天际省那些狭窄的室内空间会变得容易探索得多。
斜坡与山地跋涉当你斜向驶上陡坡时,插件会读取地表并引导你向上攀爬。白漫城的山丘和裂谷的悬崖将变得易于通行。
- 区分陡峭岩壁与平缓地形
- 平稳处理台阶和边缘,无需跳跃
- 奔跑、行走和潜行时均有效。
NPC挤压通道(限定)在某些情况下,NPC会与墙壁或物体一起挡住你的去路,该插件或许能帮你挤过去。实际效果取决于NPC的位置和周围的地形结构。
无错误触发卡死检测基于实际速度与预期速度的比值。开阔地面、缓坡以及短暂战斗停顿均不会触发该插件。
低障碍物过滤低于膝盖高度(约25单位)的小石块和家具边缘不计入计算范围,因此你不会被平时直接跨过的东西阻挡路线。
[更新] 新增NPC推送功能
新增实验性NPC推开功能。当穿过被NPC堵住的狭窄通道时,NPC现在会被推到一旁让路。
硬直反应动画也可以通过MCM开启/关闭。
需求- 上古卷轴5:天际 特别版(包含周年纪念版)
- SKSE64(最新推荐版)
- SKSE插件地址库
安装通过 Mod Organizer 2 或 Vortex 安装。
如需手动安装,请将
SlideThrough.dll 在:
Data\SKSE\Plugins\SlideThrough.dll
卸载删除该DLL文件。不影响存档。
兼容性- 同步测试 TUDM, TK Dodge, CGO 以及其他移动方式的大修(结果可能因加载顺序而异)
- 无 .esp 文件——零加载顺序占用
- 无需MCM,无需INI——安装即忘
已知问题- 正面直冲墙壁或斜坡(完全垂直)时无法处理——稍微倾斜一点效果最佳
- 极端复杂的地形(洞穴顶壁、层层叠叠的巨石)可能会使坡度引导朝向意想不到的方向
- NPC挤身通过是视情况而定的,并非在所有情况下都能可靠生效
源码完整源代码可在GitHub上获取:
https://github.com/GKCH14/GKCH/tree/main/SlideThrough作者注这个模组的编码和实现完全由人工智能完成。
这一切始于一个简单的烦恼:探索时被小障碍物卡住,或在狭小空间里动弹不得。当时没有现成的模组能解决这个问题,于是我从零开始,编写了一个SKSE插件来解决它。
— 开发故事:如何解决攀爬障碍问题 —尽管经过多次尝试,阶梯式抽取系统仍然屡遭失败。
突破来自测试期间的一次观察:
下坡时,那些曾让我上坡时寸步难行的障碍,竟毫无阻碍地通过了。正是基于这个差异,我产生了一个想法——如果将上坡时的障碍物碰撞改为使用与下坡相同的接近角度会怎样?我把上面的示意图展示给AI,解释了这一概念,并让它据此重新实现。效果立竿见影:障碍物开始被自然而干净地跨过。
事实证明,利用《天际》物理引擎中已有的行为——而非试图从外部强行解决——才是关键所在。
欢迎在“Bug报告”或“讨论”中提交错误报告和建议。
制作人员名单- SKSE团队
- Ryan McKenzie — CommonLibSSE-NG
- meh321 — 面向SKSE插件的地址库
滑行穿过 — 越过障碍物・穿过缝隙插件
此mod的编码与实现工作全部由AI完成。
概要在《天际》中,角色有时会被斜坡上的小障碍物卡住而停下,或卡进物体缝隙中动弹不得。虽然都是些小事,却会突然打断探索的节奏。
滑行穿越这是一个解决此问题的SKSE C++插件。当检测到碰撞障碍物或卡入缝隙时,会自动跨越或挤过并继续移动。
特征障碍物自动跨越自动越过斜坡上突出的岩石和低矮的台阶,无需跳跃。
穿过狭窄缝隙即使被柱子与架子之间的缝隙等左右夹住,只要前方是开阔的,角色便会自动穿过。这使得在天际省狭小的室内空间中移动变得格外舒适。
山岳·陡坡攀爬辅助当角色以略微倾斜的角度冲上陡峭斜面时,系统会检测到斜面并将角色引导至上升方向。即使是在Whiterun或The Rift等险峻地形中,也能更加顺畅地移动。
- 区分陡坡与缓坡地形进行判定
- 无需跳跃即可处理台阶差
- 奔跑、行走、潜行全支持
NPC穿模(限定的)当NPC夹在墙壁或物体之间时,有时可以从它们中间挤过去。不过结果会因NPC的位置和周围地形而异,并非万无一失。
无错误检测“实际速度 vs 预期速度”的比率用于判定堆叠,因此在开阔地带、缓坡或战斗中暂停时不会触发。
排除低矮障碍物膝丈(约25单位)以下的小石头或家具边缘会从滑行计算中排除。不会卡在平时能直接走过去的物体上。
【更新】新增NPC推挤功能
添加了当NPC堵住狭窄缝隙时,可通过时推开NPC以腾出空间的功能(实验性)。
另外,可在MCM中开关NPC被推开时的踉跄反应动画。
必要环境- 《上古卷轴5:天际 特别版(含AE)》
- SKSE64(推荐使用最新版)
- SKSE插件地址库
安装请使用 Mod Organizer 2 或 Vortex 进行安装。
手动的情况下
SlideThrough.dll 放置在以下位置:
Data\SKSE\Plugins\SlideThrough.dll
卸载只需删除DLL即可。不会影响存档数据。
互换性- TUDM・TK闪避・CGO 已确认与移动类mod共存(根据环境可能有所不同)
- 无.esp — 不影响加载顺序
- 无需MCM・无需INI设置 — 放入即用
已知问题- 当完全正面(直角)撞上墙壁或斜面时不会发动。从稍斜的角度进入则可以正常运作。
- 在非常复杂的地形(洞窟顶部附近、岩石重叠等处),攀爬引导可能会向非预期方向作用。
- NPC穿模取决于具体情况,并非在所有情况下都能稳定生效
源代码源代码已在GitHub上公开:
https://github.com/GKCH14/GKCH/tree/main/SlideThrough来自作者此MOD的编码与实现由AI负责完成。
开发这款模组的契机,是源自于探索时被小障碍物卡住、或是卡在狭窄缝隙中的挫败感。由于当时并没有现成的模组能解决这个问题,我便以SKSE插件的形式从零开始实现了它。
— 开发秘话:发现跨越障碍的方法 —障碍物跨越处理经过了反复尝试,却始终难以获得令人满意的结果。
带来转机的是测试中的一个发现。
在下坡途中遇到障碍物时,能够顺利越过在上坡时无法翻越的同等高度障碍物。我注意到了。
注意到这一行为差异后,我萌生了一个想法:“如果在攀爬时遇到障碍物,将其引导至与下坡相同的接近方向,是不是就行得通呢?”我将上图展示给AI并传达了这一思路,让它尝试修改实现,结果障碍物被跨越得异常自然,有趣极了。
发现比起力量技能的分步计算,利用《Skyrim》物理引擎特性的这种方法要合适得多。
Bug报告与改进建议请通过Bugs标签页或Discussion提出。
制作人员名单- SKSE团队
- Ryan McKenzie — CommonLibSSE-NG
- meh321 — 面向SKSE插件的地址库