GameShark / Action Replay在现代游戏主机上是如何工作的?

9

在互联网上很难找到关于这个的信息,因为神奇的词汇"GameShark"、"Action Replay"、"memory editor"和"memory trainer"会引发很多虚假信息,所以我想我应该在一些论坛上询问。

我将在本周末得到一个任天堂Wii来玩耍,我想了解在游戏运行时修改游戏代码的方法。如果Action Replay可以在没有modchip的情况下在Wii上使用,我相信我可以通过一个带有modchip的Wii做到这一点(一旦我拿到手,我会给我的Wii安装modchip)。

这里有人知道我能像GameShark和Action Replay那样“劫持”一个游戏吗?我希望能够在游戏的特定部分设置断点来执行其他逻辑(例如渲染额外的内容)并恢复游戏。

如果有人能给我一个抽象的答案,涵盖多个游戏机,让我可以深入研究这个主题并自己找到更具体的答案,我将非常感激,但对于任天堂Wii的特定答案也非常欢迎。

编辑:

由于没有人回答我的问题,我将尝试更加具体。

我认为将我想劫持的代码地址进行热修补,使其引发中断请求可能是一个可行的方法,但我不确定(如果您确切地知道我是对还是错,请与我们分享您的知识!)。

现在,实际问题是如何在游戏启动后执行这个“热修补”过程。我不知道该怎么做才能在游戏控制台接管后排队执行这个过程。一旦进行了第一次热修补,进一步进入游戏代码就很容易,但问题在于如何触发第一次修补。我真的很想在这个问题上得到启示。

谢谢。


如果您在游戏开发 SE 网站上发布,可能会有更好的运气。如果您愿意,我可以将其迁移到那里。 - Bill the Lizard
有趣的问题。但愿我知道 :) 我很好奇设备的开发人员实际上是如何找出这么多特定游戏的值需要改变的,尤其是在过去...大量的试错吗? - 8bitcartridge
3
通常通过转储内存、修改游戏中的数字、再次转储内存等方式来实现。例如,如果你比较在使用弹药或物品时拍摄的内存转储,就可以找到存储弹药数量的内存位置,并将其更改为授予无限弹药。 - Winfield Trail
1个回答

1

使用GameShark工具来渲染额外的内容可能有些困难,但是像改变生命值这样的操作似乎更加合理。我的建议是开始研究R4上的DS游戏,R4芯片内置了游戏补丁供您选择,因为您可以在运行前处理图像,所以可以在那里修改部分内容。 一定要准备好您的十六进制编辑器和汇编器 :)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接