CN108553903B - 控制机器人玩家方法及装置 - Google Patents
控制机器人玩家方法及装置 Download PDFInfo
- Publication number
- CN108553903B CN108553903B CN201810355032.1A CN201810355032A CN108553903B CN 108553903 B CN108553903 B CN 108553903B CN 201810355032 A CN201810355032 A CN 201810355032A CN 108553903 B CN108553903 B CN 108553903B
- Authority
- CN
- China
- Prior art keywords
- game
- player
- behavior
- parameters
- robot
- 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/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- 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/60—Methods for processing data by generating or executing the game program
- A63F2300/6027—Methods for processing data by generating or executing the game program using adaptive systems learning from user actions, e.g. for skill level adjustment
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种控制机器人玩家方法及装置,其中,该方法包括:获取真人玩家玩游戏过程中生成的游戏参数,该游戏参数可以包括在每种游戏场景下,真人玩家如何进行操作的信息。依据上述游戏参数控制机器人玩家在游戏中的行为,以使得机器人玩家尽可能的模拟真人玩家的游戏行为,不至于使得机器人玩家的行为显得单一。采用上述技术方案,解决了相关技术中的在游戏中增加的机器人玩家的行为较为单一,智能程度低的问题,实现了机器人玩家的游戏行为接近或者学习真人玩家的操作,提升用户的游戏体验。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种控制机器人玩家方法及装置。
背景技术
在相关技术中,在存在竞争性社交或对战的游戏产品中,纯玩家的对战玩法,基本为零和博弈或负和博弈,玩家体验不佳。
相关技术中针对上述问题,对玩家体验改进,主要分三类:游戏内玩法改进,游戏资源调整,增加BOT玩家。以下进下详细说明。
一,游戏内玩法改进包括:不对称玩法改进、过程体验改进等。
1),不对称玩法改进:将1对1、5对5等对称性对抗规则,改进为1对多,或者N对N+X的玩法,典型的如斗地主和绝地求生大逃杀玩法。
2),过程体验改进:在对抗中,削弱负向信息展示和提醒,强化正向信息展示和提醒。典型如守望先锋的玩法中,削弱对被击败的提示,强化击败的提示,增强对玩家的成就感激励。
二,游戏资源调整:主要是针对不同玩家,调整资源投放的分配策略。
比如:在游戏中针对付费玩家投放额外道具或数值强化,改变玩家实力对比,使正面体验更多向付费玩家倾斜,负面体验更多向非付费玩家倾斜。
三,增加BOT玩家:加入模拟玩家行为的BOT,使正面体验更多向玩家倾斜,负面体验更多BOT倾斜。
对于上述相关技术中游戏内玩法改进的方法,无法解决游戏胜负仍然是零和博弈或负和博弈这一根本问题。即只能改善过程,无法改善结果。而游戏平衡调整的方法,只能改善某一群体的体验,同时造成其它群体的体验恶化。
对于增加BOT玩家的方法,能够改进整体玩家体验,不对部分群体造成负面影响,能够较好地改进整体体验,但相关技术中在游戏中加入BOT的方案,BOT行为一般由服务端统一控制,BOT行为较为死板。
针对相关技术中,在游戏中增加的机器人玩家的行为较为单一,智能程度低的问题,目前还没有有效的解决方案。
发明内容
本发明实施例提供了一种控制机器人玩家方法及装置,以至少解决相关技术中在游戏中增加的机器人玩家的行为较为单一,智能程度低的问题。
根据本发明的一个实施例,提供了一种控制机器人玩家的方法,该方法包括:获取真人玩家在参与游戏过程中生成的游戏参数;依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为。
根据本发明的另一个实施例,还提供了一种控制机器人玩家的装置,包括:获取模块,用于获取真人玩家在参与游戏过程中生成的游戏参数;控制模块,用于依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,获取真人玩家玩游戏过程中生成的游戏参数,该游戏参数可以包括在每种游戏场景下,真人玩家如何进行操作的信息。依据上述游戏参数控制机器人玩家在游戏中的行为,以使得机器人玩家尽可能的模拟真人玩家的游戏行为,不至于使得机器人玩家的行为显得单一。采用上述技术方案,解决了相关技术中的在游戏中增加的机器人玩家的行为较为单一,智能程度低的问题,实现了机器人玩家的游戏行为接近或者学习真人玩家的操作,提升用户的游戏体验。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的控制机器人玩家的方法流程图;
图2是根据本发明具体实施例的机器人玩家的行为树结构示意图;
图3是根据本发明具体实施例的行为树及其参数设计流程示意图;
图4是根据本发明具体实施例的客户端数据记录过程示意图;
图5是根据本发明具体实施例的情景处理运算的过程流程图;
图6是根据本发明具体实施例的客户端和服务端交互过程示意图;
图7是根据本发明具体实施例的2V2对战的拓扑关系示意图;
图8是根据本发明具体实施例的2V2对战的客户端和服务端交互流程示意图;
图9是根据本发明具体实施例的服务器运行机器人玩家的拓扑关系示意图;
图10是根据本发明具体实施例的由服务器运行机器人玩家时,客户端和服务端的交互流程示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本公开的技术方案可以应用于游戏服务器,或者用户终端的游戏主机,但是,不局限于此。
在本公开的其中一种实施例中提供了一种运行于计算机或者服务器的控制机器人玩家的方法,图1是根据本发明实施例的控制机器人玩家的方法流程图,如图1所示,该流程包括如下步骤:
步骤S102,获取真人玩家在参与游戏过程中生成的游戏参数;
步骤S104,依据该游戏参数控制机器人玩家模拟该真人玩家在游戏中的行为。
通过上述步骤,获取真人玩家玩游戏过程中生成的游戏参数,该游戏参数可以包括在每种游戏场景下,真人玩家如何进行操作的信息。依据上述游戏参数控制机器人玩家在游戏中的行为,以使得机器人玩家尽可能的模拟真人玩家的游戏行为,不至于使得机器人玩家的行为显得单一。采用上述技术方案,解决了相关技术中的在游戏中增加的机器人玩家的行为较为单一,智能程度低的问题,实现了机器人玩家的游戏行为接近或者学习真人玩家的操作,提升用户的游戏体验。
需要补充的是,机器玩玩家可以称为BOT玩家,上述方案的应用场景可以是,在某局游戏场景中增加了BOT,在该局游戏中,依据以期真人游戏玩家的游戏参数,控制该BOT在该局游戏中,做出与该真人玩家类似的游戏行为。
可选地,步骤S102和步骤S104的执行顺序是可以互换的,即可以先执行步骤S104,然后再执行S102,可以是循环地更新游戏参数。
可选地,获取真人玩家在参与游戏过程中生成的游戏参数之前或之后,确定该机器人玩家在当前游戏进程中处于第一决策点;获取决策参数,其中,该决策参数是针对该第一决策点做出决策的参考依据。
需要补充的是,决策点例如在游戏中多个操作点,例如买道具买什么道具,发现敌人后是逃跑或者迎战,释放技能时释放哪个技能。
此外,本申请文件中不限定,获取真人玩家的游戏参数,和机器人玩家当前的决策参数的先后顺序,即可以在每个决策点均在游戏参数筛选一遍,以确定机器人玩家在当前场景因素下的游戏行为。该游戏参数包括,在遇到每种情况下,该种情况下的参数,真人做出的游戏行为。即将考虑的场景参数,和游戏行为参数,统称为真人玩家的游戏参数。
可选地,获取真人玩家在参与游戏过程中,生成的游戏参数,包括:
获取该真人玩家在以往参与游戏过程中,针对多个决策点生成的多组游戏参数,其中,针对每个决策点的每组游戏参数包括以下至少之一:游戏场景因素;敌我双方玩家所操控的角色情况;基于游戏场景因素和敌我双方玩家所操作的角色情况,真人玩家做出的真实游戏行为。
需要补充的是,游戏场景因素,可以包括:当前的游戏地形因素,例如是树林易于火攻,或者是湖泊易于释放寒冰技能;还可以包括敌我双发的防御塔的血量;敌我双发的士兵数量。
角色情况可以包括角色属性,例如法师,战士,肉盾,以及每个角色的血量,能量条等。
真人玩家做出的真实游戏行为可以包括:迎战,逃跑,在当前场景下释放哪个技能。
可选地,依据该游戏参数控制机器人玩家模拟该真人玩家在游戏中的行为,包括:在该真人玩家处于该第一决策点所生成的多组游戏参数中,依据每组游戏参数与该决策参数的差异度进行排序,得到排序结果;从该排序结果中选择差异度小的M组游戏参数,其中,该M为正整数;依据该M组游戏参数中的游戏行为,控制该BOT玩家模拟该真人玩家在游戏中的行为。排序方式可以包括差异度从小到大,或从大到小。或者,不进行排序,直接选择与决策参数的区别在预定范围内的多组游戏参数,依据该多组游戏参数控制BOT玩家的行为。
可选地,依据该M组游戏参数中的游戏行为,控制该机器人玩家模拟该真人玩家在游戏中的行为,包括:确定在该M组游戏参数中,不同的游戏行为所各自占据的比例;依据该比例确定一个游戏行为为该机器人玩家在游戏中的行为。可以将比例大的游戏行为作为BOT玩家在游戏中的行为。
或者,在排序靠前的游戏参数中的游戏行为中随机选择一个游戏行为。
可选地,确定机器人玩家在当前游戏进程中处于第一决策点之前,该方法还包括:获取预先为该机器人玩家设置的行为树,其中,该行为树包括多个决策点,以及每个决策点做出决策的参考依据;依据该行为树控制该机器人玩家在当前游戏中的行为。
可选地,采用以下方式之一生成该机器人玩家:在真人玩家操控的终端设备中生成该机器人玩家,并在非该真人玩家参与的游戏局中加入该机器人玩家;在运行游戏的服务端设备中生成该机器人玩家,并在该机器人玩家与该真人玩家过往生成的游戏参数之间建立对应关系。
需要补充的是,由真人玩家的客户端上运行机器人玩家,可以分担游戏服务器的压力。或者由游戏服务器从各客户端上采集真人玩家的游戏参数,在服务器上使用游戏参数控制机器人玩家,可以规模管理机器人玩家。
下面结合在本公开的其中一种实施例进行详细说明。
相关技术中增加BOT玩家的方案,存在的问题有:
1.调制高表现的BOT成本较高,行为树编写复杂,行为训练需要大数据和高运算力支持;
2.BOT个性化表现较少,BOT群体表现高度一致,易被玩家感知,导致体验下降;
3.BOT对服务端性能开销较大,降低单服务器的承载力;
4.BOT的随机行为需要预先设定,难以模拟游戏玩家的群体性行为。
本公开的其中一种实施例所要解决的技术问题是:提供一种可高度模拟玩家随机行为、训练相对简易、可由客户端分担计算压力的BOT实现方法和系统。
本公开的其中一种实施例的技术方案包括:游戏AI的要素拆分,以及分布式的客户端/服务端交互逻辑。
一、将游戏AI要素拆分为:基础行为树设计、本机数据记录、情景处理运算。
基础行为树设计:需要预先设计行为树模板,行为树的决策节点应与玩家可用的游戏交互行为相对应,尽可能保持一致,或提取性价比最高的关键交互行为。并针对决策节点,提取决策参数和行为参数。
本机数据记录:每个客户端根据当前玩家的游戏行为,记录本机个性化参数。该参数具有与玩家行为相近的概率范围,根据玩家本人的历史游戏行为进行收集并存储。
情景处理运算:每个BOT根据基础行为树,以及个性化参数记录,通过模糊匹配算法,选择相似度最高的行为,作为决策输出,并在游戏中执行行为结果。在本机运行若干个BOT服务,根据情景输入,进行处理运算并输出行为结果。
二、分布式的交互逻辑。
在多人游戏中,根据参与的真人客户端数量,生成相应比例的BOT。
每个客户端在参与多人游戏时,提供本机参数用于生成其它主机的BOT,同时接收其它主机的参数,用于生成本机的BOT。
BOT的行为树涵盖主要的玩家行为,并由对应的参数进行个性化。行为树运行时,输入游戏内交互信息,经过情景处理运算后,按对应行为节点,输出角色的游戏内行为。
通过这样的处理,在一次多人游戏的情景中,不同的BOT会具有与真人类似的个性化差异,为玩家提供接近与自然人玩家进行游戏对战的体验。
下面结合具体实施方式进行详细说明。
一、基础行为树及参数设计
在游戏中,角色的行动包含一系列不同的行为点,比如,在5V5战术竞技游戏中,战斗行为包括:
移动、发现敌人、普通攻击、释放技能、交流信号、装备购买。
其执行逻辑为:
1.在玩家行动过程中,会持续搜索敌人。
2.发现敌人后,玩家可能采取不同的行为,如远离逃走,或靠近接战。
3.在接战后,玩家会根据当前敌我属性,如当前血量、面板攻防数值、装备技能效果等,选择进行普通攻击,或释放技能进行攻击
4.在行动和战斗过程中,玩家可以释放信号,来影响己方团队其他成员的决策
5.在行动和战斗过程中,玩家可以根据现有资源,进行装备道具购买和使用,来影响战斗中数值。
图2是根据本发明具体实施例的机器人玩家的行为树结构示意图,如图2所示,设计了机器人玩家的行为树模板BT(Bahavior Tree)。
在图2中的行为树节点上的判断条件中,提取参数。以上述行为树为例,在每个决策点,对应的行为选择可以如表1所示。
表1
图2中的决策节点的决策参数可以如表2所示。
表2
图2中的决策节点的行为参数可以如表3所示。
表3
将这些参数及其对应关系,整理为参数集合PS(Parameter Set)。比如,对以上行为树,其参数集合为:
PS1={{dp1,dp2,dp3,dp4,bp1},
{dp5,dp6,dp7,dp8,dp9,bp2},
{dp1,dp3,dp5,bp3},
{dp1,dp3,dp10,dp11,bp4}}
在需要使用行为树的情景中,对不同的角色行为设计对应的行为树。比如,在5V5的战术竞技中,玩家可能使用肉盾型、远程型、突击型这三种角色参与竞技。同类角色具有相同的行为逻辑,不同类角色的行为逻辑不同。则BOT的行为树应设计三种类型,分别为BT1,BT2,BT3。同时生成对应的数据集合PS1,PS2,PS3。
图3是根据本发明具体实施例的行为树及其参数设计流程示意图,如图3所示,包括设计行为树(BT),提取对应决策点的决策参数(DP),提取对应行为点的行为参数(BP),将所有参数按对应关系,整理为参数集(PS)。
二、本机数据记录
1.客户端登陆服务端后,获取行为树和数据集合模板。
2.初始化本机数据库和数据索引
3.在本机运行游戏的交互过程中,当自然人玩家选择游戏角色后,BOT行为树同步运行,并将运行时的决策参数和行为参数同时作为输入,记录生成PSRL(Parameter SetRecord List)。
比如在以上的战术竞技游戏中,当发生BT树的“遇敌”判断时,记录对方生命值,对方攻防值,我方生命值,我方攻防值和自然人玩家最终的逃离/接战行为。即在PS1中的参数子集{dp1,dp2,dp3,dp4,bp1}中,dp1,dp2,dp3,dp4作为输入参数,同时bp1也作为输入参数。
同理,将玩家整个游戏周期的角色操作行为,根据对应的行为树参数集合,将数据记录为PSRL1,PSRL2,PSRL3。
4.建立和维护行为数据索引:使用索引工具对PSRL生成索引。生成索引的工具较多,如开源索引工具Lucence,以及MySQL,Oracle,SQLServer等各商业数据库软件提供的索引工具,此处不再赘述。
5.数据索引的更新和维护:在生成索引后,后续记录继续使用索引工具进行增加或删除。当客户端存储或网络带宽受限时,需要对PSR设置数量或时间限制,比如每个客户端,每个角色模板的PSR记录数量上限为10000条或6个月,超出数量上限,或PSR距当前时间超过6个月时,将上限数量对不符合条件的PSR从索引中删除。
图4是根据本发明具体实施例的客户端数据记录过程示意图,如图4所示,该流程包括在客户端设备登陆服务端,向服务端请求行为树和数据集合模板;服务端发送行为树和数据集合模板至客户端;客户端接收模块,初始化数据库和索引;玩家控制角色时,同时运行对应的行为树;以玩家行为作为输入,记录为PSRL;更新维护数据库和索引。
三、情景处理运算
1.当BOT与自然人玩家共同进行游戏时,BOT需要根据游戏现场情况,进行情景处理运算。以上述战术竞技游戏为例,当遇敌时,需要根据对方生命值,对方攻防值,我方生命值,我方攻防值,进行情景运算,并输出行为决策结果。即在PS1中的参数子集{dp1,dp2,dp3,dp4,bp1}中,以dp1,dp2,dp3,dp4作为输入参数,以bp1作为输出参数。
2.在BT树的决策节点,根据预设的相似度匹配条件,进行模糊匹配查询。模糊匹配查询算法较多,一般将各参数转换为向量相似度进行计算。此处以简单的权重法为例,为dp1,dp2,dp3…dpN各参数设置权重,记dpN的权重为wN,设实际输入数据为pN。对各参数的差异值根据权重求和,即∑wN(dpN-pN)。具体匹配算法和权重参数可根据实际数据结果进行优化,此处不再赘述。需要补充的是,上述权重可以搜索权重,即在搜索过程中,确定哪个参数更为重要,优先匹配更为重要的参数。
通过数据库工具,对PSR中记录进行匹配度查询,筛选出差异值最小的前若干组数据。比如在当前PSRL中,针对{对方生命值=100,对方攻防值=50,我方生命值=50,我方攻防值=30}的情景,相似度最高的5条记录,其bp1值分别为{逃离,逃离,接战,逃离,接战}。
3.最终的随机选择:自然人玩家在遇到相似的情景时,所做的判断可能存在一定的随机性,但其行为存在内在的符合统计规律的一致性。因此,在BT树决策节点,需要根据模糊匹配查询的结果,进行最终的随机选择,比如,在上述情景中,实际有60%的可能性,BOT会选择逃离,另外有40%的可能性,BOT会选择接战。这与提供该PSRL的自然人玩家的实际选择的统计概率是相匹配一致的。
图5是根据本发明具体实施例的情景处理运算的过程流程图,如图5所示,包括以下流程:游戏运行时采集数据,作为决策参数输入;根据预设的匹配算法,进行模糊匹配查询,选取前N条结果,随机选择,确定最终行为输出。
四、客户端与服务端交互
图6是根据本发明具体实施例的客户端和服务端交互过程示意图,如图6所示,展示了客户端从服务端获取行为树模板和参数模板,包括以下流程:
步骤1:客户端登陆服务端并认证通过。
步骤2:客户端从服务端下载游戏中所用的行为树模板和参数模板
步骤3:客户端在本地初始化数据库,并建立索引。
2.客户端匹配对战的交互
根据游戏类型不同,玩家相互匹配的拓扑关系的复杂度存在较大差异,因此客户端和服务端的交互方式有所不同。客户端与服务端分两种情景进行交互:
(1)所有情景处理运算完全在客户端完成,当单局对战客户端数量较少,匹配关系比较简单的情况下(如2V2对战)服务端提供连接信息,情景运算由客户端以p2p的方式完成,服务端进行校验后向其它客户端转发。
以2V2对战为例,且自然人用户和BOT比例为1:1的情况为例,图7是根据本发明具体实施例的2V2对战的拓扑关系示意图,如图7所示,自然人1,自然人2,自然人3,BOT2组成一局对战,BOT1,BOT3,BOT4,自然人2组成一局对战。可选地,BOT2是自然人2的客户端生成的BOT,即不将归属自然2的BOT2,与自然人2放置同一局游戏中。需要补充的是,本申请文件中的客户端可以相当于附图中显示的自然人。
图8是根据本发明具体实施例的2V2对战的客户端和服务端交互流程示意图,如图8所示,包括以下步骤:
步骤1:客户端登陆服务端。
步骤2:服务端认证通过。
步骤3:客户端发送匹配请求。
步骤4:服务端接收匹配请求并记录,并搜索其它符合条件的匹配请求。
步骤5:服务端搜索到符合条件的匹配请求,并根据历史游戏记录(客户端1、客户端3、客户端4连胜记录多,正向体验较好,不需要过多分配BOT。客户端2连败记录多,急需改善游戏体验),生成具体的对应关系,确定BOT对应关系。
步骤6:服务端向所有客户端发送连接信息。
步骤7:客户端1,客户端2,客户端3,客户端4,各自收到连接信息。客户端1在本地启动BOT1;客户端2启动BOT2;客户端3启动BOT3;客户端4启动BOT4。客户端1、客户端3、客户端4、BOT2组成第一局对战。客户端2、BOT1、BOT3、BOT4组成第二局对战。
步骤8:自然人客户端发送相应情景参数给服务端。
步骤9:服务端校验数据是否合法(如攻击力是否与当前等级和装备匹配,受到伤害是否超过生命上限)。
步骤10:服务端将决策数据发给对应的BOT客户端。
步骤11:BOT客户端根据本机的PSRL,进行情景运算后,作出行为决策,将结果发送给服务端。
步骤12:服务端将行为数据发给自然人客户端。
步骤13:接收行为数据,自然人客户端中BOT控制的角色执行相应行为。
(2)客户端仅提供个性化参数,运算在服务端完成:当有较多玩家需要实时同步的情景下(如百人开放竞技,千人国战),客户端p2p的同步复杂度以几何程度上升。因此仍由服务端提供中心化运算,客户端仅提供个性化参数记录。
图9是根据本发明具体实施例的服务器运行机器人玩家的拓扑关系示意图,如图9所示,服务端从多个自然人玩家处获取游戏参数信息,用于生成多个BOT玩家,并由服务器运行。
图10是根据本发明具体实施例的由服务器运行机器人玩家时,客户端和服务端的交互流程示意图,如图10所示,包括以下步骤:
步骤1:客户端登陆服务端。
步骤2:服务端认证通过。
步骤3:客户端发送匹配请求。
步骤4:服务端接收匹配请求并记录,并搜索其它符合条件的匹配请求。
步骤5:服务端搜索到符合条件的匹配请求,并根据当前玩法类型,确定投放BOT比例,确定BOT对应关系(比如当前为初级国战,需要按自然人:BOT=1:2的比例投放BOT)。
步骤6:服务端向符合本次战斗条件的20个客户端发送PSRL同步请求。
步骤7:每个客户端向服务端上传本机PSRL。
步骤8:服务端按比例生成BOT,发送连接信息,例如:根据每个PSRL启动2个BOT,总计启动40个BOT。并向每个客户端发送连接信息。
步骤9:20个客户端接受连接信息后,进入本次60人规模的对战
步骤10:20个客户端进入游戏,按正常游戏玩法进行对战,向服务端发送情景数据。
步骤11:服务端接收决策数据,执行情景运算,控制40个BOT,根据上传的PSRL,按行为树进行情景运算,返回行为数据
步骤12:客户端接收行为数据,执行BOT行为。
采用上述技术方案,实现了以下技术效果:
1.个性化参数由每个客户端自行生成,具有完全与整体玩家群体匹配的多样性。
2.可以高度模拟多样化的玩家个体行为和群体行为。
3.配合数值上的倾斜,可以由BOT玩家主要承载负向体验,为自然人玩家提供较好的正向体验。
4.情景处理所需的算力,可以由各客户端分担。服务端仅提供行为树模板的分发、BOT服务请求的分发。服务端资源开销较低,可以提高单服务器的承载能力。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本公开的其中一种实施例中还提供了一种控制机器人玩家的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
根据本发明的另一个实施例,还提供了一种控制机器人玩家的装置,包括:
获取模块,用于获取真人玩家在参与游戏过程中生成的游戏参数;
控制模块,用于依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为。
可选地,获取真人玩家在参与游戏过程中生成的游戏参数之前或之后,确定所述机器人玩家在当前游戏进程中处于第一决策点;获取决策参数,其中,所述决策参数是针对所述第一决策点做出决策的参考依据。
可选地,获取真人玩家在参与游戏过程中,生成的游戏参数,包括:获取所述真人玩家在以往参与游戏过程中,针对多个决策点生成的多组游戏参数,其中,针对每个决策点的每组游戏参数包括以下至少之一:游戏场景因素;敌我双方玩家所操控的角色情况;基于游戏场景因素和敌我双方玩家所操作的角色情况,真人玩家做出的真实游戏行为。
可选地,依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为,包括:在所述真人玩家处于所述第一决策点所生成的多组游戏参数中,依据每组游戏参数与所述决策参数的差异度进行排序,得到排序结果;从所述排序结果中选择差异度小的M组游戏参数,其中,所述M为正整数;依据所述M组游戏参数中的游戏行为,控制所述BOT玩家模拟所述真人玩家在游戏中的行为。排序方式可以包括差异度从小到大,或从大到小。或者,不进行排序,直接选择与决策参数的区别在预定范围内的多组游戏参数,依据该多组游戏参数控制BOT玩家的行为。
可选地,依据所述M组游戏参数中的游戏行为,控制所述机器人玩家模拟所述真人玩家在游戏中的行为,包括:确定在所述M组游戏参数中,不同的游戏行为所各自占据的比例;依据所述比例确定一个游戏行为为所述机器人玩家在游戏中的行为。可以将比例大的游戏行为作为BOT玩家在游戏中的行为。
可选地,,确定机器人玩家在当前游戏进程中处于第一决策点之前,获取预先为所述机器人玩家设置的行为树,其中,所述行为树包括多个决策点,以及每个决策点做出决策的参考依据;依据所述行为树控制所述机器人玩家在当前游戏中的行为。
可选地,,采用以下方式之一生成所述机器人玩家:在真人玩家操控的终端设备中生成所述机器人玩家,并在非所述真人玩家参与的游戏局中加入所述机器人玩家;在运行游戏的服务端设备中生成所述机器人玩家,并在所述机器人玩家与所述真人玩家过往生成的游戏参数之间建立对应关系。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
根据本公开的其中一种实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本公开的其中一种实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种控制机器人玩家的方法,其特征在于,包括:
获取真人玩家在参与游戏过程中生成的游戏参数;
依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为;
其中,获取真人玩家在参与游戏过程中生成的游戏参数之前或之后,所述方法还包括:确定所述机器人玩家在当前游戏进程中处于第一决策点;获取决策参数,其中,所述决策参数是针对所述第一决策点做出决策的参考依据;
其中,依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为,包括:在所述真人玩家处于所述第一决策点所生成的多组游戏参数中,依据每组游戏参数与所述决策参数的差异度进行排序,得到排序结果;从所述排序结果中选择差异度小的M组游戏参数,其中,M为正整数;依据所述M组游戏参数中的游戏行为,控制所述机器人玩家模拟所述真人玩家在游戏中的行为。
2.根据权利要求1所述的方法,其特征在于,获取真人玩家在参与游戏过程中,生成的游戏参数,包括:
获取所述真人玩家在以往参与游戏过程中,针对多个决策点生成的多组游戏参数,其中,针对每个决策点的每组游戏参数包括以下至少之一:
游戏场景因素;
敌我双方玩家所操控的角色情况;
基于游戏场景因素和敌我双方玩家所操作的角色情况,真人玩家做出的真实游戏行为。
3.根据权利要求1所述的方法,其特征在于,依据所述M组游戏参数中的游戏行为,控制所述机器人玩家模拟所述真人玩家在游戏中的行为,包括:
确定在所述M组游戏参数中,不同的游戏行为所各自占据的比例;
依据所述比例确定一个游戏行为为所述机器人玩家在游戏中的行为。
4.根据权利要求1所述的方法,其特征在于,确定机器人玩家在当前游戏进程中处于第一决策点之前,所述方法还包括:
获取预先为所述机器人玩家设置的行为树,其中,所述行为树包括多个决策点,以及每个决策点做出决策的参考依据;
依据所述行为树控制所述机器人玩家在当前游戏中的行为。
5.根据权利要求1所述的方法,其特征在于,采用以下方式之一生成所述机器人玩家:
在真人玩家操控的终端设备中生成所述机器人玩家,并在非所述真人玩家参与的游戏局中加入所述机器人玩家;
在运行游戏的服务端设备中生成所述机器人玩家,并在所述机器人玩家与所述真人玩家过往生成的游戏参数之间建立对应关系。
6.一种控制机器人玩家的装置,其特征在于,包括:
获取模块,用于获取真人玩家在参与游戏过程中生成的游戏参数;
控制模块,用于依据所述游戏参数控制机器人玩家模拟所述真人玩家在游戏中的行为;
其中,所述装置还用于确定所述机器人玩家在当前游戏进程中处于第一决策点;获取决策参数,其中,所述决策参数是针对所述第一决策点做出决策的参考依据;
其中,所述控制模块,用于在所述真人玩家处于所述第一决策点所生成的多组游戏参数中,依据每组游戏参数与所述决策参数的差异度进行排序,得到排序结果;从所述排序结果中选择差异度小的M组游戏参数,其中,M为正整数;依据所述M组游戏参数中的游戏行为,控制所述机器人玩家模拟所述真人玩家在游戏中的行为。
7.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5任一项中所述的方法。
8.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至5任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810355032.1A CN108553903B (zh) | 2018-04-19 | 2018-04-19 | 控制机器人玩家方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810355032.1A CN108553903B (zh) | 2018-04-19 | 2018-04-19 | 控制机器人玩家方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108553903A CN108553903A (zh) | 2018-09-21 |
CN108553903B true CN108553903B (zh) | 2021-11-23 |
Family
ID=63535575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810355032.1A Active CN108553903B (zh) | 2018-04-19 | 2018-04-19 | 控制机器人玩家方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108553903B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11065549B2 (en) * | 2019-03-15 | 2021-07-20 | Sony Interactive Entertainment Inc. | AI modeling for video game coaching and matchmaking |
CN110141868A (zh) * | 2019-05-27 | 2019-08-20 | 合肥常春藤移动科技有限公司 | 一种用于竞速类游戏应用的ai追逐方法 |
CN110215699B (zh) * | 2019-07-05 | 2023-02-24 | 广州虎牙科技有限公司 | 游戏控制方法、装置、服务器及可读存储介质 |
CN110443284B (zh) * | 2019-07-15 | 2022-04-05 | 超参数科技(深圳)有限公司 | 人工智能ai模型的训练方法、调用方法、服务器及可读存储介质 |
CN110368696B (zh) * | 2019-08-15 | 2022-11-25 | 腾讯科技(深圳)有限公司 | 一种非对称游戏玩家能力获取方法、装置、设备及介质 |
CN110538455B (zh) | 2019-09-05 | 2021-03-19 | 腾讯科技(深圳)有限公司 | 虚拟对象的移动控制方法、装置、终端及存储介质 |
CN112619125B (zh) * | 2020-12-30 | 2023-10-13 | 深圳市创梦天地科技有限公司 | 游戏人工智能模块的使用方法和电子设备 |
CN113368504B (zh) * | 2021-06-09 | 2023-10-17 | 咪咕互动娱乐有限公司 | 云游戏服务系统、交互方法、存储介质 |
CN116351072A (zh) * | 2023-04-06 | 2023-06-30 | 北京羯磨科技有限公司 | 一种网络游戏中机器人脚本录制与播放方法及装置 |
CN117784942B (zh) * | 2024-02-27 | 2024-04-23 | 南京维赛客网络科技有限公司 | 虚拟场景中ai角色的行为控制方法、系统及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107115673A (zh) * | 2017-04-27 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 一种基于行为树的行为执行方法和装置 |
CN107899244A (zh) * | 2017-11-29 | 2018-04-13 | 武汉秀宝软件有限公司 | 一种ai模型的构建方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4169682B2 (ja) * | 2003-11-04 | 2008-10-22 | 任天堂株式会社 | レースゲームプログラムおよびゲーム装置 |
-
2018
- 2018-04-19 CN CN201810355032.1A patent/CN108553903B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107115673A (zh) * | 2017-04-27 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 一种基于行为树的行为执行方法和装置 |
CN107899244A (zh) * | 2017-11-29 | 2018-04-13 | 武汉秀宝软件有限公司 | 一种ai模型的构建方法及系统 |
Non-Patent Citations (2)
Title |
---|
Building a Deep Neural Network to play FIFA 18;Chintan Trivedi;《https://towardsdatascience.com/building-a-deep-neural-network-to-play-fifa-18-dce54d45e675》;20180114;第1页第1-2段 * |
Chintan Trivedi.Building a Deep Neural Network to play FIFA 18.《https://towardsdatascience.com/building-a-deep-neural-network-to-play-fifa-18-dce54d45e675》.2018, * |
Also Published As
Publication number | Publication date |
---|---|
CN108553903A (zh) | 2018-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108553903B (zh) | 控制机器人玩家方法及装置 | |
CN107970608B (zh) | 关卡游戏的设置方法和装置、存储介质、电子装置 | |
US20190201786A1 (en) | Collaborative electronic game play employing player classification and aggregation | |
CN109513215B (zh) | 一种对象匹配方法、模型训练方法以及服务器 | |
KR100638071B1 (ko) | 다중-사용자 애플리케이션 프로그램 인터페이스 | |
Ponsen et al. | Improving adaptive game AI with evolutionary learning | |
JP7121014B2 (ja) | ユーザ分析システムおよび方法 | |
Bakkes et al. | Rapid and reliable adaptation of video game AI | |
CN110496394B (zh) | 基于人工智能的控制npc的方法、装置、设备及介质 | |
CN113134237A (zh) | 虚拟奖励资源的分配方法、装置、电子设备及存储介质 | |
CN111450533B (zh) | 虚拟场景中的虚拟对象控制方法、装置、终端及存储介质 | |
CN111274151B (zh) | 一种游戏测试的方法、相关装置以及存储介质 | |
CN110152304B (zh) | 获胜值的确定方法及装置、存储介质及电子装置 | |
CN112891942B (zh) | 获取虚拟道具的方法、装置、设备及介质 | |
CN111330265B (zh) | 计算机系统、虚拟区的登录方法、装置、设备及介质 | |
CN112675548B (zh) | 对局匹配方法、装置、设备及可读存储介质 | |
CN110941769A (zh) | 目标帐号的确定方法和装置、电子装置 | |
Hajibagheri et al. | Conflict and communication in massively-multiplayer online games | |
CN110102047B (zh) | 游戏操作处理方法和装置、游戏效果展示方法和装置 | |
Cavadenti et al. | When cyberathletes conceal their game: Clustering confusion matrices to identify avatar aliases | |
CN106730849A (zh) | 一种信息推荐的方法以及用户设备 | |
US20030199319A1 (en) | Method and system for enhanced role playing and computer-user interaction | |
CN114870403A (zh) | 一种游戏中的对战匹配方法、装置、设备及存储介质 | |
Cardoso et al. | A user trust system for online games—Part I: An activity theory approach for trust representation | |
CN113941157A (zh) | 游戏匹配方法及装置、电子设备、存储介质 |
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 |