CN109960545B - 虚拟对象控制方法、***、装置、介质及电子设备 - Google Patents

虚拟对象控制方法、***、装置、介质及电子设备 Download PDF

Info

Publication number
CN109960545B
CN109960545B CN201910252803.9A CN201910252803A CN109960545B CN 109960545 B CN109960545 B CN 109960545B CN 201910252803 A CN201910252803 A CN 201910252803A CN 109960545 B CN109960545 B CN 109960545B
Authority
CN
China
Prior art keywords
virtual object
behavior
virtual
preset
target
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
Application number
CN201910252803.9A
Other languages
English (en)
Other versions
CN109960545A (zh
Inventor
任春旭
吕唐杰
范长杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201910252803.9A priority Critical patent/CN109960545B/zh
Publication of CN109960545A publication Critical patent/CN109960545A/zh
Application granted granted Critical
Publication of CN109960545B publication Critical patent/CN109960545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明的实施例提供了一种虚拟对象控制方法、虚拟对象控制***、虚拟对象控制装置、计算机可读介质及电子设备,涉及计算机技术领域。该方法包括:确定用于表示虚拟对象之间协作的目标行为;检测虚拟对象在当前场景中是否满足预设协作条件;如果满足预设协作条件,根据预设公共模型控制策略控制虚拟对象执行目标行为;如果不满足预设协作条件,根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。实施本发明实施例的技术方案能够一定程度上克服虚拟对象之间难以产生有效配合的问题,进而提升虚拟对象之间的配合程度,以改善用户的游戏体验,提升用户粘度。

Description

虚拟对象控制方法、***、装置、介质及电子设备
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种虚拟对象控制方法、虚拟对象控制***、虚拟对象控制装置、计算机可读介质及电子设备。
背景技术
随着科技的不断发展,玩家对战玩家游戏(Player versus Player,PVP游戏)以及玩家对战环境游戏(Player versus Environment,PVE游戏)等各种类型的游戏层出不穷。在多人游戏中,人工智能机器人(Artificial Intelligence Robot,AI Bot)作为重要的组成部分,承担着游戏中虚拟人物的角色。例如,在篮球模拟比赛中,AI Bot可以作为玩家的队友与玩家进行配合以赢得比赛,也可以作为敌方队友,通过与多个AI Bot之间的配合,为玩家营造一个仿真的篮球比赛环境。
目前,对于AI Bot(即虚拟对象)的训练通常是通过强化学习进行的,AI Bot可以根据不同行为对应的奖励值不断的学习,以在学习的过程中产生可以最大化奖励值的策略。对于篮球模拟比赛来说,AI Bot需要通过强化学习算法在游戏的各种状态下不断尝试各种动作,以收集状态、动作以及回报的样本,进而训练出一个可以为AI Bot所用的神经网络。但是,通过上述方法训练出的AI Bot在游戏中更多的是各自为战,在偏向于团队作战的游戏中难以产生有效的配合。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明实施例的目的在于提供一种虚拟对象控制方法、虚拟对象控制***、虚拟对象控制装置、计算机可读介质及电子设备,进而至少在一定程度上克服AI Bot(即虚拟对象)之间难以产生有效的配合的问题。
本发明实施例的第一方面提供了一种虚拟对象控制方法,包括:确定用于表示虚拟对象之间协作的目标行为;检测虚拟对象在当前场景中是否满足预设协作条件;如果满足预设协作条件,根据预设公共模型控制策略控制虚拟对象执行目标行为;如果不满足预设协作条件,根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。
在本发明的一种示例性实施例中,确定用于表示虚拟对象之间协作的目标行为,包括:遍历每个虚拟对象的行为集合,提取行为集合中用于表示虚拟对象之间协作的行为作为目标行为。
在本发明的一种示例性实施例中,根据预设公共模型控制策略控制虚拟对象执行目标行为,包括:根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,以及从目标行为中确定出待执行行为;控制目标虚拟对象执行待执行行为。
在本发明的一种示例性实施例中,虚拟对象控制方法还包括:在目标虚拟对象执行待执行行为完毕之后,确定待执行行为对应的回报值;将回报值叠加至目标虚拟对象的总回报值上,根据叠加结果更新总回报值。
在本发明的一种示例性实施例中,检测虚拟对象在当前场景中是否满足预设协作条件,包括:检测虚拟对象在当前场景中是否存在交互需求;其中,如果存在,则确定虚拟对象在当前场景中满足预设协作条件。
在本发明的一种示例性实施例中,根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,包括:根据预设公共模型控制策略并结合当前场景,从虚拟对象中确定出目标虚拟对象。
根据本发明实施例的第二方面,提供一种虚拟对象控制***,包括:第一模型,用于确定用于表示虚拟对象之间协作的目标行为;检测虚拟对象在当前场景中是否满足预设协作条件;如果满足预设协作条件,根据预设公共模型控制策略控制第二模型执行目标行为;如果不满足预设协作条件,根据预设对象模型控制策略控制第二模型执行虚拟行为,虚拟行为包括虚拟对象的非协作性行为;第二模型,用于在满足预设协作条件时,执行目标行为;在不满足预设协作条件时,执行虚拟行为。
根据本发明实施例的第三方面,提供一种虚拟对象控制装置,包括:目标行为确定单元,用于确定用于表示虚拟对象之间协作的目标行为;预设条件检测单元,用于检测虚拟对象在当前场景中是否满足预设协作条件;目标行为执行单元,用于在预设条件检测单元检测到满足预设条件之后,根据预设公共模型控制策略控制虚拟对象执行目标行为;虚拟行为执行单元,用于在预设条件检测单元检测到不满足预设条件之后,根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。
在本发明的一种示例性实施例中,目标行为确定单元确定用于表示虚拟对象之间协作的目标行为的方式具体为:目标行为确定单元遍历每个虚拟对象的行为集合,提取行为集合中用于表示虚拟对象之间协作的行为作为目标行为。
在本发明的一种示例性实施例中,目标行为执行单元根据预设公共模型控制策略控制虚拟对象执行目标行为具体为:目标行为执行单元根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,以及从目标行为中确定出待执行行为;目标行为执行单元控制目标虚拟对象执行待执行行为。
在本发明的一种示例性实施例中,虚拟对象控制装置还包括回报值确定单元和回报值更新单元,其中:
回报值确定单元,用于在目标虚拟对象执行待执行行为完毕之后,确定待执行行为对应的回报值;回报值更新单元,用于将回报值叠加至目标虚拟对象的总回报值上,根据叠加结果更新总回报值。
在本发明的一种示例性实施例中,预设条件检测单元检测虚拟对象在当前场景中是否满足预设协作条件的方式具体为:预设条件检测单元检测虚拟对象在当前场景中是否存在交互需求;其中,如果存在,则确定虚拟对象在当前场景中满足预设协作条件。
在本发明的一种示例性实施例中,目标行为执行单元根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象的方式具体为:目标行为执行单元根据预设公共模型控制策略并结合当前场景,从虚拟对象中确定出目标虚拟对象。
根据本发明实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现如上述实施例中第一方面所述的虚拟对象控制方法。
根据本发明实施例的第五方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如上述实施例中第一方面所述的虚拟对象控制方法。
本发明实施例提供的技术方案可以包括以下有益效果:
在本发明的一些实施例所提供的技术方案中,终端设备或服务器可以确定用于表示虚拟对象(如,AI Bot)之间协作的目标行为(如传球或挡拆),再检测虚拟对象在当前场景中是否满足预设协作条件,例如,当前场景下需要虚拟对象之间配合传球则认为虚拟对象在当前场景中满足预设协作条件;如果满足预设协作条件,则根据预设公共模型控制策略控制虚拟对象执行目标行为(如,传球);如果不满足预设协作条件,根据预设对象模型控制策略控制虚拟对象执行虚拟行为(如,移动、突破或投篮)。依据上述方案描述,本发明一方面能够在一定程度上克服虚拟对象之间难以产生有效配合的问题,进而提升虚拟对象之间的配合程度。另一方面能够通过提升虚拟对象之间的配合程度,改善用户的游戏体验,提升用户粘度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本发明实施例的虚拟对象控制方法的流程图;
图2示意性示出了根据本发明实施例的虚拟对象的行为模式示意图;
图3示意性示出了根据本发明实施例的虚拟对象的动作集合示意图;
图4示意性示出了根据本发明实施例的服务器控制虚拟对象执行待执行行为的流程示意图;
图5示意性示出了根据本发明实施例的客户端控制虚拟对象执行待执行行为的流程示意图;
图6示意性示出了根据本发明实施例的虚拟对象控制装置的结构框图;
图7示出了适于用来实现本发明实施例的电子设备的计算机***的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
请参阅图1,图1示意性示出了根据本发明实施例的虚拟对象控制方法的流程示意图,该虚拟对象控制方法可以由服务器或终端设备来实现。
如图1所示,根据本发明的一个实施例的虚拟对象控制方法,包括如下步骤S110、步骤S120、步骤S130以及步骤S140,其中:
步骤S110:确定用于表示虚拟对象之间协作的目标行为。
步骤S120:检测虚拟对象在当前场景中是否满足预设协作条件,如果是,则执行步骤S130,如果否,则执行步骤S140。
步骤S130:根据预设公共模型控制策略控制虚拟对象执行目标行为。
步骤S140:根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。
以下对各步骤进行详细说明:
在步骤S110中,虚拟对象可以为AI Bot,AI Bot可以是游戏中的虚拟角色。在多人游戏中,AI Bot指的是与玩家有类似的行为,但是由游戏程序本身控制的角色。此外,AIBot可以作为PVP游戏的模拟,用于提高玩家的游戏技术或降低玩家因为在对抗其他人类玩家时失败导致该游戏软件流失该玩家用户的几率;AI Bot还可以在PVE游戏中充当被挑战的环境,作为游戏玩法的一部分输出。其中,PVP游戏指的是玩家对战玩家,即玩家利用游戏资源互相攻击而形成的互动竞技。PVE游戏指的是玩家对战环境,即在游戏中玩家挑战游戏程序所控制的非玩家角色。另外,需要说明的是,用于表示虚拟对象之间协作的目标行为,可以理解为需要至少两个虚拟对象进行配合的行为,如,篮球比赛游戏中的传球行为。
在步骤S120中,当前场景为虚拟对象所处的场景,当前场景中可以包括多个虚拟对象,即,若当前场景为篮球对战场景,则该场景中可以包括多个虚拟篮球员,以配合玩家实现篮球对战的目的。此外,预设协作条件可以为存在需要至少两个虚拟对象进行配合的情况,如,存在虚拟对象A需要传球给虚拟对象B的情况。
在步骤S130中,如果虚拟对象在当前场景中满足预设协作条件,终端设备或服务器可以通过预设公共模型控制策略控制虚拟对象执行目标行为,目标行为可以为该虚拟对象和其他虚拟对象进行配合的行为。其中,预设公共模型控制策略用于根据当前场景确定出与团队协作相关的目标行为,并向虚拟对象推送目标行为,以使得虚拟对象之间相互配合,以提升用户体验。此外,预设公共模型控制策略中可以包括不同的场景与目标行为之间的对应关系。举例来说,当虚拟对象A在当前场景中满足传球给虚拟对象B的预设条件,终端设备或服务器可以根据预设公共模型控制策略控制虚拟对象执行传球给虚拟对象B的行为。
本发明实施例中,可选的,终端设备或服务器通过预设公共模型控制策略控制虚拟对象执行目标行为的方式具体可以为:终端设备或服务器可以通过预设公共模型控制策略从目标行为中确定出第一特定行为,并控制虚拟对象执行第一特定行为;其中,目标行为可以为多个。
本发明实施例中,可选的,终端设备或服务器通过预设公共模型控制策略控制虚拟对象执行目标行为的方式具体可以为:终端设备或服务器将预设公共模型控制策略推送的决策设置为虚拟对象的当前决策,以使得虚拟对象执行当前决策。进一步地,在虚拟对象执行当前决策之后,将当前决策设置为空,以接收预设公共模型控制策略推送的其他决策。其中,预设公共模型控制策略可以理解为控制虚拟对象执行决策的教练模型。可见,实施该可选的实施方式,能够通过教练模型控制虚拟对象进行团队合作,提高了虚拟对象之间的配合程度,进而提升用户体验。
在步骤S140中,预设对象模型控制策略中可以包括虚拟对象对应的行为集合中表示非协作性的行为,如运球、投篮等。如果虚拟对象在当前场景中不满足预设协作条件,即没有其他虚拟对象能与该虚拟对象进行配合,终端设备或服务器则可以根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为可以是虚拟对象能够独立完成的行为,即上述的非协作性行为。
本发明实施例中,可选的,终端设备或服务器可以根据预设对象模型控制策略控制虚拟对象执行虚拟行为的方式具体可以为:终端设备或服务器可以通过预设对象模型控制策略从虚拟行为中确定出第二特定行为并控制虚拟对象执行第二特定行为;其中,虚拟行为可以为多个。
本发明实施例中,可选的,预设对象模型控制策略的制定方式可以为:将每个虚拟对象的状态信息输入预设对象模型控制策略,以使得预设对象模型控制策略根据每个虚拟对象的状态信息控制虚拟对象执行目标行为;其中状态信息可以包括进攻剩余时间,虚拟对象的三维坐标、虚拟对象的朝向、当前场景的中心三维坐标以及虚拟对象的技能冷却时间中至少一种。
可见,实施图1所示的虚拟对象控制方法,能够在一定程度上克服虚拟对象之间难以产生有效配合的问题,进而提升虚拟对象之间的配合程度;以及,能够通过提升虚拟对象之间的配合程度,改善用户的游戏体验,提升用户粘度。
需要说明的是,图1所示的虚拟对象控制方法可以应用于但不限于篮球对战游戏,在该类游戏中可以包括多个虚拟对象,用户作为玩家可以拥有多个虚拟对象队友以及多个虚拟对象敌方,多个虚拟对象队友可以相互配合以及与玩家配合以实现投篮得分,进而提升用户的游戏体验。
由于每个虚拟对象都具有多种行为模式,可以根据每种行为模式对其进行回报值设计。举例来说,如果行为模式为持球进攻,那么,当进攻时间超时则在该虚拟对象的总回报值中叠加-500;当球被其他虚拟对象抢断时在该虚拟对象的总回报值中叠加-100;当球被拍到地上时在该虚拟对象的总回报值中叠加-100;当传球给虚拟对象队友时将球传丢,则在该虚拟对象的总回报值中叠加-200;当传球被其他虚拟对象抢断时在该虚拟对象的总回报值中叠加-200;当虚拟对象投篮成功时,如果本次投篮时的进攻剩余时间0<t<20,命中得分a∈{2,3},命中率为p,期望的分为x=a*p,当x>0.5时,在该虚拟对象的总回报值中叠加x*200+t*10,当x≤0.5时,在该虚拟对象的总回报值中叠加-150。但是,如果虚拟对象向另一个虚拟对象传球成功时,却无对应的回报值可以在该虚拟对象的总回报值中扣除或增加,原因如下:如果将传球回报值设置的较高,在进攻剩余时间接近结束时,持球的虚拟对象则会为了避免球在自己手上导致超时的负收益或强行投篮造成的负收益,而偏向于执行将球传给其他虚拟对象的决策,而接球的另一个虚拟对象也可能会执行同样的决策,进而导致进攻时间接近结束时,虚拟对象之间会不断的互相传球直到进攻时间耗尽;如果传球回报值设施的偏低,则会导致虚拟对象更偏向于执行自己持球的决策,宁愿自己投出质量较低的投篮也不愿将球传给其他虚拟对象。
基于上述情况,在本发明实施例中,如果虚拟对象向己方虚拟对象传球成功,预设公共模型控制策略(即,教练模型)会检测当前情况为虚拟对象传球给要球的己方虚拟对象还是虚拟对象传球给未向自己要球的己方虚拟对象,如果虚拟对象传球给要球的己方虚拟对象则教练模型将设计的回报值100奖励给虚拟对象,如果虚拟对象传球给未向自己要球的己方虚拟对象则将设计的回报值50奖励给虚拟对象;其中,虚拟对象向己方虚拟对象传球的行为由预设公共模型控制策略(即,教练模型)确定得到,并且,在虚拟对象每执行一次行为集合中的行为时,将行为对应的回报值叠加在虚拟对象的总回报值中,随着虚拟对象不断的执行行为集合中的行为,其总回报值也在不断更新。因此,通过实施本发明实施例,能够通过将虚拟对象的所有动作中有关团队合作的动作(如,进攻和持球出三分线时的传球,或无球进攻时的挡拆)提取出来,通过预设公共模型控制策略(即,教练模型)向虚拟对象发送用于控制虚拟对象执行有关团队合作动作的决策,以使得虚拟对象执行该决策。举例来说,当教练模型做出决策之后,终端设备或服务器可以将该决策推送给虚拟对象,以使得虚拟对象将该决策设置为当前决策。当虚拟对象处于需要做决策的情况下时,可以执行教练模型推送的决策,如果未检测到教练模型推送的决策,则可以根据预设对象模型控制策略(也可以理解为虚拟对象自身的模型)做出相应的决策并执行。
作为一种可选的实施方式,确定用于表示虚拟对象之间协作的目标行为,可以包括以下步骤:遍历每个虚拟对象的行为集合,提取行为集合中用于表示虚拟对象之间协作的行为作为目标行为。
本发明实施例中,终端设备或服务器可以通过遍历每个虚拟对象的动作集合,将动作集合中与团队协作有关系的动作提取出来作为目标行为。其中,虚拟对象的动作集合可以包含多个动作,终端设备或服务器可以控制虚拟对象执行动作集合中的任一动作。
本发明实施例中,可选的,虚拟对象可以对应多种行为模式,每种行为模式可以对应一个行为集合,故,遍历每个虚拟对象的行为集合,也可以理解为遍历每个虚拟对象的行为模式,其中,每个行为模式包括与其对应的行为集合。举例来说,如果虚拟对象是篮球对战游戏中的AI Bot,那么,虚拟对象可以对应多种行为模式,如,持球进攻、防守、自由球、持球出三分线以及无球进攻,虚拟对象对应的行为模式可以随着虚拟对象的动作进行转换。其中,持球进攻对应的行为集合可以包括移动(或运球)、突破、投篮以及传球;防守对应的行为集合可以包括移动、以防守姿势移动(防守姿势可以为张开双手的姿势)以及抢断;自由球对应的行为集合可以包括移动以及卡位;持球出三分线对应的行为集合可以包括移动、突破以及传球;无球进攻对应的行为集合可以包括移动、要球以及挡拆。
可见,实施该可选的实施方式,能够通过遍历虚拟对象的行为集合确定出用于表示团队协作的动作,以便控制虚拟对象在需要团队协作的情况下执行用于表示团队协作的动作,这样能够提高虚拟对象之间的配合程度,进而改善用户体验。
请参阅图2,图2示意性示出了根据本发明实施例的虚拟对象的行为模式示意图。需要说明的是,图2以篮球对战游戏作为示例示意性示出虚拟对象的行为模式,本发明实施例不限于在篮球对战游戏中应用。如图2所示,虚拟对象的行为模式可以包括无球进攻、持球进攻、防守、持球出三分线以及自由球。具体地,当虚拟对象投篮时,虚拟对象对应的行为模式可以由持球进攻转换为自由球;当虚拟对象持球而被其他虚拟对象将球打掉时,虚拟对象对应的行为模式可以由防守转换为自由球,也可以由持球出三分线转换为自由球;当虚拟对象从其他虚拟对象处抢到球时,虚拟对象对应的行为模式可以由自由球转换为持球进攻/防守,也可以由自由球转换为持球出三分线;当虚拟对象进行传接球(即传球或接球)时,虚拟对象对应的行为模式可以在无球进攻和持球进攻/防守之间进行转换,也可以在无球进攻和持球出三分线之间进行转换;当虚拟对象带球出三分线时,虚拟对象对应的行为模式可以由持球出三分线转换为持球进攻/防守;当虚拟对象将球出手或使得虚拟队友获得球权时,虚拟对象对应的行为模式可以在无球进攻和自由球之间转换。此外,需要说明的是,图2所示的虚拟对象的行为模式可以应用于图1所示的虚拟对象控制方法,以使得终端设备或服务器根据虚拟对象的行为模式确定用于表示虚拟对象之间协作的目标行为,其中,行为模式对应的行为集合包括目标行为。
可见,图2所示的虚拟对象的动作集合示意图,能够使得虚拟对象做出与人类玩家类似的虚拟动作,以提升用户在与虚拟对象进行游戏时的游戏体验,进而提升用户粘度。
请参阅图3,图3示意性示出了根据本发明实施例的虚拟对象的动作集合示意图。如图3所示,虚拟对象的行为集合可以包括持球进攻行为模式下的移动、突破、投篮以及传球,还可以包括防守行为模式下的移动、做出防守姿势以及抢断,还可以包括自由球行为模式下的移动和卡位,还可以包括持球出三分线行为模式下的移动、突破以及传球,还可以包括无球进攻行为模式下的移动、要球以及挡拆。其中,持球进攻行为模式中的传球可以是给虚拟对象A传球也可以是给虚拟对象B传球,持球出三分线行为模式中的传球也可以是给虚拟对象A传球或是给虚拟对象B传球,以及,无球进攻行为模式中的挡拆可以是虚拟对象A做挡拆动作也可以是虚拟对象B做挡拆动作。可知,给虚拟对象A传球、给虚拟对象B传球、虚拟对象A做挡拆动作以及虚拟对象B做挡拆动作均可以作为本发明实施例中的用于表示团队协作的目标行为。需要说明的是,图3作为一种示例示意性示出了给虚拟对象A传球、给虚拟对象B传球、虚拟对象A做挡拆动作以及虚拟对象B做挡拆动作四种目标行为,但是本发明实施例不限于图3所示的目标行为,虚拟对象A和虚拟对象B可以是虚拟对象队友,例如,持球进攻行为模式中的传球不仅可以给虚拟对象A传或虚拟对象B传球,也可以给作为虚拟对象队友的其他虚拟对象传球。终端设备或服务器可以通过遍历图3中的行为集合以从中确定出目标行为,进而通过预设公共模型控制策略控制虚拟对象执行目标行为,或通过预设对象模型控制策略控制虚拟对象执行行为集合中除目标行为之外的虚拟行为,如,突破、投篮或抢断等。
可见,图3所示的虚拟对象的动作集合,能够在一定程度上克服虚拟对象之间难以产生有效配合的问题,进而提升虚拟对象之间的配合程度;以及,能够通过提升虚拟对象之间的配合程度,改善用户的游戏体验,提升用户粘度。
作为另一种可选的实施方式,根据预设公共模型控制策略控制虚拟对象执行目标行为,可以包括以下步骤:根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,以及从目标行为中确定出待执行行为;控制目标虚拟对象执行待执行行为。
本发明实施例中,待执行行为可以理解为上述的第一特定行为。当虚拟对象在当前场景中满足预设协作条件时,终端设备或服务器可以根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,并从目标行为中确定出待执行行为。举例来说,多个虚拟对象作为篮球对战游戏中的玩家的队友,在当前场景中终端设备或服务器根据预设公共模型控制策略确定出虚拟对象A应当向虚拟对象B传球,那么,终端设备或服务器可以从多个虚拟对象中确定出虚拟对象A,并从多个目标行为中确定出向虚拟对象B传球的行为作为待执行行为,进而,控制虚拟对象A执行向虚拟对象B传球的待执行行为。
可见,实施该可选的实施方式,能够通过预设公共模型控制策略对虚拟对象进行控制,以使得虚拟对象之间进行配合,这样能够提升虚拟对象之间的配合程度,进而提升用户体验。
作为又一种可选的实施方式,虚拟对象控制方法还可以包括以下步骤:在目标虚拟对象执行待执行行为完毕之后,确定待执行行为对应的回报值;将回报值叠加至目标虚拟对象的总回报值上,根据叠加结果更新总回报值。
举例来说,如果待执行行为的回报值为100,总回报值为300,将待执行行为的回报值叠加至总回报值上得到的新总回报值则为400。
本发明实施例中,待执行行为对应的汇报值可以理解为虚拟对象执行待执行行为的奖励值,每当虚拟对象执行一次行为集合中的行为则会对应一个汇报值叠加至虚拟对象的总回报值上。其中,虚拟对象的总回报值用于激励虚拟对象以高回报值为目标在每种行为模式中执行回报值高的行为,进而提升总回报值,总回报值用于体现虚拟对象的表现优异程度。
可见,实施该可选的实施方式,能够通过设计回报值使得虚拟对象通过执行虚拟行为或目标行为提升自己的回报值,进而改善虚拟对象之间的团队配合程度以及用户体验。
举例来说,如果本发明实施例应用于篮球对战游戏,那么,在防守行为模式中,当对方虚拟对象进攻时间结束时对应的回报值为100;虚拟对象将对方虚拟对象的球抢断成功对应的回报值为100;虚拟对象将对方虚拟对象的球拍到地上对应的回报值为80;如果对方虚拟对象投篮;投篮的期望得分为投篮命中得分与命中率的乘积;若期望得分大于0.5则回报值为“-期望得分*200”,其中,该回报值为负;如果期望得分小于等于0.5则回报值为80。
在自由球行为模式中,对方虚拟对象捡到球对应的回报值为-100;虚拟对象自己捡到球对应的回报值为100;虚拟对象队友捡到球对应的回报值为10;对方虚拟对象进攻回合超时对应的回报值为-200;己方虚拟对象进攻回合超时对应的回报值为200;未发生篮板球的进球对应的回报值为0。
在持球出三分线的行为模式中,虚拟对象将球带出三分线对应的回报值为100;虚拟对象进攻时间超时对应的回报值为-300;球被对方虚拟对象抢断对应的回报值为-100;球被对方虚拟对象拍到地上的回报值为-100;传球时将球传丢对应的回报值为-100;传球时被对方虚拟对象抢断对应的回报值为-100;如果虚拟对象传球成功,终端设备或服务器可以通过预设公共模型控制策略检测当前剩余时间,并将50+当前剩余传球时间*5作为回报值奖励给虚拟对象。
在无球进攻的行为模式中,虚拟对象进攻时间超时对应的回报值为-100;球被对方虚拟对象抢断对应的回报值为-100;球被对方虚拟对象拍到地上的回报值为-80;传球时将球传丢对应的回报值为-80;传球时被对方虚拟对象抢断对应的回报值为-100;如果虚拟对象接球成功,终端设备或服务器可以检测接球位置和虚拟对象位置,使得预设公共模型控制策略依据接球位置和虚拟对象位置设计奖励给虚拟对象的回报值,其用意是鼓励中锋在内线接球,后卫在三分线外接球,以使得虚拟对象的行为更类似于真实球员的行为,进而提升用户的游戏体验;如果虚拟对象发生挡拆行为,终端设备或服务器可以通过预设公共模型控制策略检测虚拟对象是否与对方虚拟对象产生碰撞以使得对方虚拟对象摔倒,如果是,则将回报值200奖励给虚拟对象,如果否,则不奖励回报值。
可见,通过上述示例,虚拟对象为了更高的回报值会尽力配合教练模型推送的决策,并且,用于表示团队协作的目标行为的执行控制权属于教练模型,一定程度上避免了虚拟对象因高回报而多次执行目标行为进而牺牲团队利益以提升自己个人的总回报值,这样能够提升用户在篮球对战游戏中的游戏体验,进而提升用户粘度。
作为又一种可选的实施方式,检测虚拟对象在当前场景中是否满足预设协作条件,可以包括以下步骤:检测虚拟对象在当前场景中是否存在交互需求;其中,如果存在,则确定虚拟对象在当前场景中满足预设协作条件。
本发明实施例中,可选的,检测虚拟对象在当前场景中是否存在交互需求的方式具体可以为:检测在当前场景中虚拟对象之间是否存在配合需求。例如,虚拟对象之间存在配合需求可以表现为虚拟对象A需要向虚拟对象B传球。
可见,实施该可选的实施方式,能够通过检测虚拟对象之间的配合需求,以控制虚拟对象之间进行配合,进而提升虚拟对象之间的配合程度。
作为又一种可选的实施方式,根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,可以包括以下步骤:根据预设公共模型控制策略并结合当前场景,从虚拟对象中确定出目标虚拟对象。
本发明实施例中,终端设备或服务器可以通过预设公共模型结合当前场景(如,需要传球的场景)确定出持有篮球的虚拟对象,该虚拟对象则为目标虚拟对象。
可见,实施该可选的实施方式,能够结合当前场景确定出需要做出团队协作动作的虚拟对象,进而实现虚拟对象之间的配合。
请参阅图4,图4示意性示出了根据本发明实施例的服务器控制虚拟对象执行待执行行为的流程示意图。如图4所示,服务器控制虚拟对象执行待执行行为包括步骤S410、步骤S420、步骤S430、步骤S440、步骤S450、步骤S460、步骤S470、步骤S480以及步骤S490,其中:
步骤S410:服务器进程启动。
步骤S420:初始化机器学习模型,创建教练模型以及虚拟对象模型并通过机器学习模型对教练模型以及虚拟对象模型进行初始化。
步骤S430:初始化传输控制协议的网络服务、监测地址和目标端口,以接收客户端发送的网络连接并建立目标线程以处理客户端发送的网络连接。
步骤S440:接收由客户端发送的数据包。
步骤S450:检测数据包是否用于关闭客户端与服务器之间的连接,如果是,则执行步骤S460,如果否,则结束目标线程。
步骤S460:根据数据包对应的目标模型以及目标模型的历史数据包确定历史数据包的回报值。
步骤S470:将数据包转化为目标特征向量。
步骤S480:根据历史数据包对应的特征向量、目标特征向量以及回报值,更新目标模型的模型参数。
步骤S490:如果当前场景非结束场景,则根据目标特征向量、更新后的目标模型确定出待执行行为并将待执行行为返回客户端,以使得虚拟对象执行待执行行为。
本发明实施例中,在服务器进程启动之后,服务器可以初始化机器学习模型,创建教练模型(即,预设公共模型控制策略)以及虚拟对象模型(即,预设对象模型控制策略)并通过机器学习模型对所有模型进行初始化(可以理解为将参数设置为预设参数),另外,如果检测到存在预存的模型参数则将每个预存的模型参数加载至与其对应的模型中。
进而,服务器还可以对传输控制协议的网络服务、监测地址以及目标端口进行初始化,其中,监测地址、目标端口以及传输控制协议的网络服务均为实现服务器与客户端进行通讯连接的必要条件,当客户端发送的网络连接在监测地址和目标端口建立时,服务器进程可以建立目标线程,以处理客户端发送的网络连接。该目标线程属于一个循环,建立完成之后,可以接收由客户端发送的数据包,数据包可以用于结束目标线程,也可以用于表示虚拟对象对应的行为数据。
进而,服务器还可以检测该数据包是否用于结束目标线程,如果是,则结束目标线程,如果否,则确定数据包对应的目标模型、目标模型的上一个数据包内容(历史数据包)以及接收到上一次数据包时确定的待执行行为,通过目标模型对应的回报函数确定出接收到上一次数据包时的待执行行为对应的回报值。
进而,服务器还可以将数据包通过目标模型对应的特征处理方式转换为特征向量,并根据历史数据包对应的特征向量和数据包转换成的特征向量以及回报值更新目标模型的参数;进而,如果当前场景非结束场景,则通过更新后的目标模型(教练模型或虚拟对象模型)得到待执行行为,并将待执行行为通过数据包的形式返回客户端,以使得虚拟对象执行待执行行为;如果当前场景为结束场景,则执行步骤S440。此外,在步骤S490执行完毕之后,触发步骤S440接收由客户端发送的数据包。
需要说明的是,图4所示的服务器控制虚拟对象执行待执行行为可以应用于本发明实施例的虚拟对象控制方法,以控制虚拟对象执行行为集合中的行为。
可见,图4所示的服务器控制虚拟对象执行待执行行为的流程示意图,能够控制虚拟对象执行行为集合中的行为,进而提升虚拟对象之间的配合程度,改善用户体验,提升用户粘度。
请参阅图5,图5示意性示出了根据本发明实施例的客户端控制虚拟对象执行待执行行为的流程示意图。如图5所示,客户端控制虚拟对象执行待执行行为包括步骤S510、步骤S520、步骤S530、步骤S540、步骤S550、步骤S560以及步骤S570,其中:
步骤S510:在虚拟对象与服务器建立连接时,检测虚拟对象是否需要教练模型确定待执行行为,如果是,则执行步骤S520,如果否,则结束本次流程。
步骤S520:在教练模型与服务器建立连接时,通过服务器向虚拟对象发送教练模型确定出的待执行行为,并从虚拟对象中确定出目标虚拟对象。
步骤S530:检测虚拟对象是否需要执行待执行行为,如果是,则执行步骤S540,如果否,则结束本次流程。
步骤S540:检测虚拟对象的当前状态是否为待执行状态,以及该虚拟对象是否为目标虚拟对象;如果虚拟对象的当前状态为待执行状态且虚拟对象为非目标虚拟对象,则执行步骤S550,如果虚拟对象的当前状态为待执行状态且虚拟对象为目标虚拟对象,则执行步骤S560;如果虚拟对象的当前状态为非待执行状态且虚拟对象为非目标虚拟对象,则执行步骤S570;
步骤S550:发送虚拟对象的当前状态并接收服务器发送的行为指令。
步骤S560:控制目标虚拟对象执行待执行行为。
步骤S570:根据预设对象模型控制策略控制虚拟对象执行虚拟行为。
本发明实施例中,终端设备可以检测虚拟对象是否与服务器建立连接,如果已建立连接,则检测多个虚拟对象中是否存在需要教练模型(即,预设公共模型控制策略)为其确定待执行行为的虚拟对象;如果未建立连接,则对虚拟对象进行连接初始化并在初始化后将虚拟对象与服务器进行连接,其中,终端设备也可以理解为客户端。
如果检测到存在需要教练模型为其确定待执行行为的虚拟对象,则检测教练模型是否与服务器建立连接,如果已建立连接,则通过服务器向虚拟对象发送教练模型确定出的待执行行为,并从虚拟对象中确定出目标虚拟对象;如果未建立连接,则对教练模型进行连接初始化并在初始化后将教练模型与服务器进行连接;如果不存在需要教练模型为其确定待执行行为的虚拟对象,则结束本次流程。其中,可选的,通过服务器向虚拟对象发送教练模型确定出的待执行行为,并从虚拟对象中确定出目标虚拟对象的方式具体可以为:如果当前场景非结束场景,则将当前游戏状态以数据包形式发送至服务器并注明当前场景非结束场景,以接收由服务器返回的待执行行为并从多个虚拟对象中确定出需要执行待执行行为的目标虚拟对象,标记目标虚拟对象。
另一种可选的,在检测到存在需要教练模型为其确定待执行行为的虚拟对象之后,还可以包括以下步骤:如果检测到当前场景为结束场景,则将结束信息通过数据包的形式通过教练模型发送至服务器,其中,结束信息可以包括当前游戏状态、结束场景中每个虚拟对象的回报值以及场上得分情况,上述的数据包中的数据可以是通过JSON(JavaScriptObject Notation)的格式保存的,也可以是通过字典的形式保存的,上述字典为一种数据结构,JSON为一种轻量级的数据交换格式。
进而,终端设备还可以检测虚拟对象是否需要执行待执行行为,如果当前场景为结束场景,则判定不需要执行待执行行为,将结束信息通过数据包的形式通过虚拟对象模型发送至服务器,以结束本次流程;如果当前场景非结束场景,则判定需要执行待执行行为,并遍历每个虚拟对象,以检测虚拟对象的当前状态是否为待执行状态以及虚拟对象是否为目标虚拟对象;如果虚拟对象的当前状态为待执行状态且虚拟对象为非目标虚拟对象,则发送将虚拟对象的当前状态以数据包的形式发送至服务器并接收由服务器发送的行为指令,行为指令与虚拟对象的当前状态相对应;如果虚拟对象的当前状态为待执行状态且虚拟对象为目标虚拟对象,则控制目标虚拟对象执行待执行行为;如果虚拟对象的当前状态为非待执行状态且虚拟对象为非目标虚拟对象,则根据预设对象模型控制策略(即,虚拟对象模型)控制虚拟对象执行虚拟行为再循环执行上述步骤。
需要说明的是,在虚拟对象控制方法中虚拟对象在场景中的每一帧均执行上述步骤。图5所示的客户端控制虚拟对象执行待执行行为可以应用于本发明实施例的虚拟对象控制方法,以控制虚拟对象执行行为集合中的行为。
可见,图5所示的客户端控制虚拟对象执行待执行行为的流程示意图,能够控制虚拟对象执行行为集合中的行为,进而提升虚拟对象之间的配合程度,改善用户体验,提升用户粘度。
请参阅图6,图6示意性示出了根据本发明实施例的虚拟对象控制装置的结构框图。该虚拟对象控制装置包括:目标行为确定单元601、预设条件检测单元602、目标行为执行单元603以及虚拟行为执行单元604。
其中,目标行为确定单元601,用于确定用于表示虚拟对象之间协作的目标行为;预设条件检测单元602,用于检测虚拟对象在当前场景中是否满足预设协作条件;目标行为执行单元603,用于在预设条件检测单元602检测到满足预设条件之后,根据预设公共模型控制策略控制虚拟对象执行目标行为;虚拟行为执行单元604,用于在预设条件检测单元602检测到不满足预设条件之后,根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。
可见,实施图6所示的虚拟对象控制装置,能够在一定程度上克服虚拟对象之间难以产生有效配合的问题,进而提升虚拟对象之间的配合程度;以及,能够通过提升虚拟对象之间的配合程度,改善用户的游戏体验,提升用户粘度。
作为一种可选的实施方式,目标行为确定单元601确定用于表示虚拟对象之间协作的目标行为的方式具体为:目标行为确定单元601遍历每个虚拟对象的行为集合,提取行为集合中用于表示虚拟对象之间协作的行为作为目标行为。
可见,实施该可选的实施方式,能够通过遍历虚拟对象的行为集合确定出用于表示团队协作的动作,以便控制虚拟对象在需要团队协作的情况下执行用于表示团队协作的动作,这样能够提高虚拟对象之间的配合程度,进而改善用户体验。
作为另一种可选的实施方式,目标行为执行单元603根据预设公共模型控制策略控制虚拟对象执行目标行为具体为:目标行为执行单元603根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象,以及从目标行为中确定出待执行行为;目标行为执行单元603控制目标虚拟对象执行待执行行为。
可见,实施该可选的实施方式,能够通过预设公共模型控制策略对虚拟对象进行控制,以使得虚拟对象之间进行配合,这样能够提升虚拟对象之间的配合程度,进而提升用户体验。
作为又一种可选的实施方式,虚拟对象控制装置还可以包括回报值确定单元(未图示)和回报值更新单元(未图示),其中:
回报值确定单元,用于在目标虚拟对象执行待执行行为完毕之后,确定待执行行为对应的回报值;回报值更新单元,用于将回报值叠加至目标虚拟对象的总回报值上,根据叠加结果更新总回报值。
可见,实施该可选的实施方式,能够通过设计回报值使得虚拟对象通过执行虚拟行为或目标行为提升自己的回报值,进而改善虚拟对象之间的团队配合程度以及用户体验。
作为又一种可选的实施方式,预设条件检测单元602检测虚拟对象在当前场景中是否满足预设协作条件的方式具体为:预设条件检测单元602检测虚拟对象在当前场景中是否存在交互需求;其中,如果存在,则确定虚拟对象在当前场景中满足预设协作条件。
可见,实施该可选的实施方式,能够通过检测虚拟对象之间的配合需求,以控制虚拟对象之间进行配合,进而提升虚拟对象之间的配合程度。
作为又一种可选的实施方式,目标行为执行单元603根据预设公共模型控制策略从虚拟对象中确定出目标虚拟对象的方式具体为:目标行为执行单元603根据预设公共模型控制策略并结合当前场景,从虚拟对象中确定出目标虚拟对象。
可见,实施该可选的实施方式,能够结合当前场景确定出需要做出团队协作动作的虚拟对象,进而实现虚拟对象之间的配合。
由于本发明的示例实施例的虚拟对象控制装置的各个功能模块与上述虚拟对象控制方法的示例实施例的步骤对应,因此对于本发明装置实施例中未披露的细节,请参照本发明上述的虚拟对象控制方法的实施例。
请参阅图7,其示出了适于用来实现本发明实施例的电子设备的计算机***700的结构示意图。图7示出的电子设备的计算机***700仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机***700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有***操作所需的各种程序和数据。CPU701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的***中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的虚拟对象控制方法。
例如,所述的电子设备可以实现如图1中所示的:步骤S110,确定用于表示虚拟对象之间协作的目标行为;步骤S120,检测虚拟对象在当前场景中是否满足预设协作条件;步骤S130,根据预设公共模型控制策略控制虚拟对象执行目标行为;步骤S140,根据预设对象模型控制策略控制虚拟对象执行虚拟行为;其中,虚拟行为包括虚拟对象的非协作性行为。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (8)

1.一种虚拟对象控制方法,其特征在于,包括:
遍历每个虚拟对象的行为集合,提取所述行为集合中用于表示所述虚拟对象之间协作的行为作为目标行为;
检测所述虚拟对象在当前场景中是否存在交互需求;如果存在,则确定所述虚拟对象在所述当前场景中满足预设协作条件;所述预设协作条件用于限定存在需要至少两个虚拟对象进行配合的情况;
如果满足所述预设协作条件,根据预设公共模型控制策略控制所述虚拟对象执行所述目标行为;
如果不满足所述预设协作条件,根据预设对象模型控制策略控制所述虚拟对象执行虚拟行为;其中,所述虚拟行为包括所述虚拟对象的非协作性行为。
2.根据权利要求1所述的方法,其特征在于,所述根据预设公共模型控制策略控制所述虚拟对象执行所述目标行为,包括:
根据预设公共模型控制策略从所述虚拟对象中确定出目标虚拟对象,以及从所述目标行为中确定出待执行行为;
控制所述目标虚拟对象执行所述待执行行为。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述目标虚拟对象执行所述待执行行为完毕之后,确定所述待执行行为对应的回报值;
将所述回报值叠加至所述目标虚拟对象的总回报值上,根据叠加结果更新所述总回报值。
4.根据权利要求2所述的方法,其特征在于,所述根据预设公共模型控制策略从所述虚拟对象中确定出目标虚拟对象,包括:
根据预设公共模型控制策略并结合所述当前场景,从所述虚拟对象中确定出目标虚拟对象。
5.一种虚拟对象控制***,其特征在于,包括:
第一模型,用于遍历每个虚拟对象的行为集合,提取所述行为集合中用于表示所述虚拟对象之间协作的行为作为目标行为;检测所述虚拟对象在当前场景中是否存在交互需求;如果存在,则确定所述虚拟对象在所述当前场景中满足预设协作条件;所述预设协作条件用于限定存在需要至少两个虚拟对象进行配合的情况;如果满足所述预设协作条件,根据预设公共模型控制策略控制第二模型执行所述目标行为;如果不满足所述预设协作条件,根据预设对象模型控制策略控制所述第二模型执行虚拟行为,所述虚拟行为包括所述虚拟对象的非协作性行为;
第二模型,用于在满足所述预设协作条件时,执行所述目标行为;在不满足所述预设协作条件时,执行所述虚拟行为。
6.一种虚拟对象控制装置,其特征在于,包括:
目标行为确定单元,用于遍历每个虚拟对象的行为集合,提取所述行为集合中用于表示所述虚拟对象之间协作的行为作为目标行为;
预设条件检测单元,用于检测所述虚拟对象在当前场景中是否存在交互需求;如果存在,则确定所述虚拟对象在所述当前场景中满足预设协作条件;所述预设协作条件用于限定存在需要至少两个虚拟对象进行配合的情况;
目标行为执行单元,用于在所述预设条件检测单元检测到满足所述预设条件之后,根据预设公共模型控制策略控制所述虚拟对象执行所述目标行为;
虚拟行为执行单元,用于在所述预设条件检测单元检测到不满足所述预设条件之后,根据预设对象模型控制策略控制所述虚拟对象执行虚拟行为;其中,所述虚拟行为包括所述虚拟对象的非协作性行为。
7.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~4中任一项所述的虚拟对象控制方法。
8.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1~4中任一项所述的虚拟对象控制方法。
CN201910252803.9A 2019-03-29 2019-03-29 虚拟对象控制方法、***、装置、介质及电子设备 Active CN109960545B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910252803.9A CN109960545B (zh) 2019-03-29 2019-03-29 虚拟对象控制方法、***、装置、介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910252803.9A CN109960545B (zh) 2019-03-29 2019-03-29 虚拟对象控制方法、***、装置、介质及电子设备

Publications (2)

Publication Number Publication Date
CN109960545A CN109960545A (zh) 2019-07-02
CN109960545B true CN109960545B (zh) 2022-09-13

Family

ID=67025344

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910252803.9A Active CN109960545B (zh) 2019-03-29 2019-03-29 虚拟对象控制方法、***、装置、介质及电子设备

Country Status (1)

Country Link
CN (1) CN109960545B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021102615A1 (zh) * 2019-11-25 2021-06-03 深圳信息职业技术学院 虚拟现实场景及其交互方法、终端设备
WO2021138761A1 (zh) * 2020-01-06 2021-07-15 深圳信息职业技术学院 虚拟角色的任务执行方法、装置及终端设备
CN111389010B (zh) * 2020-02-21 2023-04-07 网易(杭州)网络有限公司 虚拟机器人训练方法、装置、电子设备和介质
CN111544889B (zh) * 2020-04-27 2021-06-25 腾讯科技(深圳)有限公司 虚拟对象的行为控制方法和装置及存储介质
CN111917634B (zh) * 2020-07-02 2021-07-13 西安交通大学 基于pmml的工业网关机器学习模型容器式部署***及方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080070576A (ko) * 2007-01-25 2008-07-30 아르재 가부시키가이샤 복수의 플레이어가 참여하는 게임을 제공하는 게임 시스템
CN102681661A (zh) * 2011-01-31 2012-09-19 微软公司 在玩游戏中使用三维环境模型
CN106861190A (zh) * 2017-02-16 2017-06-20 网易(杭州)网络有限公司 Ai构建方法及装置、游戏控制方法及装置、ai***
CN107967513A (zh) * 2017-12-25 2018-04-27 徐雪松 多机器人强化学习协同搜索方法及***
CN109173250A (zh) * 2018-08-27 2019-01-11 广州要玩娱乐网络技术股份有限公司 多角色控制方法、计算机存储介质和终端
CN109260713A (zh) * 2018-08-27 2019-01-25 网易(杭州)网络有限公司 虚拟对象远程协助操作方法及装置、存储介质、电子设备
CN109491586A (zh) * 2018-11-14 2019-03-19 网易(杭州)网络有限公司 虚拟对象控制方法及装置、电子设备、存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100481003C (zh) * 2007-10-09 2009-04-22 南京大学 交互式游戏中智能非玩家角色的实现方法及***
CN102136025A (zh) * 2010-12-31 2011-07-27 北京像素软件科技股份有限公司 非玩家控制角色的智能控制方法
US9452363B2 (en) * 2013-10-18 2016-09-27 Sony Interactive Entertainment America Llc Multi-player video game environment for single-player use
CN104133666B (zh) * 2013-11-29 2017-11-17 腾讯科技(成都)有限公司 确定人工智能行为的方法、装置及人工智能服务器
CN103678892A (zh) * 2013-12-03 2014-03-26 腾讯科技(成都)有限公司 一种角色对象管理的方法和装置
CN108671539A (zh) * 2018-05-04 2018-10-19 网易(杭州)网络有限公司 目标对象交互方法及装置、电子设备、存储介质
CN109107161B (zh) * 2018-08-17 2019-12-27 深圳市腾讯网络信息技术有限公司 一种游戏对象的控制方法、装置、介质以及设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080070576A (ko) * 2007-01-25 2008-07-30 아르재 가부시키가이샤 복수의 플레이어가 참여하는 게임을 제공하는 게임 시스템
CN102681661A (zh) * 2011-01-31 2012-09-19 微软公司 在玩游戏中使用三维环境模型
CN106861190A (zh) * 2017-02-16 2017-06-20 网易(杭州)网络有限公司 Ai构建方法及装置、游戏控制方法及装置、ai***
CN107967513A (zh) * 2017-12-25 2018-04-27 徐雪松 多机器人强化学习协同搜索方法及***
CN109173250A (zh) * 2018-08-27 2019-01-11 广州要玩娱乐网络技术股份有限公司 多角色控制方法、计算机存储介质和终端
CN109260713A (zh) * 2018-08-27 2019-01-25 网易(杭州)网络有限公司 虚拟对象远程协助操作方法及装置、存储介质、电子设备
CN109491586A (zh) * 2018-11-14 2019-03-19 网易(杭州)网络有限公司 虚拟对象控制方法及装置、电子设备、存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Game-theoretic algorithm stimulating cooperation in multi-hop wireless networks;Owais Baig等;《The 2014 5th International Conference on Game Theory for Networks》;20150219;第1-5页 *
基于多空间视角和相互感知的协同对象操作***设计及实验研究;顾湘余;《cnki优秀硕士学位论文全文库 信息科技辑》;20070215;第I138-506页 *

Also Published As

Publication number Publication date
CN109960545A (zh) 2019-07-02

Similar Documents

Publication Publication Date Title
CN109960545B (zh) 虚拟对象控制方法、***、装置、介质及电子设备
CN109499068B (zh) 对象的控制方法和装置、存储介质、电子装置
CN109107161B (zh) 一种游戏对象的控制方法、装置、介质以及设备
Andrade et al. Challenge-sensitive action selection: an application to game balancing
KR102542774B1 (ko) 정보 예측 방법, 모델 훈련 방법 및 서버
KR20200115213A (ko) 비디오 게임에서 자동 플레이어 제어의 인계
JP7376607B2 (ja) 対戦マッチのための人工知能モデルを訓練するためのシステム及び方法
CN112870721B (zh) 一种游戏互动方法、装置、设备及存储介质
Lucas et al. Fast evolutionary adaptation for monte carlo tree search
CN111841018B (zh) 模型训练方法、模型使用方法、计算机设备及存储介质
CN109731330A (zh) 画面的显示方法和装置、存储介质、电子装置
CN112791394A (zh) 游戏模型训练方法、装置、电子设备及存储介质
US20240123348A1 (en) Game character control method and apparatus, storage medium and electronic device
CN108619717A (zh) 操作对象的确定方法、装置、存储介质及电子装置
WO2023024762A1 (zh) 人工智能对象控制方法、装置、设备及存储介质
CN107145948A (zh) 一种基于多智能体技术的npc控制方法
CN115888119A (zh) 一种游戏ai训练方法、装置、电子设备及存储介质
CN114404975A (zh) 决策模型的训练方法、装置、设备、存储介质及程序产品
CN117085314A (zh) 云游戏的辅助操控方法、装置和存储介质及电子设备
CN113509726A (zh) 交互模型训练方法、装置、计算机设备和存储介质
Adhikari et al. Co-evolving real-time strategy game micro
CN116943204A (zh) 虚拟对象的控制方法、装置和存储介质及电子设备
CN108905201A (zh) 一种模拟操作的游戏算法***及方法
CN112870727B (zh) 一种游戏中智能体的训练及控制方法
CN110478891B (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