补全原版缺失的音乐管理器
本帖最后由 灵能实体 于 2026-9-28 00:21 编辑香草似乎一直缺少这么一个功能不是吗?
使用AI辅助以获得更高的质量与产能
使用须知:由于原版的屎山代码,F9读档后会导致OpenAL炸掉,音乐直接消失,与本模组无关
解决方法:不要使用F9快速读档,使用ESC后选择读取存档,或
Miko OpenAL 音效升级包 - Mod制作发布 - 远行星号中文论坛 - Powered by Discuz! Archiver
下方是演示视频
[远行星号]BGM我真得好好控制你了,远行星号音乐管理器
少了一部分的功能,可以自行探索
0.1.1:略微测试并确认了F9读档音乐消失的问题
0.1.2:改为jar打包防止java源码被当成脚本编译(也是神人了,运行时编译顺序不同导致BUG)
0.1.3:支持了部分第三方启动器,本次更新可以覆盖安装
0.1.4:修复了部分BUG,曾导致:关闭自定义列表音乐来源模组后游戏本身音乐消失,再次启用后来源列表异常
虽然这些音乐的名字我看的懂
但是要是变成中文的就更好了 很不错 Yessssssssss 下北泽远野 发表于 2026-9-11 20:27
虽然这些音乐的名字我看的懂
但是要是变成中文的就更好了
音乐名称识别自文件名,文件名就是英文,并且某些音乐本身没有名字,无法汉化 太好了,支持! 不知道什么原因,0.98a安装后右侧没有没有窗口,只启动播放器mod也不行,还请排查 D大调 发表于 2026-9-23 01:14
不知道什么原因,0.98a安装后右侧没有没有窗口,只启动播放器mod也不行,还请排查 ...
具体情况
我不会灵能预言,你不说具体情况我没法判断
例如:一进入游戏就不存在/读档后消失/偶发性消失/战斗后消失
只有你给出了具体情况我才能针对性排查
没有具体情况,我无法复现。那就是没有BUG 灵能实体 发表于 2026-9-23 10:31
具体情况
我不会灵能预言,你不说具体情况我没法判断
例如:一进入游戏就不存在/读档后消失/偶发性消失/ ...
感觉跟我一样,我也是只启动这个音乐管理器和几个前置,然后LunaLib设置里也看得见选项。但是加载进游戏右侧直接就是没有这个窗口,也就是说一进游戏就不存在。我用的游戏版本是以前的传统黑体版本,0.98a 清茶 发表于 2026-9-23 10:44
感觉跟我一样,我也是只启动这个音乐管理器和几个前置,然后LunaLib设置里也看得见选项。但是加载进游戏 ...
嗯,有意思,我去查查 灵能实体 发表于 2026-9-23 10:49
嗯,有意思,我去查查
开始我以为是跟快速渲染的启动有关系,但是我原版启动也还是进游戏就不存在 清茶 发表于 2026-9-23 10:44
感觉跟我一样,我也是只启动这个音乐管理器和几个前置,然后LunaLib设置里也看得见选项。但是加载进游戏 ...
到\starsector-core\starsector.log里面搜索MusicManager,把全部匹配的内容发过来,如果完全搜不到就说一声,也能确认BUG在哪 我怕搞错,我就让AI帮我去搜了。这是AI总结的
D大调 发表于 2026-9-23 01:14
不知道什么原因,0.98a安装后右侧没有没有窗口,只启动播放器mod也不行,还请排查 ...
已修复,使用0.1.2重新安装(请勿覆盖安装) 清茶 发表于 2026-9-23 11:33
我怕搞错,我就让AI帮我去搜了。这是AI总结的
已修复,使用0.1.2重新安装(请勿覆盖安装) 那我缺少的战场切歌这一块谁给我补啊 少狼Wolf Yang 发表于 2026-9-23 12:18
那我缺少的战场切歌这一块谁给我补啊
考虑到部分mod可能会自带战斗BGM(比如前线秘闻),以及部分交互界面的兼容性问题(比如舰队交互页面),本mod不提供战斗内音乐控制能力
当然,如果你需要,也可以有,不过就不是战斗内切歌了,而是按照本mod中,你自己选择的音乐列表自动播放 灵能实体 发表于 2026-9-23 12:25
考虑到部分mod可能会自带战斗BGM(比如前线秘闻),以及部分交互界面的兼容性问题(比如舰队交互页面), ...
## MusicManager 报错总结(报给作者用)
### 环境
- 游戏版本:**Starsector 0.98a-RC8**
- MM 版本:0.1.x
- Java:17.0.10
- 启动器:Miko Rouge(加了 FR 渲染优化 agent)
### 错误现象
在 mod 列表里已启用 MusicManager,但进战役后**游戏里看不到 MM 按钮面板**。日志每~250ms 报一次 SecurityException,循环不停。
### 错误内容
```
java.lang.SecurityException: File access and reflection are not allowed to scripts.
at com.fs.starfarer.loading.scripts.B.loadClass(Unknown Source)
```
三种触发场景:
表格
| 错误标签 | 触发位置 | 说明 |
| --- | --- | --- |
| `` | `MMIndex.findVanillaSounds:110` | 扫描原版音效列表被拦 |
| `` / `` | `MMStore.file:46` / `writeFile:192` | 读写 MM 配置文件被拦 |
| `` | `MusicManagerModPlugin.screenPanel:334` | **创建 MM 按钮面板被拦**(按钮不显示的直接原因) |
堆栈入口:`MMScheduler.advance:156` → `beat:166` 每帧调用。
### 根因判断
即使去掉了 FR agent(第三方渲染优化),错误依然存在。堆栈里拦人的是 `com.fs.starfarer.loading.scripts.B`—— 这是 **0.98a-RC8 原版自带的脚本类加载器**,不是 FR 的。
也就是说:**MM 0.98a-RC8 的脚本沙箱不允许 mod 脚本做 `Class.forName` 反射和文件 IO**,而 MM 的 `screenPanel()` 和 `MMStore.file()` 正好用到了这两个操作。
我更新了进去还是没有。。是我装了FR? 好耶,终于可以自己切歌了{:tieba_43:} 灵能实体 发表于 2026-9-23 12:25
考虑到部分mod可能会自带战斗BGM(比如前线秘闻),以及部分交互界面的兼容性问题(比如舰队交互页面), ...
也就是说目前是不会战斗内切歌?
我看隔壁沙耶之歌里面有船插可以战斗内切歌,两者目前会不会有冲突(例如两者都放不了歌)? 本帖最后由 灵能实体 于 2026-9-23 18:30 编辑
24832612 发表于 2026-9-23 14:02
也就是说目前是不会战斗内切歌?
我看隔壁沙耶之歌里面有船插可以战斗内切歌,两者目前会不会有冲突(例 ...
不会产生冲突,因为我是通过拦原版的音乐调用实现的,而且战斗内播放我没碰,设计时就考虑了此类问题 清茶 发表于 2026-9-23 12:28
## MusicManager 报错总结(报给作者用)
### 环境
神秘,我再看看 清茶 发表于 2026-9-23 12:28
## MusicManager 报错总结(报给作者用)
### 环境
好了,大概率是Miko启动器的问题,它换了janino给我编译成脚本了
等会会传一个新版本,你可以先试试原版启动器纯净启动能不能用 灵能实体 发表于 2026-9-23 19:28
好了,大概率是Miko启动器的问题,它换了janino给我编译成脚本了
等会会传一个新版本,你可以先试试原版 ...
辛苦了,纯净原版和mod环境都已经有那个窗口了,已经修好了 清茶 发表于 2026-9-23 20:32
辛苦了,纯净原版和mod环境都已经有那个窗口了,已经修好了
能沟通,会发日志,会描述BUG现象,会说明自己的环境与纯原版有差别,辛苦在哪
如果人人都像这样报BUG我一天能修几十个
无论如何,感谢你的测试和汇报
页:
[1]