Sid Meier's Civilization 4 - Beyond the Sword - anyfunmod

更改管理密码

想“锁定数据修改(Lock Modified Assets)”也可以开WB吗?乱搞管理密码之后开不了WB?向下看吧。

  1. 删除管理密码
  2. 更改管理密码
  3. 浅释密码的作用和锁定数据修改的记录的关系
  4. MOD版本升级与锁定数据修改的记录的迁移

* 启用了游戏选项“锁定数据修改(Lock Modified Assets)”并不一定是真的锁定修改,但有管理密码的游戏一定是锁定修改。

删除管理密码

没了管理密码之后会怎么呢?就是WB无极限,适用于忘记(不知道)管理密码和启用了锁定数据修改但又想用WB。


如下图,在输入框为空的状态下,点确定按钮,就是无密码了。

输入框为空的状态

更改管理密码

适用于乱搞管理密码导致不能用WB了、忘记(不知道)管理密码和启用了锁定数据修改但又想用WB。(其实“删除管理密码”更好,不过作为一种操作,有必要讲下)


步骤一:图1,输入 a 作为管理密码。

输入 a 作为管理密码

步骤二:图2,右上角打开菜单(或按ESC),点击“游戏详情”按钮

游戏详情

步骤三:图3,按下后弹出管理密码输入框,输入之前设的密码 a ,如果密码不对会有提示。

管理密码输入框

步骤四:图4,这里允许你修改游戏名和管理密码、打开调试工具。

这里显示的管理密码是“默认密码”(默认固定显示),如果你不改他,就不会更改管理密码(不管你当前真正的管理密码是什么)。重点,有密码就不能用WB和调试工具,所以这里你要把管理密码删掉,并选中允许调试工具,看 图5。

默认密码

更改管理密码

步骤五:图6,按确定之后,再打开菜单看下,WB回来了,调试操作都能使用了。

菜单

浅释密码的作用和锁定数据修改的记录的关系

(EXE的内部就无从得知了,只能简单讲下DLL源码上有出现的内容和自己理解的内容)

管理密码的作用,在游戏内体现为有密码就不允许调试操作,打开WB。

默认密码是 #define PASSWORD_DEFAULT (L"*****") ,就是5个*,作用只是用来判断是否要改密码。

平时打开“游戏详情”看见的密码就是默认密码,无事的话不要改那个密码,改了就是有密码了,有密码就不能用WB了。改了密码你又记得的话,可以参考更改管理密码,从步骤三开始。不记得密码的话打开Panel2去重设或者删咯。

锁定数据修改选项在新开始游戏时用来确定是否要生成随机密码,就是有密码了,有密码的游戏保存游戏记录时会md5计游戏目录,并把这些值写入游戏记录,载入时再计目录的md5是否和记录内的一样,不一样就不允许载入。

md5后的密码

上图是“锁定数据修改”(有管理密码)的记录的一段载图,其中用红框框起来的部份就是管理密码 a 的32位MD5

普通游戏只能用“锁定数据修改”来带入有密码的状态,AnyFun提供了更改管理密码功能,随时都可以有密码和无密码,就是随时都可储存出“锁定数据修改”的记录或普通的记录。

MOD版本升级与锁定数据修改的记录的迁移

看了上面最后一行,聪明的你应该想到大概了吧。

只要MOD的新版本读取记录数据结构没变,加上有更改管理密码的功能,就能进行“锁定数据修改的记录”的迁移。

例如从 AnyFunMod v10.b20 更新为 AnyFunMod v10.b21,前提写明支持旧版游戏记录,AnyFunMod有更改管理密码的功能,现在有一个AnyFunMod v10.b20版锁定数据修改的游戏记录,打算更新到AnyFunMod v10.b21后再继续玩。

首先,不要急着更新AnyFunMod v10.b21,继续用AnyFunMod v10.b20载入那个锁定数据修改的游戏记录,现在,用更改管理密码功能把密码删除,再保存成一个新的游戏记录(没密码的记录就是普通的记录了)。

现在,可以删除旧版的AnyFunMod v10.b20了,换成新版的AnyFunMod v10.b21,载入那个新的游戏记录,再用更改管理密码功能,随便加个密码,再保存(有密码的记录就锁定了)。

至此,记录的迁移完毕了。