CN111803959B - 对象控制方法、装置、游戏服务器及介质 - Google Patents

对象控制方法、装置、游戏服务器及介质 Download PDF

Info

Publication number
CN111803959B
CN111803959B CN202010708777.9A CN202010708777A CN111803959B CN 111803959 B CN111803959 B CN 111803959B CN 202010708777 A CN202010708777 A CN 202010708777A CN 111803959 B CN111803959 B CN 111803959B
Authority
CN
China
Prior art keywords
game
model
value
target
scene
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
CN202010708777.9A
Other languages
English (en)
Other versions
CN111803959A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010708777.9A priority Critical patent/CN111803959B/zh
Publication of CN111803959A publication Critical patent/CN111803959A/zh
Application granted granted Critical
Publication of CN111803959B publication Critical patent/CN111803959B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • A63F13/798Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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 details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/558Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by assessing the players' skills or ranking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请基于人工智能技术公开了一种对象控制方法、装置、游戏服务器及介质,其中方法包括:获取目标游戏场景的场景信息、目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;该第一对象是指由用户控制的对象,第二对象是指由游戏模型控制的对象;根据目标游戏场景的场景信息、第一对象的第一状态信息及第二对象的第二状态信息,对用于控制第二对象的游戏模型进行动态能力预估,得到预估能力值;获取与预估能力值对应的目标游戏模型,并调用目标游戏模型对第二对象进行游戏动作预测,得到目标游戏动作;在游戏客户端中控制第二对象执行目标游戏动作。本申请可灵活地控制陪玩AI(第二对象)的能力,有效提升游戏的用户黏度。

Description

对象控制方法、装置、游戏服务器及介质
技术领域
本发明涉及互联网技术领域,具体涉及计算机技术领域,尤其涉及一种对象控制方法、一种对象控制装置、一种计算机设备及一种计算机存储介质。
背景技术
随着互联网技术的发展,越来越多的游戏支持陪玩机制;所谓的陪玩机制是指:通过引入由计算机设备控制的陪玩AI(AI companion),来陪伴人类玩家用户完成一局游戏竞赛的机制。此处的陪玩AI是指:在游戏中和人类玩家用户一起匹配,并陪伴人类玩家用户一起玩游戏的虚拟对象。目前,如何在陪玩AI和人类玩家用户所使用的对象进行游戏竞赛的过程中,对该陪玩AI的能力进行合理控制成为了研究热点。
发明内容
本发明实施例提供了一种对象控制方法、装置、计算机设备及介质,可灵活地控制陪玩AI(第二对象)的能力,有效提升游戏的用户黏度。
一方面,本发明实施例提供了一种对象控制方法,所述方法包括:
获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
在游戏客户端中控制所述第二对象执行所述目标游戏动作
另一方面,本发明实施例提供了一种对象控制装置,所述装置包括:
获取单元,用于获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
处理单元,用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
所述处理单元,用于获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
控制单元,用于在游戏客户端中控制所述第二对象执行所述目标游戏动作。
在一种实施方式中,处理单元在用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值时,可具体用于:
确定在所述目标游戏场景中针对所述第二对象已使用的至少一个历史游戏模型,并根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例;
采用所述能力调整比例对所述参考能力值进行调整处理,得到预估能力值。
再一种实施方式中,处理单元在用于根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值时,可具体用于:
求取所述至少一个历史游戏模型的模型能力值的平均值,并将求取的平均值作为参考能力值;或者,
从所述至少一个历史游戏模型中确定使用时间最晚的历史游戏模型,并将所述使用时间最晚的历史游戏模型的模型能力值作为参考能力值。
再一种实施方式中,所述目标游戏场景为竞速游戏的场景;所述目标游戏场景的场景信息包括竞速赛道的赛道长度,所述第一对象的第一状态信息包括所述第一对象在所述竞速赛道中的第一位置以及所述第一对象的移动速度;所述第二对象的第二状态信息包括所述第二对象在所述竞速赛道中的第二位置;
相应的,处理单元在用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例时,可具体用于:
根据所述第一对象的移动速度、所述第一位置和所述第二位置,计算所述第二对象从所述竞速赛道的起点移动至所述第二位置所使用的历史速度;
确定在所述第一对象到达所述竞速赛道的终点时,所述第二对象需处于的目标位置,并预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度;
根据所述预测速度和所述历史速度之间的速度比值,预估得到所述参考能力值的能力调整比例。
再一种实施方式中,处理单元在用于预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度时,可具体用于:
根据所述赛道长度和所述第一对象的所述移动速度,预估所述第一对象从所述第一位置移动至所述竞速赛道的终点所需的剩余时间;
根据所述第二位置和所述目标位置之间的距离和所述剩余时间,计算所述第二对象从所述第二位置移动至所述目标位置所需的预测速度。
再一种实施方式中,处理单元在用于获取与所述预估能力值对应的目标游戏模型之前,还可用于:
计算所述预估能力值相对于所述至少一个历史游戏模型的模型能力值的调整幅度;
若所述调整幅度位于幅度范围内,则执行获取与所述预估能力值对应的目标游戏模型的步骤。
再一种实施方式中,所述目标游戏模型位于模型池中,所述模型池中包括多个游戏模型,每个游戏模型具有一个或多个模型能力值;相应的,处理单元在用于获取与所述预估能力值对应的目标游戏模型时,可具体用于:
从所述模型池中查找与所述预估能力值相匹配的目标模型能力值,所述目标模型能力值包括:与所述预估能力值相等的模型能力值,或者与所述预估能力值之间的差值小于阈值的模型能力值;
从所述模型池中获取所述目标模型能力值对应的游戏模型,作为目标游戏模型。
再一种实施方式中,处理单元还可用于:
获取待训练的初始模型,以及关于所述初始模型的训练数据;所述训练数据包括至少一个样本场景的场景信息;
采用所述训练数据对所述初始模型进行多轮迭代训练,并获取每轮迭代训练所得到的游戏模型;
对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值;
将所述每个游戏模型和对应的模型能力值,关联添加至所述模型池。
再一种实施方式中,处理单元在用于对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值时,可具体用于:
在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局测试游戏,得到测试结果;所述测试结果包括所述任一游戏模型在至少一个测评指标下的指标值;
根据所述任一游戏模型在各测评指标下的指标值,获取所述任一游戏模型在所述各测评指标下的评分值;
汇总所述任一游戏模型在所述各测评指标下的评分值,得到所述任一游戏模型的模型能力值。
再一种实施方式中,处理单元在用于在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局游戏测试,得到测试结果时,可具体用于:
采用目标扰动信息对获取到的任一游戏模型进行扰动处理;
在测试游戏场景中,调用扰动处理后的任一游戏模型控制测试对象完成至少一局游戏测试,得到关于所述目标扰动信息的测试结果;
其中,所述任一游戏模型的模型能力值包括:所述任一游戏模型在使用所述目标扰动信息下的模型能力值。
再一种实施方式中,所述测评指标包括:游戏完成时长、各技巧动作的使用频率和各失误情况的出现次数;
所述目标扰动信息包括以下至少一项扰动参数的参数值:失误概率、动作延迟时长和动作帧数;
其中,所述动作延迟时长是指所述任一游戏模型延迟输出预测的游戏动作的时长,所述动作帧数是指所述任一游戏模型在单位时间内预测的游戏动作的数量。
再一种实施方式中,获取单元还可用于:
检测针对所述第二对象进行模型调整的触发事件,所述触发事件包括:预设的首次模型调整的调整时刻到达事件,或者根据模型调整频率确定的非首次模型调整的调整时刻到达事件;
若检测到所述触发事件,则执行获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息以及所述第二对象的第二状态信息的步骤。
再一方面,本发明实施例提供了一种游戏服务器,所述游戏服务器包括输入接口和输出接口,所述游戏服务器还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
在游戏客户端中控制所述第二对象执行所述目标游戏动作
再一方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:
获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
在游戏客户端中控制所述第二对象执行所述目标游戏动作
本发明实施例在第一对象(即玩家用户使用的对象)和第二对象(即陪玩AI)进行游戏竞赛的过程中,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,较为准确地预估得到用于控制第二对象的游戏模型的预估能力值。然后,可调用与该预估能力值相匹配的目标游戏模型对第二对象进行游戏动作预测,并控制第二对象执行预测得到的目标游戏动作。通过动态选择的目标游戏模型来灵活控制第二对象的游戏动作,可有效地对第二对象的能力水平进行动态调整,使得第二对象的能力水平和第一对象的能力水平相匹配;这样可给玩家用户带来较好的游戏体验,从而提升游戏的用户黏度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种游戏处理系统的系统架构图;
图1b是本发明实施例提供的一种对象控制方案的方案示意图;
图1c是本发明实施例提供的一种对象控制方案的方案示意图;
图2是本发明实施例提供的一种对象控制方法的流程示意图;
图3是本发明另一实施例提供的一种对象控制方法的流程示意图;
图4a是本发明实施例提供的一种模型等级划分的示意图;
图4b是本发明实施例提供的一种第一对象和第二对象在竞速赛道中的位置示意图;
图4c是本发明实施例提供的另一种第一对象和第二对象在竞速赛道中的位置示意图;
图5a是本发明另一实施例提供的一种对象控制方法的流程示意图;
图5b是本发明实施例提供的一种目标游戏场景的场景示意图;
图5c是本发明实施例提供的另一种目标游戏场景的场景示意图;
图6是本发明实施例提供的一种对象控制装置的结构示意图;
图7是本发明实施例提供的一种游戏服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
随着互联网技术的不断发展,AI(Artificial Intelligence,人工智能)技术也随之得到更好的发展。所谓的AI是指利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术;其主要通过了解智能的实质,生产出一种新的能以人类智能相似的方式做出反应的智能机器,使得智能机器具有感知、推理与决策等多种功能。相应的,AI技术是一门综合学科,其主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习(Machine Learning,ML)/深度学习等几大方向。其中,机器学习是AI的核心,是使计算机设备具有智能的根据途径;所谓的机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科;其专门研究计算机设备怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
基于AI技术中的机器学习/深度学习技术,本发明实施例针对游戏中的陪玩AI提出了一种控制构思;具体的:可基于机器学习/深度学习技术,生成能够预测陪玩AI的游戏动作、且能够与不同能力水平段的人类玩家用户进行能力适配的游戏模型;此处的游戏动作是指陪玩AI在游戏竞赛过程中所执行的任一动作,如需采用技巧才能执行的技巧动作(如赛车漂移动作、汽车喷射动作等)、常规的方位变换动作(如左转动作、右转动作等),常规的速度调整动作(如加速动作、减速动作等),常规的移动动作(如向前移动动作、向后移动动作等)。那么在陪玩AI陪伴人类玩家用户进行游戏对局时,便可实时地灵活选择与人类玩家用户的当前能力水平相匹配的游戏模型,来预测陪玩AI的游戏动作,并基于预测得到的游戏动作来控制陪玩AI。这样可使得能够根据人类玩家用户的实际发挥灵活且精准地控制陪玩AI的能力水平,从而更好地满足人类玩家用户的陪玩需求,提升游戏的用户粘度。
基于上述针对陪玩AI提出的控制构思,本发明实施例首先提出了一种游戏处理系统;参见图1a所示,该游戏处理系统可至少包括:多个游戏客户端11、游戏服务器12、模型服务器13以及模型能力测评子系统14,等等。其中,游戏客户端11可以是人类玩家用户所使用的具有游戏功能的任一用户客户端,或者游戏服务器12基于虚拟环境所运行的、用于控制陪玩AI执行相关游戏动作的虚拟客户端。游戏服务器12是指用于运行任一游戏,并为游戏客户端11提供相应游戏服务(如游戏资源下发服务、AI陪玩服务等)的服务器;其可以是一个独立的物理服务器,也可以是由多个物理服务器所构成的集群设备,对此不作限定。模型服务器13是指可基于机器学习/深度学习技术进行模型训练,并按某个时间间隔将产生的游戏模型送入模型能力测评子系统14进行能力测评的服务器。
模型能力测评子系统14则是指可通过一系列的测评指标(如游戏完成时长、技巧触发次数、得分等),对模型服务器13所生成的各个游戏模型进行能力测评,以得到不同能力水平的游戏模型的系统;其具体可包括但不限于:测评服务器141、能力值计算模块142以及测评结果记录模块143。其中,测评服务器141主要用于从模型服务器13中读取训练产生的游戏模型,并在规定的测评环境下对读取的游戏模型进行重复测评,得到游戏模型的测评结果;能力值计算模块142主要用于根据游戏模型的测量结果,计算游戏模型的模型能力值;测评结果记录模块133主要用于记录并上报游戏模型的测评结果和/或模型能力值至相应的数据库(如模型池)中。
需要说明的是,图1a只是示例性地表征本发明实施例所提出的游戏处理系统的系统架构,并不对其进行限定。例如,图1a所示的游戏处理系统中部署了模型服务器13;但在实际应用中,也可不单独部署模型服务器13,而是由游戏服务器12或测评服务器141来进行模型训练以得到多个游戏模型。又如,图1a所示的模型能力测评子系统14中的能力值计算模块142和测评结果记录模块143被分别部署在与测评服务器141相互独立的其他两个服务器中;但在实际应用中,也可将能力值计算模块142和测评结果记录模块143均部署在测评服务器141中。再如,游戏服务器11除了提供游戏服务外,也可具备模型训练、模型测评等多种功能;在此情况下,可在游戏处理系统中只部署游戏服务器11,而不部署模型服务器13以及模型能力测评子系统14,等等。
基于上述的游戏处理系统以及针对陪玩AI的控制构思,本发明实施例提出了一种基于动态难度调整(Dynamic Game Difficulty Balancing,DGDB))的对象控制方案;所谓的动态难度调整是指:能够根据对标(即匹配)的人类玩家用户的实际能力,定时或实时调整陪玩AI的能力水平的处理;通过动态难度调整能够达到陪玩AI的能力水平和对标的人类玩家用户的实际能力相匹配的目的。在具体实现中,本发明实施例所提出的基于动态调整的对象控制方案可应用在任一游戏的AI陪玩模式中,例如竞速游戏(Racing Game,RCG)、竞技游戏等等。其中,竞速游戏是指人类玩家用户使用第一人称或第三人称的对象参与速度竞争的游戏,例如包含赛车、飞行等运动游戏;竞技游戏是指建立在公正、公平、合理的游戏平台上的对战游戏,例如即时战略(Real-Time Strategy Game,RTS)游戏、第一人称射击游戏(First-person shooting game,FPS)和体育模拟游戏,等等。
参见图1b-图1c所示,基于动态难度调整的对象控制方案大致如下:
首先,可预先通过模型训练得到多个游戏模型。其次,可对多个游戏模型进行能力测评分级,得到各个游戏模型的模型能力值;并根据各个游戏模型的模型能力值将多个游戏模型划分成不同能力水平的游戏模型。然后将不同能力水平的游戏模型和相应的模型能力值存储至模型池中,以生成包含不同能力等级(即不同模型能力值)的游戏模型的模型池;可见本发明实施例中的模型池能够以模型能力值作为索引,使得后续可通过此索引从模型池中获取到相应的游戏模型。
其次,在检测到人类玩家用户存在陪玩需求时,可为人类玩家用户分配至少一个陪玩AI,并建立陪玩AI的虚拟客户端和人类玩家用户所使用的用户客户端之间的连接以开启游戏竞赛。在陪玩AI和人类玩家用户控制的用户对象进行游戏竞赛的过程中,任一游戏客户端(如陪玩AI所对应的虚拟客户端或者人类玩家用户所使用的用户客户端)可实时或周期性地将当前游戏的场景信息、用户对象完成游戏的状态信息以及陪玩AI完成游戏的状态信息发送至游戏服务器。相应的,游戏服务器可采用动态能力预估函数根据游戏客户端发送的场景信息、用户对象的状态信息和陪玩AI的状态信息,预估定下一时间段中用于控制陪玩AI的游戏模型;并请求模型池返回计算得到的游戏模型。然后,可在下一时间段内根据被选择的游戏模型实时或周期性地对陪玩AI进行游戏动作预测;并可将预测得到的游戏动作下发至游戏客户端,使得游戏客户端控制陪玩AI执行该预测得到的游戏动作。
可见,通过本发明实施例所提出的对象控制方案,可实时或周期地通过根据人类玩家用户的游戏水平能力选择相匹配的游戏模型,实现为人类玩家用户提供和人类玩家用户的水平匹配的拟人化和灵活的陪玩AI;这样可在一定程度上优化玩家的体验,从而提升游戏的用户黏度。
基于上述的描述,本发明实施例提出一种对象控制方法,该对象控制方法可以由上述所提及的游戏服务器执行。请参见图2,该对象控制方法可包括以下步骤S201-S204:
S201,获取目标游戏场景的场景信息、目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息。
在具体实现中,当人类玩家用户欲控制第一对象进行一局游戏竞赛时,游戏服务器可为第一对象分配一个或多个第二对象;为便于阐述,后续均以一个第二对象为例进行说明。此处的第一对象是指由用户控制的对象,即第一对象可以是前述所提及的人类玩家用户控制的用户对象;第二对象是指由游戏模型控制的对象,即第二对象可以是前述所提及的陪玩AI。其次,游戏服务器可将人类玩家用户所使用的第一对象和匹配的第二对象载入至目标游戏场景中,并根据人类玩家用户的历史游戏水平(如历史游戏完成时间、在历史游戏中使用技巧动作的次数等)选取一个初始模型。然后,可调用选取的初始游戏模型预测第二对象的游戏动作,并控制第二对象执行初始游戏模型所预测得到的游戏动作,以实现第二对象陪伴人类玩家用户所控制的第一对象在目标游戏场景中进行游戏竞赛。其中,本发明实施例所提及的目标游戏场景可以是任一游戏的场景;例如,目标游戏场景可以为竞速游戏的场景、也可以为竞技游戏的场景,等等;所谓场景是指由游戏中的环境、建筑、机械、道具等虚拟元素所构成的虚拟空间。
在第一对象和第二对象进行游戏竞赛的过程中,游戏服务器可实时地调整关于第二对象的游戏模型以实时调整第二对象的能力。在此情况下,游戏服务器可实时地获取目标游戏场景的场景信息、目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息。其中,目标游戏场景的场景信息可包括用于构成目标游戏场景的各个虚拟元素的元素信息;第一对象的第一状态信息是指可用于反映第一对象在目标游戏场景中的游戏完成情况的信息,第二对象的第二状态信息是指可用于反映第二对象在目标游戏场景中的游戏完成情况的信息。
例如,若目标游戏场景为竞速游戏的场景,则目标游戏场景可包括竞速赛道这一虚拟元素,那么目标游戏场景的场景信息可包括竞速赛道的赛道长度;相应的,第一对象的第一状态信息可包括第一对象在竞速赛道中的第一位置等,第二对象的第二状态信息可包括第二对象在竞速赛道中的第二位置等。又如,若目标游戏场景为竞技游戏的场景,则目标游戏场景可包括各对象的防御塔(一种对抗双方的防御性建筑)这一虚拟元素,任一对象的防御塔被全部摧毁便会触发比赛结束,那么目标游戏场景的场景信息可包括各战队的防御塔的总数量;相应的,第一状态信息可包括第一对象摧毁第二对象的防御塔的数量等,第二状态信息可包括第二对象摧毁第一对象的防御塔的数量等。
或者,在第一对象和第二对象进行游戏竞赛的过程中,游戏服务器也可根据预设的模型调整频率周期性地调整关于第二对象的游戏模型,以周期性地调整第二对象的能力。在此情况下,游戏服务器可检测针对第二对象进行模型调整的触发事件;此处的触发事件可包括但不限于:预设的首次模型调整的调整时刻到达事件,或者根据模型调整频率确定的非首次模型调整的调整时刻到达事件,等等。具体的,若游戏服务器未对第二对象进行游戏模型调整,即当前仍使用初始游戏模型预测第二对象的游戏动作;则触发事件可为预设的首次模型调整的调整时刻到达事件。例如,设预设的首次模型调整的调整时刻为游戏开始后的第20秒,则游戏服务器可检测当前系统时间距离游戏开始时间之间的间隔时长是否等于20秒;若等于,则可确定检测到触发事件。若游戏服务器已对第二对象进行过一次或多次游戏模型调整,即当前使用调整后的游戏模型预测第二对象的游戏动作;则触发事件可为根据模型调整频率确定的非首次模型调整的调整时刻到达事件。例如,设模型调整频率为每30秒调整一次,则游戏服务器可检测当前系统时间距离上一次模型调整的历史调整时间之间的间隔时长是否等于30秒;若等于,则可确定检测到触发事件。游戏服务器若检测到触发事件,则可获取目标游戏场景的场景信息、目标游戏场景中的第一对象的第一状态信息以及第二对象的第二状态信息。
S202,根据目标游戏场景的场景信息、第一对象的第一状态信息及第二对象的第二状态信息,对用于控制第二对象的游戏模型进行动态能力预估,得到预估能力值。
由前述可知,本发明实施例可预先训练得到多个不同能力的游戏模型,每个游戏模型均具有一个或多个模型能力值。那么游戏服务器在需要调整第二对象的游戏模型,并获取到目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息后,便可通过步骤S202得到关于第二对象的游戏模型的预估能力值,以便于后续可根据该预估能力值获取相应的目标游戏模型并执行后续动作。
在一种具体实现中,可以先确定目标游戏场景中针对第二对象所使用的当前游戏模型的当前模型能力值。其次,可以根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象第二状态信息,预估第一对象和第二对象完成游戏竞赛的先后顺序。若预估的先后顺序指示第一对象将先于第二对象完成游戏竞赛,则可按照增大当前模型能力值的方向预估得到一个预估能力值;若预估的先后顺序指示第一对象将晚于第二对象完成游戏竞赛,或预估的先后顺序指示第一对象将和第二对象同时完成游戏竞赛,则可按照减小当前模型能力值的方向预估得到一个预估能力值。
再一种具体实现中,可确定目标游戏场景中针对第二对象所使用的当前游戏模型的当前模型能力值,并根据第一对象的第一状态信息计算第一对象的当前能力值。若当前游戏模型的当前模型能力值大于第一对象的当前能力值,则可按照增大当前模型能力值的方向预估得到一个预估能力值;若当前游戏模型的当前模型能力值小于或等于第一对象的当前能力值,则可按照减小当前模型能力值的方向预估得到一个预估能力值。
再一种具体实现中,还可结合在目标游戏场景中针对第二对象已使用的至少一个历史游戏模型的模型能力值来执行步骤S202,得到预估能力值。具体的,可先根据至少一个历史游戏模型的模型能力值,计算得到参考能力值;此处的参考能力值可以是各个历史游戏模型的模型能力值的平均值,也可以是至少一个历史游戏模型中使用时间最晚的历史游戏模型的模型能力值,等等。例如,设已在目标游戏场景中针对第二对象使用了3个历史游戏模型,依次是游戏模型1、游戏模型2和游戏模型3;那么,参考能力值可以是这3个历史游戏模型的模型能力值的平均值,也可以是3个历史游戏模型中使用时间最晚的历史游戏模型(即游戏模型3)的模型能力值。其次,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,预估关于参考能力值的能力调整比例。然后,可采用能力调整比例对参考能力值进行调整处理,得到预估能力值。
S203,获取与预估能力值对应的目标游戏模型,并调用目标游戏模型对第二对象进行游戏动作预测,得到目标游戏动作。
在得到预估能力值后,便可获取与预估能力值相匹配的目标游戏模型。然后,可调用目标游戏模型根据目标游戏场景的场景信息,对第二对象进行游戏动作预测,得到目标游戏动作。其中,目标游戏模型的预测原理如下:通过神经网络拟合输入状态到输出之间的映射关系,然后将目标游戏场景的场景信息作为输入状态,并采用拟合的映射关系对该目标游戏场景的场景信息进行映射,得到目标游戏动作。
S204,在游戏客户端中控制第二对象执行目标游戏动作。
在具体实现中,游戏服务器在通过步骤S203得到目标游戏动作后,可将目标游戏动作下发至游戏客户端,以使得游戏客户端可在目标游戏场景中控制第二对象执行目标游戏动作。在一种实施方式中,游戏服务器可实时地将目标游戏动作下发至游戏客户端,以使得游戏客户端可实时控制第二对象执行该目标游戏动作。再一种实施方式中,游戏服务器可根据第一对象和第二对象的能力,采用相应的下发策略将目标游戏动作下发至游戏客户端。
具体的,游戏服务器若检测到第一对象的能力高于第二对象的能力,例如检测到第一对象的速度大于第二对象的速度、或者检测到第一对象完成比赛的进度快于第二对象完成比赛的进度、或者检测到第一对象的攻击力大于第二对象的攻击力等。则可实时将目标游戏动作下发至游戏客户端,使得游戏客户端可实时控制第二对象执行该目标游戏动作以提升相应能力。若检测到第一对象的能力低于第二对象的能力,例如第一对象的速度小于第二对象的速度、或者检测到第一对象完成比赛的进度慢于第二对象完成比赛的进度、或者检测到第一对象的攻击力小于第二对象的攻击力等。则可按照动作延迟策略延迟将目标游戏动作下发至游戏客户端,以使得游戏客户端可延迟控制第二对象执行该目标游戏动作以减弱第二对象的相应能力,从而减小第一对象和第二对象的差距,进而使得可以给第一对象所对应的人类玩家用户带来较好的游戏体验。其中,此处的动作延迟策略是指:在预测得到目标游戏动作后,等待预设延迟时长后再发送目标游戏动作的策略。
本发明实施例在第一对象(即玩家用户使用的对象)和第二对象(即陪玩AI)进行游戏竞赛的过程中,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,较为准确地预估得到用于控制第二对象的游戏模型的预估能力值。然后,可调用与该预估能力值相匹配的目标游戏模型对第二对象进行游戏动作预测,并控制第二对象执行预测得到的目标游戏动作。通过动态选择的目标游戏模型来灵活控制第二对象的游戏动作,可有效地对第二对象的能力水平进行动态调整,使得第二对象的能力水平和第一对象的能力水平相匹配;这样可给玩家用户带来较好的游戏体验,从而提升游戏的用户黏度。
请参见图3,是本发明实施例提供的另一种对象控制方法的流程示意图。该对象控制方法可以由上述所提及的游戏服务器执行。请参见图3,该对象控制方法可包括以下步骤S301-S308:
S301,获取待训练的初始模型,以及关于初始模型的训练数据。
在具体实现中,可以先获取预设的神经网络,并根据业务需求或历史经验定义该神经网络的损失函数和奖励函数。其中,损失函数是指可用于衡量模型的预测误差的函数,奖励函数是指可根据模型的预测结果计算模型的奖励值的函数。其次,可基于神经网络、损失函数以及奖励策略构建一个初始模型。然后,可获取用于对初始模型进行训练的训练数据;此处的训练数据可包括至少一个样本场景的场景信息。
S302,采用训练数据对初始模型进行多轮迭代训练,并获取每轮迭代训练所得到的游戏模型。
在具体实现中,可先采用训练数据对初始模型进行第一轮迭代训练。具体的,可调用初始模型对训练数据进行学习,并根据学习结果进行游戏动作预测以得到预测游戏动作。其次,可采用奖励函数根据预测游戏动作计算初始模型的奖励值,并采用损失函数根据预测游戏动作计算初始模型的损失值。然后,可按照减小损失值的方向(即按照梯度下降的方向)以及增大奖励值的方向,更新初始模型的网络参数以得到中间模型。然后,可继续调用中间模型根据训练数据,再次进行游戏动作预测以得到新的预测游戏动作;然后,又可采用奖励函数根据新的预测游戏动作计算新的奖励值,以及采用损失函数根据新的预测游戏动作计算新的损失值。接着,又可按照减小新的损失值的方向以及增大新的奖励值的方向,更新中间模型的网络参数以得到新的中间模型。以此类推,不断迭代执行上述步骤,直至完成对初始模型的第一轮迭代训练;其中,第一轮迭代训练的迭代次数可根据经验值或者业务需求设置,例如可设置第一轮迭代训练的迭代次数为1000次。
在完成对初始模型的第一轮迭代训练后,便可获取第一轮迭代训练所得到的中间模型作为一个游戏模型。然后,可继续对第一轮迭代训练所得到的中间模型进行第二轮迭代训练;该第二轮迭代训练的训练原理与上述第一轮迭代训练的训练原理类似,在此不再赘述。在完成第二轮迭代训练后,便可获取第二轮迭代训练所得到的中间模型作为一个游戏模型。然后,可继续对第二轮迭代训练所得到的中间模型进行第三轮迭代训练。以此类推,直至完成N轮迭代训练;此处的N为大于1的正整数,其具体取值可根据经验值或者业务需求设置。由前述可知,可分别获取每轮迭代训练后所得到的中间模型作为一个游戏模型。需说明的是,每轮迭代训练的训练时长(或迭代训练次数)均可根据经验值或者业务需求设置,且每轮迭代训练的训练时长(或迭代训练次数)可相同,也可不同,对此不作限制。
S303,对获取到的每个游戏模型进行能力测评,得到每个游戏模型的模型能力值。
在通过步骤S302获取到多个游戏模型后,便可通过步骤S303对获取到的各个游戏模型进行能力测评,以得到各个游戏模型的模型能力值。在具体实施过程中,针对任一游戏模型而言,步骤S303的一种具体实施方式可以包括以下步骤s11-s13:
s11,在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局测试游戏,得到测试结果;此处的测试结果可包括任一游戏模型在至少一个测评指标下的指标值,测评指标具体可根据测试游戏场景设置。例如,若测试游戏场景为竞速游戏的场景,则测评指标可包括但不限于:游戏完成时长、各技巧动作的使用频率(如技巧动作A的使用频率、技巧动作B的使用频率等)、各技巧动作的触发次数(如技巧动作A的触发次数、技巧动作B的触发次数)、各失误情况的出现次数(如出现失误A的次数、出现失误B的次数)、以及不同游戏动作的使用比例(如游戏动作A的使用比例(或使用次数)、游戏动作B的使用比例(或使用次数)),等等。又如,若测试游戏场景为竞技游戏的场景,则测评指标可包括但不限于:各游戏动作的使用次数、各游戏道具的使用次数(如游戏道具“炸弹”的使用次数、游戏道具“匕首”的使用次数)、摧毁防御塔的数量,等等。
具体的,可先将测试对象加载至测试游戏场景中以启动第一局测试游戏。其次,可实时调用获取到的任一游戏模型对测试对象进行预测;并实时控制测试对象执行预测得到的游戏动作,以完成第一局测试游戏。然后,可统计任一游戏模型在第一局测试游戏中通过控制测试对象所产生的测试数据。同理,游戏服务器还可将测试对象加载至测试游戏场景中以启动第二局测试游戏。其次,可实时调用获取到的任一游戏模型对测试对象进行预测;并实时控制测试对象执行预测得到的游戏动作,以完成第二局测试游戏。然后,可统计任一游戏模型在第二局测试游戏中通过控制测试对象所产生的测试数据。
以此类推,游戏服务器可重复调用任一游戏模型控制测试对象完成至少一局测试游戏,并获取任一游戏模型在每局测试游戏中通过控制测试对象所产生的测试数据。其中,任一测试数据可包括:任一游戏模型在对应的测试游戏中通过控制测试对象所产生的至少一个测评指标下的数值。然后,游戏服务器可获取到的各个测试数据中相同测评指标下的数值进行均值计算,得到任一模型在各测评指标下的指标值(即测试结果)。例如,设总共进行了2局测试游戏,则游戏服务器总共获取到2个测试数据,即测试数据1和测试数据2。其中,测试数据1包括:测评指标a下的数值x以及测评指标b下的数值y;测试数据2包括:测评指标a下的数值X以及测评指标b下的数值Y。那么游戏服务器可分别对2个测试数据中相同测评指标下的数值进行均值计算,得到测试结果如下:任一游戏模型在测评指标a下的指标值((x+X)/2),以及任一游戏模型在测评指标b下的指标值((y+Y)/2)。
s12,根据任一游戏模型在各测评指标下的指标值,获取任一游戏模型在各测评指标下的评分值。具体的,可获取游戏评分规则或人工制定的规则;该游戏评分规则或人工制定的规则中可包括:各测评指标的指标值和评分值之间的映射关系。然后,可按照游戏评分规则或者人工制定的规则,根据任一游戏模型在各测评指标下的指标值,获取任一游戏模型在各测评指标下的评分值。例如,设游戏评分规则如表1所示;测评指标a的指标值为8,则可确定任一游戏模型在测评指标a下的评分值为0.3。
表1
Figure BDA0002594337690000171
s13,汇总任一游戏模型在各测评指标下的评分值,得到任一游戏模型的模型能力值。在一种实施方式中,可直接求取任一游戏模型在各测评指标下的评分值之间的分值总和,将求取得到的分值总和作为任一游戏模型的模型能力值;或者根据预设的能力映射关系,将求取得到的分值总和所对应的能力值作为任一游戏模型的模型能力值。再一种实施方式中,可获取各测评指标的权重值,采用各测评指标的权重值对任一游戏模型在各测评指标下的评分值进行加权求和,将加权求和所得到的数值作为任一游戏模型的模型能力值;或者根据预设的能力映射关系,将加权求和所得到的数值所对应的能力值作为任一游戏模型的模型能力值。再一种实施方式中,还可求取任一游戏模型在各测评指标下的评分值之间的评分均值,将求取得到的评分均值作为任一游戏模型的模型能力值;或者根据预设的能力映射关系,将求取得到的评分均值所对应的能力值作为任一游戏模型的模型能力值。应理解的是,本发明实施例只是示例性地列举了步骤s13的几种实施方式,并非穷举。
重复迭代上述步骤s11-s13以对获取到的每个游戏模型进行能力测评,得到每个游戏模型的模型能力值。可选的,在得到每个游戏模型的模型能力值后,还可将人类玩家用户的能力水平按照一定间隔分成不同的难度等级(或称为能力等级);其次,可根据每个游戏模型的模型能力值,将每个游戏模型与对应的人类玩家用户的能力水平进行匹配,以得到不同能力等级的游戏模型。以采用人类玩家用户完成一局游戏的游戏时长来衡量人类玩家的能力水平为例,相应的,也可采用各游戏模型的游戏完成时长的时长值来衡量各游戏模型的模型能力值,即各游戏模型的模型能力值是根据各游戏模型的游戏完成时长的时长值得到的。那么在对各游戏模型进行能力等级划分时,可采用各游戏模型的游戏完成时长的时长值和人类玩家用户完成一局游戏的游戏时长进行匹配,以得到不同能力等级的游戏模型,如图4a所示。由此可见,本发明实施例通过步骤S301-S303可得到多个不同模型能力值的游戏模型;这样可较为全面地覆盖人类玩家的各阶段的水平能力,以使得后续在根据人类玩家用户的实际能力动态切换用于控制第二对象的游戏模型,实现第二对象的能力能够和人类玩家用户的实际能力进行动态匹配。
进一步的,为了更为全面地覆盖人类玩家用户的各阶段的水平能力,本发明实施例还可采用多种技术手段来得到更多的不同模型能力值的游戏模型。例如,可大量重复执行步骤S302-S303以增加游戏模型的数量,从而得到更多的不同模型能力值的游戏模型。又如,在执行步骤S303对任一游戏模型进行能力测评时,可采用不同的扰动信息对任一游戏模型进行扰动处理,以使得任一游戏模型可具有多个不同的模型能力值,从而得到更多的不同模型能力值的游戏模型。在此情况下,游戏服务器在执行步骤S303时,可分别对上述所涉及的步骤s11-s13进行调整,得到对应的步骤s21-s23;即相应的,步骤S303的另一种具体实施方式可以包括以下步骤s21-s23:
s21,采用目标扰动信息对获取到的任一游戏模型进行扰动处理;并在测试游戏场景中,调用扰动处理后的任一游戏模型控制测试对象完成至少一局游戏测试,得到关于目标扰动信息的测试结果。此处的目标扰动信息可包括以下至少一项扰动参数的参数值:失误概率、动作延迟时长和动作帧数;其中,动作延迟时长是指任一游戏模型延迟输出预测的游戏动作的时长,动作帧数是指任一游戏模型在单位时间内预测的游戏动作的数量。相应的,通过步骤s21所得到的关于目标扰动信息的测试结果可包括:扰动处理后的任一游戏模型在至少一个测评指标下的指标值。
s22,根据扰动处理后的任一游戏模型在至少一个测评指标下的指标值,获取扰动处理后的任一游戏模型在各测评指标下的评分值。
s23,汇总扰动处理后的任一游戏模型在各测评指标下的评分值,得到任一游戏模型的模型能力值。可见,通过步骤s23得到的任一游戏模型的模型能力值包括:任一游戏模型在使用目标扰动信息下的模型能力值。
需要说明的是,在实际应用中,游戏服务器还可采用其他扰动信息替换上述步骤s21-s23中的目标扰动信息,以获取任一游戏模型在使用其他扰动信息下的模型能力值;其中,其他扰动信息中的扰动参数的参数值和目标扰动信息中的对应扰动参数的参数值不同。可见,本发明实施例可通过采用不同的扰动信息重复执行上述步骤s21-s23,得到任一游戏模型在使用不同扰动信息下的模型能力值。通过从失误概率、动作延迟和动作帧数等多个维度对任一游戏模型进行扰动处理,可灵活地对任一游戏模型的模型能力值进行控制,从而实现灵活地控制陪玩AI的能力和选择。
S304,将每个游戏模型和对应的模型能力值,关联添加至模型池。
在一种实施方式中,可直接将每个游戏模型和对应的模型能力值,关联添加至模型池中。再一种实施方式中,还可建议每个游戏模型的模型标识和每个游戏模型的模型能力值之间的索引关系,将该每个游戏模型的索引关系和每个游戏添加至模型池中。此处的模型标识是指对游戏模型进行唯一标识的信息,例如游戏模型的版本号;该版本号可以是在模型训练输出游戏模型时,游戏模型相对于初始模型的模型训练步数。例如,游戏模型1是对初始模型训练了10000次后输出的,则游戏模型1的版本号可以为00010000;又如,游戏模型2是对初始模型训练了100000次后输出的,则游戏模型2的版本号可以为00100000。
再一种实施方式中,若每个游戏模型具有多个扰动信息下的模型能力值,则可先建立每个游戏模型的多条扰动关系,每条扰动关系包括一个扰动信息和对应的模型能力值。其次,将每个游戏模型的多条扰动信息添加至每个游戏模型的模型信息中。然后,可将每个游戏模型的模型信息和每个游戏模型添加至模型池中。可选的,每个游戏模型的模型信息中还可包括每个游戏模型的模型标识等其他信息。
需要说明的是,本发明实施例主要是以游戏服务器执行上述步骤S301-S304为例进行说明的;但在其他实施例中,上述步骤S301-S304也可由前述所提及的模型服务器和模型能力测评子系统共同执行。具体的,可由模型服务器执行上述步骤S301-S302以得到多个游戏模型,并将多个游戏模型依次输入至模型能力测评子系统,使得模型能力测评子系统通过执行上述步骤S303-S304,得到模型池。
S305,获取目标游戏场景的场景信息、目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息。
S306,根据目标游戏场景的场景信息、第一对象的第一状态信息及第二对象的第二状态信息,对用于控制第二对象的游戏模型进行动态能力预估,得到预估能力值。
由前述可知,步骤S306可具有多种实施方式。如可根据当前游戏模型的当前模型能力值和预估的第一对象和第二对象完成游戏竞赛的先后顺序,进行动态能力预估以得到预估能力值。或者,可根据当前游戏模型的当前模型能力值和第一对象的当前能力值之间的大小关系,进行动态能力预估以得到预估能力值。或者,可结合至少一个历史游戏模型的模型能力值,进行动态能力预估以得到预估能力值。当结合至少一个历史游戏模型的模型能力值,进行动态能力预估以得到预估能力值时,步骤S306可具体包括以下步骤s31-s33:
s31,确定在目标游戏场景中针对第二对象已使用的至少一个历史游戏模型,并根据至少一个历史游戏模型的模型能力值,计算得到参考能力值。
在具体实现中,游戏服务器每次针对第二对象使用一个游戏模型后,便可已使用的游戏模型作为一个历史游戏模型,并将该历史游戏模型的模型能力值添加至历史模型列表中。那么,游戏服务器在确定在目标游戏场景中针对第二对象已使用的至少一个历史游戏模型后,便可从该历史模型列表中获取各历史游戏模型的模型能力值;每个历史游戏模型的模型能力值可采用Xi表示,i∈[1,m],m为历史游戏模型的数量。然后,可根据至少一个历史游戏模型的模型能力值,计算得到参考能力值。
由前述可知,参考能力值可以是各个历史游戏模型的模型能力值的平均值,也可以是至少一个历史游戏模型中使用时间最晚的历史游戏模型的模型能力值。那么相应的,游戏服务器在根据至少一个历史游戏模型的模型能力值,计算得到参考能力值时,可求取至少一个历史游戏模型的模型能力值的平均值,并将求取的平均值作为参考能力值(采用
Figure BDA0002594337690000211
表示);即
Figure BDA0002594337690000212
或者,从至少一个历史游戏模型中确定使用时间最晚的历史游戏模型,并将使用时间最晚的历史游戏模型的模型能力值作为参考能力值,即
Figure BDA0002594337690000213
s32,根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,预估关于参考能力值的能力调整比例。
在一种具体实现中,步骤s32的具体实施方式可以是:根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,预估第一对象和第二对象完成游戏竞赛的先后顺序。若预估确定第一对象将先于第二对象完成游戏竞赛,则可选取一个大于1的数值作为能力调整比例;若预估确定第一对象将晚于第二对象完成游戏竞赛,则可选取一个小于1的数值作为能力调整比例。
再一种具体实现中,步骤s32的具体实施方式可以是:确定目标游戏场景中针对第二对象所使用的当前游戏模型的当前模型能力值,并根据第一对象的第一状态信息计算第一对象的当前能力值。若当前游戏模型的当前模型能力值大于第一对象的当前能力值,则可选取一个大于1的数值作为能力调整比例;若当前游戏模型的当前模型能力值小于或等于第一对象的当前能力值,则可选取一个小于1的数值作为能力调整比例。
再一种具体实现中,若目标游戏场景为竞速游戏的场景,目标游戏场景的场景信息可包括竞速赛道的赛道长度;第一对象的第一状态信息包括第一对象在竞速赛道中的第一位置以及第一对象的移动速度;第二对象的第二状态信息包括第二对象在竞速赛道中的第二位置。则步骤s32的具体实施方式可以如下:
首先,可根据第一对象的移动速度、第一位置和第二位置,计算第二对象从竞速赛道的起点移动至第二位置所使用的历史速度;此处的第一对象的移动速度是指第一对象从竞速赛道的起点移动至第一位置所使用的平均速度。参见图4b所示,由于当第一对象移动至第一位置时,第二对象正移动至第二位置;可见第一对象从竞速赛道的起点移动至第一位置所使用的时长和第二对象从竞速赛道的起点移动至第二位置所使用的时长是相等的。因此,可先根据第一对象的第一位置和竞速赛道的起点之间的距离(采用SH表示)以及第一对象的移动速度(采用
Figure BDA0002594337690000214
表示),计算第二对象从竞速赛道的起点移动至第二位置所使用的历史时长,即历史时长为
Figure BDA0002594337690000221
然后,可根据第二对象的第二位置和竞速赛道的起点之间的距离(采用SAI表示)以及该历史时长,计算得到第二对象从竞速赛道的起点移动至第二位置所使用的历史速度
Figure BDA0002594337690000222
Figure BDA0002594337690000223
其次,可确定在第一对象到达竞速赛道的终点时,第二对象需处于的目标位置,并预测第二对象从第二位置移动至目标位置所需的预测速度。具体的,可先获取根据业务需求所预先设置的,在第一对象到达竞速赛道的终点时,第二对象和第一对象之间所需间隔的目标距离(用ΔL表示),如图4c所示;然后可根据目标距离确定在第一对象到达竞速赛道的终点时,第二对象需处于的目标位置,即目标位置为与竞速赛道的终点相距目标距离处的位置。在确定出目标位置后,便可预测第二对象从第二位置移动至目标位置所需的预测速度。在具体实施过程中,可根据赛道长度(用L表示)和第一对象的移动速度(即
Figure BDA0002594337690000224
),预估第一对象从第一位置移动至竞速赛道的终点所需的剩余时间(用t表示);其中,
Figure BDA0002594337690000225
接着可根据第二位置和目标位置之间的距离(即L-ΔL-SAI)和剩余时间(t),计算第二对象从第二位置移动至目标位置所需的预测速度
Figure BDA0002594337690000226
Figure BDA0002594337690000227
然后,可根据预测速度和历史速度之间的速度比值,预估得到参考能力值的能力调整比例;其中,速度比值可为
Figure BDA0002594337690000228
在一种实施方式中,可假设模型能力值和速度成正比关系,则可直接将速度比值作为参考能力值的能力调整比例;即能力调整比例为
Figure BDA0002594337690000229
再一种实施方式中,可采用预设的缩放因子对预测速度和历史速度之间的速度比值进行缩放处理,得到参考能力值的能力调整比例。再一种实施方式中,还可获取一个能力调整信息表,该能力调整信息表中包括多个速度比值和对应的调整比例;然后,可从能力调整信息表中,查询预测速度和历史速度之间的速度比值所对应的调整比例作为参考能力值的能力调整比例。需要说明的是,本发明实施例只是示例性地列举了几种根据速度比值预估得到能力调整比例的实施方式,并非穷举。
s33,采用能力调整比例对参考能力值进行调整处理,得到预估能力值。
在具体实现中,可计算能力调整比例和参考能力值之间的乘积,得到预估能力值(采用Xnew表示);即
Figure BDA0002594337690000231
需要说明的是,为了能够提升预估能力值的计算效率,本发明实施例还可基于上述步骤s31-s33的描述,构建得到一个动态能力预估函数,使得游戏服务器在执行步骤S306时,可直接调用该动态能力预估函数根据目标游戏场景的场景信息、第一对象的第一状态信息及第二对象的第二状态信息,得到预估能力值。其中,该动态能力预估函数可以如式1.1所示:
Figure BDA0002594337690000232
S307,获取与预估能力值对应的目标游戏模型,并调用目标游戏模型对第二对象进行游戏动作预测,得到目标游戏动作。
在一种实施方式中,游戏服务器在通过步骤S306得到预估能力值后,便可直接获取与预估能力值对应的目标游戏模型,并调用目标游戏模型对第二对象进行游戏动作预测,得到目标游戏动作。再一种实施方式中,为避免因预估能力值的调整幅度较大,而使得后续根据预估能力值对应的目标游戏模型控制第二对象时,导致第二对象的能力值变化太大,给人类玩家用户带来较差的用户体验;游戏服务器在通过步骤S306得到预估能力值后,还可计算预估能力值相对于至少一个历史游戏模型的模型能力值的调整幅度。具体的,可计算预估能力值和各历史游戏模型的模型能力值的平均值(或使用时间最晚的历史游戏模型的模型能力值)之间的能力值差值。然后,可计算能力值差值和各历史游戏模型的模型能力值的平均值(或使用时间最晚的历史游戏模型的模型能力值)之间的比值,得到调整幅度。在计算得到调整幅度后,可检测调整幅度是否位于幅度范围(例如±20%内);若调整幅度位于幅度内,则可执行获取与预估能力值对应的目标游戏模型的步骤,并调用目标游戏模型对第二对象进行游戏动作预测,得到目标游戏动作。若调整幅度未位于幅度范围内,则可重新执行步骤S306以重新对用于控制第二对象的游戏模型进行动态能力预估。
其中,获取与预估能力值对应的目标游戏模型的具体实施方式可以如下:由前述可知,游戏服务器通过步骤S301-S304预先得到的模型池可包括多个游戏模型,且每个游戏模型可具有一个或多个模型能力值。那么,游戏服务器可从模型池中查找与预估能力值相匹配的目标模型能力值。具体的,游戏服务器可先从模型池中查找与预估能力值相等的模型能力值作为目标模型能力值。由于模型池中的各游戏模型是预先训练得到的,可能存在各游戏模型的模型能力值与预估能力值均不相同,即模型池中不存在与预估能力值相等的模型能力值;那么,在此情况下便会导致无法从模型池中查找与预估能力值相等的模型能力值(即查找失败)。基于此,为保证后续仍可对第二对象的能力进行调整,游戏服务器可继续从模型池中查找与预估能力值之间的差值小于阈值的模型能力值作为目标模型能力值;此处的阈值可根据经验值或业务需求设置。可见,本发明实施例所查找出的目标模型能力值可包括:与预估能力值相等的模型能力值,或者与预估能力值之间的差值小于阈值的模型能力值。在查找到目标模型能力值后,可从模型池中获取目标模型能力值对应的游戏模型,作为目标游戏模型。
S308,在游戏客户端中控制第二对象执行目标游戏动作。
本发明实施例在第一对象(即玩家用户使用的对象)和第二对象(即陪玩AI)进行游戏竞赛的过程中,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,较为准确地预估得到用于控制第二对象的游戏模型的预估能力值。然后,可调用与该预估能力值相匹配的目标游戏模型对第二对象进行游戏动作预测,并控制第二对象执行预测得到的目标游戏动作。通过动态选择的目标游戏模型来灵活控制第二对象的游戏动作,可有效地对第二对象的能力水平进行动态调整,使得第二对象的能力水平和第一对象的能力水平相匹配;这样可给玩家用户带来较好的游戏体验,从而提升游戏的用户黏度。
在实际应用中,可将上述的对象控制方法运用在任一游戏的AI陪玩模式中,例如竞速游戏、竞技游戏等等。下面以竞速游戏中的赛车游戏,即以目标游戏场景为赛车游戏的场景为例,对上述的对象控制方法的具体应用过程进行阐述,具体可一并参见图5a所示:
游戏服务器在检测到人类玩家用户欲进行一局赛车游戏时,可为人类玩家用户匹配一个或多个第二对象(即陪玩AI);为便于阐述,后续均以一个第二对象为例进行说明。在匹配得到第二对象之后,可将人类玩家用户所使用的第一对象和匹配的第二对象载入至目标游戏场景中,使得人类玩家用户所使用的第一和第二对象可以在目标游戏场景中进行赛车比赛,如图5b所示。其中,图5b中的“user-1”为接入的第一对象,图5b中的“AI-5xx”为接入的第二对象(即陪玩AI);需说明的是,在实际游戏场景中,可为第二对象(即陪玩AI)分配现网真实玩家的游戏ID(即游戏账号),以避免人类玩家用户识别出陪玩AI,从而使得陪玩AI具有温暖陪伴人类玩家用户的作用。
在游戏初始阶段,游戏服务器可获取与人类玩家用户的历史游戏水平相匹配的初始游戏模型;通过该初始游戏模型预测第二对象的游戏动作,并在游戏客户端中控制第二对象执行初始游戏模型所预测得到的游戏动作。然后,可检测是否存在针对第二对象进行模型调整的触发事件,如首次模型调整的调整时刻到达事件,或根据模型调整频率确定的非首次模型调整的调整时刻到达事件。若存在,则可将已使用的游戏模型作为与第二对象相关的历史游戏模型,并将该已使用的游戏模型的模型能力值添加至历史模型信息中。另外,游戏服务器还可获取目标游戏场景中的当前场景信息(如竞速赛道的赛道长度)、第一对象的第一状态信息(如第一对象在竞速赛道中的第一位置以及第一对象的移动速度),以及第二对象的第二状态信息(如第二对象在竞速赛道中的第二位置);并根据当前场景信息、第一状态信息和第二状态信息进行动态能力预估。
其中,动态能力预估的目的是:根据第二对象和第一对象当前所处的赛道距离,估算出第二对象的历史平均水平(即参考能力值)和第一对象的平均水平,然后根据剩余距离自适应调整第二对象的能力,使得第二对象在到达竞速赛道的终点前,可和第一对象保持在一定距离范围(如前述的目标距离)内。基于此,游戏服务器可采用前述所提及的动态能力预估函数来计算下一时刻的模型能力值(即预估能力值);该动态能力预估函数包括以下因子:第二对象的历史平均水平(即参考能力值)、竞速赛道的赛道长度、第一对象和第二对象之间的目标距离、第一位置和竞速赛道的起点之间的距离、第二位置与竞速赛道的起点之间的距离等。其次,从模型池中选择与预估能力值相匹配的目标游戏模型以替换当前的游戏模型。然后,可调用目标游戏模型预测第二对象的游戏动作,并在游戏客户端中控制第二对象执行目标游戏模型所预测得到的目标游戏动作。例如,目标游戏模型预测得到的目标游戏动作为“汽车喷射”的技巧动作,则控制第二对象执行该目标游戏动作的示意图可参见图5c所示;参见图5c所示,通过控制第二对象执行目标游戏模型预测得到的目标游戏动作,可有效提升第二对象的能力。可见,游戏服务器可通过调整游戏模型,可实现自适应地调整第二对象的能力。
在调用目标游戏模型控制第二对象的游戏动作,可实时检测游戏是否结束。具体的,可检测第一对象或第二对象是否已到达竞速赛道的终点;若检测到第一对象或第二对象已到达竞速赛道的终点,则可确定游戏结束。若检测到第一对象和第二对象均未到达竞速赛道的终点,则可再次检测是否存在针对第二对象进行模型调整的触发事件。若存在,则可再次将已使用的游戏模型作为与第二对象相关的历史游戏模型,并将该已使用的游戏模型的模型能力值添加至历史模型信息中。并再次获取目标游戏场景中的当前场景信息、第一对象的第一状态信息,以及第二对象的第二状态信息。然后,再次采用前述所提及的动态能力预估函数来计算下一时刻的模型能力值(即新的预估能力值);并从模型池中选择与新的预估能力值相匹配的新的目标游戏模型以替换当前的游戏模型。然后,可调用新的目标游戏模型预测第二对象的游戏动作,并在游戏客户端中控制第二对象执行新的目标游戏模型所预测得到的目标游戏动作;以此类推,直至检测到游戏结束。
由此可见,本发明实施例可实时通过人类玩家用户的第一对象的第一位置、第二对象(即陪玩AI)的第二位置,以及游戏时间判断第二对象的当前阶段的游戏模型,从而达到和玩家能力实时匹配的目的。通过提供和玩家水平匹配的拟人化和灵活的陪玩AI,可在一定程度上优化玩家的体验,从而提升游戏的用户黏度。而且,本发明实施例可在和玩家用户使用相同物理性能的控制单位前提下,能够灵活地对陪玩AI的能力进行控制和选择,达到和对应水平人类相近的操作习惯和整体能力,给玩家更好的用户体验。
基于上述对象控制方法实施例的描述,本发明实施例还公开了一种对象控制装置,所述对象控制装置可以是运行于上述所提及的游戏服务器中的一个计算机程序(包括程序代码)。该对象控制装置可以执行图2-图3所示的方法。请参见图6,所述对象控制装置可以运行如下单元:
获取单元601,用于获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
处理单元602,用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
所述处理单元602,用于获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
控制单元603,用于在游戏客户端中控制所述第二对象执行所述目标游戏动作。
在一种实施方式中,处理单元602在用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值时,可具体用于:
确定在所述目标游戏场景中针对所述第二对象已使用的至少一个历史游戏模型,并根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例;
采用所述能力调整比例对所述参考能力值进行调整处理,得到预估能力值。
再一种实施方式中,处理单元602在用于根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值时,可具体用于:
求取所述至少一个历史游戏模型的模型能力值的平均值,并将求取的平均值作为参考能力值;或者,
从所述至少一个历史游戏模型中确定使用时间最晚的历史游戏模型,并将所述使用时间最晚的历史游戏模型的模型能力值作为参考能力值。
再一种实施方式中,所述目标游戏场景为竞速游戏的场景;所述目标游戏场景的场景信息包括竞速赛道的赛道长度,所述第一对象的第一状态信息包括所述第一对象在所述竞速赛道中的第一位置以及所述第一对象的移动速度;所述第二对象的第二状态信息包括所述第二对象在所述竞速赛道中的第二位置;
相应的,处理单元602在用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例时,可具体用于:
根据所述第一对象的移动速度、所述第一位置和所述第二位置,计算所述第二对象从所述竞速赛道的起点移动至所述第二位置所使用的历史速度;
确定在所述第一对象到达所述竞速赛道的终点时,所述第二对象需处于的目标位置,并预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度;
根据所述预测速度和所述历史速度之间的速度比值,预估得到所述参考能力值的能力调整比例。
再一种实施方式中,处理单元602在用于预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度时,可具体用于:
根据所述赛道长度和所述第一对象的所述移动速度,预估所述第一对象从所述第一位置移动至所述竞速赛道的终点所需的剩余时间;
根据所述第二位置和所述目标位置之间的距离和所述剩余时间,计算所述第二对象从所述第二位置移动至所述目标位置所需的预测速度。
再一种实施方式中,处理单元602在用于获取与所述预估能力值对应的目标游戏模型之前,还可用于:
计算所述预估能力值相对于所述至少一个历史游戏模型的模型能力值的调整幅度;
若所述调整幅度位于幅度范围内,则执行获取与所述预估能力值对应的目标游戏模型的步骤。
再一种实施方式中,所述目标游戏模型位于模型池中,所述模型池中包括多个游戏模型,每个游戏模型具有一个或多个模型能力值;相应的,处理单元602在用于获取与所述预估能力值对应的目标游戏模型时,可具体用于:
从所述模型池中查找与所述预估能力值相匹配的目标模型能力值,所述目标模型能力值包括:与所述预估能力值相等的模型能力值,或者与所述预估能力值之间的差值小于阈值的模型能力值;
从所述模型池中获取所述目标模型能力值对应的游戏模型,作为目标游戏模型。
再一种实施方式中,处理单元602还可用于:
获取待训练的初始模型,以及关于所述初始模型的训练数据;所述训练数据包括至少一个样本场景的场景信息;
采用所述训练数据对所述初始模型进行多轮迭代训练,并获取每轮迭代训练所得到的游戏模型;
对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值;
将所述每个游戏模型和对应的模型能力值,关联添加至所述模型池。
再一种实施方式中,处理单元602在用于对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值时,可具体用于:
在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局测试游戏,得到测试结果;所述测试结果包括所述任一游戏模型在至少一个测评指标下的指标值;
根据所述任一游戏模型在各测评指标下的指标值,获取所述任一游戏模型在所述各测评指标下的评分值;
汇总所述任一游戏模型在所述各测评指标下的评分值,得到所述任一游戏模型的模型能力值。
再一种实施方式中,处理单元602在用于在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局游戏测试,得到测试结果时,可具体用于:
采用目标扰动信息对获取到的任一游戏模型进行扰动处理;
在测试游戏场景中,调用扰动处理后的任一游戏模型控制测试对象完成至少一局游戏测试,得到关于所述目标扰动信息的测试结果;
其中,所述任一游戏模型的模型能力值包括:所述任一游戏模型在使用所述目标扰动信息下的模型能力值。
再一种实施方式中,所述测评指标包括:游戏完成时长、各技巧动作的使用频率和各失误情况的出现次数;
所述目标扰动信息包括以下至少一项扰动参数的参数值:失误概率、动作延迟时长和动作帧数;
其中,所述动作延迟时长是指所述任一游戏模型延迟输出预测的游戏动作的时长,所述动作帧数是指所述任一游戏模型在单位时间内预测的游戏动作的数量。
再一种实施方式中,获取单元601还可用于:
检测针对所述第二对象进行模型调整的触发事件,所述触发事件包括:预设的首次模型调整的调整时刻到达事件,或者根据模型调整频率确定的非首次模型调整的调整时刻到达事件;
若检测到所述触发事件,则执行获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息以及所述第二对象的第二状态信息的步骤。
根据本发明的一个实施例,图2-图3所示的方法所涉及的各个步骤均可以是由图6所示的对象控制装置中的各个单元来执行的。例如,图2中所示的步骤S201可由图6中所示的获取单元601来执行,步骤S202-S203可由图6中所示的处理单元602来执行,步骤S204可由图6中所示的控制单元603来执行。又如,图3中所示的步骤S301-S304以及步骤S306-S307均可由图6中所示的处理单元602来执行,步骤S305可由图6中所示的获取单元601来执行,步骤S308可由图6中所示的控制单元603来执行。
根据本发明的另一个实施例,图6所示的对象控制装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于对象控制装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本发明的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2或图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6中所示的对象控制装置设备,以及来实现本发明实施例的对象控制方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本发明实施例在第一对象(即玩家用户使用的对象)和第二对象(即陪玩AI)进行游戏竞赛的过程中,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,较为准确地预估得到用于控制第二对象的游戏模型的预估能力值。然后,可调用与该预估能力值相匹配的目标游戏模型对第二对象进行游戏动作预测,并控制第二对象执行预测得到的目标游戏动作。通过动态选择的目标游戏模型来灵活控制第二对象的游戏动作,可有效地对第二对象的能力水平进行动态调整,使得第二对象的能力水平和第一对象的能力水平相匹配;这样可给玩家用户带来较好的游戏体验,从而提升游戏的用户黏度。
基于上述方法实施例以及装置实施例的描述,本发明实施例还提供一种游戏服务器。请参见图7,该游戏服务器至少包括处理器701、输入接口702、输出接口703以及计算机存储介质704。其中,游戏服务器内的处理器701、输入接口702、输出接口703以及计算机存储介质704可通过总线或其他方式连接。
所述计算机存储介质704是游戏服务器中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质704既可以包括游戏服务器中的内置存储介质,当然也可以包括游戏服务器所支持的扩展存储介质。计算机存储介质704提供存储空间,该存储空间存储了游戏服务器的操作系统。并且,在该存储空间中还存放了适于被处理器701加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。所述处理器701(或称CPU(Central Processing Unit,中央处理器))是游戏服务器的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
在一个实施例中,可由处理器701加载并执行计算机存储介质704中存放的一条或多条指令,以实现上述有关图2-图3所示的对象控制方法实施例中的相应方法步骤;具体实现中,计算机存储介质704中的一条或多条指令由处理器701加载并执行如下步骤:
获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;
获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
在游戏客户端中控制所述第二对象执行所述目标游戏动作。
在一种实施方式中,在根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值时,所述一条或多条指令可由处理器701加载并具体执行:
确定在所述目标游戏场景中针对所述第二对象已使用的至少一个历史游戏模型,并根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例;
采用所述能力调整比例对所述参考能力值进行调整处理,得到预估能力值。
再一种实施方式中,在根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值时,所述一条或多条指令可由处理器701加载并具体执行:
求取所述至少一个历史游戏模型的模型能力值的平均值,并将求取的平均值作为参考能力值;或者,
从所述至少一个历史游戏模型中确定使用时间最晚的历史游戏模型,并将所述使用时间最晚的历史游戏模型的模型能力值作为参考能力值。
再一种实施方式中,所述目标游戏场景为竞速游戏的场景;所述目标游戏场景的场景信息包括竞速赛道的赛道长度,所述第一对象的第一状态信息包括所述第一对象在所述竞速赛道中的第一位置以及所述第一对象的移动速度;所述第二对象的第二状态信息包括所述第二对象在所述竞速赛道中的第二位置;
相应的,在根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例时,所述一条或多条指令可由处理器701加载并具体执行:
根据所述第一对象的移动速度、所述第一位置和所述第二位置,计算所述第二对象从所述竞速赛道的起点移动至所述第二位置所使用的历史速度;
确定在所述第一对象到达所述竞速赛道的终点时,所述第二对象需处于的目标位置,并预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度;
根据所述预测速度和所述历史速度之间的速度比值,预估得到所述参考能力值的能力调整比例。
再一种实施方式中,在预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度时,所述一条或多条指令可由处理器701加载并具体执行:
根据所述赛道长度和所述第一对象的所述移动速度,预估所述第一对象从所述第一位置移动至所述竞速赛道的终点所需的剩余时间;
根据所述第二位置和所述目标位置之间的距离和所述剩余时间,计算所述第二对象从所述第二位置移动至所述目标位置所需的预测速度。
再一种实施方式中,在获取与所述预估能力值对应的目标游戏模型之前,所述一条或多条指令可由处理器701加载并具体执行:
计算所述预估能力值相对于所述至少一个历史游戏模型的模型能力值的调整幅度;
若所述调整幅度位于幅度范围内,则执行获取与所述预估能力值对应的目标游戏模型的步骤。
再一种实施方式中,所述目标游戏模型位于模型池中,所述模型池中包括多个游戏模型,每个游戏模型具有一个或多个模型能力值;相应的,在获取与所述预估能力值对应的目标游戏模型时,所述一条或多条指令可由处理器701加载并具体执行:
从所述模型池中查找与所述预估能力值相匹配的目标模型能力值,所述目标模型能力值包括:与所述预估能力值相等的模型能力值,或者与所述预估能力值之间的差值小于阈值的模型能力值;
从所述模型池中获取所述目标模型能力值对应的游戏模型,作为目标游戏模型。
再一种实施方式中,所述一条或多条指令还可以可由处理器701加载并具体执行:
获取待训练的初始模型,以及关于所述初始模型的训练数据;所述训练数据包括至少一个样本场景的场景信息;
采用所述训练数据对所述初始模型进行多轮迭代训练,并获取每轮迭代训练所得到的游戏模型;
对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值;
将所述每个游戏模型和对应的模型能力值,关联添加至所述模型池。
再一种实施方式中,在对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值时,所述一条或多条指令可由处理器701加载并具体执行:
在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局测试游戏,得到测试结果;所述测试结果包括所述任一游戏模型在至少一个测评指标下的指标值;
根据所述任一游戏模型在各测评指标下的指标值,获取所述任一游戏模型在所述各测评指标下的评分值;
汇总所述任一游戏模型在所述各测评指标下的评分值,得到所述任一游戏模型的模型能力值。
再一种实施方式中,在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局游戏测试,得到测试结果时,所述一条或多条指令可由处理器701加载并具体执行:
采用目标扰动信息对获取到的任一游戏模型进行扰动处理;
在测试游戏场景中,调用扰动处理后的任一游戏模型控制测试对象完成至少一局游戏测试,得到关于所述目标扰动信息的测试结果;
其中,所述任一游戏模型的模型能力值包括:所述任一游戏模型在使用所述目标扰动信息下的模型能力值。
再一种实施方式中,所述测评指标包括:游戏完成时长、各技巧动作的使用频率和各失误情况的出现次数;
所述目标扰动信息包括以下至少一项扰动参数的参数值:失误概率、动作延迟时长和动作帧数;
其中,所述动作延迟时长是指所述任一游戏模型延迟输出预测的游戏动作的时长,所述动作帧数是指所述任一游戏模型在单位时间内预测的游戏动作的数量。
再一种实施方式中,所述一条或多条指令还可以由处理器701加载并具体执行:
检测针对所述第二对象进行模型调整的触发事件,所述触发事件包括:预设的首次模型调整的调整时刻到达事件,或者根据模型调整频率确定的非首次模型调整的调整时刻到达事件;
若检测到所述触发事件,则执行获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息以及所述第二对象的第二状态信息的步骤。
本发明实施例在第一对象(即玩家用户使用的对象)和第二对象(即陪玩AI)进行游戏竞赛的过程中,可根据目标游戏场景的场景信息、第一对象的第一状态信息以及第二对象的第二状态信息,较为准确地预估得到用于控制第二对象的游戏模型的预估能力值。然后,可调用与该预估能力值相匹配的目标游戏模型对第二对象进行游戏动作预测,并控制第二对象执行预测得到的目标游戏动作。通过动态选择的目标游戏模型来灵活控制第二对象的游戏动作,可有效地对第二对象的能力水平进行动态调整,使得第二对象的能力水平和第一对象的能力水平相匹配;这样可给玩家用户带来较好的游戏体验,从而提升游戏的用户黏度。
需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2-图3所示的对象控制方法实施例方面的各种可选方式中提供的方法。
并且,应理解的是,以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (15)

1.一种对象控制方法,其特征在于,包括:
获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;且在所述第一对象和所述第二对象进行游戏竞赛的过程中,用于控制所述第二对象的游戏模型是实时调整或者是根据预设的模型调整频率进行周期性调整的;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;所述预估能力值是在根据所述目标游戏场景的场景信息、所述第一状态信息以及所述第二状态信息预估出所述第一对象先于所述第二对象完成所述游戏竞赛时,按照增大所述第二对象所使用的当前游戏模型的当前模型能力值的方向预估得到的,否则是按照减小所述当前模型能力值的方向预估得到的;或者,所述预估能力值是在根据所述第一状态信息计算出的所述第一对象的当前能力值小于所述第二对象所使用的当前游戏模型的当前模型能力值时,按照增大所述当前模型能力值的方向预估得到的,否则是按照减小所述当前模型能力值的方向预估得到的;或者,所述预估能力值是根据所述目标游戏场景的场景信息、所述第一状态信息及所述第二状态信息,对针对所述第二对象已使用的至少一个历史游戏模型的模型能力值进行调整得到的;
获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
在游戏客户端中控制所述第二对象执行所述目标游戏动作。
2.如权利要求1所述的方法,其特征在于,所述根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值,包括:
确定在所述目标游戏场景中针对所述第二对象已使用的至少一个历史游戏模型,并根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值;
根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例;
采用所述能力调整比例对所述参考能力值进行调整处理,得到预估能力值。
3.如权利要求2所述的方法,其特征在于,所述根据所述至少一个历史游戏模型的模型能力值,计算得到参考能力值,包括:
求取所述至少一个历史游戏模型的模型能力值的平均值,并将求取的平均值作为参考能力值;或者,
从所述至少一个历史游戏模型中确定使用时间最晚的历史游戏模型,并将所述使用时间最晚的历史游戏模型的模型能力值作为参考能力值。
4.如权利要求2所述的方法,其特征在于,所述目标游戏场景为竞速游戏的场景;所述目标游戏场景的场景信息包括竞速赛道的赛道长度,所述第一对象的第一状态信息包括所述第一对象在所述竞速赛道中的第一位置以及所述第一对象的移动速度;所述第二对象的第二状态信息包括所述第二对象在所述竞速赛道中的第二位置;
所述根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息以及所述第二对象的第二状态信息,预估关于所述参考能力值的能力调整比例,包括:
根据所述第一对象的移动速度、所述第一位置和所述第二位置,计算所述第二对象从所述竞速赛道的起点移动至所述第二位置所使用的历史速度;
确定在所述第一对象到达所述竞速赛道的终点时,所述第二对象需处于的目标位置,并预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度;
根据所述预测速度和所述历史速度之间的速度比值,预估得到所述参考能力值的能力调整比例。
5.如权利要求4所述的方法,其特征在于,所述预测所述第二对象从所述第二位置移动至所述目标位置所需的预测速度,包括:
根据所述赛道长度和所述第一对象的所述移动速度,预估所述第一对象从所述第一位置移动至所述竞速赛道的终点所需的剩余时间;
根据所述第二位置和所述目标位置之间的距离和所述剩余时间,计算所述第二对象从所述第二位置移动至所述目标位置所需的预测速度。
6.如权利要求2所述的方法,其特征在于,所述获取与所述预估能力值对应的目标游戏模型之前,还包括:
计算所述预估能力值相对于所述至少一个历史游戏模型的模型能力值的调整幅度;
若所述调整幅度位于幅度范围内,则执行获取与所述预估能力值对应的目标游戏模型的步骤。
7.如权利要求1所述的方法,其特征在于,所述目标游戏模型位于模型池中,所述模型池中包括多个游戏模型,每个游戏模型具有一个或多个模型能力值;所述获取与所述预估能力值对应的目标游戏模型,包括:
从所述模型池中查找与所述预估能力值相匹配的目标模型能力值,所述目标模型能力值包括:与所述预估能力值相等的模型能力值,或者与所述预估能力值之间的差值小于阈值的模型能力值;
从所述模型池中获取所述目标模型能力值对应的游戏模型,作为目标游戏模型。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
获取待训练的初始模型,以及关于所述初始模型的训练数据;所述训练数据包括至少一个样本场景的场景信息;
采用所述训练数据对所述初始模型进行多轮迭代训练,并获取每轮迭代训练所得到的游戏模型;
对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值;
将所述每个游戏模型和对应的模型能力值,关联添加至所述模型池。
9.如权利要求8所述的方法,其特征在于,所述对获取到的每个游戏模型进行能力测评,得到所述每个游戏模型的模型能力值,包括:
在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局测试游戏,得到测试结果;所述测试结果包括所述任一游戏模型在至少一个测评指标下的指标值;
根据所述任一游戏模型在各测评指标下的指标值,获取所述任一游戏模型在所述各测评指标下的评分值;
汇总所述任一游戏模型在所述各测评指标下的评分值,得到所述任一游戏模型的模型能力值。
10.如权利要求9所述的方法,其特征在于,所述在测试游戏场景中,调用获取到的任一游戏模型控制测试对象完成至少一局游戏测试,得到测试结果,包括:
采用目标扰动信息对获取到的任一游戏模型进行扰动处理;
在测试游戏场景中,调用扰动处理后的任一游戏模型控制测试对象完成至少一局游戏测试,得到关于所述目标扰动信息的测试结果;
其中,所述任一游戏模型的模型能力值包括:所述任一游戏模型在使用所述目标扰动信息下的模型能力值。
11.如权利要求9所述的方法,其特征在于,所述测评指标包括:游戏完成时长、各技巧动作的使用频率和各失误情况的出现次数;
所述目标扰动信息包括以下至少一项扰动参数的参数值:失误概率、动作延迟时长和动作帧数;
其中,所述动作延迟时长是指所述任一游戏模型延迟输出预测的游戏动作的时长,所述动作帧数是指所述任一游戏模型在单位时间内预测的游戏动作的数量。
12.如权利要求1所述的方法,其特征在于,所述方法还包括:
检测针对所述第二对象进行模型调整的触发事件,所述触发事件包括:预设的首次模型调整的调整时刻到达事件,或者根据模型调整频率确定的非首次模型调整的调整时刻到达事件;
若检测到所述触发事件,则执行获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息以及所述第二对象的第二状态信息的步骤。
13.一种对象控制装置,其特征在于,包括:
获取单元,用于获取目标游戏场景的场景信息、所述目标游戏场景中的第一对象的第一状态信息及第二对象的第二状态信息;所述第一对象是指由用户控制的对象,所述第二对象是指由游戏模型控制的对象;且在所述第一对象和所述第二对象进行游戏竞赛的过程中,用于控制所述第二对象的游戏模型是实时调整或者是根据预设的模型调整频率进行周期性调整的;
处理单元,用于根据所述目标游戏场景的场景信息、所述第一对象的第一状态信息及所述第二对象的第二状态信息,对用于控制所述第二对象的游戏模型进行动态能力预估,得到预估能力值;所述预估能力值是在根据所述目标游戏场景的场景信息、所述第一状态信息以及所述第二状态信息预估出所述第一对象先于所述第二对象完成所述游戏竞赛时,按照增大所述第二对象所使用的当前游戏模型的当前模型能力值的方向预估得到的,否则是按照减小所述当前模型能力值的方向预估得到的;或者,所述预估能力值是在根据所述第一状态信息计算出的所述第一对象的当前能力值小于所述第二对象所使用的当前游戏模型的当前模型能力值时,按照增大所述当前模型能力值的方向预估得到的,否则是按照减小所述当前模型能力值的方向预估得到的;或者,所述预估能力值是根据所述目标游戏场景的场景信息、所述第一状态信息及所述第二状态信息,对针对所述第二对象已使用的至少一个历史游戏模型的模型能力值进行调整得到的;
所述处理单元,用于获取与所述预估能力值对应的目标游戏模型,并调用所述目标游戏模型对所述第二对象进行游戏动作预测,得到目标游戏动作;
控制单元,用于在游戏客户端中控制所述第二对象执行所述目标游戏动作。
14.一种游戏服务器,包括输入接口和输出接口,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-12任一项所述的对象控制方法。
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-12任一项所述的对象控制方法。
CN202010708777.9A 2020-07-21 2020-07-21 对象控制方法、装置、游戏服务器及介质 Active CN111803959B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010708777.9A CN111803959B (zh) 2020-07-21 2020-07-21 对象控制方法、装置、游戏服务器及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010708777.9A CN111803959B (zh) 2020-07-21 2020-07-21 对象控制方法、装置、游戏服务器及介质

Publications (2)

Publication Number Publication Date
CN111803959A CN111803959A (zh) 2020-10-23
CN111803959B true CN111803959B (zh) 2022-05-31

Family

ID=72862115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010708777.9A Active CN111803959B (zh) 2020-07-21 2020-07-21 对象控制方法、装置、游戏服务器及介质

Country Status (1)

Country Link
CN (1) CN111803959B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112883947B (zh) * 2021-04-29 2021-07-16 腾讯科技(深圳)有限公司 图像处理方法、装置、计算机设备和存储介质
CN113938513A (zh) * 2021-07-12 2022-01-14 海南元游信息技术有限公司 基于虚拟游戏对象的互动方法、装置及设备
CN113593671B (zh) * 2021-10-08 2022-01-04 西安交通大学城市学院 基于Leap Motion手势识别的虚拟康复游戏的自调整方法及装置
CN115554695A (zh) * 2021-10-30 2023-01-03 深圳小悠娱乐科技有限公司 一种对对战游戏中的网络数据进行网络波动预测方法
CN115501600B (zh) * 2022-09-28 2023-07-14 广州三七极耀网络科技有限公司 游戏内人机角色的控制方法、系统、装置及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105413170A (zh) * 2015-11-26 2016-03-23 北京像素软件科技股份有限公司 一种游戏难度的动态调整方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070066403A1 (en) * 2005-09-20 2007-03-22 Conkwright George C Method for dynamically adjusting an interactive application such as a videogame based on continuing assessments of user capability
JP2008188194A (ja) * 2007-02-05 2008-08-21 Konami Digital Entertainment:Kk ゲームシステム及びゲーム管理方法
KR101265051B1 (ko) * 2012-05-30 2013-05-16 주식회사 쏘그웨어 게임 사용자 수준에 따른 npc ai제공방법
CN106390456B (zh) * 2016-09-30 2018-09-18 腾讯科技(深圳)有限公司 游戏中角色行为的生成方法和装置
CN106503787B (zh) * 2016-10-26 2019-02-05 腾讯科技(深圳)有限公司 一种获取游戏数据的方法及电子设备
CN107890674A (zh) * 2017-11-13 2018-04-10 杭州电魂网络科技股份有限公司 Ai行为调用方法和装置
CN108465244B (zh) * 2018-03-30 2019-05-07 腾讯科技(深圳)有限公司 用于竞速类ai模型的ai参数配置方法、装置、设备及存储介质
CN109091868B (zh) * 2018-08-14 2019-11-22 腾讯科技(深圳)有限公司 对战行为确定的方法、装置、计算机设备及存储介质
CN109529351B (zh) * 2018-11-19 2023-03-24 网易(杭州)网络有限公司 游戏中虚拟对象的行为能力控制方法、装置及存储介质
CN109908591B (zh) * 2019-03-19 2022-08-09 网易(杭州)网络有限公司 一种虚拟对象的决策方法、模型构建方法和装置
CN110141867B (zh) * 2019-04-23 2022-12-02 广州多益网络股份有限公司 一种游戏智能体训练方法及装置
CN110399279B (zh) * 2019-06-18 2020-10-20 中国科学院计算技术研究所 一种用于非人智能体的智能度量方法
CN110772797B (zh) * 2019-10-29 2021-09-28 腾讯科技(深圳)有限公司 一种数据处理方法、装置、服务器及可存储介质
CN111389004B (zh) * 2020-03-25 2023-05-26 网易(杭州)网络有限公司 虚拟角色的控制方法、存储介质及处理器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105413170A (zh) * 2015-11-26 2016-03-23 北京像素软件科技股份有限公司 一种游戏难度的动态调整方法及装置

Also Published As

Publication number Publication date
CN111803959A (zh) 2020-10-23

Similar Documents

Publication Publication Date Title
CN111803959B (zh) 对象控制方法、装置、游戏服务器及介质
CN111111204B (zh) 交互模型训练方法、装置、计算机设备和存储介质
CN109513215B (zh) 一种对象匹配方法、模型训练方法以及服务器
US20180015370A1 (en) System and method for retaining a strategy video game player by predicting the player game satisfaction using player game behavior data
Delalleau et al. Beyond skill rating: Advanced matchmaking in ghost recon online
KR20210028728A (ko) 가상 환경에서 가상 객체를 스케줄링하기 위한 방법, 장치 및 디바이스
KR20220080191A (ko) 정보 처리 방법 및 장치, 컴퓨터 판독 가능형 저장 매체 및 전자 장치
CN111738294B (zh) Ai模型的训练方法、使用方法、计算机设备及存储介质
Shaker et al. Feature analysis for modeling game content quality
CN107335220B (zh) 一种消极用户的识别方法、装置及服务器
CN114048834B (zh) 基于事后回顾和渐进式扩展的持续强化学习非完全信息博弈方法及装置
Uriarte et al. Combat models for RTS games
US11351464B2 (en) Automated coaching for online gaming
CN115238891A (zh) 决策模型训练方法、目标对象的策略控制方法及装置
CN113509726A (zh) 交互模型训练方法、装置、计算机设备和存储介质
US20230311002A1 (en) Decision model training method and apparatus
Akimov et al. Deep reinforcement learning in vizdoom first-person shooter for health gathering scenario
Mandai et al. Alternative multitask training for evaluation functions in game of Go
CN117883788B (zh) 智能体训练方法、游戏对战方法、装置及电子设备
Shaker et al. A Quantitative Approach for Modelling and Personalizing Player Experience in First-Person Shooter Games.
US11998851B2 (en) Automated coaching for online gaming
Maberry et al. Using an artificial neural network to detect aim assistance in counter-strike: Global offensive
Nimpattanavong et al. Action prediction of ai bot in fightingice by using deep learning model
CN114307166A (zh) 一种游戏对战模型训练方法、游戏对战方法及相关装置
Kim et al. An analysis of the effects of physical abilities on RTS game outcome using machine learning approach

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40030687

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant