发布于2021/10/17更新于2024/7/5
即使进入了Windows 10的年代,15年前的Command & Conquer: Red Alert 2(C&C: RA2)仍然是一些游戏迷爱不释手的一款即时战略游戏。如今PC的操作系统大多数都已升级至Windows 10,还有少部分是7或8。在更新的操作系统上玩这个游戏会存在不少问题,其中最大的问题是游戏的卡顿和视频卡顿。游戏开发商和发行商已经不再将游戏对新操作系统进行适配,但欣慰的是,这些问题由民间游戏社区解决了。
RA2等游戏的卡顿通常是因为游戏视频的输出方式较为古老,不适合新的硬件、操作系统及DirectX环境。一般的方法是对游戏视频DirectDraw输出进行修正,有几个补丁与程序都可以解决问题:
- Command & Conquer Graphics Patcher:针对Tiberian Sun、Red Alert 2和Yuri’s Revenge。运行该补丁需要.net Framework 3.5。下载补丁后解压至游戏目录下(与
game.exe或gamemd.exe文件同一目录),然后运行补丁程序。补丁程序提供对游戏文件打补丁及去补丁功能,打补丁后该补丁程序就可以删除了。建议将游戏文件先进行备份以防外一。 - Aqrit’s ddwrapper:通用DLL。通过用代理DLL拦截游戏对DirectDraw的调用、并转发到真实的DirectDraw接口来控制游戏视频输出。下载压缩包解压,将
ddraw.dll与aqrit.cfg文件放入游戏目录中,可以通过编辑aqrit.cfg来控制几个参数(参考程序页面说明)。未优化的源代码托管在GitHub/aqrit/ddwrapper。针对RA2的配置是除ForceDirectDrawEmulation为1之外其它参数均为0[参考]。
上面两种方法基本能够消除游戏卡顿和视频卡顿,但仍然存在一个问题,就是从游戏中切出或切换到其它程序/窗口再切回游戏后,游戏仍然在运行但屏幕全黑(通常被称为Alt-Tab黑屏问题)。为解决这个小故障和前面的卡顿问题,有两个CnCNet维护的程序/补丁可以使用:
- cnc-ddraw:提供对多个“老”游戏提供在更新操作系统下的兼容性修复,并提供窗口化等多个功能。该程序似乎还没有完全支持Yuri’s Revenge,表现为游戏菜单、动画和过场画面是全屏幕低分辨率且无法upscale的,而游戏画面没有问题。
- ts-ddraw:以cnc-ddraw为Tiberian Sun与Red Alert 2重写的特供版本。特供版本似乎对在Windows 10上的Yuri’s Revenge支持不够好(可能是某些Windows 10的更新版本),表现为
gamemd.exe出现崩溃(APPCRASH)且故障模块为ddraw.dll(该文件由ts-ddraw提供),使用cnc-ddraw则没有问题。
除了解决卡顿等兼容性问题之外,为了能在大屏幕上更好地游戏RA2,可以在ra.ini或ra2md.ini文件的Video部分添加以下内容[参考]:
AllowHiResModes=yes AllowVRAMSidebar=no VideoBackBuffer=no
则在游戏选项中可以选择高分辨率进行游戏。