有一个单人 PC 游戏带有游戏内控制台,允许用户执行命令和设置变量。我的目标是能够使用外部程序执行命令,就好像它们是通过控制台输入的一样,并更改变量的值。
我有编程经验,但从未做过任何游戏开发,而且我对程序的内部运作也不太了解。
首先,我在控制台中输入命令“set myvar myval”,然后在程序内存中搜索“myval”(使用 HxD)。我发现了完整命令“set myvar myval”的多个实例,并且只有一个实例仅是变量的值。更改此位置的值会更改游戏中的值,因此我知道这是变量值的正确位置。然而,在一个程序中,我怎么知道在哪里寻找这个变量的值呢?游戏内存中是否只有某些位置可以容纳值,并且在该空间内,变量的值是否总是存储在相同的内存范围中?如何在不使程序崩溃的情况下增加值的长度?
是否有任何在线资源可供我了解我正在尝试做的事情?