本发明实施例涉及计算机技术,尤其涉及一种物品掉落概率的验证方法、装置、设备和存储介质。
背景技术:
在游戏开发中,经常会遇到物品掉落概率的问题,例如游戏打怪、开箱和抽奖等获得宝物的概率,其通常是按照一定的物品掉落概率算法进行相应的游戏开发与设置。在游戏开发完成后,还需验证游戏中的物品掉落概率是否与游戏设置初衷是否一致。
现有技术中验证物品掉落概率的方法是反复运行同一段代码,以生成测试数据,并用这些测试数据来模拟游戏过程,生成日志数据,然后对日志数据进行统计来获得物品掉落概率,从而完成验证。
但是,游戏运行的实际情况比测试模拟过程更加复杂,随着游戏系统复杂度越来越高,游戏玩家越来越多,物品掉落概率的影响因素越来越多,上述物品掉落概率的验证方法的验证效果越来越差。
技术实现要素:
本发明实施例提供一种物品掉落概率的验证方法、装置、设备和存储介质,以实现更加准确地验证物品掉落概率。
第一方面,本发明实施例提供了一种物品掉落概率的验证方法,包括:
获取待验证物品掉落概率的应用程序的用户数据和所述应用程序的可执行文件;
依据所述用户数据和所述可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;
分析所述模拟日志获得所述物品的模拟物品掉落概率,并依据所述模拟物品掉落概率验证设计物品掉落概率的正确性。
可选地,所述应用程序包括打怪、开箱和抽奖中的至少一项功能。
可选地,所述模拟日志包括用户触发物品掉落操作后的物品掉落结果。
可选地,所述分析所述模拟日志获得所述物品的模拟物品掉落概率包括:
统计物品掉落结果中掉落物品的次数与物品掉落操作的触发总次数的比值,获得所述物品的模拟物品掉落概率。
可选地,所述依据所述模拟物品掉落概率验证设计物品掉落概率的正确性包括:
若所述模拟物品掉落概率与所述设计物品掉落概率一致,则确定所述设计物品掉落概率正确。
可选地,当所述应用程序为游戏应用时,所述获取待验证物品掉落概率的应用程序的用户数据和所述应用程序的可执行文件包括:
从所述游戏应用对应的数据服务器获取各玩家数据,作为所述用户数据;
从所述游戏应用对应的游戏服务器获取所述可执行文件与配置文件。
进一步地,所述玩家数据包括玩家基础信息、玩家等级、玩家战斗值和玩家历史行为数据。
第二方面,本发明实施例还提供了一种物品掉落概率的验证装置,该装置包括:
用户数据获取模块,用于获取待验证物品掉落概率的应用程序的用户数据和所述应用程序的可执行文件;
模拟日志生成模块,用于依据所述用户数据和所述可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;
物品掉落概率验证模块,用于分析所述模拟日志获得所述物品的模拟物品掉落概率,并依据所述模拟物品掉落概率验证设计物品掉落概率的正确性。
可选地,所述应用程序包括打怪、开箱和抽奖中的至少一项功能。
可选地,所述模拟日志包括用户触发物品掉落操作后的物品掉落结果。
可选地,所述物品掉落概率验证模块具体用于:
统计物品掉落结果中掉落物品的次数与物品掉落操作的触发总次数的比值,获得所述物品的模拟物品掉落概率。
可选地,所述物品掉落概率验证模块还具体用于:
若所述模拟物品掉落概率与所述设计物品掉落概率一致,则确定所述设计物品掉落概率正确。
可选地,所述用户数据获取模块具体用于:
当所述应用程序为游戏应用时,从所述游戏应用对应的数据服务器获取各玩家数据,作为所述用户数据;
从所述游戏应用对应的游戏服务器获取所述可执行文件与配置文件。
进一步地,所述玩家数据包括玩家基础信息、玩家等级、玩家战斗值和玩家历史行为数据。
第三方面,本发明实施例还提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的物品掉落概率的验证方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的物品掉落概率的验证方法。
本发明实施例通过获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件;依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。实现了利用真实的用户数据来模拟应用程序的实际使用环境与使用过程,解决了因实际情况下物品掉落概率的影响因素较多而导致的使用模拟数据验证物品掉落概率的不准确的问题,提高了物品掉落概率的验证准确性。
附图说明
图1是本发明实施例一中的一种物品掉落概率的验证方法的流程图;
图2是本发明实施例一中的游戏应用中物品掉落概率的验证过程示意图;
图3是本发明实施例二中的一种物品掉落概率的验证装置的结构示意图;
图4是本发明实施例三中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
本实施例提供的物品掉落概率的验证方法可适用于涉及物品掉落概率算法的应用程序中的物品掉落概率的验证。该方法可以由物品掉落概率的验证装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在电子设备中,例如笔记本电脑、台式电脑或服务器等。参见图1,本实施例的方法具体包括如下步骤:
s110、获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件。
其中,用户数据是指使用应用程序的真实用户的相关数据,例如可以是用户标识和用户级别等用户基本信息,也可以是用户历史的操作行为数据。示例性地,应用程序包括打怪、开箱和抽奖中的至少一项功能。也就是说,本发明实施例的物品掉落概率的验证方法可以适用于涉及物品掉落概率算法的打怪、开箱和抽奖等应用场景。
具体地,在应用程序在设计阶段,会按照设定的物品掉落算法来设计应用程序中某些物品的掉落概率(即设计物品掉落概率)。在应用程序设计完成后,还需对该设计物品掉落概率进行验证,以确定其在应用程序运行期间的正确性。相关技术中是利用模拟数据来触发应用程序中的物品的掉落逻辑,从而统计得出该物品的物品掉落概率。但是,随着应用程序的系统复杂度的提高,使得模拟数据在应用程序中的流转过程复杂化,模拟数据越来越无法贴合实际情况;另外,应用程序的实际使用过程中,随着用户数量增加以及用户操作的随机性,物品被触发掉落的情况会越来越复杂,进一步降低了模拟数据验证物品掉落概率的准确性。鉴于此,本发明实施例中未用模拟数据来对设计物品掉落概率进行验证,而是利用真实的用户数据和该应用程序的可执行文件,来模拟应用程序在实际运行过程中对物品的掉落触发逻辑,以尽可能地模拟实际情况,提高设计物品掉落概率的验证准确性。
具体实施时,先从应用程序相关的数据库中获取待验证物品掉落概率的应用程序的用户数据和该应用程序的可执行文件。
s120、依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志。
其中,模拟日志是指模拟操作完成后生成的日志文件。示例性地,模拟日志包括用户触发物品掉落操作后的物品掉落结果。模拟日志中会记录每个用户每次模拟触发物品掉落逻辑后的物品掉落结果,即物品是否掉落。这样,模拟日志就记录了每次物品掉落逻辑被触发后的结果,便可以用于后续的物品掉落概率的计算。
具体地,以用户数据为运行数据,模拟运行应用程序的可执行文件,以尽可能真实地模拟各个用户对物品掉落逻辑的触发操作,并记录每次触发操作过程信息及结果,便可生成数据更加可靠的模拟日志。
s130、分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。
其中,模拟物品掉落概率是指模拟应用程序运行后而获得的物品掉落概率。
具体地,对模拟日志中的物品掉落结果进行统计分析,可获得该次验证过程中的模拟物品掉落概率。之后,便可利用该模拟物品掉落概率来验证设计物品掉落概率的正确性。该过程中分析模拟日志的操作可以利用日志分析工具实现,也可以自行设计实现。
示例性地,分析模拟日志获得物品的模拟物品掉落概率包括:统计物品掉落结果中掉落物品的次数与物品掉落操作的触发总次数的比值,获得物品的模拟物品掉落概率。具体地,通过分析模拟日志来获得模拟物品掉落概率的实现逻辑为:统计物品掉落结果中掉落物品的次数与该物品掉落结果中记录的物品掉落触发操作的触发总次数,然后计算掉落物品的次数与触发总次数的比值,便可确定该次模拟过程中的模拟物品掉落概率。
示例性地,依据模拟物品掉落概率验证设计物品掉落概率的正确性包括:若模拟物品掉落概率与设计物品掉落概率一致,则确定设计物品掉落概率正确。如果模拟物品掉落概率与设计物品掉落概率一致,说明应用程序设计阶段采用的设定的物品掉落概率算法对应的设计物品掉落概率是正确的;反之,如果模拟物品掉落概率与设计物品掉落概率不一致,说明设定的物品掉落概率算法在该应用程序的实际运行环境中的设计物品掉落概率是错误的,还需进行算法修正。
本实施例的技术方案,通过获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件;依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。实现了利用真实的用户数据来模拟应用程序的实际使用环境与使用过程,解决了因实际情况下物品掉落概率的影响因素较多而导致的使用模拟数据验证物品掉落概率的不准确的问题,提高了物品掉落概率的验证准确性。
在上述技术方案的基础上,当应用程序为游戏应用时,获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件包括:从游戏应用对应的数据服务器获取各玩家数据,作为用户数据;从游戏应用对应的游戏服务器获取可执行文件与配置文件。
其中,玩家数据是指注册了游戏应用的用户的相关数据。本实施例中所获得的玩家数据的数量为至少两个,且数量越多,后续的验证结果更加准确。示例性地,玩家数据包括玩家基础信息、玩家等级、玩家战斗值和玩家历史行为数据。这里的玩家历史行为数据包括玩家在历史时刻和历史位置,执行的历史操作。
具体地,参见图2,针对一款游戏应用,通常会设置数据服务器201,以存储游戏应用运行过程中的各种数据,如玩家数据和道具数据等;同时为了游戏的顺畅运行,会设置一个游戏服务器202,以专门支撑游戏应用的运行逻辑。鉴于此,当待验证物品掉落概率的应用程序为游戏应用时,本发明实施例中会从数据服务器201中获取大量的玩家数据,作为用户数据。同时,从游戏服务器202中获取该游戏应用对应的可执行文件和配置文件。
在上述基础上,s120的实现过程为:将所有获得的玩家数据、可执行文件和配置文件全部存储至模拟服务器203中,并在模拟服务器203中运行该游戏应用的可执行文件,读取配置文件和所有玩家数据,来对游戏应用中物品掉落逻辑进行模拟触发,生成模拟日志204。
这样设置的好处是,能够更大程度上构造与游戏应用实际运行时相同的运行环境与运行过程,从而进一步提高模拟物品掉落概率的准确性,进而进一步提高设计物品掉落概率的验证准确性。
实施例二
本实施例提供一种物品掉落概率的验证装置,参见图3,该装置具体包括:
用户数据获取模块310,用于获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件;
模拟日志生成模块320,用于依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;
物品掉落概率验证模块330,用于分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。
可选地,应用程序包括打怪、开箱和抽奖中的至少一项功能。
可选地,模拟日志包括用户触发物品掉落操作后的物品掉落结果。
可选地,物品掉落概率验证模块330具体用于:
统计物品掉落结果中掉落物品的次数与物品掉落操作的触发总次数的比值,获得物品的模拟物品掉落概率。
可选地,物品掉落概率验证模块330还具体用于:
若模拟物品掉落概率与设计物品掉落概率一致,则确定设计物品掉落概率正确。
可选地,用户数据获取模块310具体用于:
当应用程序为游戏应用时,从游戏应用对应的数据服务器获取各玩家数据,作为用户数据;
从游戏应用对应的游戏服务器获取可执行文件与配置文件。
进一步地,玩家数据包括玩家基础信息、玩家等级、玩家战斗值和玩家历史行为数据。
通过本发明实施例二的一种物品掉落概率的验证装置,实现了利用真实的用户数据来模拟应用程序的实际使用环境与使用过程,解决了因实际情况下物品掉落概率的影响因素较多而导致的使用模拟数据验证物品掉落概率的不准确的问题,提高了物品掉落概率的验证准确性。
本发明实施例所提供的物品掉落概率的验证装置可执行本发明任意实施例所提供的物品掉落概率的验证方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述物品掉落概率的验证装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例三
参见图4,本实施例提供了一种电子设备400,其包括:一个或多个处理器420;存储装置410,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器420执行,使得一个或多个处理器420实现本发明实施例所提供的物品掉落概率的验证方法,包括:
获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件;
依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;
分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。
当然,本领域技术人员可以理解,处理器420还可以实现本发明任意实施例所提供的物品掉落概率的验证方法的技术方案。
图4显示的电子设备400仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,该电子设备400包括处理器420、存储装置410、输入装置430和输出装置440;电子设备中处理器420的数量可以是一个或多个,图4中以一个处理器420为例;电子设备中的处理器420、存储装置410、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线450连接为例。
存储装置410作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的物品掉落概率的验证方法对应的程序指令/模块(例如,物品掉落概率的验证装置中的用户数据获取模块、模拟日志生成模块和物品掉落概率验证模块)。
存储装置410可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置410可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置410可进一步包括相对于处理器420远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
实施例四
本实施例提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种物品掉落概率的验证方法,该方法包括:
获取待验证物品掉落概率的应用程序的用户数据和应用程序的可执行文件;
依据用户数据和可执行文件,模拟用户触发物品掉落的操作,生成模拟日志;
分析模拟日志获得物品的模拟物品掉落概率,并依据模拟物品掉落概率验证设计物品掉落概率的正确性。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的物品掉落概率的验证方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所提供的物品掉落概率的验证方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。