gpt4 book ai didi

java - 在java中使用NPC AI的用户脚本

转载 作者:行者123 更新时间:2023-12-02 06:14:44 24 4
gpt4 key购买 nike

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

  1. 在 Java 代码中嵌入 LUA 和其他脚本语言
  2. 让此脚本控制特定 NPC 或 NPC 类型
  3. 在脚本语言中具有特殊函数来控制玩家是否靠近 NPC 或类似物体。

Computercraft mod for Minecraft 是我想要实现的目标(或多或少)的一个很好的例子。只是不想执行精确的命令(向前走 1 个方 block ,向左走 2 个方 block 等),我想使用 AI 脚本。你有任何教程、建议或类似的东西吗?

最佳答案

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

Here's供您阅读的自述文件。

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

编辑:

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

嵌入 Lua 并让您的应用程序使用它确实很有趣,尽管我从未在 Java (C/C++) 中这样做过。

话虽如此,它需要对集成的设计进行一些认真的思考。尝试非常简单的东西来感受它,即使在游戏开发之外也是如此。一旦获得它,就可以进行更认真的集成。

只是作为旁注。不要让 Lua 的简单性欺骗了您。这是一种非常强大的语言。

关于java - 在java中使用NPC AI的用户脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21598200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com