2011-12-13 43 views
0

我正在尝试开发玩超级马里奥的机器学习系统。
应用程序应该决定哪个键(游戏控制键)是根据当前的游戏状态。因此压,模拟游戏控制,就好像它正在播放

  1. 如何模拟击键? (即按箭头键,Ctrl键等,就好像用户玩游戏一样)
  2. 如何阅读游戏状态? (即敌人相撞,加电等)。

这是可能的,还是我需要实现我自己的游戏呢?

回答

3

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

还有其他专门为这种挑战设计的AI竞赛项目 - 我在TORCS的大学里做过类似的项目。 TORCS是一款赛车模拟器,您可以为其编写一个AI插件,它提供有关您汽车的某些状态信息以及它在赛道上的位置,然后处理该信息以向汽车控制器提供输入。

0

1)它也可以为马里奥完成。给定,你模拟游戏的击键。如果您正在播放Direct2D克隆,则需要DirectInput扫描代码。在MSDN中检查SendInnput。

2)仿真器保存游戏状态。许多也是开源的。看看他们的论坛,你可能会得到你正在寻找的答案。