游戏对象动态变化方法、装置、设备及存储介质与流程
本申请实施例涉及互联网技术领域,涉及但不限于一种游戏对象动态变化方法、装置、设备及存储介质。
背景技术:
目前的大地图游戏,例如主要是大型多人在线角色扮演游戏类(mmorpg,massivemultiplayeronlinerole-playinggame),在游戏中会有日夜时间转换,部分游戏中还会有天气变化等的环境元素。
但是,目前的mmorpg类游戏中,环境元素对游戏场景下的怪物的行为基本没有影响,并且怪物的分布和怪物的刷新都是固定的,即不管玩家是否清除怪物,怪物数量和怪物布局不会发生变化。由此可见,目前模式的游戏地图中的怪物呈现一种偏静态的表现,怪物行为按照一套模式固化,和游戏世界的变化没有关联,玩家行为更是没有影响,整个游戏世界对用户所呈现的效果单一,无法更加有效的吸引更多玩家。
技术实现要素:
本申请实施例提供一种游戏对象动态变化方法、装置、设备及存储介质,涉及云技术领域和人工智能技术领域。由于根据游戏地图中的目标区域内的环境元素和玩家行为,确定对象的动态变化参数,并根据动态变化参数对对象进行更新,因此,能够使得游戏世界呈现多样的动态变化,且玩家行为对游戏世界也会产生影响,从而使得整个游戏世界呈现动态变化,更加真实可信,使得玩家用户具有沉浸式游戏体验。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种游戏对象动态变化方法,包括:
获取游戏地图在当前界面上所显示的目标区域;
确定所述目标区域内的环境元素、和与所述目标区域中所显示对象对应的玩家行为;
根据所述环境元素和所述玩家行为,确定所述对象的动态变化参数;
根据所述动态变化参数对所述目标区域内的所述对象进行更新,得到更新后的对象;
在所述当前界面上显示所述更新后的对象。
本申请实施例提供一种游戏对象动态变化装置,包括:
获取模块,用于获取游戏地图在当前界面上所显示的目标区域;
第一确定模块,用于确定所述目标区域内的环境元素、和与所述目标区域中所显示对象对应的玩家行为;
第二确定模块,用于根据所述环境元素和所述玩家行为,确定所述对象的动态变化参数;
刷新模块,用于根据所述动态变化参数对所述目标区域内的所述对象进行更新,得到更新后的对象;
显示模块,用于在所述当前界面上显示所述更新后的对象。
本申请实施例提供一种游戏对象动态变化设备,包括:
存储器,用于存储可执行指令;处理器,用于执行所述存储器中存储的可执行指令时,实现上述的游戏对象动态变化方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行所述可执行指令时,实现上述的游戏对象动态变化方法。
本申请实施例具有以下有益效果:通过确定游戏地图在当前界面上所显示的目标区域内的环境元素、和与目标区域中所显示对象对应的玩家行为,并根据环境元素和玩家行为确定对象的动态变化参数,如此,能够根据所确定出的动态变化参数对目标区域内的对象进行更新,使得游戏世界呈现多样的动态变化,且玩家行为对游戏世界也会产生影响,从而使得整个游戏世界呈现动态变化,更加真实可信,使得玩家用户具有沉浸式游戏体验,进而更加有效的吸引更多玩家。
附图说明
图1是本申请实施例提供的游戏对象动态变化系统的一可选的架构示意图;
图2是本申请实施例提供的iaas层、paas层和saas层的部署关系示意图;
图3是本申请实施例提供的服务器的结构示意图;
图4是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图;
图5是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图;
图6是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图;
图7是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图;
图8是本申请实施例提供的根据一天时间变化怪物ai发生变化的游戏界面图;
图9是本申请实施例提供的怪物躲雨的游戏界面图;
图10是本申请实施例提供的怪物在雪天取暖的游戏界面图;
图11是本申请实施例提供的怪物逃跑的游戏界面图;
图12是本申请实施例提供的雷雨天出现雷击攻击到怪物的游戏界面图;
图13是本申请实施例提供的雨天移动速度下降的游戏界面图;
图14是本申请实施例提供的怪物自动上到哨塔上的游戏界面图;
图15是本申请实施例提供的远程怪物战斗中站在拒马后面的游戏界面图;
图16是本申请实施例提供的不同等级怪物的示意图;
图17是本申请实施例提供的怪物出现集群的示意图;
图18是本申请实施例提供的场景出现防御建筑的示意图;
图19是本申请实施例提供的怪物群分布逐渐扩大的示意图;
图20是本申请实施例提供的怪物刷新机制的架构图;
图21是本申请实施例提供的怪物ai的行为树方式的架构图;
图22是本申请实施例提供的对怪物区域清缴速度进行判定的实现流程示意图;
图23是本申请实施例提供的动态变化逻辑的实现过程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。除非另有定义,本申请实施例所使用的所有的技术和科学术语与属于本申请实施例的技术领域的技术人员通常理解的含义相同。本申请实施例所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在解释本申请实施例之前,首先对本申请中涉及到的专业名词进行解释:
1)时间:是指非现实时间,是根据游戏内的时间早晚变化所确定的游戏时间,例如,游戏世界中的早晨、游戏世界中的中午和游戏世界中的傍晚等时间。这里的游戏时间比现实时间要快。
2)天气:是指非现实天气,是根据游戏内的场景确定出的天气元素,即游戏世界内对应场景的天气情况。
3)怪物ai:是指怪物被赋予的人工智能(ai,artificialintelligence),让怪物有一定的处理当前情况的能力。例如,玩家在攻击一个怪物时,这个怪物会知道并且反击玩家(这应该算最基础的怪物ai),稍微高级一点的怪物ai可能会召集附近的怪物一起来对玩家发起攻击或者找一个附近的掩体躲起来。
4)警戒范围:是指游戏中怪物身边的特定范围,如果玩家进入该范围,则怪物ai从非战斗状态切换到战斗状态。
5)分组:游戏内会有多个怪物为一组,在其中一个怪物进入战斗状态时,同组怪物都进入战斗状态。
6)清缴速度:在整个服务器中,玩家对该怪物群在单位时间内消灭该怪物群所属怪物的数量。
为了解决相关技术中的游戏对象动态变化方法所存在的至少一个问题,本申请实施例提供一种游戏对象动态变化方法,通过更多变化维度和玩家消灭怪物行为作为共同影响因素,对大地图怪物进行动态控制和刷新,包括改变怪物ai、刷新怪物类型和分组数量、改变怪物分布以及场景建筑的出现,使得游戏世界呈现一种动态变化,更加真实可信。本申请实施例将根据特定算法,对游戏地图中的怪物群进行动态变化,结合多张地图的多个怪物群各自根据该算法动态变化,使得整个游戏世界呈现动态变化。
本申请实施例提供一种游戏对象动态变化方法,首先,获取游戏地图在当前界面上所显示的目标区域;并确定目标区域内的环境元素、和与所述目标区域中所显示对象对应的玩家行为;然后,根据环境元素和玩家行为,确定对象的动态变化参数;根据动态变化参数对目标区域内的对象进行更新,得到更新后的对象;最后,在当前界面上显示更新后的对象。如此,能够根据所确定出的动态变化参数对目标区域内的对象进行更新,使得游戏世界呈现多样的动态变化,且玩家行为对游戏世界也会产生影响,从而使得整个游戏世界呈现动态变化,更加真实可信,使得玩家用户具有沉浸式游戏体验,进而更加有效的吸引更多玩家。
下面说明本申请实施例的游戏对象动态变化设备的示例性应用,在一种实现方式中,本申请实施例提供的游戏对象动态变化设备可以实施为笔记本电脑,平板电脑,台式计算机,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)、智能机器人等任意的能够运行游戏应用的终端,在另一种实现方式中,本申请实施例提供的游戏对象动态变化设备还可以实施为服务器。下面,将说明游戏对象动态变化设备实施为服务器时的示例性应用。
参见图1,图1是本申请实施例提供的游戏对象动态变化系统10的一可选的架构示意图。为实现对游戏应用中的对象进行动态更新,本申请实施例提供的游戏对象动态变化系统10中包括终端100、网络200和服务器300,其中,终端100上运行有游戏应用,终端100的当前界面100-1上显示游戏地图中的目标区域,目标区域中包括至少一个对象,这里的对象可以是游戏中的怪物。
玩家通过终端100运行游戏应用的同时,对游戏中的人物进行操作完成游戏过程。在玩家打游戏的过程中,终端会将玩家在终端上的用户操作和基于用户操作对应的当前所显示的目标区域对应的区域数据,通过网络200发送给服务器300,实现终端100与服务器300之间的数据同步。服务器300在获取到游戏地图在当前界面上所显示的目标区域之后,确定目标区域内的环境元素、和与目标区域中所显示对象对应的玩家行为;根据环境元素和玩家行为,确定怪物的动态变化参数;根据动态变化参数对目标区域内的怪物进行更新,得到更新后的怪物;将更新后的怪物发送给终端100,终端100在当前界面100-1上显示更新后的怪物。
本申请实施例提供的游戏对象动态变化方法还涉及云技术领域,可以基于云平台并通过云技术来实现,例如,上述服务器300可以是云端服务器,云端服务器对应一云端存储器,游戏地图可以被存储于云端存储器中,即可以采用云存储技术实现对游戏地图和该游戏地图下的游戏数据进行存储。
需要说明的是,云技术(cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(cloudtechnology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
作为云计算的基础能力提供商,会建立云计算资源池平台,简称云平台,一般称为基础设施即服务(iaas,infrastructureasaservice),在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备和网络设备。按照逻辑功能划分,在iaas层上可以部署平台即服务(paas,platformasaservice)层,paas层之上再部署软件即服务(saas,softwareasaservice)层,也可以直接将saas层部署在iaas层上。paas层为软件运行的平台,如数据库、web容器等。saas层为各式各样的业务软件,如web门户网站、短信群发器等。其中,iaas层203、paas层202和saas层201部署关系如图2所示,一般来说,saas层201和paas层202相对于iaas层203是上层。
云存储(cloudstorage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(id,identity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(raid,redundantarrayofindependentdisk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
本申请实施例提供的游戏对象动态变化方法还涉及人工智能技术领域,可以通过人工智能技术中的机器学习和图像识别处理等技术来实现。其中,机器学习(ml,machinelearning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
本申请实施例中,通过图像识别处理技术,对游戏地图中的目标区域进行图像识别和分析,以确定出目标区域中的环境元素,从而根据环境元素确定出动态变化参数,或者,还可以通过机器学习技术学习得到每一环境元素对应的动态变化参数,从而实现动态的调整目标区域内的对象的参数,进而动态的更新游戏地图中的对象,使得整个游戏呈现动态变化,更加接近真实场景下对应的情况,游戏场景更加真实可信,使玩家用户具有沉浸式游戏体验。
图3是本申请实施例提供的服务器300的结构示意图,图3所示的服务器300包括:至少一个处理器310、存储器350、至少一个网络接口320和用户接口330。服务器300中的各个组件通过总线系统340耦合在一起。可理解,总线系统340用于实现这些组件之间的连接通信。总线系统340除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统340。
处理器310可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口330包括使得能够呈现媒体内容的一个或多个输出装置331,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口330还包括一个或多个输入装置332,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器350可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器350可选地包括在物理位置上远离处理器310的一个或多个存储设备。存储器350包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本申请实施例描述的存储器350旨在包括任意适合类型的存储器。在一些实施例中,存储器350能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统351,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块352,用于经由一个或多个(有线或无线)网络接口320到达其他计算设备,示例性的网络接口320包括:蓝牙、无线相容性认证(wifi)、和通用串行总线(usb,universalserialbus)等;
输入处理模块353,用于对一个或多个来自一个或多个输入装置332之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图3示出了存储在存储器350中的一种游戏对象动态变化装置354,该游戏对象动态变化装置354可以是服务器300中的游戏对象动态变化装置,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块3541、第一确定模块3542、第二确定模块3543、刷新模块3544和显示模块3545,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的游戏对象动态变化方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。
下面将结合本申请实施例提供的服务器300的示例性应用和实施,说明本申请实施例提供的游戏对象动态变化方法。参见图4,图4是本申请实施例提供的游戏对象动态变化方法的个可选的流程示意图,将结合图4示出的步骤进行说明。
步骤s401,获取游戏地图在当前界面上所显示的目标区域。
这里,游戏地图中可以具有多种场景和游戏设施,在同一游戏地图中,可以同时具有多个玩家,每一玩家具有各自的游戏视角,在各自的游戏视角中,玩家可以看到自己当前在游戏地图中的部分区域,即玩家自己的终端上所显示的目标区域。对于任一玩家来说,目标区域可以并不是游戏地图的全部区域,即目标区域可以是游戏地图中的部分区域,也可以是游戏地图中的全部区域。在目标区域中的场景和游戏设施发生改变的同时,未显示的其他区域的场景和游戏设施也发生改变。
步骤s402,确定目标区域内的环境元素、和与目标区域中所显示对象对应的玩家行为。
这里,环境元素包括但不限于以下至少之一:时间、天气、防御设施和道具。在目标区域中可以同时具有多个环境元素,也可以仅具有一个环境元素。
玩家行为包括但不限于玩家对目标区域中所显示对象的清缴速度,其中,清缴速度是玩家在单位时间内消灭目标区域中所显示对象的数量。本申请实施例中,目标区域中所显示的对象可以是待消灭的怪物。
步骤s403,根据环境元素和玩家行为,确定对象的动态变化参数。
这里,动态变化参数是指对玩家的目标区域中的对象进行更新时的参数,例如,动态变化参数包括但不限于更新后的数量、群组、种类、防御设施和分布区域等参数。
本申请实施例中,由于环境元素和玩家行为是实时变化的,因此,所确定出的动态变化参数也将是随着环境元素和玩家行为的变化而实时变化的。
在一些实施例中,可以周期性的确定对象的动态变化新参数,还可以连续的确定对象的动态变化参数。
步骤s404,根据动态变化参数对目标区域内的对象进行更新,得到更新后的对象。
这里,在确定出动态变化参数之后,按照动态变化参数更新目标区域内的对象。举例来说,如果动态变化参数规定对象进行更新时的参数是将原来n个怪物增加到m个,m大于n,且这m个怪物形成一个怪物群,怪物群中有一个精英怪,则在对目标区域内的对象进行刷新时,则刷新出一个由m个怪物形成的怪物群,且怪物群中具有一个精英怪。
步骤s405,在当前界面上显示更新后的对象。
本申请实施例提供的游戏对象动态变化方法,通过确定游戏地图在当前界面上所显示的目标区域内的环境元素、和与目标区域中所显示对象对应的玩家行为,并根据环境元素和玩家行为确定对象的动态变化参数,如此,能够根据所确定出的动态变化参数对目标区域内的对象进行更新,使得游戏世界呈现多样的动态变化,且玩家行为对游戏世界也会产生影响,从而使得整个游戏世界呈现动态变化,更加真实可信,使得玩家用户具有沉浸式游戏体验,进而更加有效的吸引更多玩家。
在一些实施例中,动态变化参数至少包括对象的对象行为参数和刷新参数;基于图4,图5是本申请实施例提供的游戏对象动态变化方法的个可选的流程示意图,如图5所示,步骤s403可以通过以下步骤实现:
步骤s501,从预设行为库中匹配出与环境元素对应的对象行为参数。
这里,对象行为参数包括怪物的行为(即动作)和运动参数;预设行为库中存储有至少一种怪物的行为和与行为对应的运动参数。举例来说,怪物行为可以是躲雨、睡觉、击杀、逃跑、烤火和巡逻等任意一种怪物可以执行的类似于人类行为的行为,对应地,与怪物的行为对应的运动参数包括:移动速度、移动距离、攀爬高度等。
本申请实施例中,不同的环境元素对应不同的行为,每一行为对应至少一种对象行为参数,也就是说,预设行为库中存储有环境元素与至少一种行为的第一映射关系,以及存储有每一种行为与至少一种行为参数之间的第二映射关系。在确定出环境元素之后,根据环境元素和第一映射关系、第二映射关系,从预设行为库中匹配得到与环境元素对应的对象行为参数。
步骤s502,根据玩家行为,按照预设映射规则,映射得到对象的刷新参数。
这里以玩家行为是清缴速度为例,清缴速度与怪物的刷新参数之间具有预设映射关系,在确定出清缴速度之后,按照预设映射规则,基于预设映射关系,映射得到怪物的刷新参数。其中,刷新参数至少包括以下之一:对象种类、分组数量、对应防御设施和分布区域。
在一些实施例中,预设映射规则包括:与动态刷新次数对应的至少一种预设映射规则;基于图5,图6是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图,如图6所示,步骤s502可以通过以下步骤实现:
步骤s601,设置动态刷新次数的初始值为零。
这里,动态刷新次数是指目标区域中对象的属性参数发生变化的次数,其中,对象的属性参数包括但不限于:对象的数量、对象的种类、对象的分组数量、对应防御设施和分布区域等。
在游戏开始时,可以预先设置动态刷新次数为0,或者,当玩家到达一个新的区域之后,设置该区域的动态刷新次数为0。
步骤s602,确定每一预设周期内的清缴速度。
这里,预设周期对应单位时长,例如,预设周期可以是30秒或1分钟,在每一预设周期内,检测一次玩家的清缴速度。
步骤s603,依次判断每一预设周期内的清缴速度是否小于速度阈值。
当判断结果为是时,执行步骤s604;当判断结果为否时,执行步骤s607。
步骤s604,将动态刷新次数发生一次变化,将动态刷新次数加1。
步骤s605,将变化后的动态刷新次数对应的预设映射规则,确定为目标映射规则。
这里,确定与变化后的动态刷新次数对应的预设映射规则为目标映射规则,例如,变化后的动态刷新次数为3,则确定动态刷新次数为3时的预设映射规则为目标映射规则。
在一些实施例中,可以预先设置每一动态刷新次数对应的预设映射规则的规则内容,在确定出当前的变化后的动态刷新次数之后,采用与该动态刷新次数对应的预设映射规则的规则内容,作为对当前的刷新参数的确定依据。
在一些实施例中,步骤s605可以通过以下步骤实现:步骤s6051,确定当前的动态刷新次数。步骤s6052,将当前的动态刷新次数对应的预设映射规则,确定为目标映射规则。
步骤s606,根据目标映射规则,映射得到对象当前的刷新参数。
这里,在得到目标映射规则之后,根据目标映射规则的规则内容,映射得到当前的刷新参数。举例来说,如果目标映射规则规定当前的怪物的数量为10,且每5个怪物形成一个怪物群,则可以得到当前的刷新参数是怪物数量为10,且这10个怪物对应两个怪物群。
本申请实施例中,如果在预设周期内的清缴速度小于速度阈值,则表明玩家没有关注该区域,因此,可以通过升级该区域的难度来吸引玩家,或者通过升级该区域的难度来让玩家尽快对该区域进行操作,避免该区域的难度不断升级而难以对该区域的怪物进行清缴。对应的,如果在预设周期内的清缴速度小于速度阈值时,所确定的目标映射规则映射得到的当前的刷新参数,会使得该目标区域的怪物清缴难度升级。
步骤s607,对所述动态刷新次数进行清零处理。
这里,当任一预设周期内的清缴速度大于或等于速度阈值时,表明玩家正在对该区域进行操作,即玩家正在关注该区域,因此,可以不对该区域的操作难度升级。
步骤s608,按照预设刷新规则对所述目标区域内的所述对象进行刷新。
这里,预设刷新规则是对应动态刷新次数为0时的刷新规则,也就是说,当动态刷新次数清零之后,统一按照预设刷新规则进行刷新。其中,预设刷新规则可以是按照一定的规律对目标区域内的对象进行刷新,或者,按照一定的周期或一定的数量对目标区域内的对象进行刷新,且每次刷新后的对象的数量和种类与前一次采用预设刷新规则刷新后的对象的数量和种类相同。
请继续参照图6,在一些实施例中,方法还可以包括以下步骤:
步骤s609,判断变化后的动态刷新次数是否大于次数阈值。
当判断结果为是时,执行步骤s610;当判断结果为否时,结束流程。
步骤s610,将与次数阈值相等的动态刷新次数对应的预设映射规则,确定为目标映射规则。
这里,当变化后的动态刷新次数大于次数阈值时,表明变化已经达到上限,不能继续动态变化,即不能继续增加目标区域的操作难度,避免超过游戏性能限制。
在一些实施例中,动态刷新次数包括第一动态刷新次数和第二动态刷新次数;第一动态刷新次数对应第一预设映射规则、第二动态刷新次数对应第二预设映射规则;根据第一预设映射规则映射得到第一刷新参数,根据第二预设映射规则映射得到第二刷新参数;对采用第一刷新参数进行刷新后的对象进行清缴后得到第一奖励值,对采用第二刷新参数进行刷新后的对象进行清缴后得到第二奖励值;如果第一动态刷新次数小于第二动态刷新次数,则第一奖励值小于第二奖励值。
基于图5,图7是本申请实施例提供的游戏对象动态变化方法的一可选的流程示意图,在一些实施例中,在目标区域内显示有至少一个对象群,每一对象群中包括至少一个所述对象;环境元素至少包括:环境时间。如图7所示,步骤s501可以通过以下步骤实现:
步骤s701,确定游戏地图对应的当前的环境时间。
这里的环境时间包括但不限于:早晨、上午、中午、下午、傍晚和晚上等。
步骤s702,对于对象群中的任一对象,根据环境时间,在预设行为库中匹配出任一对象对应的至少一种行为和行为对应的运动参数。
这里,预设行为库中还保存有环境时间与对应的行为之间的映射关系、行为与运算参数之间的映射关系。当确定出环境时间后,可以对于每一对象,从预设行为库中匹配出一种行为和该行为对应的运动参数,将匹配出的至少一种行为和行为对应的运动参数,确定为与环境元素对应的对象行为参数。
对于同一个对象群中的不同的对象,匹配得到的行为可以相同也可以不同,运动参数可以相同也可以不同,也就是说,在同一环境时间下,不同的对象可以具有不同的行为和运动参数。
对于不同对象群,可以具有相同的行为和运动参数,也可以具有不同的行为和运动参数。或者,对于不同对象群,同一对象群中的全部对象具有相同的行为和运动参数,而不同的对象群中的对象之间具有不同的行为和运动参数。
步骤s703,控制每一对象按照行为和运动参数在游戏地图中运动。
这里,在确定出对象的行为和运动参数之后,按照每一对象的行为和运动参数控制该对象在游戏地图中运动。
请继续参照图7,在一些实施例中,在目标区域内显示有至少一个对象群,每一对象群中包括至少一个对象;环境元素至少包括:天气元素;步骤s501还可以通过以下步骤实现:
步骤s704,对于对象群中的任一对象,在预设行为库中匹配出与天气元素对应的至少一种行为。
这里的天气元素包括但不限于:晴天、下雨、下雪、雷电、冰雹和大风等天气元素。预设行为库中还存储有天气元素与行为之间的映射关系。
本申请实施例中,当确定出目标区域当前的天气元素之后,在预设行为库中匹配出与该天气元素对应的至少一种行为,并将该行为赋予每一对象,即将匹配出的行为确定为对象行为参数。
需要说明的是,在同一种天气元素下,不同的对象可以具有相同的行为,也可以具有不同的行为。举例来说,在雷电天气下,有些怪物会快速躲避到遮蔽物之下来躲避雷电,而有些怪物来不及躲避则会被雷电劈到而掉血,还有些怪物则在雷电之下快速逃跑等。
步骤s705,控制对象执行该行为。
本申请实施例中,在确定出天气元素对应的至少一种行为之后,将这些行为赋予给目标区域中的每一对象,控制目标区域中的每一对象执行该行为。
请继续参照图7,在一些实施例中,当环境元素包括天气元素时,方法还包括以下步骤:
步骤s706,当天气元素包括第一类型元素时,对目标区域的对象群中的对象主动施加特定场景效果。
这里,第一类型元素是能够主动对目标区域内的怪物产生影响的天气元素,例如,雷电天气,在雷电天气内,偶尔会出现雷击,而雷击会攻击到怪物,使得怪物掉血。
步骤s707,当天气元素包括第二类型元素时,目标区域的对象群中的对象被动改变当前的效果参数。
这里,第二类型元素是对象在该天气元素下会被动的产生影响的天气元素。例如,大雾天,怪物的视线受阻,则警戒范围会变小,或者雨天,由于大雨的阻力,使得怪物的移动速度变慢。
请继续参照图7,在一些实施例中,环境因素还可以包括防御设施,对应地,方法还可以包括以下步骤:
步骤s708,当确定出在对象的预设距离范围内具有特定的防御设施,且防御设施当前处于空闲状态时,控制对象使用防御设施。
这里,如果在怪物的附件(即预设距离范围内)存在特定的防御设施,且该防御设施当前处于空闲状态时,该对象可以使用该防御设置。例如,在交战状态下,如果怪物附件有拒马,则怪物可以选择移动到拒马后面对玩家发起进攻,或者,如果怪物附件有载具,则怪物可以选择驾驶载具逃跑,或者驾驶载具进行巡逻。
本申请实施例提供的游戏对象动态变化方法,对于不同的环境元素,对应不同的控制策略,从而使得怪物在不同天气下可以表现出不同的状态,更加接近于真实情况,使得游戏世界呈现多样的动态变化,更加真实可信,使得玩家用户具有沉浸式游戏体验,进而更加有效的吸引更多玩家。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
本申请实施例提供一种游戏对象动态变化方法,应用于mmorpg类游戏,在游戏中,地图上的怪物在一定范围内,同类型怪物作为一个怪物群,怪物群根据时间、天气和防御设施以及玩家对该怪物群的清缴进行变化。时间、天气和防御设施影响怪物的行为模式ai,玩家对怪物群的清缴速度影响怪物的数量、种类、分布和配合防御设施的出现等刷新相关机制。
时间影响怪物的行为模式ai,主要体现在如下方面:游戏内设置日夜时间变化,会从黎明、白天到黄昏再到夜晚,循环反复。怪物行为跟随时间进行变化,使怪物看起来更像真实存在的生物。
图8是本申请实施例提供的根据一天时间变化怪物ai发生变化的游戏界面图,如图8所示,在上午81,怪物从巢穴里出来,开始巡逻;在中午82,怪物回到篝火附近,坐下、吃东西,同时怪物会判断篝火旁怪物数量,较多时就先不过来,继续巡逻;在下午83,怪物会进行巡逻;在夜晚84,部分怪物返回巢穴或在篝火旁睡觉,少量则维持巡逻状态。
在一些实施例中,游戏内场景会不定时出现天气变化,怪物根据天气变化产出动态变化。本申请实施例中,怪物行为配合天气变化,怪物在面对不同的天气情况下,会有不同的行为,例如,在晴天,怪物行为为基本行为逻辑;在雨天,部分怪物会放弃巡逻,在附近寻找可避雨地点停留,如图9所示,是本申请实施例提供的怪物躲雨的游戏界面图,怪物91在雨天会选择躲避在遮蔽物92之下;在下雪天,部分怪物会放弃巡逻转而向篝火移动,如图10所示,是本申请实施例提供的怪物在雪天取暖的游戏界面图,怪物101会停留在火堆102旁边进行取暖;在着火时,怪物会逃离着火区域,或者想办法救火,如图11所示,是本申请实施例提供的怪物逃跑的游戏界面图,怪物111会发生火灾时会逃离火灾现场112。
在一些实施例中,天气情况还会主动对怪物施加效果影响,根据天气情况,场景触发特定效果对该区域的怪物施加影响,包括主动发生效果和被动效果。其中,主动发生效果包括:雷雨天偶尔出现雷击,会攻击到怪物使其掉血,如图12所示,是本申请实施例提供的雷雨天出现雷击攻击到怪物的游戏界面图,雷电121攻击到怪物122之后,怪物122会掉血。被动发生效果包括:在雪天,怪物的警戒范围变小;在雨天,怪物的移动速度减慢。如图13所示,是本申请实施例提供的雨天移动速度下降的游戏界面图,在下雨天131中,怪物132的移动速度会下降。
在一些实施例中,防御设施也会影响怪物ai,怪物所在区域如果有空闲防御设施,怪物ai会判断是否要前往防御设施进行操控,根据防御设施类型,怪物根据自身种类也会有不同判断。部分防御设施在非战斗状态怪物会使用,而有些防御设施只会在战斗状态使用。举例来说,防御设施包括以下至少之一:哨塔、载具、拒马和火炮。当游戏地图中具有哨塔时,如果哨塔没人,则远程类怪物会选择进入哨塔;如果是雨天,近战怪物也会进入哨塔,如图14所示,是本申请实施例提供的怪物自动上到哨塔上的游戏界面图,怪物141自动上到哨塔142上面。当游戏地图中具有载具时,巡逻怪物会选择驾驶载具,继续巡逻。当游戏地图中具有拒马时,怪物进入战斗状态,远程怪物会选择移动到拒马后面对玩家发动攻击,如图15所示,是本申请实施例提供的远程怪物战斗中站在拒马后面的游戏界面图,怪物151会移动到拒马152后面对玩家发动攻击。当游戏地图中具有火炮时,怪物进入战斗状态,近战怪物如果离玩家较远,会选择移动到火炮位置使用火炮攻击。
在一些实施例中,玩家对怪物的清缴速度也会对怪物刷新有影响,游戏内每隔固定时间进行一次判定,当清缴速度低于阈值时,怪物群会触发动态变化。
在一些实施例中,动态变化可以是出现强力怪物,例如,怪物分组数增加,其中开始出现精英怪,如果连续几次判断都触发动态变化,则会出现首领怪(boss怪),如图16所示,是本申请实施例提供的不同等级怪物的示意图,初始小怪161是地图上常见的怪物,当触发一次动态变化之后,出现精英怪162,精英怪的等级比初始小怪161的等级高,且清缴难度也高,当再次触发动态变化之后,出现boss怪163,boss怪163比精英怪162的等级高,且清缴难度更高。
在一些实施例中,动态变化还可以是怪物出现集群,即原来单个独自行动的小怪,刷新出2到3个小怪一群的情况,玩家攻击时会小怪集群中的小怪会同时进入战斗,如图17所示,是本申请实施例提供的怪物出现集群的示意图,单一小怪171在经过一次动态变化之后,刷新出一个小怪集群172,小怪集群172中包括多个小怪。
在一些实施例中,动态变化还可以是怪物地点出现防御建筑,如哨塔、拒马等,该类建筑可被破坏。如图18所示,是本申请实施例提供的场景出现防御建筑的示意图,在怪物地点181中,出现防御建筑182,其中,图18中的右图是防御建筑182的放大图。
在一些实施例中,动态变化还可以是怪物群分布区域扩大,甚至深入到玩家城镇,形成怪物攻城。如图19所示,是本申请实施例提供的怪物群分布逐渐扩大的示意图,在怪物地点191中,具有第一怪物群192,第一怪物群192中具有少量的怪物,在一次动态变化之后,怪物群分布区域扩大,形成第二怪物群193,第二怪物群193中的怪物数量大于第一怪物群192中的怪物数量。
需要说明的是,本申请实施例提供的动态变化机制适用于具有大地图模式的游戏。
在一些实施例中,大地图怪物动态变化的后台机制根据影响类型分为两部分,一部分影响怪物ai,一部分影响刷新规则。图20是本申请实施例提供的怪物刷新机制的架构图,如图20所示,游戏内机制21(即游戏场景变化元素)影响怪物行为22,玩家行为23影响怪物刷新机制24,其中,游戏内机制21包括但不限于时间、天气和防御设施;怪物行为22包括但不限于战斗ai、非战斗ai和属性效果,即怪物非玩家角色(npc,non-playercharacter)的ai和属性;玩家行为23包括但不限于清缴速度;怪物刷新机制24包括但不限于种类和分组数、分组内怪物数量、防御设施和刷新分布区域。
本申请实施例中,时间、天气、防御设施影响怪物ai逻辑,怪物ai以行为树方式实现判定,将游戏预设可能出现的时间、天气、防御设施元素加入行为树作为判定条件,影响不同类型的怪物行为,图21是本申请实施例提供的怪物ai的行为树方式的架构图,如图21所示的行为树结构,对于非战斗怪物ai,在不同时间和不同的天气条件下具有不同的行为。
本申请实施例中,天气会主动影响怪物效果属性,可以预先设定天气主动影响的效果,当天气出现变化时,所有在该天气所在场景范围内的怪物都会受到相应的影响变化。表1是本申请实施例提供的天气与影响效果的对应关系表,如表1所示,在晴天,天气对怪物ai没有主动影响效果;在下雨天,怪物的移动速度降低;在雷雨天,怪物的移动速度降低,且有概率会出现雷击,如果雷电劈中怪物,则怪物受到伤害;在下雪天,怪物警戒范围变小,且怪物攻击力下降。
表1天气与影响效果的对应关系表
本申请实施例中,玩家清缴速度会影响怪物分布,游戏服务器以怪物群为单位,每个怪物群设置以下参数:清缴速度和连续变化次数,其中,连续变化次数是指连续触发动态变化的次数。服务器每隔一段时间判定一次,即该段时间记录怪物被杀数量,以被杀数量作为清缴速度,和临界值(即速度阈值)比较判定,如果大于等于临界值,则按照正常刷新规则执行,且连续变化次数变量清零;否则,触发动态变化逻辑,且连续变化次数要持续计数。
图22是本申请实施例提供的对怪物区域清缴速度进行判定的实现流程示意图,如图22所示,判定过程包括以下步骤:
步骤s221,判定清缴速度是否低于临界值。
如果判断结果为是,则执行步骤s224;如果判断结果为否,则执行步骤s222。
步骤s222,连续变化次数清零。
步骤s223,怪物按照基础刷新规则进行刷新。
步骤s224,连续变化次数+1。
步骤s225,根据连续变化次数执行动态变化逻辑。
步骤s226,清缴速度计数重置。
步骤s227,判断间隔时间是否到达下一次判定时间。
如果判断结果为是,则返回继续执行步骤s221;如果判断结果为否,则结束流程。
本申请实施例中,动态变化逻辑是根据连续变化次数,分别进行怪物种类变化、群组变化、防御设施变化、分布区域变化等逻辑。图23是本申请实施例提供的动态变化逻辑的实现过程示意图,如图23所示,在基础规则231中,配置基础怪物种类和分组、基础怪物分组数量、无防御设置、基础怪物分布;在动态变化1次232时,配置分组数量增加、怪物分组数量增加、无防御设施、基础怪物分布不变;在动态变化3次233时,配置出现精英怪分组、怪物分组数量增加、出现防御设施、基础怪物分布不变;在动态变化5次234时,配置出现boss怪分组、怪物分组数量不变、出现防御设施、怪物分布扩大。
本申请实施例中,在动态变化逻辑中,怪物种类和分组数是根据连续变化次数,设定增加的怪物分组数以及怪物种类(比如精英怪);怪物分组数量是根据连续变化次数,设定一定比例的分组组内怪物数量增加指定个数,连续变化次数提高增加数量组的比例和单组增加个数;防御设施是设定在一定连续变化次数后触发增加,设定增加的设置种类和可出现的位置;怪物分布是设定一定连续变化次数后触发扩大分布区域,事先对怪物群分布区域设定多个级别区域,扩大时从当前级别提升到下一级别,之后根据连续变化次数,达到设定要求次数会再次扩大。
需要说明的是,以上变化根据设定的阶段变化,达到设定上限就不再继续变化,避免超过性能限制。动态变化只在判定成功后进行一轮刷新变化,如果在两次判定之间,玩家击杀怪物因而刷新,此时按照当前分布区域刷新普通怪物组补充。
本申请实施例提供的怪物刷新方法(即游戏对象动态变化方法),使得整个游戏的大世界呈现多样的动态变化,让玩家感觉游戏世界是真实的,玩家行为对世界是会产生影响的。同时,动态变化使得部分玩家不再关注的区域提升难度,再次获得玩家关注,提高游戏场景资源的利用效率。
下面继续说明本申请实施例提供的游戏对象动态变化装置354实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在存储器350的游戏对象动态变化装置354中的软件模块可以是服务器300中的游戏对象动态变化装置,包括:
获取模块3541,用于获取游戏地图在当前界面上所显示的目标区域;
第一确定模块3542,用于确定所述目标区域内的环境元素、和与所述目标区域中所显示对象对应的玩家行为;
第二确定模块3543,用于根据所述环境元素和所述玩家行为,确定所述对象的动态变化参数;
刷新模块3544,用于根据所述动态变化参数对所述目标区域内的所述对象进行更新,得到更新后的对象;
显示模块3545,用于在所述当前界面上显示所述更新后的对象。
在一些实施例中,所述动态变化参数至少包括所述对象的对象行为参数和刷新参数;所述第二确定模块还用于:从预设行为库中匹配出与所述环境元素对应的对象行为参数;根据所述玩家行为,按照预设映射规则,映射得到所述对象的刷新参数,其中,所述刷新参数至少包括以下之一:对象种类、分组数量、对应防御设施和分布区域。
在一些实施例中,预设映射规则包括:与动态刷新次数对应的至少一种预设映射规则;所述玩家行为至少包括对所述对象的清缴速度;所述第二确定模块还用于:确定每一预设周期内的所述清缴速度;当任一预设周期内的所述清缴速度小于速度阈值时,控制所述动态刷新次数发生一次变化;每当所述动态刷新次数发生一次变化时,将变化后的动态刷新次数对应的所述预设映射规则,确定为目标映射规则;根据所述目标映射规则,映射得到所述对象当前的所述刷新参数。
在一些实施例中,所述装置还包括:设置模块,用于设置所述动态刷新次数的初始值为零;计算模块,用于当任一预设周期内的所述清缴速度小于速度阈值时,将所述动态刷新次数加1;所述第二确定模块还用于:确定当前的动态刷新次数;将当前的动态刷新次数对应的所述预设映射规则,确定为所述目标映射规则。
在一些实施例中,所述装置还包括:目标映射规则确定模块,用于当所述变化后的动态刷新次数大于次数阈值时,将与所述次数阈值相等的动态刷新次数对应的所述预设映射规则,确定为所述目标映射规则。
在一些实施例中,所述装置还包括处理模块,用于当任一所述预设周期内的所述清缴速度大于或等于所述速度阈值时,对所述动态刷新次数进行清零处理,并按照预设刷新规则对所述目标区域内的所述对象进行刷新。
在一些实施例中,在所述目标区域内显示有至少一个对象群,每一对象群中包括至少一个所述对象;所述环境元素至少包括:环境时间;所述第二确定模块还用于:确定所述游戏地图对应的当前的环境时间;对于所述对象群中的任一对象,根据所述环境时间,在所述预设行为库中匹配出所述任一对象对应的至少一种行为和所述行为对应的运动参数;将所述行为和所述行为对应的运动参数,确定为与所述环境元素对应的对象行为参数;所述装置还包括:第一控制模块,用于控制每一所述对象按照所述行为和所述运动参数在所述游戏地图中运动。
在一些实施例中,在所述目标区域内显示有至少一个对象群,每一对象群中包括至少一个所述对象;所述环境元素至少包括:天气元素;所述第二确定模块还用于:对于所述对象群中的任一对象,在所述预设行为库中匹配出与所述天气元素对应的至少一种行为;将所述行为确定为所述对象行为参数;所述装置还包括:第二控制模块,用于控制所述对象执行所述行为。
在一些实施例中,所述装置还包括:施加模块,用于当所述天气元素包括第一类型元素时,对所述目标区域的对象群中的对象主动施加特定场景效果;或者,改变模块,用于当所述天气元素包括第二类型元素时,所述目标区域的对象群中的对象被动改变当前的效果参数。
在一些实施例中,所述装置还包括:第三控制模块,用于当确定出在所述对象的预设距离范围内具有特定的防御设施,且所述防御设施当前处于空闲状态时,控制所述对象使用所述防御设施。
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本装置实施例中未披露的技术细节,请参照本申请方法实施例的描述而理解。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的方法。
本申请实施例提供一种存储有可执行指令的存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图4示出的方法。
在一些实施例中,存储介质可以是计算机可读存储介质,例如,铁电存储器(fram,ferromagneticrandomaccessmemory)、只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmablereadonlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammablereadonlymemory)、带电可擦可编程只读存储器(eeprom,electricallyerasableprogrammablereadonlymemory)、闪存、磁表面存储器、光盘、或光盘只读存储器(cd-rom,compactdisk-readonlymemory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除