显微镜下:鳄鱼:戈博斯传奇(PC)

如果你看主要的执行文件鳄鱼:戈博斯传说(2000)关于输入处理的代码,你会找到对 Win32 API 的调用GetAsyncKeyState功能:

  if ((DAT_007412d4 != 0) &&
     (uVar1 = GetAsyncKeyState(0x7b), (uVar1 & 0x8000) != 0)) {
    return 0;
  }

GetAsyncKeyState取一个参数,a虚拟密钥代码.代码0x7b对应于F12.所以这个片段是在检查那个密钥是否被按住。但只有当值在007412d4已设定。

是什么决定了这个数值?基德拉只找到了一处。它在函数0040ae90,用于将输入缓冲区与八个目标数组进行比较。每个目标为12字节:

| Address  | Target                              |
|----------|-------------------------------------|
| 0055c840 | 1e 13 22 18 23 1e 13 20 2e 13 18 2e |
| 0055c84c | 1e 13 22 18 1e 26 26 17 30 1e 30 1e |
| 0055c858 | 1e 13 22 18 12 1e 1f 15 2e 13 18 2e |
| 0055c864 | 1e 13 22 18 20 17 12 31 18 11 1e 15 |
| 0055c870 | 1e 13 22 18 26 18 2e 25 19 17 2e 25 |
| 0055c87c | 1e 13 22 18 30 17 22 11 18 31 22 1e |
| 0055c888 | 1e 13 22 18 1f 2e 13 31 1f 23 18 14 |
| 0055c894 | 1e 13 22 18 1f 23 18 11 32 12 17 14 |

这些目标还由虚拟密钥代码组成,也称为扫描码。注意每个字母开头是第一纪 13 22 18.这个前缀拼写为阿尔戈,对于阿尔戈英雄游戏-鳄鱼的开发者。

映射其余虚拟密钥代码即可生成可用的作弊短语。这些输入在游戏过程中——只需短按即可;如果按键时间过长,缓冲区会被重复填满。

第一个作弊短语是阿尔戈哈德鳄.这会使敌人的碰撞失效:

这可以防止你被敌人伤害,但要小心——你仍然会受到其他危险的威胁。

第二个作弊短语是阿尔戈尔利巴巴.这......什么都没有!游戏将该值设定为007412c4然后再也不去看了。

最好的作弊是阿尔戈易鳄.这会解锁所有关卡:

几乎一样好阿尔戈迪诺韦.这会给你无限生命:

ARGOLOCKPICK会给你关键物品。这些用来开门和抓Gobbo笼子:

阿尔戈比格旺加在你当前总数上增加50颗水晶,但前提是你的水晶少于950颗:

if (crystals_007214fc < 950) {
  crystals_007214fc = crystals_007214fc + 50;
}

阿尔戈射手将值设为007412d4到1.这就是F12上述关键特征。正如作弊短语所示,这允许你截屏。它们被保存在.tga格式化到游戏目录中,在喝酒。

最后一句是阿尔戈给我看.HUD上显示了一个帧率计数器:

就这些!

其他

如果你想知道,我在2025年重制版中无法让这些作弊生效。鳄鱼.不过,大多数在伴侣中都能使用。鳄鱼经典游戏。帧数计数器和截图代码都不工作,但其他的可以。

PC版本鳄鱼2号可惜没有这样的隐藏输入系统。它有自己的作弊系统,你可以在上面阅读相关内容speedrun.com不过。我写过关于PlayStation版本作弊的内容鳄鱼在上一期.

很快还会有更多土星环!订阅即可在文章发布后第一时间收到。

立即订阅

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论