欢迎进入莱诺活性炭公司!

果壳活性炭
您当前的位置 : 首 页 > 新闻动态 > 公司新闻

解决烦恼的关键发现,巫师3无故报错GCMMT怎么解决

2025-03-02 01:27:13

相信很多人也遇到过类似的报错,真的让人头疼。

如果使用的是WitcherScriptMerger 0.6.2,这种错误是无法检测出来的。

经过多方查找,终于发现了这种报错的原因。

问题出在r4Game.ws文件上。

在GOG年度版1.3.1的游戏原文件中,原本是有“GetChosenMainMenuType”等函数定义的。

位置:E:\The Witcher 3 GOG\content\content0\scripts\game\r4Game.ws

然而,在WitcherScriptMerger 0.6.2的汉化版中,默认的r4Game.ws文件中缺少了“GetChosenMainMenuType”等函数的定义。

位置:E:\The Witcher 3 GOG\Witcher Script Merger\Tools\wcc_lite\r4data\scripts\game\r4Game.ws

当使用0.6.2版本进行mod整合时,生成的mod0000_MergedFiles中的r4Game.ws文件也没有“GetChosenMainMenuType”函数的定义。

位置:E:\The Witcher 3 GOG\Mods\mod0000_MergedFiles\content\scripts\game\r4Game.ws

因此,使用0.6.2版整合脚本时,检测没有错误(因为它本身并不包含诸如GetChosenMainMenuType等一些函数的写入),但是在打开游戏加载脚本时会出现问题。

解决方案:

缺失的GetChosenMainMenuType函数定义等部分位于PopulateMenuQueueMainAlways函数和GetNewGameDefinitionFilename函数之间。

1. 打开路径:E:\The Witcher 3 GOG\Mods\mod0000_MergedFiles\content\scripts\game\r4Game.ws(右键选择用记事本打开该文件)

2. 使用搜索功能(Ctrl+F)查找:public function GetNewGameDefinitionFilename() : string

3. 在这个函数之前添加:GetChosenMainMenuType等函数的定义,内容如下(内容与E:\The Witcher 3 GOG\content\content0\scripts\game\r4Game.ws中的相同)

private var _mainMenuType : int; default _mainMenuType = -1;

public function GetChosenMainMenuType() : int

{

return _mainMenuType;

}

private function SelectRandomMainMenuIfNotSelectedYet() : int

var potentialMainMenuTypes : array< int >;

var seed : int;

var index : int;

if ( _mainMenuType >-1 )

potentialMainMenuTypes.PushBack( 0 );

if (theGame.GetDLCManager().IsEP1Available())

potentialMainMenuTypes.PushBack( 1 );

if (theGame.GetDLCManager().IsEP2Available())

availableMainMenuTypes.PushBack(2);

seed = CalcSeed(theGame);

index = (int)RandNoiseF(seed, availableMainMenuTypes.Size());

_mainMenuType = availableMainMenuTypes[index];

LogChannel('asd', "RAND " + seed + " " + index + " " + _mainMenuType);

注意“}”不要删除,并且在“private var _mainMenuType : int;”前面要保留Tab符,记得回车符。

改完之后,可以打开E:\The Witcher 3 GOG\content\content0\scripts\game\r4Game.ws,比较两个文件的格式。

如果没有mod0000_MergedFiles文件夹,比如测试单个mod时,也会出现同样的错误,上述方法同样适用。

在Mods文件夹中搜索“r4Game.ws”

找出可能导致错误的r4Game.ws文件,并对比E:\The Witcher 3 GOG\content\content0\scripts\game\r4Game.ws,添加缺失的部分。

标签

本文网址:

最近浏览: