Ballance启动帮助

来自Ballance Wiki
(重定向自兼容性
跳转至: 导航搜索

Ballance 作为 2004 年开发的游戏,其天生能兼容的系统仅仅是 Windows 95 至 XP,能完美兼容的后续操作系统只有 Windows Vista 至 Windows 7 和 8.1。相对于当今更新一代的操作系统和硬件而言,相当容易遇到兼容性问题,轻则导致游戏运行不稳定,重则导致游戏不能运行。本文的目的即是对 Ballance 启动时的系统检测原理提供简介,并对游戏不能正常运行的情况给出帮助,同时也为非 Windows 系统给出运行 Ballance 的方法。

First of all - it all relys on Virtools: we basically scripted the game - with the help of the IPION physics engine; I am sure it is not the script that is broken, but the engine itself. I have to admit - we had many problems with laptops from the beginning, simply because there were no laptops on the market as we developed the game, so it should always run much more stable on a PC than on a laptop or similar hardware.

首先——这个游戏的一切都是依赖于 Virtools 的:我们本质上其实是借助了 IPION 物理引擎写了游戏的脚本;我很确定脚本没有问题,出问题的应该是引擎自身。我必须承认我们一开始就有很多笔记本电脑上的运行问题,原因倒是很简单——当年我们开发游戏时市场上并没有笔记本。所以比起笔记本或相似硬件的机器,游戏在台式机上运行时应当会稳定得多。

克劳斯·里希(2019年8月16日)

启动问题修复

Ballance 仅仅对于 Windows 操作系统开发;因此,本文给出的建议主要针对 Windows 用户进行。其他的桌面操作系统,例如 macOS 或各种 Linux 发行版,若需运行 Ballance,则需要一些支持运行 Windows 软件的平台作为兼容层。

下文将会介绍常见的启动问题并给出解法和建议;对于 Windows 以外的操作系统上的 Ballance 运行,我们会在下一节给出建议。

常见问题

通用最简单解法

注:Ballance Mod Loader 所进行的游戏优化反而可能会导致 Ballance 运行时帧率不稳定,导致玩家感受上认为游戏不流畅。这种情况下您可以使用外部帧数锁定工具来获得流畅体验(若不想单独下载锁帧工具,使用 OBS 等录像软件并选中捕获 Ballance 就已经可以将之锁帧)。

Error_0: Game could not be started! 弹窗

  • 请尝试安装 Microsoft Visual C++ 运行库,并启用 3D 驱动。如果您正在使用虚拟机,请注意启动虚拟机设置内的 3D 加速功能。

游戏进入即黑屏(或弹出分辨率选择窗口)

请按照以下方式逐步测试:

  1. 右键 Ballance安装目录\Bin\Player.exe,进入属性——兼容性界面,勾选以管理员身份运行;
  2. 在相同的界面设置简化颜色——16位(65536)色;
  3. 兼容性设为 Windows XP (Service Pack 3);
  4. 兼容性设为 Windows 95;
  5. 进入 NVIDIA 控制面板(或 AMD 控制面板),新建一个 640x480 的显示输出模式。

值得注意的是,个别步骤的方式单独使用就能解决启动黑屏问题。所以,若您在执行某个步骤后,Ballance 能够被成功运行,可以尝试关闭以上的部分设置例如,个别系统可能仅需要开启管理员身份就可以运行Ballance,因此若您开启了管理员身份后可以运行,可以尝试关闭兼容模式)。此外,您也可以尝试对如上的 Player.exe 右键点击属性→兼容性→简化的颜色模式,选择 简化16位(65536)色。通过实测,这种方法可在 Windows 10 1803 及以前的版本上不调整兼容性而直接运行Ballance,而之后的版本可能仍会出现吃命卡死的情况。

注:如果在 Player.exe 上开启了以管理员身份运行,可能会增加延迟;一般而言此延迟不会影响正常游戏,但如果进行竞速活动,可能会造成影响;可以通过在 Startup.exe 上开启管理员模式,然后启动游戏。

游戏内图形 (Graphics) 设置界面卡死

  • 请尝试将游戏以管理员身份运行。

若管理员身份运行不能解决此问题,使用管理员权限运行注册表编辑器(打开开始菜单,输入 regedit,并右键——管理员权限运行),找到以下位置:

  • 对于 32 位系统: HKEY_LOCAL_MACHINE/SOFTWARE/Ballance/Settings;
  • 对于 64 位系统: HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Ballance/Settings

在右侧列表中找到 VideoDriver 并双击,设置为 0,并打开游戏看是否解决。如果不能解决,尝试将 VideoDriver 设置为 0 的同时将VideoMode 项直接删除。如果更改上述值没有效果,可能是因为 Windows 将 Ballance 的真正数据存储到了其他位置(您可以参阅Windows虚拟化与重定向页面的帮助)。

如果仍未解决,我们可以转换思路,用外部工具调整分辨率,如使用 Ballance工具箱V3 调整游戏的分辨率为其所支持的分辨率,比如 1024x768。

卡死

  • 右键 Ballance安装目录\Bin\Player.exe,进入属性——兼容性界面,并将兼容性设为 Windows 95。

上述方法均不能解决问题

直接重装自己的操作系统,回退到例如 Windows 7 确实能够完美解决不兼容乃至延迟问题,但这显然不是任何值得鼓励的做法。重装操作系统步骤繁琐,而且,Windows 7 和更老的系统当前已经停止支持[1],Windows 8.1 的延长支持也即将终止。如果您执意要这样安装下去,您相当于是在主动将自己置于越来越危险且新软件兼容性问题也会越来越大的环境中

如果此时仍然无法运行,很遗憾,可能您的系统确实难以兼容 Ballance。我们在不重装操作系统的条件下,唯一的解法是使用虚拟机。目前,使用 Windows 7 或 XP 系统,并使用 VMware 或 VirtualBox 虚拟机软件载入上述系统(但 Windows 专业版自带的 Hyper-V 不可),均能保证 Ballance 的完美运行(唯一的缺陷是虚拟机存在输入延迟,不适合竞速活动)。

注: Windows XP 的体积较小,安装也较快,但由于其年代久远,置于虚拟机中时,可能会有性能问题;Windows 7 虽然体积较大,但一般能更加流畅地运行 Ballance。

非 Windows 操作系统启动帮助

macOS

以下操作均基于使用Intel芯片的Mac电脑进行操作,如果您使用的是使用Apple Silicon的Mac电脑,您暂时没有比较好的原生运行Ballance的方法,只能够使用ARM Windows的虚拟机运行(由于ARM Windows转换效率极其低下的x86转ARM兼容层的原因,使用该操作性能损失极大)

macOS 下运行 Ballance 可以使用 CrossOver 或 Wine。

如何查看您的Mac电脑使用的是哪种芯片

  1. 轻点左上角苹果菜单。
  2. 选择“关于本机”(About This Mac)。
  3. 在弹出的菜单中查看“处理器”(Processor),如果您的处理器一栏显示的是类似于“X.X GHz X-Core Intel XXXXX XX”的信息则代表您的Mac使用的是Intel的芯片,否则您使用的是Apple Silicon的Mac电脑。[2]

方法一:使用Crossover运行

CrossOver是一款收费软件。
CrossOver软件主界面
  1. 前往CrossOver官网下载Crossover的安装程序
  2. 按照提示进行安装;
  3. 打开CrossOver软件(默认已经添加进了“启动台(Launchpad)”);
  4. 选择软件主界面“安装新的Windows应用程序”(Install a Windows Application)按钮;
  5. 在弹出的窗口中,点击左下角的“显示所有应用程序”(Browse All Application);
  6. 选择“未列出的应用程序”(Unlisted Application),并点击继续(Continue);
  7. 选择“选择安装器文件”(Choose Installer File...);
  8. 在弹出的窗口中选择您下载的Ballance安装程序,这里推荐使用BCRC中的高品质安装包,之后Continue;
  9. 按下Install,之后CrossOver会自动运行Ballance安装程序,按照常规操作进行安装即可。

安装完成之后,您可以在CrossOver的主界面或者“启动台”(Launchpad)找到Ballance的图标,打开即可游玩。如果您的Mac带有“触控栏”(Touch Bar 也就是位于键盘数字键上方的触摸屏幕),则它会保持黑屏,为正常现象。

注:全屏运行,目前没有办法使其窗口化运行,且如果需要安装使用BML,则需要使用GitHub上的的最新版BML。


方法二:使用Wine运行

由于操作过于繁琐,如需使用Wine来运行,可以参考此视频教程:BiliBiliYoutube
  1. 下载Unofficial版本的Wineskin的最新版Release(不是 NO Compression 版本);
  2. 解压后拖进应用程序文件夹;
  3. 打开(您可能会被macOS的权限管理拒绝运行,请不要点击移动到废纸篓,请打开系统偏好设置->安全性和隐私->通用->仍然允许);
  4. 点击加号,安装上“WS11WineCX64Bit19.0.1-1.tar”;
  5. 点击Update;
  6. 点击Create New Blank Wrapper;
  7. 命名可以自定义;
  8. 如果弹出Wine需要下载文件的选项框,直接点击取消;
  9. 创建完成后,在启动台打开新建好的容器;
  10. 选择安装新的应用程序,浏览到Ballance的安装包,安装后即可游玩;

注:默认全屏。

Linux

以下配置仅在 Linux Mint 20.1 与 Manjaro (KDE) 21.0 发行版中测试过,不能保证适用于所有的 Linux 系统。

使用 Wine 运行,并在运行前保证存在 32 位前缀的 Wine 容器(可以先试试运行一下看能否成功;若没有可以用 Winetricks 创建),而且 Wine 使用的兼容性是 Windows XP 至 Windows 7 中的某个版本(在终端中输入 winecfg 来查看)。建议使用 Windows 7 兼容性。

运行前请先将全屏设置关上(可以同样使用 Wine 运行 Ballance工具箱 来操作,也可以通过在终端内输入 wine regedit 并找到和 Windows 相同的注册表路径来关闭全屏),否则,系统的分辨率会被降低,但 Ballance 并不会正常启动。窗口化状态下 Ballance 能够被正常运行。

运行时出现分辨率选择框

实际上观察发现有时这种缺乏分辨率的状态是例如 xf86-video-intel 等驱动导致的,建议先尝试检测一下此驱动是否存在,若存在可以卸载,有时还能解决系统很多其他怪异问题。

部分桌面环境例如 KDE 默认只会允许一种分辨率状态,也即显示器的最大分辨率状态。由于 Ballance 初始化需要系统中存在 640x480 的分辨率(未知原因 Ballance Mod Loader 并不能绕过此检测),我们需要手动新建一个 640x480 的分辨率。

添加新分辨率的具体操作图
  1. 终端输入 cvt 640 480 [刷新率],例如 cvt 640 480 60 来获取 640x480 分辨率的名称和参数信息。
  2. xrandr --newmode [先前用 cvt 获取到的信息] 来创建 640x480 的分辨率模式(具体操作见配图)。
  3. xrandr --listmonitors 获取现用的显示器名称。
  4. xrandr --addmode [显示器名称] [分辨率名] 以将此分辨率模式添加到对应的显示器上。

:分辨率设置在每次重启后会丢失,因此我们若要为了方便每次运行,需要在对应的启动脚本里面加上上述的 2 号和 4 号命令。如果需要其他可选的 640x480 以外的 4:3 分辨率,可以依照相同的方法自行添加。

Ballance 卡死的原理

以下是 Ballance 各种卡死的原理。Ballance Mod Loader Gamepiaynmo版(第二版)能够解决除了进程启动之外的全部运行问题的实质是禁用了游戏的这些检测。

进程启动

Ballance 需要与之相关的 Visual C++ 运行库,同时也需要相应的 3D 驱动,如 DirectX 等。如果缺少这些,则 Ballance 在启动时会出现 Error 0: Game could not be started! 的错误。

初始化

Ballance 的初始化需要配合其的注册表参数的检测和写入进行。由于其开发时,Windows 系统中用户权限管理的概念尚不存在,因此 Ballance 的注册表数据均被存到了需要管理员权限才能修改(有时甚至需要管理员权限才能查看)的系统设定,而非用户设定中。因此,若 Ballance 没有足够的权限来查看和修改注册表,则会初始化失败。

若 Ballance 能够成功获取和写入注册表的设置数据,则 Ballance 会检测用户系统中已有的可选分辨率设定(参考页面)。这些设定需要满足以下三个条件:

  • 宽度不小于 640,不大于 1600;
  • 宽高比例介于 1.333 至 1.334 之间(一般可以理解为宽高比例是 4:3);
  • 16 位显示。

之后,Ballance 在初始化时会使用宽度为 640,并满足前文要求的分辨率(实际就是指 640x480 分辨率)。若 Ballance 不能检测到任何满足以上这些条件的分辨率,则初始化也会失败,游戏黑屏。

图形设置界面卡死

个别安装程序对注册表参数的设置不妥,导致 VideoDriver 不为 0 或者 VideoMode 不是系统分辨率中的 4:3 选项(即分辨率设置的不是上文“初始化”一节中满足条件的分辨率)。上述二种情况均会导致图形设置界面卡死。

吃命卡死

暂时未知。

备注

  1. Windows 7 虽然仍有 ESU 支持直到2023年1月10日,但这需要额外付费且并不面向普通个人用户。
  2. 请勿在任何公开场合直接发送自己的“关于本机”界面的截图,关于本机中包含您的Mac的序列号(Serial Number),可能会造成一些后果。