首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在java中为NPC AI使用用户脚本

在java中为NPC AI使用用户脚本
EN

Stack Overflow用户
提问于 2014-02-06 09:02:57
回答 1查看 707关注 0票数 0

对于我的WIP游戏(或者未来的游戏),我考虑为enemie/NPC AI添加定制的、用户编写的脚本。这样做的任何用户,谁知道如何编写脚本可以为敌人写人工智能。我想使用LUA (或者其他脚本,如果更简单的话),但是我真的不知道如何使用:

  1. 在java代码中嵌入LUA和其他脚本语言
  2. 让这个脚本控制特定的NPC或NPC的类型。
  3. 在脚本语言中有特殊的功能来控制播放器是否接近NPC或类似的东西。

Computercraft mod for Minecraft是我想要实现的一个很好的例子(或多或少)。而不是执行精确的命令(前进1瓦,前进2瓦,左2瓦等等)。我想用这个脚本来做人工智能。你有什么指导、建议或类似的东西吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-06 09:37:36

http://sourceforge.net/projects/luaj/

下面是自述给你看。

基本上,您希望在代码中的某些点调用Lua脚本,该脚本可以执行AI计算,并将结果返回给Java引擎。当然,这都取决于您的引擎,它在可能的集成方面有多灵活,等等。

编辑:

您需要为这些脚本提供一些上下文,即安装Lua环境,以便它知道您的引擎(对象/表、函数)。例如,如果您想让用户移动AI字符,那么您必须在Lua中注册(例如)一个AIEnemy对象,给它一些方法(moveshoot)等等。这些方法然后链接(调用)到您的Java中的等效方法,并传递适当的参数。

嵌入Lua并使您的应用程序与它一起工作是非常有趣的,尽管我从未用Java (C/C++)完成过。

话虽如此,但需要对集成的设计进行认真的思考。尝试真正简单的东西,以获得它的感觉,最好即使在你的游戏开发之外。一旦你得到它,前进到更严肃的整合。

就像个副手。别让卢安愚弄你。这是一种非常强大的语言。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21598200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档