CN111388995B - 游戏人工智能信息的处理方法、***、装置和存储介质 - Google Patents
游戏人工智能信息的处理方法、***、装置和存储介质 Download PDFInfo
- Publication number
- CN111388995B CN111388995B CN202010135369.9A CN202010135369A CN111388995B CN 111388995 B CN111388995 B CN 111388995B CN 202010135369 A CN202010135369 A CN 202010135369A CN 111388995 B CN111388995 B CN 111388995B
- Authority
- CN
- China
- Prior art keywords
- artificial intelligence
- map data
- map
- game
- log information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/30—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种游戏人工智能信息的处理方法、***、装置和存储介质,本申请涉及人工智能领域,在本申请的方法中所述人工智能信息包括人工智能对象的日志信息和所述日志信息产生时对应的地图数据,所述人工智能对象根据所述地图数据运行,所述方法包括以下步骤:获取所述人工智能对象的日志信息;获取所述地图数据;根据所述地图数据绘制地图;显示所述日志信息以及所述地图。本申请以可视化的方式展现影响人工智能对象的行为的地图数据在地图中的几何分布状态,使得人工智能的开发人员可以快速分析人工智能对象的日志信息与地图数据之间的关联,从而可以更快地定位和分析问题所在,提高了人工智能对象调试的效率。
Description
技术领域
本申请涉及人工智能技术,尤其是一种游戏人工智能信息的处理方法、***、装置和存储介质。
背景技术
随着人工智能(Artificial Intelligence,AI)技术的发展,人工智能被应用在游戏之中,这些人工智能对象通常在一个虚拟地图中运行。人工智能对象接收来自于虚拟地图的信息,并根据预设的决策模型,分析在当前的条件下应该执行何种动作。
人工智能对象的开发人员会通过在人工智能对象的程序中添加调试代码,使得人工智能对象的程序可以产生与其行为相关的日志信息,以便于调试人工智能对象。
在游戏等场景中,虚拟地图中的信息往往会随着人工智能对象的行为或者随着时间的推进而发生变化。因而在游戏的过程中,会产生大量的日志和地图数据。当开发人员发现人工智能对象有行为异常时,需要通过查看日志和地图数据来分析人工智能对象为何会出现异常行为。
目前日志和环境信息等以文本形式存放,尤其是地图数据,其往往表达一个时刻的整个虚拟地图中的信息,其数据量较大,人工难以阅读和分析,因而造成问题难以定位的情况,从而导致对人工智能对象的调试效率低下。
发明内容
为解决上述技术问题的至少之一,本申请提供了一种游戏人工智能信息的处理方法、***、装置和存储介质,以可视化的形式便于开发人员调试人工智能对象,提高调试效率。
根据本申请的第一方面,提供了一种游戏人工智能信息的处理方法,所述人工智能信息包括人工智能对象的日志信息和所述日志信息产生时对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据,所述方法包括以下步骤:
获取所述人工智能对象的日志信息;
获取所述地图数据;
根据所述地图数据绘制地图用以表征所述地图数据的几何分布,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据;
显示所述日志信息以及所述地图。
根据本申请的第二方面,提供了一种游戏人工智能信息的处理方法,所述人工智能信息包括人工智能对象的日志信息和所述日志信息产生时对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据,所述方法包括以下步骤:
接收来自终端的请求;
根据所述请求向终端发送人工智能对象的日志信息和所述地图数据,使终端根据所述地图数据绘制地图用以表征所述地图数据的几何分布,并且显示所述日志信息以及所述地图;
其中,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据。
根据本申请的第三方面,提供了一种游戏人工智能信息的处理***,包括游戏服务器、web服务器和终端;所述人工智能信息包括人工智能对象的日志信息和所述日志信息产生时对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据;
所述游戏服务器用于产生所述人工智能对象的日志信息和所述地图数据,并将所述日志信息和所述地图数据发送至web服务器;
所述web服务器用于存储所述日志信息和所述地图数据,并根据所述终端的请求,向终端发送所述日志信息和所述地图数据;
所述终端用于向web服务器请求获取所述日志信息和所述地图数据,并根据所述地图数据绘制地图用以表征所述地图数据的几何分布,以及显示所述日志信息和所述地图;
其中,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据。
根据本申请的第四方面,提供了一种游戏人工智能信息的处理装置,包括:存储器、处理器和程序;
所述程序被存储在所述存储器中,所述处理器执行所述程序以实现所述的游戏人工智能信息的处理方法。
根据本申请的第五方面,提供了一种存储介质,所述存储介质上存储有程序,所述程序被处理器执行,实现所述的游戏人工智能信息的处理方法。
本申请实施例的有益效果是:通过获取人工智能对象的日志信息和对应的地图数据,然后将地图数据绘制成地图,接着显示日志信息和地图,本申请以可视化的方式展现影响人工智能对象的行为的地图数据在地图中的几何分布状态,使得人工智能的开发人员可以快速分析人工智能对象的日志信息与地图数据之间的关联,从而可以更快地定位和分析问题所在,提高了对人工智能对象调试的效率。
附图说明
图1a为根据本申请实施例提供的游戏的一个画面示意图;
图1b为根据本申请实施例提供的游戏的另一个画面示意图;
图1c为根据本申请实施例提供的游戏的另一个画面示意图;
图2为根据本申请实施例提供的一种人工智能信息处理***的***框图;
图3为根据本申请实施例提供的一种人工智能信息处理方法的流程图;
图4a为根据本申请实施例提供的一种地图的示意图;
图4b为根据本申请实施例提供的另一种地图的示意图;
图4c为根据本申请实施例提供的一种地图中的像素单元的示意图;
图5为根据本申请实施例提供的一种日志信息和地图的显示界面的示意图;
图6为根据本申请实施例提供的一种游戏人工智能信息的处理方法的步骤610~620的流程图;
图7为根据本申请实施例提供的一种用于显示日志信息的组件的示意图;
图8为根据本申请实施例提供的步骤620的子步骤810~830的流程图;
图9为根据本申请实施例提供的一种用于显示地图的组件的示意图;
图10为根据本申请实施例提供的步骤620的子步骤1010~1030的流程图;
图11为根据本申请实施例提供的步骤620的子步骤1110~1130的流程图;
图12为根据本申请实施例提供的另一种日志信息和地图的显示界面的示意图;
图13为根据本申请实施例提供的步骤620的子步骤1310~1330的流程图;
图14为根据本申请实施例提供的用于修改游戏参数的组件的示意图;
图15为根据本申请实施例提供的一种游戏人工智能信息的处理方法的步骤1510~1530的流程图;
图16为根据本申请实施例提供的游戏人工智能信息的处理***的一种处理步骤流程图;
图17为根据本申请实施例提供的游戏人工智能信息的处理***的另一种处理步骤流程图。
具体实施方式
下面结合说明书附图和具体的实施例对本申请进行进一步的说明。所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
下面对本申请出现的名词进行解释:
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
人工智能对象,是指在游戏中利用人工智能技术控制其行为的虚拟对象,其可以是游戏角色,这些游戏角色可以是模仿人形的角色,也可以是模仿物品的角色。例如这些游戏角色可以是汽车、人偶或者怪物等。
行为树,是一种人工智能对象的决策模型。向行为树输入若干个数据,行为树会根据各节点之间的权重参数,计算出行为树内各节点的输出值,人工智能对象可以以此判断在当前的条件下应该执行何种行为。因此,在调试人工智能对象的时候,可以通过调节人工智能对象的行为树来调节人工智能的行为倾向。具体地,行为树的输入数据可以是人工智能对象本身的属性数据,例如人工智能对象的血量、等级和攻击力等等,行为树的输入数据也可以是人工智能对象所处环境中的数据,例如地图中的阻挡信息、地图中建筑物的得分值等等。以决策树有一个根节点和三个子节点为例,根节点为输入节点,根节点与不同子节点之间具有不同的计算权重,三个子节点对应人工智能对象的三种不同的行为,而子节点的输出结果表示在当前条件下执行该行为的分值,分值越高表示当前执行该行为越有利,人工智能对象会执行分值最高的子节点对应的行为。这里,假定输入数据为(x1,x2,x3,x4),其中,x1表示人工智能对象的血量,x2表示人工智能对象的攻击力,x3为人工智能对象的等级,x4为建筑物的得分值,而输出数据则为(y1,y2,y3),其中,y1表示“逃跑”行为的分值,而y2表示“攻击”行为的分值,y3表示“防御”行为的分值。那么模型可以表示为:
其中,公式中的an~dn表示yn(n为1、2或3)对应节点的计算权重,f1()~f4()表示对输入数据x1~x4的处理函数。从行为树的数学模型可以看出来,当把输入数据(x1,x2,x3,x4)输入到行为树中,行为树会输出结果(y1,y2,y3),以(y1,y2,y3)=(0.1,0.6,0.3)为例,人工智能对象会执行y2节点对应的行为,即执行攻击的行为。当然,在实际应用中树结构更为复杂,但是可以基于相同的权重计算方式,计算不同节点的分值,从而确定出人工智能当前执行的动作。
地图数据,是指人工智能对象所运行的虚拟地图中的数据。地图数据可以包括多种影响人工智能对象决策的数据,这些地图数据可以随着时间的推移产生变化或者伴随人工智能对象的行为而产生变化。例如,在虚拟地图中包含建筑对象,这些建筑对象的属性会影响人工智能对象的行为,因此建筑对象的属性属于地图数据,而人工智能对象可以破坏这些建筑对象,因此,建筑对象的属性可能发生变化。在该例子中,建筑对象的属性包括建筑对象的血量、对人工智能对象造成的阻挡情况等。当然,在另一些例子中,地图数据除了可以是虚拟地图中的对象的属性,也可以是虚拟地图本身自带的属性,例如虚拟地图的地形结构。在该例子中,虚拟地图某个点的高度或者温度等,可以影响人工智能对象的行为,因此也可以作为一种地图数据。本申请的人工智能具体应用在游戏中,本申请中的人工智能对象基于人工智能技术,在游戏中根据当前环境和自身的数值,自主做出行为。
在本申请中,游戏在游戏服务器中运行,游戏服务器可以是单个的物理服务器,也可以是分布式服务器。游戏服务器在游戏运行过程中,会抛出游戏中人工智能对象的日志信息,这些日志信息与人工智能对象在虚拟地图中做出的行为相关,日志信息用于记录描述人工智能对象的行为的数据,例如这些数据可以是人工智能对象做出何种行为的记录,也可以是人工智能对象在做出行为前后的属性变化信息。同时,游戏根据虚拟地图的变化,产生相关的地图数据。由于人工智能的行为除了与自身的属性和决策模型相关,也跟虚拟地图中的地图数据息息相关。因此,当开发人员发现人工智能对象的行为出现异常时,除了需要分析人工智能对象的日志信息以外,还需要分析人工智能对象做出行为时的地图数据,才能定位出问题所在。
而在相关技术中,人工智能对象的日志信息与地图数据以文本的形式存在,开发人员需要从海量的日志信息中梳理出与日志信息对应的地图数据,由于一个时刻或者时间段的地图数据包含了这些信息在虚拟地图中的分布情况,因此以文本的方式,难以阅读,使得开发人员难以定位问题所在,从而导致人工智能对象的调试效率低。
为此,本申请提供一种游戏人工智能信息的处理方法,该方法通过将人工智能对象的日志信息对应的地图数据绘制成可视化的地图,并将绘制得到的地图与人工智能对象的日志信息一同显示,本申请以可视化的方式展现影响人工智能对象的行为的地图数据在地图中的几何分布状态,使得人工智能的开发人员可以快速分析人工智能对象的日志信息与地图数据之间的关联,从而可以更快地定位和分析问题所在,提高了对人工智能对象调试的效率。
参照图1a、图1b和图1c,本实施例将结合一款包含人工智能对象的游戏进行说明,以便于阐明人工智能对象的调试过程。如图1a所示,本实施例的游戏为一款多人在线战术竞技游戏(Multiplayer Online Battle Arena:MOBA),该MOBA游戏主要以卡牌策略为主。进行游戏的双方各控制若干个游戏角色,在本实施例中,这些游戏角色也被称作英雄。与其他传统的MOBA游戏不同,本实施例中的英雄是人工智能对象,其并非完全受控于用户的指令。这些英雄可以在用户选择的策略下,自行根据当前自身的属性和接收到的地图数据做出行为,游戏双方以占领、破坏对方建筑或者击败对方英雄为目标进行游戏。
如图1a所示游戏画面100a,用户在进行游戏时可以选择不同的策略卡牌110,其中,策略是指可以使得人工智能对象130倾向于某些行为的方案,例如,策略可以是攻击、逃跑或者防御等方案。游戏地图120中的人工智能对象130的决策树会根据用户所选择的策略卡牌110产生变化。因此,用户可以通过选择策略卡牌110来干预人工智能对象130的行为,并以此进行游戏。
如图1b所示的游戏画面100b,用户在游戏过程中,可以观察人工智能对象130在游戏地图120中的状态,例如,可以观察到人工智能对象130的移动情况、攻击情况和属性等。在本实施例中,人工智能对象130的属性包括血量和等级等等。随着游戏的推进,游戏地图120中的物体可能会被破坏,如图1b中的建筑140和阻挡物150等等。因此,地图数据会随着时间的推移或者人工智能对象130的行为产生变化。
最终,在游戏结束时会出现如图1c所示的游戏画面100c,用于评价双方的游戏得分。
本游戏在运行的过程中会抛出与各个人工智能对象的行为有关的日志信息,这些日志信息可以携带人工智能对象的位置信息、属性信息、行为信息、做出某个行为时决策树的某些节点的数值等等。随着游戏地图产生的变化,游戏也会产生相应的地图数据。这些地图数据和日志信息均包含产生的时间。
故此,人工智能对象的开发人员可以通过游戏画面去观察人工智能对象的行为,从而判断人工智能在游戏中是否存在异常行为,当开发人员在一局游戏中观察到人工智能对象的异常行为时,可以翻看异常行为产生前后的日志信息和对应的地图数据来分析为什么人工智能对象会产生这样的行为。这些异常行为通常包括寻路错误、无理由徘徊、违背用户选择的策略或者其他明显有违其应有逻辑的行为。
图2示出了一种游戏人工智能信息的处理***,该***包括游戏服务器210、web服务器220和游戏终端230和调试终端240。
其中,游戏终端230为游戏玩家进行游戏操作的终端,多个游戏终端230通过游戏服务器210连接在一起进行如图1a、图1b和图1c所示的游戏。游戏服务器210向各游戏终端230同步当前游戏的信息,由各游戏终端230完成游戏画面渲染和显示,而游戏玩家则可以通过游戏终端230向游戏服务器210发送指令来选择自己的策略。人工智能对象和人工智能对象所处的虚拟地图均在游戏服务器210中运行,游戏在进行中会产生日志信息和地图数据。游戏服务器210中包括用于发送人工智能对象的日志信息的日志模块211、用于发送地图数据的地图数据同步模块212以及用于接收数据修改指令的信息修改模块213。
web服务器220,从游戏服务器210的日志模块211和地图数据同步模块212中分别获取日志信息和地图数据,并将这些数据保存在数据库中。其中,web服务器220以一局游戏为单位保存日志信息和地图数据。从日志模块211中发送的日志信息携带有产生时间和对应的分类信息,该分类信息用于区分一局游戏中不同的人工智能对象,也用于区分人工智能对象所属的阵型。由地图数据同步模块212所发送的地图数据携带有地图数据对应的产生时间,由于在游戏中,地图数据的变化频率相对较少,因此,地图数据只有在虚拟地图发生变化时才产生,游戏服务器210在地图数据没有发生变化的时候不会向web服务器220发送重复的数据。
调试终端240为开发人员的终端,该终端可以是硬件设备,也可以是在硬件设备上运行的客户端和浏览器等软件。本实施例以浏览器为例进行说明,开发人员可以通过在浏览器中输入web服务器220的访问地址,然后选定某一局游戏,web服务器220向浏览器发送显示组件以及该局游戏的地图数据和人工智能对象的日志信息。浏览器在获取的组件中对数据进行处理,然后以可视化的方式显示地图数据和人工智能对象的日志信息。
为了便于开发人员调试,参照图3,本实施例提供了一种游戏人工智能信息的处理方法,以可视化的方式显示这些人工智能信息,在本实施例中,人工智能信息包括人工智能对象的日志信息和地图数据,本实施例的方法包括步骤310~步骤340:
步骤310、获取所述人工智能对象的日志信息。
其中,在本实施例中,游戏双方均操控若干个人工智能对象,因此获取的人工智能对象的日志信息有多个,多个人工智能对象的日志信息可以一并获取或者分批获取。由于日志信息中带有分类信息,因此,可以对不同人工智能对象的日志信息进行筛选和分类。
由于开发人员可以在进行游戏时调试人工智能对象,也可以在游戏结束时根据游戏录像回放(replay)来对人工智能对象进行调试。故此,日志信息可以是实时产生实时获取的,也可以是从历史数据中获取的。例如,在本实施例中,开发人员在进行游戏的过程中观察人工智能对象的异常,并同时监控日志信息来定位问题。这时候的日志信息,由游戏服务器210实时产生,并经由web服务器220同步到浏览器中显示。
在本实施例中,获取这一动作可以是主动请求或者是被动接收。在一些实施例中,日志信息和地图数据除了可以从web服务器中获取,也可以从上此次运行时的缓存数据中获取。
在本实施例中,这些日志信息与人工智能对象的行为相关,日志信息可以是描述人工智能对象在某个时间点的属性的信息,例如是表示某个时间人工智能对象的血量和等级等信息。日志信息也可以是描述人工智能对象某些行为的信息,例如,可以是记录了人工智能对象从A位置移动到B位置的信息。日志信息亦可以是人工智能对象在做出某种行为时决策树中某些节点的数值。日志信息的种类由开发人员在人工智能对象的代码中定义和添加。当然,本申请也不排除日志信息可用于记录与人工智能对象行为无关的信息的实施例。
步骤320、获取所述地图数据。
其中,在本实施例中,地图数据是指人工智能对象所处的虚拟地图中数据,这些数据影响人工智能对象的决策,使得人工智能对象在处于不同的环境时做出的行为有所差异。在本实施例中,虚拟地图中的环境对象的属性大多数属于本实施例所指的地图数据,这些环境对象主要是指虚拟地图中不会移动的对象,例如建筑、树木、石头和河流等等,而这些环境对象的属性包括其血量、攻击力、防御力、高度、宽度、温度、得分值(占领或者破坏该环境对象的得分)和阻挡性能等等。例如,游戏里面的一个防御塔,它的属性可以包括血量、攻击力、防御力和阻挡性能等。这些地图数据在虚拟地图中的几何分布状态对人工智能对象的行为会造成影响。
当然,在本实施例中,为了有针对性地分析问题,所获取的地图数据可以限制在少数几类。例如,人工智能对象的寻路异常问题,其往往只与人工智能对象的决策树或者与地图中的阻挡信息相关,因此,分析该类问题时,可以仅获取阻挡信息这一类地图数据。当然在另一些实施例中,如果人工智能对象的异常行为可能与虚拟地图中的环境对象的得分值相关,则可以只获取环境对象的得分值这一类地图数据。
在本实施例中,地图数据有对应的产生时间,一组地图数据可以表示这一组地图数据产生时间到下一组地图数据的产生时间之间虚拟地图中的信息。
在本实施例中,获取这一动作可以是主动请求,也可以是被动接收。所述地图数据可以只包括一种同类的数据,例如阻挡信息,地图数据也可以包括多种不同类的数据。
步骤330、根据所述地图数据绘制地图。
具体地,在本实施例中,该地图可以是二维地图或者三维地图,该地图由多个像素单元组成,每个像素单元表征虚拟地图中一个位置的地图数据。其中,像素单元可以以数字、颜色或者图案中的至少之一来表征至少一种地图数据。图4a中的地图410是一个矩形的二维地图,地图旁包括图例420。在本实施例中,地图以不同的图案或者颜色来表示不同的信息。参照图4b,图4b中的地图430是一个三维的地图,具体地,是一个依附在正方体表面的地图,地图旁包括图例440,在该实施例中,地图同样由若干个像素单元组成,每个像素单元可以用于表征地图中一个位置的地图数据。本步骤中所绘制的地图与游戏中本身的虚拟地图的形状相关。绘制得到的地图可以是二维的地图,如正方形、圆形和菱形等地图,绘制得到的地图也可以是附着在三维形状上的地图,例如,可以是长方体状或者球状的。当然,如果绘制得到的地图是三维的,那么该地图还可以根据用户输入的指令旋转至不同的观察角度。
本实施例以绘制一个矩形的二维地图为例进行说明,本实施例中的地图数据在游戏服务器210中以二维数组的形式产生,二维数组中的每个数值可以用于表示一种或者多种地图数据。假设地图的大小为100*100,二维数组a也是一个100*100的数组。地图的像素单元的位置以(x,y)表示,数组中的数值可以用a[x][y]表示,其中,x,y∈[0,99],那么只需要在绘制地图时,将a[x][y]中的数值映射到地图中位置为(x,y)的像素单元即可。其中,映射时将数值映射成对应的颜色、图案、数字或者这些内容的组合。
接着说明如何在一个二维数组中,携带多种地图数据。在本实施例中,可以将二维数组中每个数据的长度设置为10位,其中,前五位用于表示该位置的第一种信息,后五位用于表示该位置的第二种信息。在绘制地图时,将前五位数字映射为该像素单元的图案,将后五位数字映射为该像素单元的数值,如图4c所示,地图中的一个像素单元可以以数值和图案的叠加来同时表示一个位置的两种信息。
步骤340、显示所述日志信息以及所述地图。参照图5,在本实施例中,浏览器从web服务器220中加载第一组件510和第二组件520,并在浏览器的界面500中显示,这两个组件都是可以移动、缩小和关闭的窗口组件,其中第一组件510用于显示日志信息,第二组件520用于显示在步骤330中绘制的地图。在一些实施例中,如果游戏正在进行,那么随着游戏中的日志信息和地图数据的产生,第一组件510和第二组件520会根据浏览器从web服务器220中获取的数据,持续更新日志信息和地图数据。在另一些实施例中,数据的更新可以由用户手动触发。
在另外一些实施例中,可以将地图和日志信息直接显示在一个组件中。在该实施例中,并不限制地图和日志信息的位置关系。
在一些实施例中,可以通过客户端来替代浏览器,在本申请中客户端与浏览器的区别在于,客户端中包含显示和交互的组件,无需每次都从web服务器处进行加载,利用客户端来实现本方案时,客户端只需要从web服务器中获取地图数据和人工智能对象的日志信息,然后在客户端已有的组件内进行显示即可。
可见,本申请将人工智能的日志信息和地图数据以可视化的方式展示,可以便于开发人员对人工智能对象进行调试,提升了开发人员的调试效率。
除了可以以可视化的方式显示上述数据以外,开发人员还可以根据实际的需要通过输入操作指令的方式来调整当前显示的日志信息和绘制新的地图。
参照图6,本实施例的游戏人工智能信息的处理方法还包括以下步骤:
步骤610、接收第一操作指令。具体地,所述第一操作指令可以是由诸如鼠标、键盘或者触摸设备等外设输入的指令,这些指令可以是针对显示界面中某些对象的点击、拖拽和长按等指令。在接收这些指令之前,本实施例会显示一些可操作的组件来响应这些操作指令。例如显示人工智能对象的选项组件、显示人工智能对象阵型的选项组件或者选择时间节点的选项组件等等。
步骤620、根据所述第一操作指令更新显示中的所述日志信息或者所述地图至少之一。
在本实施例中,浏览器从web服务器中加载的组件在检测到这些操作指令后,会根据操作指令针对的对象和指令的类型来更新这些显示中的信息。例如,第一操作指令可以是用于选择人工智能对象的指令、可以是用于选择某个日志信息的指令、可以是用于选择某个时间节点的指令。基于这些操作指令,可以从已经获取的日志信息或者地图数据中筛选出满足操作指令指定的条件的日志信息或者地图数据,以更新当前显示的信息。同样,这些操作指令也可以触发浏览器向web服务器请求满足操作指令指定的条件的日志信息或者地图数据。
参照图7和图8,其中图7中示出的组件700为本实施例中用于显示人工智能对象的日志信息的组件。图8示出了步骤620在本实施例中的子步骤810~830。
步骤810、当所述第一操作指令为人工智能对象的选择指令,根据所述人工智能对象的选择指令确定被选择的人工智能对象。
具体地,本实施例的组件700包括文本显示组件710、人工智能对象选择组件720、人工智能对象集合选择组件730、过滤条件选择组件740、自动更新选项组件750和数据下载组件760。所述人工智能对象的选择指令是针对人工智能对象选择组件720的指令,其可以从多个选项进行选择,每个选项对应于一个人工智能对象,而各人工智能对象的日志信息携带用于区分不同人工智能对象的分类信息,通过被选择的选项对应的分类信息,可以从多个人工智能对象的日志信息中,筛选对应于被选择的人工智能对象的日志信息。
步骤820、从所述日志信息中确定所述被选择的人工智能对象的日志信息作为第一日志信息。在本步骤,会根据在步骤810中被选择的人工智能对象,筛选出与其对应的日志信息。
步骤830、将显示中的日志信息更新为第一日志信息。
具体地,本步骤会用步骤820中筛选出来的第一日志信息来替换当前显示的日志信息。
本实施例添加了人工智能对象的筛选功能,使得开发人员在进行人工智能对象的调试时,可以快速地筛选出出现异常的人工智能对象的日志信息。
在本实施例中,人工智能对象集合选择组件730用于选择阵型,阵型可以看作是一个人工智能对象的集合,一个集合中的人工智能对象同属于一个玩家操作或者属于同队的多个玩家操作。人工智能对象集合选择组件730所选中的阵型发生变化时,人工智能对象选择组件720中可以选择的人工智能对象也会根据阵型发生变化,如图7所示,当前选中的是红方阵型,用户可以输入针对人工智能对象集合选择组件730的操作指令来切换成蓝方阵型。设置人工智能对象集合选择组件730,相当于为人工智能对象的选项设置了二级菜单,可以让开发人员更快地找到人工智能对象的选项。
除此以外,在组件700中还包括过滤条件选择组件740,该组件可以是一个搜索框或者条件选择栏,其作用是从当前选中的人工智能对象的日志中,筛选出满足特定条件的日志。例如,过滤条件选择组件740可以是日志类型的选择栏,日志的类型可以包括属性日志、行为日志和决策树节点数值日志等等。通过输入针对过滤条件选择组件740的操作指令,可以从当前选中的人工智能对象的日志中,筛选出满足被选中的过滤条件的日志,同时更新文本显示组件710中的日志信息。
在组件700中还包括自动更新选项组件750,用户可以通过输入针对该组件的操作指令来改变该组件的勾选状态。当该组件被勾选时,组件700会持续地从web服务器获取新的日志,并在获取新的日志时,自动更新文本显示组件710中的日志信息。
在组件700中还包括数据下载组件760,该数据下载组件760可以触发日志信息的下载。其中,用户在输入针对数据下载组件760的操作指令后,组件700会将当前在缓存中的所有日志信息或者某个人工智能对象的日志信息保存到一个TXT或者excel文档之中。
参照图9,本实施例针对用于显示地图的组件900进行说明,在本实施例中,组件900包括地图910、图例920、坐标输入组件930、时间选择组件940、信息更新组件950、阵型选择组件960和地图数据下载组件970。
参照图10,图10所示的步骤1010~1030为步骤620所包含的可选的子步骤,该子步骤主要是描述图9中的阵型选择组件960的功能。在游戏中,虚拟地图中的环境对象(例如建筑等)可以是归属于某个阵型的,因此,当地图数据是某个阵型的建筑的阻挡属性时,对于与该建筑属于同一阵型的人工智能对象而言,该建筑的阻挡属性是无效的,其不会影响人工智能对象的行走路径。同理,可以推知建筑的其他属性对双方人工智能对象的影响是不同的。因此,可以筛选出只对某个人工智能对象的集合中对象起作用的地图数据来进行地图的绘制。这样做可以帮助开发人员过滤无用信息,以便于调试分析。
其中,在本实施例中,人工智能对象的数量有多个,多个所述人工智能对象分属于至少两个人工智能对象集合,其中,每个所述人工智能对象只属于所述至少两个人工智能对象集合中的一个。
步骤1010、当所述第一操作指令为人工智能对象集合的选择指令,根据所述人工智能对象集合的选择指令确定被选择的人工智能对象集合作为第一集合。
具体地,在本步骤中,通过接收针对阵型选择组件960的操作指令。从图9中可知,阵型选择组件960是一个二选一组件,两个选项分别对应两个阵营,即对应两个人工智能对象的集合。
步骤1020、从所述地图数据中筛选出作用于所述第一集合中的人工智能对象的信息作为第一地图数据。
具体地,本步骤是针对一组地图数据进行数据的筛选。例如,当前正在显示根据某个时间点的地图数据绘制的地图,那么当用户输入针对阵型选择组件960的操作指令,使得选中的阵型发生变换。这时候会从当前显示的地图对应的地图数据中,筛选出可以作用于当前被选中的阵型的地图数据。例如,蓝方的建筑对红方的人工智能对象可以起到阻挡作用,而蓝方的建筑对蓝方的人工智能对象不起阻挡作用,反之亦然。那么当选中蓝方时,蓝方建筑的阻挡信息可以不显示,故在筛选数据时会过滤蓝方建筑的阻挡信息,仅显示对属于蓝方阵型的人工智能对象起作用的地图数据。
步骤1030、根据所述第一地图数据绘制地图。
本步骤根据第一地图数据,绘制新的地图910,并在组件900中进行更新。本实施例根据用户的操作指令,确定出用户所选择的阵型,并在地图数据中心筛选出作用于用户所选择的阵型中的人工智能对象的数据,来绘制新的地图,实际上,可以减少地图中的无用信息,以去除地图中无用信息对开发人员的干扰,因此本实施例有助于提升开发人员的调试效率。
参照图9和图11,本实施将对图9中的时间选择组件940的功能进行说明,时间选择组件940是一个动态的选择组件,其选项内容与获取的各组地图数据的产生时间关联,其选项的数量与地图数据的数量有关。例如,有三组产生时间分别为T1、T2和T3的地图数据,那么此时,时间选择组件940的选项就会变成具有T1、T2和T3这三个选项的选择组件,也就是说,时间选择组件940的选项数量可以根据地图数据的组数动态变化。每个选项指向一组地图数据,而选项的内容则是地图数据的产生时间。
图11中示出的步骤1110~1130为步骤620的一种可选的子步骤,在本实施例中,地图数据有多组,每组地图数据反映一段时间内虚拟地图中的情况。
步骤1110、当所述第一操作指令为时间选择指令,根据所述时间选择指令确定被选择的时间。
具体地,通过接收用户针对时间选择组件940的操作指令,来确定用户选择的时间选项,从而确定时间选项对应的时间。
步骤1120、从所述多组地图数据中确定产生时间与被选择的时间匹配的一组地图数据作为第二地图数据。
具体地,在步骤1110中确定被选择的时间后,就可以根据被选择的时间来匹配到对应的一组地图数据。在本实施例中,每组地图数据都携带产生的时间,因此可以通过时间来匹配数据。
步骤1130、根据所述第二地图数据绘制地图。
在本步骤中,将步骤1120中确定的第二地图数据来绘制新的地图,并在组件900中进行更新。
在本实施例中,组件900的坐标输入组件930主要用于定位地图中某个坐标位置的地图数据。地图910实际上是反映地图信息在游戏的虚拟地图中的信息分布,因此,地图910中的每个像素单元所代表的均为虚拟地图中对应位置的地图数据。当开发人员发现人工智能存在行为异常时,翻看到对应的日志信息,这些日志信息显示人工智能对象在某个坐标附近不断徘徊。为了可以尽快确定该位置附近的地图数据分布情况,开发人员可以通过坐标输入组件930输入地图中的某个坐标,坐标输入组件930旁会显示出地图中该像素单元的信息,这样可以有助于开发人员更快地定位问题。
在本实施例中,组件900中的信息更新组件950,用于手动刷新地图数据,当接收到针对信息更新组件950的操作指令时,会触发地图910更新为下一个时间节点的地图。例如,在本实施例中已经获取了产生时间为T1、T2和T3的三组地图数据,当前显示的地图对应的地图数据的产生时间为T1,点击一次信息更新组件950,会将地图910更新为产生时间为T2的地图数据对应的地图。在当前显示的地图910对应的地图数据的产生时间为T3的情况下,再点击信息更新组件950,会使得组件900向web服务器请求最新的地图数据,如果web服务器返回产生时间为T4的地图数据,则会根据该组地图数据来更新地图910。
在本实施例中,组件900中的地图数据下载组件970,用于下载地图数据。开发人员通过点击该组件,可以下载当前显示的地图信息或者全部已经获取的地图信息,其导出格式可以是图片格式、TXT格式或者excel格式等。
参照图12和图13,图12示出了界面1200,在本实施例中,用于显示日志信息的组件和用于显示地图的组件存在交互功能,以便于开发人员在指定某个日志信息时,可以快速地查看该日志信息相对应的地图数据。
图13中的步骤1310~1330为步骤620所包含的可选的子步骤。
步骤1310、当所述第一操作指令为日志选择指令,根据所述日志选择指令确定被选择的一条日志,所述日志携带有产生时间。
参照图12,在本步骤中,开发人员双击日志1210,该日志的产生时间为2020-01-01-16-12-12。
步骤1320、从所述地图数据中选择与所述被选择的日志的产生时间匹配的一组地图数据作为第三地图数据。
本步骤会根据步骤1310中所选择的日志的产生时间,在已经获取的地图数据中查找生成时间在日志的产生时间之前,且最接近于日志的产生时间的一组地图数据作为第三地图数据。从图12的时间信息组件1220中可以看出,对应于被选择的日志的一组地图数据的产生时间为2020-01-01-16-11-10,该组数据是在日志产生前的1分2秒之前产生的。通过这样方式匹配的原因是,相对于人工智能对象的日志信息而言,虚拟地图的变化频率较低,并非每个日志产生的时间都存在产生时间相同的地图数据。但是一组地图数据可以表征一个较长的时间段中地图的情况,因此,只需要找到影响日志产生时的有效地图数据即可。
步骤1330、根据所述第三地图数据绘制地图。
在本步骤中,会根据第三地图数据绘制信息地图,并更新地图910。
在本实施例中,上述可选的三个子步骤中的至少之一被采用。
为了便于开发人员在定位问题时,通过场景复现或者构造特定场景的方式来确认问题,本实施例还包括用于修改游戏中数据的组件和方法。
图14示出了组件1400,该组件用于通过web服务器向游戏服务器发送参数修改指令。其中该组件包括方案选择组件1410,该组件用于向开发人员提供已有的参数修改方案的选项。开发人员可以根据所需的场景,预先设计好参数修改方案,以用于复现场景或者构造特殊的测试场景。在本实施例中,这些已有的参数修改方案存放在web服务器之中。
触发修改的步骤如图15所示,包括以下步骤:
步骤1510、接收第二操作指令。
具体地,第二操作指令可以是针对组件1400中方案选择组件1410的操作指令,例如可以是一个双击或者长按的指令,或者是若干个点击指令的组合。
步骤1520、根据所述第二操作指令确定参数修改方案。
具体地,如图14所示,可以通过长按或者双击方案选择组件1410中的方案选项1411要来触发参数修改方案2。在方案选择组件1410中的每个选项,均对应于web服务器中的一个参数修改方案。这些参数修改方案中包括至少一项针对人工智能对象或者地图数据的修改项。
步骤1530、根据所述参数修改方案修改人工智能对象的数据或所述地图数据中的至少一项。
当开发人员在选定并触发参数修改方案后,web服务器会向游戏服务器发送携带参数修改方案的指令。此时,游戏服务器会根据参数修改方案来修改人工智能对象的参数或地图数据。其中,不同类型的修改指令,通过分类信息来区分,例如,修改指令可以由“指令开始信息”+“指令长度信息”+“修改项1”+“修改项2”+“指令结束信息”表示。而修改项则可以表示为“修改类型”+“修改对象”+“修改数值”。这样可以通过一个数据接口来传输多类型的数据,减少对游戏服务器的改动。避免每增加一种修改的数据,要重新开发一个新的接口。通过本实施例可以实现对游戏中参数的修改,提升了开发人员的调试效率。同时,通过在web服务器预先配置参数修改方案,可以使得开发人员能够在游戏进行的过程中快速地触发修改。
参照图14,接着对如何创建参数修改方案进行说明。在组件1400中还包括新建方案组件1420,开发人员可以输入针对新建方案组件1420的点击指令,在点击新建方案组件1420后会显示方案编辑组件1430。在方案编辑组件1430中,包括阵型选择组件1440和人工智能对象选择组件1450。开发人员可以通过点击阵型选择组件1440来选择阵型,例如选择红方、蓝方或者其他等。人工智能对象选择组件1450中的对象会根据阵型选择组件1440当前的选项改变自身的选项。例如,当前阵型选择组件1440的被选中选项是蓝方,那么人工智能对象选择组件1450中的选项便是蓝方的英雄。
接着,通过点击人工智能对象选择组件1450可以选中某个人工智能对象,在选中人工智能对象后,会显示被选中的人工智能对象对应的属性表1470,那么开发人员可以从属性列表中选中某项属性,并输入修改的数值。当然,为了便于开发人员从大量的属性中找到需要修改的属性,本实施例中的属性表1470还设置了搜索栏,搜索栏可以通过关键词搜索方式从属性列表中搜索名称中包含关键词的属性项。当开发人员确定一个修改项后,会在文本显示组件1460中显示。当开发人员编辑完全部的修改项并点击保存后。参数修改方案会保存在web服务器中,并同步更新方案选择组件1410中的选项。
参照图16,本实施例以图2的***为例,说明该***的通信过程。本实施例包括步骤1601~1614。
步骤1601、浏览器接收用户输入的访问网址,在本实施例中,该访问网址为web服务器的访问网址。
步骤1602、浏览器根据访问网址向web服务器发起访问请求。
步骤1603、web服务器根据浏览器的访问请求,返回页面组件,这些页面组件在浏览器中实现UI显示以及部分逻辑运算功能。
步骤1604、在游戏进行的过程中,游戏服务器持续产生日志信息和地图数据。其中,日志信息为与人工智能对象的行为相关的日志信息,地图数据为反映人工智能对象所处的虚拟地图中的情况的数据。
步骤1605、游戏服务器将这些带有产生时间和分类信息的数据发送给web服务器。
步骤1606、web服务器以一局游戏为单位根据产生时间和分类信息对日志信息和地图数据进行存储。
步骤1607、浏览器向web服务器发起数据请求,请求获取某局游戏的日志信息和地图数据。
步骤1608、web服务器根据数据请求向浏览器发送日志信息和地图数据。
步骤1609、浏览器中已经加载的组件根据获得的地图数据绘制地图,该地图用于表征影响人工智能对象行为的地图数据的几何分布状态。
步骤1610、浏览器在不同的组件中分别显示日志信息和在步骤1609绘制得到的地图。
步骤1611、在游戏的过程中游戏服务器持续向web服务器发送新的日志信息和地图数据。
步骤1612、web服务器继续存储新的数据。
步骤1613、web服务器在获得新的数据的同时,会将这些数据持续地同步到浏览器之中。
步骤1614、浏览器会根据当前组件的状态,基于获得的新的日志信息和地图数据,更新组件显示的日志信息和地图。
步骤1615、在整个过程中,浏览器接收用户针对组件的操作指令。
步骤1616、浏览器中的组件根据用户指令做出对应的处理,例如更新地图和更新日志信息等。
参照图17,本实施例将对修改游戏数据的过程进行说明。本实施例包括步骤1701~1714。
步骤1701、浏览器接收用户输入的访问网址,在本实施例中,该访问网址为web服务器的访问网址。
步骤1702、浏览器根据访问网址向web服务器发起访问请求。
步骤1703、web服务器根据浏览器的访问请求,返回参数修改组件。
步骤1704、浏览器接收用户针对参数修改组件的操作指令。
步骤1705、参数修改组件根据操作指令生成参数修改方案。
步骤1706、浏览器向web服务器发送已经生成的参数修改方案。
步骤1707、web服务器保存参数修改方案。
步骤1708、web服务器将已有的参数修改方案的列表同步给浏览器。
步骤1709、此时浏览器的参数修改方案列表已经与服务器同步,接收用户针对参数修改列表的操作指令。
步骤1710、根据用户的操作指令,确定用户触发的参数修改方案。
步骤1711、基于步骤1710确定的参数修改方案,向web服务器发送参数修改方案的代号。
步骤1712、web服务器基于参数修改方案生成参数修改指令,指令中包含参数修改方案的信息。
步骤1713、web服务器向游戏服务器发送该参数修改指令。
步骤1714、游戏服务器根据参数修改指令中的信息,修改游戏中的数据,其中,修改对象为人工智能对象的属性参数或者地图数据。
本申请实施例还公开了一种游戏人工智能信息的处理装置,该装置包括:存储器、处理器和程序;
所述程序被存储在所述存储器中,处理器执行程序以实现上述的游戏人工智能信息的处理方法。
本申请实施例还公开了一种存储介质,存储介质上存储有程序,该程序被处理器执行,实现上述的游戏人工智能信息的处理方法。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或装置不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或装置固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示中的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于上述方法实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
以上是对本申请的较佳实施进行了具体说明,但本申请并不限于所述实施例,熟悉本领域的技术人员在不违背本申请精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种游戏人工智能信息的处理方法,其特征在于,所述游戏人工智能信息包括游戏中人工智能对象的日志信息和所述日志信息产生时游戏中对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据,所述方法包括以下步骤:
获取所述人工智能对象的日志信息;
获取所述地图数据;
根据所述地图数据绘制地图用以表征所述地图数据的几何分布,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据;
显示所述日志信息以及所述地图;
所述方法还包括以下步骤:
接收第一操作指令;
根据所述第一操作指令更新显示中的所述日志信息或者所述地图至少之一;
所述人工智能对象的数量有多个,多个所述人工智能对象分属于至少两个人工智能对象集合,其中,每个所述人工智能对象只属于所述至少两个人工智能对象集合中的一个;
所述根据所述第一操作指令更新显示中的所述地图的步骤,包括:
当所述第一操作指令为人工智能对象集合的选择指令,根据所述人工智能对象集合的选择指令确定被选择的人工智能对象集合作为第一集合;
从所述地图数据中筛选出第一地图数据,所述第一地图数据为对所述第一集合中的人工智能对象的行为造成影响的信息;
根据所述第一地图数据绘制地图;
所述方法还包括以下步骤:
接收第二操作指令;
根据所述第二操作指令确定参数修改方案;
根据所述参数修改方案修改人工智能对象的数据或所述地图数据中的至少一项;
所述根据所述第二操作指令确定参数修改方案的步骤,具体为:
根据所述第二操作指令从已有的参数修改方案中选择一个参数修改方案。
2.根据权利要求1所述的一种游戏人工智能信息的处理方法,其特征在于,所述地图数据有多组,每一组所述地图数据均包括产生时间;
所述根据所述第一操作指令更新显示中的所述地图的步骤,包括:
当所述第一操作指令为时间选择指令,根据所述时间选择指令确定被选择的时间;
从多组所述 地图数据中确定产生时间与被选择的时间匹配的一组地图数据作为第二地图数据;
根据所述第二地图数据绘制地图。
3.根据权利要求1所述的一种游戏人工智能信息的处理方法,其特征在于,所述根据所述第一操作指令更新显示中的所述地图的步骤,包括:
当所述第一操作指令为日志选择指令,根据所述日志选择指令确定被选择的一条日志,所述日志含有产生时间;
从所述地图数据中选择与所述被选择的日志的产生时间匹配的一组地图数据作为第三地图数据;
根据所述第三地图数据绘制地图。
4.根据权利要求1所述的一种游戏人工智能信息的处理方法,其特征在于,所述地图为二维图像,所述地图数据由一个二维数组表示,所述二维数组中一个数据对应于所述二维图像中的一个像素单元;
所述根据所述地图数据绘制地图的步骤,包括:
将所述二维数组中的数据映射到所述二维图像中对应的像素单元中,以绘制出所述地图。
5.根据权利要求1所述的一种游戏人工智能信息的处理方法,其特征在于,所述根据所述第一操作指令更新显示中的所述日志信息的步骤,包括:
当所述第一操作指令为人工智能对象的选择指令,根据所述人工智能对象的选择指令确定被选择的人工智能对象;
从所述日志信息中确定所述被选择的人工智能对象的日志信息作为第一日志信息;
将显示中的日志信息更新为第一日志信息。
6.根据权利要求1-5任一项所述的一种游戏人工智能信息的处理方法,其特征在于,所述人工智能对象的日志信息和所述地图数据从本地缓存获取或者通过向web服务器发送请求来获取。
7.一种游戏人工智能信息的处理方法,其特征在于,所述人工智能信息包括游戏中人工智能对象的日志信息和所述日志信息产生时游戏中对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据,所述方法包括以下步骤:
接收来自终端的请求;
根据所述请求向终端发送人工智能对象的日志信息和所述地图数据,使终端根据所述地图数据绘制地图用以表征所述地图数据的几何分布,并且显示所述日志信息以及所述地图;
其中,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据;
其中,所述终端用于:
接收第一操作指令;
根据所述第一操作指令更新显示中的所述日志信息或者所述地图至少之一;
所述人工智能对象的数量有多个,多个所述人工智能对象分属于至少两个人工智能对象集合,其中,每个所述人工智能对象只属于所述至少两个人工智能对象集合中的一个;
所述根据所述第一操作指令更新显示中的所述地图的步骤,包括:
当所述第一操作指令为人工智能对象集合的选择指令,根据所述人工智能对象集合的选择指令确定被选择的人工智能对象集合作为第一集合;
从所述地图数据中筛选出第一地图数据,所述第一地图数据为对所述第一集合中的人工智能对象的行为造成影响的信息;
根据所述第一地图数据绘制地图;
所述终端还用于:
接收第二操作指令;
根据所述第二操作指令确定参数修改方案;
根据所述参数修改方案修改人工智能对象的数据或所述地图数据中的至少一项;
所述根据所述第二操作指令确定参数修改方案的步骤,具体为:
根据所述第二操作指令从已有的参数修改方案中选择一个参数修改方案。
8.一种游戏人工智能信息的处理***,其特征在于,包括游戏服务器、web服务器和终端;所述人工智能信息包括游戏中人工智能对象的日志信息和所述日志信息产生时游戏中对应的地图数据,所述人工智能对象在游戏过程中根据所述地图数据与决策模型确定执行的行为,所述日志信息用于记录描述所述行为的数据;
所述游戏服务器用于产生所述人工智能对象的日志信息和所述地图数据,并将所述日志信息和所述地图数据发送至web服务器;
所述web服务器用于存储所述日志信息和所述地图数据,并根据所述终端的请求,向终端发送所述日志信息和所述地图数据;
所述终端用于向web服务器请求获取所述日志信息和所述地图数据,并根据所述地图数据绘制地图用以表征所述地图数据的几何分布,以及显示所述日志信息和所述地图;
其中,所述地图由若干个像素单元组成,所述像素单元以数字、颜色或者图案中的至少之一来表征至少一种地图数据;
其中,所述终端用于:
接收第一操作指令;
根据所述第一操作指令更新显示中的所述日志信息或者所述地图至少之一;
所述人工智能对象的数量有多个,多个所述人工智能对象分属于至少两个人工智能对象集合,其中,每个所述人工智能对象只属于所述至少两个人工智能对象集合中的一个;
所述根据所述第一操作指令更新显示中的所述地图的步骤,包括:
当所述第一操作指令为人工智能对象集合的选择指令,根据所述人工智能对象集合的选择指令确定被选择的人工智能对象集合作为第一集合;
从所述地图数据中筛选出第一地图数据,所述第一地图数据为对所述第一集合中的人工智能对象的行为造成影响的信息;
根据所述第一地图数据绘制地图;
所述终端还用于:
接收第二操作指令;
根据所述第二操作指令确定参数修改方案;
根据所述参数修改方案修改人工智能对象的数据或所述地图数据中的至少一项;
所述根据所述第二操作指令确定参数修改方案的步骤,具体为:
根据所述第二操作指令从已有的参数修改方案中选择一个参数修改方案。
9.一种游戏人工智能信息的处理装置,其特征在于,包括:存储器、处理器和程序;
所述程序被存储在所述存储器中,所述处理器执行所述程序以实现如权利要求1-7任一项所述的游戏人工智能信息的处理方法。
10.一种存储介质,其特征在于,所述存储介质上存储有程序,所述程序被处理器执行,实现如权利要求1-7任一项所述的游戏人工智能信息的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010135369.9A CN111388995B (zh) | 2020-03-02 | 2020-03-02 | 游戏人工智能信息的处理方法、***、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010135369.9A CN111388995B (zh) | 2020-03-02 | 2020-03-02 | 游戏人工智能信息的处理方法、***、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111388995A CN111388995A (zh) | 2020-07-10 |
CN111388995B true CN111388995B (zh) | 2022-07-26 |
Family
ID=71415012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010135369.9A Active CN111388995B (zh) | 2020-03-02 | 2020-03-02 | 游戏人工智能信息的处理方法、***、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111388995B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114344913B (zh) * | 2022-01-04 | 2023-06-20 | 腾讯科技(深圳)有限公司 | 一种游戏数据处理方法、装置、设备以及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140072413A (ko) * | 2012-12-04 | 2014-06-13 | 한국전자통신연구원 | 게임 로그 데이터를 통한 맵 정보 생성 방법 및 장치 |
KR20150130584A (ko) * | 2014-05-13 | 2015-11-24 | 한국전자통신연구원 | 온라인 게임의 모니터링을 위한 게임 지도 기반 3d 통계 정보 생성 장치 및 방법 |
CN109999495A (zh) * | 2019-03-28 | 2019-07-12 | 网易(杭州)网络有限公司 | 人工智能ai单元状态信息的处理方法及*** |
CN110489340A (zh) * | 2019-07-29 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 一种游戏地图平衡性测试方法、装置、设备及存储介质 |
CN112619125A (zh) * | 2020-12-30 | 2021-04-09 | 深圳市创梦天地科技有限公司 | 游戏人工智能模块的使用方法和电子设备 |
-
2020
- 2020-03-02 CN CN202010135369.9A patent/CN111388995B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140072413A (ko) * | 2012-12-04 | 2014-06-13 | 한국전자통신연구원 | 게임 로그 데이터를 통한 맵 정보 생성 방법 및 장치 |
KR20150130584A (ko) * | 2014-05-13 | 2015-11-24 | 한국전자통신연구원 | 온라인 게임의 모니터링을 위한 게임 지도 기반 3d 통계 정보 생성 장치 및 방법 |
CN109999495A (zh) * | 2019-03-28 | 2019-07-12 | 网易(杭州)网络有限公司 | 人工智能ai单元状态信息的处理方法及*** |
CN110489340A (zh) * | 2019-07-29 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 一种游戏地图平衡性测试方法、装置、设备及存储介质 |
CN112619125A (zh) * | 2020-12-30 | 2021-04-09 | 深圳市创梦天地科技有限公司 | 游戏人工智能模块的使用方法和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111388995A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11003422B2 (en) | Methods and systems for visual programming using polymorphic, dynamic multi-dimensional structures | |
CN103888440B (zh) | 基于云的游戏切片生成和即玩型无障碍社交共享 | |
JP5887458B1 (ja) | プレイヤの移動履歴に基づいてノンプレイヤキャラクタの経路探索を行うゲームシステム等 | |
US9844723B2 (en) | In-browser emulation of multiple technologies to create consistent visualization experience | |
US8762430B1 (en) | Key subscription for distributed systems | |
Zhu | Behavior tree design of intelligent behavior of non-player character (NPC) based on Unity3D | |
CN111558221B (zh) | 虚拟场景的显示方法和装置、存储介质及电子设备 | |
US20150080128A1 (en) | Content management system | |
WO2023142587A1 (zh) | 虚拟对象的控制方法、装置、设备、介质及程序产品 | |
Kohwalter et al. | Capturing game telemetry with provenance | |
CN111388995B (zh) | 游戏人工智能信息的处理方法、***、装置和存储介质 | |
US10038709B1 (en) | Computer network defense system employing multiplayer gaming functionality | |
CN112131112B (zh) | 操作信息的获取方法和装置、存储介质及电子设备 | |
US10099135B2 (en) | Relative inverse kinematics graphical user interface tool | |
CN112587929A (zh) | 游戏副本的生成方法、装置及设备 | |
CN114288662A (zh) | Npc的行为控制方法、装置及电子设备 | |
KR100895199B1 (ko) | 가상 공간에서의 캐릭터 이동 경로 설정 방법 및 시스템 | |
CN116271829A (zh) | 虚拟对象控制方法、装置和存储介质 | |
KR102235538B1 (ko) | 가이드 컨텐츠 제공 방법 및 장치 | |
US10322343B2 (en) | G.P.U.-assisted character animation | |
JP2020124529A (ja) | 構築方法、プログラム、情報処理システム及び情報処理装置 | |
CN114887325B (zh) | 数据处理方法、显示方法、设备及存储介质 | |
KR101447850B1 (ko) | 실시간 대전 게임을 위한 게임 제공 방법 및 그 시스템 | |
WO2024148924A1 (zh) | Ai虚拟对象的控制方法、装置、设备、介质及程序产品 | |
Sales Gil | Design and implementation of an artificial intelligence for a horror videogame in Unreal Engine 5 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |