超级玩家
 
- 贡献度
- 44
- 金元
- 6228
- 积分
- 799
- 精华
- 0
- 注册时间
- 2014-2-4
|
转自:https://www.nexusmods.com/halocampaignevolved/mods/53
【百度】
链接: https://pan.baidu.com/s/12UJQzj2oM2JOa1aJTrwzNw?pwd=f5gm
提取码: f5gm
【夸克】
链接:https://pan.quark.cn/s/f60996a0da0c?pwd=hPkm
提取码:hPkm
分屏合作
像主机版本那样,在单台PC上通过本地分屏模式游玩战役。
主机版《光环:战斗进化》具备本地分屏功能。%% Halo: Campaign Evolved%% 而PC版从未移除该功能——默认配置中%% 已启用分屏选项%% bUseSplitscreen=True以及合作模式关卡变体、界面布局、生成逻辑、视觉特效和音频全都预埋在游戏文件中,只是菜单里没有开放入口。这个模组调用了现成的代码。 ship local split-screen. The PC build never had it stripped out — it ships with split-screen already enabled in config (bUseSplitscreen=True), and the co-op level variants, HUD layouts, spawn logic, VFX and audio are all still cooked into the game files. It just isn't exposed in the menus. This mod calls the code that is already sitting there.
该工具并非游戏重构版本,也不会修改游戏可执行文件。它通过UE4SS在运行时添加第二名本地玩家,并清除了阻碍该玩家正常运作的两项限制。
需求
- 光环:战斗进化 — Steam版Xbox/Game Pass版本内部构建不同,此处包含的签名文件与其不匹配
- RE-UE4SS — "experimental-latest"滚动版本.下载该版本的标准版压缩包Stable v3.0.1版本无法运行——该版本发布于2024年2月,早于Unreal Engine 5.5。
- 为玩家2准备的副控制器,外加一个键盘用于快捷键操作。
安装步骤
游戏根目录即为包含以下文件的文件夹Halo Campaign Evolved.exe.
1. 安装UE4SS
将UE4SS Standard压缩包解压至<game folder>\Meteorite\Binaries\Win64\
该文件夹中应包含dwmapi.dll和ue4ss\文件夹。
2. 安装此模组
将此存档解压至游戏文件夹(包含.exe文件的目录),并保持文件夹结构。该操作会将文件合并至UE4SS安装目录:
Meteorite\Binaries\Win64\ue4ss\UE4SS-settings.ini (overwrite)
Meteorite\Binaries\Win64\ue4ss\UE4SS_Signatures\*.lua (overwrite)
Meteorite\Binaries\Win64\ue4ss\Mods\HaloSplitscreenCoop\ (new)
覆盖这两个文件是必须的,而非可选操作。本游戏运行的是343定制的UE 5.5.4分叉版本,而UE4SS的默认设置与特征码扫描无法匹配此版本——若无这些文件,UE4SS将无法定位GUObjectArray且无法启动。
你搞定了无需编辑mods.txt。模组文件夹已配对已启用.txt并自行读档,因此其他UE4SS模组不受影响。
3. 仅限Linux/Steam Deck/Proton系统
在游戏中设置以下启动选项(属性 → General → 启动选项):
WINEDLLOVERRIDES="dwmapi=n,b" %command%
否则Proton会加载自带的dwmapi.dll导致UE4SS无法被加载。该%command%参数必须保留——若缺少此参数,Steam将忽略覆盖指令。Windows用户请跳过此步骤。
使用方法——操作顺序至关重要
- 从主菜单选择合作战役. 而非单人战役
- 可选。按下2号手柄的A键。屏幕上将显示“正在连接网络”——这是游戏的本地登录功能。此时应会以玩家2身份自动登录。(若无反应,下一步可能会直接显示数字作为玩家2名称。)
- 按下Ctrl+Y键盘上的
- 开始新战役存档,任务开始时。
两位玩家将直接读档进入分屏模式,可立即移动并操控。
为何顺序至关重要游戏配对为每个关卡提供独立的单人/合作模式变体 (/Game/Levels/Halo1/Solo/...对比/合作/...玩家2必须已存在在关卡读档之前。若在已运行的单人任务中添加玩家,会出现一个无界面的黑色第二视口。这看起来完全像是渲染错误,但其实并非如此——任何图形设置都无法修复该问题。请退出并从步骤1重新开始。
在Steam Deck上,可通过STEAM + X按下 Ctrl+Y。
快捷键设置
- Ctrl+Y— 添加本地玩家
- Ctrl+U— 移除最后一位本地玩家
- Ctrl+I— 将所有其他玩家传送至玩家1位置,防止有人卡住或掉队
- Ctrl+L— 重新加载界面/视口修正,解决玩家2能看见画面但无界面显示的问题
已知问题
- 字幕显示在屏幕两侧它们位于共享的全屏UI层,而非独立玩家层
- 玩家2会显示您的Steam账户名而非Xbox玩家代号
- 已测试仅支持2名玩家。引擎配置上限为4人(MaxSplitscreenPlayers=4)但3-4人模式未经验证——请尝试后反馈。
- 过场动画、检查点和脚本化过渡仅经过轻度测试。当玩家2掉队时,可使用Ctrl+I功能。
- 菜单操作由玩家1主导。
后续任务的反馈确实实用——目前大部分测试都集中在战役前期任务上。
若功能失效
开启<game>\Meteorite\Binaries\Win64\ue4ss\UE4SS.log它准确指出了故障名称。
- 未生成任何UE4SS.log文件 — dwmapi.dll日志缺失,或(Linux系统)未设置启动选项。请注意Steam平台的验证游戏文件完整性功能会删除UE4SS文件
- "无法找到GUObjectArray" / "扫描失败" / "PS扫描超时"——游戏更新导致.exe文件变更,AOB特征码已失效。请从zCustomGameConfigs.zipUE4SS实验版最新发布中获取更新,并使用其光环:进化战役文件夹替换当前mod的配对文件。我会尽快更新mod,但社区配置通常更早发布。
- 日志看起来没问题,但里面没有SplitscreenCoop的相关记录——MOD文件夹放错位置了。正确路径应该是ue4ss\Mods\HaloSplitscreenCoop\Scripts\main.lua.
- "未能找到 ConsoleManagerSingleton"——这是预期且无害的情况。在完全正常的运行环境中也会出现该提示。
工作日志包含以下内容:
[PS] Found EngineVersion: 5.5
GUObjectArray address: 0x...
Starting Lua mod 'HaloSplitscreenCoop'
[SplitscreenCoop] UseSplitScreen: true
卸载
删除dwmapi.dll以及ue4ss\文件夹中的Meteorite\Binaries\Win64\,若您已设置启动项请将其清空。该模组仅会添加文件——不会修改或覆盖任何游戏原文件。
使用说明
有两个因素会导致运行时创建的角色无法在游戏中运作,而该脚本能同时修复这两个问题:
- 视口保持冻结每位本地玩家的画面都会被UMeteoriteViewportHoldLocalPlayerSubsystem拦截,该子系统将持续显示不透明覆盖层,直至对应玩家的流式加载报告就绪。引擎未自主创建的玩家永远无法满足该条件,因此其画面将冻结在读档覆盖层上。该模组通过游戏原生的Meteorite.ViewportHold.Enabled %%cvar
- 界面游戏界面管理器负责管理每位玩家的界面布局CreatePlayer会绕过该机制,因此玩家2只能看到画面而没有界面。模组调用了游戏原生的HaloUIManagerSubsystem::EnableSplitscreen()将其建造出来。
游戏运行的是UE 5.5.4的Shipping版本,因此游戏内控制台-ExecCmds所有调试绑定均已移除——UE4SS Lua是唯一可用的调节手段。游戏文件夹及可执行文件的导入项中均未检测到EAC、BattlEye或内核反作弊系统。此为单人战役模组,请避免与任何在线模式同时运行。
|
|