【发布时间】:2010-08-31 17:56:05
【问题描述】:
我想编写一个应用程序,它可以模仿在线游戏中的玩家。
关于游戏:这是一种策略,您可以:
- 训练你的军队(你必须有足够的资源,然后点击一个单位,点击训练)
- 建造建筑物(地雷、军械库、房屋...)
- 攻击敌人(选择单位,选择敌人,点击攻击)
- 在建筑物之间传输资源
- 进行研究(经济、军事、技术……)
这是一个简化的列表,只是一个示例。主要的是,如果你想前进,你必须做很多点击......
我已经有了应用程序的“导航”部分(我使用了 Watin 库 - http://watin.sourceforge.net/)。这意味着,我可以使用高级对象并对其进行操作,例如:
Soldiers soldiers = Navigator.GetAllSoldiers();
soldiers.Move(someLocation);
现在我想进行下一步 - 编写一种 AI,它可以模拟我的游戏风格。为此,我有两个想法(我不喜欢其中任何一个):
- 登录游戏,然后循环执行一堆 if 语句(检查是否有人在攻击我,检查我是否可以构建东西,检查我是否可以攻击某人,循环)
- 设计一种脚本语言并为其编写编译器。这样我就可以编写简单的脚本并运行它们 (Login(); CheckForAnAttack(); BuildSomething(); ...)
还有其他想法吗?
PS:有些人可能会认为这是作弊,但我认为这是一个学习项目,它永远不会出版或转售。
【问题讨论】:
-
当你完成那个项目后,你能写一个模仿 StackOverflow 上 Jon Skeet 的应用程序吗?
-
为什么要设计自己的语言和编译器?只需实现 LUA 或类似的东西。
-
根据您所谈论的游戏,可能存在允许这样做的现有工具。
-
@Adam Crossland 无耻投票钓鱼
标签: artificial-intelligence simulation