HOME 首页
SERVICE 服务产品
XINMEITI 新媒体代运营
CASE 服务案例
NEWS 热点资讯
ABOUT 关于我们
CONTACT 联系我们
创意岭
让品牌有温度、有情感
专注品牌策划15年

    ai脚本编写(ai剧本生成器)

    发布时间:2023-04-24 14:15:33     稿源: 创意岭    阅读: 78        

    大家好!今天让创意岭的小编来大家介绍下关于ai脚本编写的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。

    开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等

    只需要输入关键词,就能返回你想要的内容,有小程序、在线网页版、PC客户端和批量生成器

    官网:https://ai.de1919.com

    本文目录:

    ai脚本编写(ai剧本生成器)

    如何在游戏机制中使用AI/剧情脚本

    首先要说的是,并不是说AI,剧情逻辑必须非脚本语言不可,用C++也可以写,甚至更习惯一些。但是脚本语言有脚本语言的长处,动态类型以及相当人性化的数据构造方式,特别是LUA中的表类型,似乎比较擅长描述这种复杂的AI/剧情结构。当然,为了验证自己的想法,我也写了4K的LUA代码,结果觉得该脚本语言相当不容易构造简洁的内容。AI从高自低的分别是计划,状态机,模式。我不知道这种划分是基于何种角度,但是我个人的理解是状态机最高,模式作为某个状态下的某个决策所预定义的动作序列,而计划,是为了实现某个目标的一组步骤的组合。那么硬编码的游戏循环何时调用脚本?答案是,游戏循环执行到调度NPC的AI函数的时候,该AI函数就不再做任何硬编码,而只是简单的dostring("gameEntitys[npc](/"update/")")。就是这么简单,将所有的AI/剧情放置到脚本中。那么,LUA中gameEntitys[npc]("update")是什么意思?简单的说,gameEntitys是一个存储所有NPC的注册表,gameEntitys[npc]将取得该npc的FMS函数,然后给该函数发送update消息告知npc当前的状态进行例行更新。FMS函数对于每一个对象是唯一的,那么比如某一类对象有共同的AI/剧情,那么该类的每一个对象同用同样的FMS函数的话,成员变量如何维持?要知道在LUA中模拟类还是比较麻烦的。答案是upvalue,也就是所有的对象使用同样的函数来生成自身的FMS,该函数就是FMS_Creator(all_state,init_state)。在C++编码中,NPC对象完成构造之后,就调用LUA载入对应的状态机/剧情脚本,然后调用FMS_Creator为自己创建FMS函数:dofile("npc_ai.lua")--引入all_state,init_stategameEntitys[npc]=FMS_Creator(all_state,init_state)当然,NPC析构之后,你也要释放LUA为你分配的资源gameEntitys[npc]=nil已经大概说明了如何在C++中启动NPC的LUA逻辑代码了,那么如何在LUA中编写状态机呢?答案是表。每个表代表一个状态,该表下的key表示该状态接受的消息,key对应的值表示该状态接受到key所表示的消息后要执行的决策,包括相应的动作和可能的状态变迁。看代码吧,最直观的表述:state={name="attack",--状态名enter={--进入该状态要执行,属于状态的消息--func是函数,param是参数,sucess,unsucess是func执行结果所对应的状态转移{func=print,param="openfire"},{func=IsEnemyDie,sucess="cure"},}update={}--同enter,不过用于状态在每一帧的更新exit={}--同enter,不过用于状态在每一帧的更新other_msg={}--同enter,用于表示该状态所接受的其他消息,可以有多个}在LUA中就是可以如此直观的表示每一个状态,其响应的消息以及函数。然后构造该npc接受的状态集合:all_state={}all_state[state.name]=stateinit_state=state这样子,就能传递到FMS_Creator中创建出自己独一无二的状态机函数了。那么剧情脚本呢?其实描述了状态机,剧情脚本是否已经有点眉头了呢?剧情,即为计划,每一个计划由一系列步骤所组成。类似的,对应每个计划的执行会有一个plan()函数,且为了达到独立效果,该函数将会由plan_creator(all_step,first_step)生成。看参数,显然计划的步骤step就是类似于状态的表,不过key方面略有不同,看代码就明白:step={name="findbill",cond={--执行该步骤的前提条件--func是判断条件的函数,param是判断参数{func=IsXXX,param="xxx"},{func=IsStepFinished,param=some_step},},finish={--条件判断成功要执行的动作{func

    ai脚本编写(ai剧本生成器)

    什么是AI脚本

    人工智能(Artificial Intelligence) ,英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。
    人工智能在计算机上实现时有2种不同的方式。一种是采用传统的编程技术,使系统呈现智能的效果,而不考虑所用方法是否与人或动物机体所用的方法相同。这种方法叫工程学方法(Engineering approach),它已在一些领域内作出了成果,如文字识别、电脑下棋等。另一种是模拟法(Modeling approach),它不仅要看效果,还要求实现方法也和人类或生物机体所用的方法相同或相类似。本书介绍的遗传算法(Generic Algorithm, 简称GA)和人工神经网络(Artificial Neural Network,简称ANN)均属后一类型。遗传算法模拟人类或生物的遗传-进化机制,人工神经网络则是模拟人类或动物大脑中神经细胞的活动方式。为了得到相同智能效果,两种方式通常都可使用。
    AI脚本,就是通过以上方式编辑的智能触发的各种剧情和事件的程序。

    以上就是关于ai脚本编写相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。


    推荐阅读:

    ai中文字体(AI中文字体设计)

    二次元ai对话软件(二次元ai对话软件下载)

    OpenAI(openai 入门)

    淘宝搜索怎么去掉关键词(淘宝搜索去掉关键字)

    店铺logo设计图片(店铺头像logo设计图片)