CinematicPath Toolkit
Add-on for CinematicPath: sliders for segment duration and checkpoint position/rotation, single-segment preview, optional movement takeover. Adds tooling only - no CinematicPath feature is copied, merged or replaced.CinematicPath Toolkit
中文
关于这个模组
本模组是针对 CinematicPath 的优化与增强。
它不会合并、替代或重新实现 CinematicPath 的任何功能——路径、贝塞尔插值、检查点、播放全部由原模组完成,本模组一行都不做。它只在你已经装了原模组的前提下,把"调参"这件事变得能用:加滑条、加数值回读、加单段预览、加几个能被配置的输入修正。
原模组作者 mrGMD 的辛劳付出值得尊重:本模组不包含 CinematicPath 的任何代码,也不重新分发它的 DLL,所有交互都通过反射调用它自己的公开/私有成员完成。如果原模组更新导致内部成员改名,本模组会打印警告并安静退出,不会影响原模组运行。
必须先安装并启用 CinematicPath(否则本模组什么都不做)。
它解决什么问题
原模组只能在「All Elements Edit」窗口里手填数字,改完要 Apply、关窗口、再从头播放,调一个时长要来回好几遍;而且坐标是一串三位小数,只能靠猜。
本模组补上:
| 功能 | 说明 |
|---|---|
| 时长滑条(逐段) | 每段一行滑条,拖动即时写入该段速度,不用 Apply。旁边直接显示 距离 / 转角 / 时长 / 米每秒 |
| 统一速度 | 一条滑条 + 「套到全部」:所有段一次设成同一个速度,解决"一段快一段慢、看着一顿一顿" |
| 检查点位置滑条 | X / Y / Z 三个滑条,窗口 = 当前值 ±25 米(一格约 0.1 米);点位挪出 30 米窗口自动跟随 |
| 检查点朝向滑条 | 左右 0–360、上下 ±89,和原模组的 Yaw / Pitch 一致 |
| 记成当前相机 | ⊙ 把相机此刻的位置与朝向直接写进这个点——不用再读坐标 |
| 飞到这个点 | ← 相机瞬移到该点,检查构图 |
| 单段预览 | ▶ 只播这一段,到下一个检查点自动停 |
| 接管自由飞(可选) | 原模组的自由飞没有 invert 选项;打开接管后可以分别翻转 W/S、A/D、空格/Ctrl、鼠标 X/Y,并单独设飞行速度 |
| 静音运动学速度警告 | 自由飞时玩家刚体是 kinematic,原模组每帧给它写速度,Unity 会刷 Setting linear/angular velocity of a kinematic body is not supported(实测一局 9 万行、8 MB 日志)。本模组在 API 边界拦掉这些无效写入 |
用法
按 F6 打开/关闭调参窗口(可在 F8 配置里改键)。
- 先按原模组的方式进自由飞(默认
F10),左键记检查点 - 按
F6打开本窗口(会自动关掉原模组的编辑窗口,避免两个窗口抢鼠标) - 拖滑条、点
⊙记点位、按▶逐段看 - 关掉本窗口后,按右键重新打开原模组窗口——它会按当前值重新生成,数字与滑条一致
- 满意后照常在原模组里
Overwrite/New save保存(路径存档仍由原模组管理)
配置
BepInEx/config/ChineseCanFly.CinematicPathToolkit.cfg
| 节 | 项 | 默认 | 说明 |
|---|---|---|---|
General |
Toggle Hotkey |
F6 |
开关窗口 |
General |
Min Duration / Max Duration |
0.3 / 30 | 时长滑条两端(秒) |
Movement |
Take Over Movement |
false |
由本模组接管自由飞的移动与视角(打开后下面的翻转才生效) |
Movement |
Invert W/S、Invert A/D、Invert Space/Ctrl、Invert Mouse X/Y |
false |
仅在接管打开时生效 |
Movement |
Fly Speed |
8 | 接管模式下的飞行速度(米/秒,Shift ×2) |
Logging |
Silence Kinematic Velocity Warnings |
true |
拦掉上面那种每帧警告 |
已知问题
- 接管模式打开时,在原模组的窗口开着的那一刻本模组会让出控制权(不移动、不转向、不碰光标),所以两项互不打架。
- 本模组依赖 CinematicPath 的内部成员名(
checkpoints、RecalculateSegment、StartPlayback等)。原模组大改版后可能需要更新本模组。 - 若 CinematicPath 在 Valheim 1.0.21 上出现
MissingMethodException: MessageHud.ShowMessage这类报错,那是原模组自身的版本兼容问题,本模组不修复、也不分发修改过的原模组 DLL,请等待或联系原作者。
致谢
- mrGMD —— CinematicPath 的作者,路径与播放的全部实现都归他
- BepInEx / Harmony 团队
MIT licensed. Source: https://github.com/tutu8420/CinematicPath-Toolkit
English
An add-on for CinematicPath, not a replacement.
This mod does not merge, copy, reimplement or redistribute any part of CinematicPath. Paths, Bézier interpolation, checkpoints and playback all belong to the original mod; this add-on only makes that mod tunable: sliders instead of typed numbers, live feedback, single-segment preview, optional input takeover, and a fix for the per-frame kinematic body warning spam (≈90k log lines / 8 MB per session).
CinematicPath must be installed and enabled — otherwise this mod does nothing.
Features: per-segment duration sliders (applied instantly), one "same speed everywhere" slider, position sliders (X/Y/Z, ±25 m window) and rotation sliders (yaw 0–360, pitch ±89) for the selected checkpoint, "copy current camera" button, "fly to this checkpoint", single-segment preview, optional movement takeover with per-axis inversion, and silencing of the useless kinematic velocity writes.
Press F6 to open the window. Close it, then right-click to reopen CinematicPath's own window so its numbers refresh.
Known issues: relies on CinematicPath's internal member names; a major update of the original may require an update here. If CinematicPath itself throws MissingMethodException: MessageHud.ShowMessage on a game update, that is an incompatibility of the original mod — this add-on neither patches nor redistributes it.
Credits: mrGMD for CinematicPath; BepInEx and Harmony teams.
MIT licensed. Source: https://github.com/tutu8420/CinematicPath-Toolkit
