模拟游戏控制就好像正在播放一样

时间:2011-12-13 06:02:37

标签: process machine-learning agent simulate

我正在尝试开发一种用于玩超级马里奥的机器学习系统 应用程序应根据当前游戏状态决定按哪个键(游戏控制键)。因此,

  1. 如何模拟击键? (即按箭头键,Ctrl键等,就像用户玩游戏一样)
  2. 如何阅读游戏状态? (即敌人碰撞,通电等。)
  3. 这是可能的,还是我需要为此实现我自己的游戏?

2 个答案:

答案 0 :(得分:3)

鉴于您无法访问超级马里奥兄弟的源代码,我敢说最好的办法是找到一个类似的开源游戏平台游戏。这样做可以让你用你的AI代码替换代码的用户输入部分,并且你能够公开你想要的任何游戏状态信息。

还有其他专门针对此类挑战而设计的人工智能竞赛项目 - 我在大学里为TORCS做了类似的事情。 TORCS是一款赛车模拟器,您可以为其编写AI插件,它提供有关您的汽车的某些状态信息及其在赛道上的位置,然后您可以对其进行处理以为汽车控制提供输入。

答案 1 :(得分:0)

1)也可以为马里奥做。鉴于,您可以模拟游戏的击键。如果您正在播放Direct2D克隆,则需要DirectInput扫描代码。在MSDN中查看SendInnput。

2)模拟器保存游戏状态。许多人也是开源的。看看他们的论坛,你可能会得到你想要的答案。