欢迎光临散文网 会员登陆 & 注册

关于东方兽王园BGM没有声音的问题

2023-08-17 20:00 作者:老姐我就直说  | 我要投稿

关于游戏没有BGM的问题,解决方法是检查游戏所在目录是否包含中文路径,如是,修改成英文即可。


这是一个朋友今天初见遇到的问题。



游戏的其他部分都正常运作,只是没有BGM。


不得不让人怀疑在有中文路径的情况下游戏根本无法加载thbgm.dat(已确认,如图1),与之相对的,成功加载了余下的其他文件(th19.dat)。个人推测是因为加载其他文件时,程序使用的是相对路径,由于其他文件均与th19.exe本体位于同一层目录下,故不论是否包含了中文目录,都可以被正常加载,而在加载thbgm.dat时,程序可能首先获取了自己的绝对执行路径,然后拼接出了thbgm的路径并加载,故在此过程中对可能出现的中文路径处理不当,导致了问题。


图1 - 不同路径下th19.exe加载的文件


对于thbgm.dat没加载这种错误,程序居然没直接报错退出,这就意味着这个错误一定在程序内部被catch了。在游戏初始化阶段catch到了这么严重的错误还不直接报错退出,反而是继续装作无事发生一般执行其余的代码逻辑,本人做个大胆的假设,就是在本作内容体量巨大的情况下,2un可能在完成基本立绘,编写弹幕和游戏逻辑时,未能完成bgm的作曲,这导致在调试游戏程序的阶段必须要容许诸如“没有此段对应的bgm游戏也要正常运作”这种事情的发生,甚至有可能在程序底层的管理bgm播放相关代码逻辑中添加了对于bgm缺失的错误suppression。这个猜想同时也解释了为什么thbgm.dat相比于其他文件,在加载路径方式上的特殊。以上,此般种种最终导致了游戏在v1.00a,也就是光盘发布版的时候,在遇到中文路径的情况下无法加载thbgm.dat,因此也就没有BGM声音,而其他部分正常运作的情况。


关于东方兽王园BGM没有声音的问题的评论 (共 条)

分享到微博请遵守国家法律