本申请涉及计算机领域,特别是涉及配置游戏技能的方法、系统、电子装置和存储介质。
背景技术:
现代游戏发展越来越快,玩家对游戏的要求也越来越高,其中,游戏技能是在满足一定的条件前提下,针对指定的任务、道具、npc和地图坐标实现一定效果的游戏行为指令,游戏技能能让玩家可以用更多更自由的方式干预游戏,是一个释放或利用已有资源的途径,还可以用来区分不同流派,也起一些辅助作用,对游戏内容进行自由干预是玩家游戏的乐趣所在,因此,游戏技能是整个游戏中的重要组成部分。
在相关技术中,游戏技能或者buff的实现是在excel表中配置相关参数,由程序读取参数并实现技能具体逻辑,然而这种技能设计不够灵活、限制大、且沟通成本比较高。
目前针对相关技术中,在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题,尚未提出有效的解决方案。
技术实现要素:
本申请实施例提供了配置游戏技能的方法、系统、电子装置和存储介质,至少解决相关技术中在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题。
第一方面,本申请实施例提供了一种配置游戏技能的方法,所述方法包括:
通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类;
通过编译器将所述完整的技能类进行编译,并生成所述完整技能类的技能实例。
在其中一些实施例中,所述编译器使用java语言实现。
在其中一些实施例中,所述通过编译器将所述完整的技能类进行编译包括:
在程序运行的情况下,通过所述编译器的动态编译技术即时改变所述技能实现类。
在其中一些实施例中,所述技能模板包括释放技能对象、战场对象和辅助功能函数,所述技能实现类包括成员变量、成员函数和逻辑关系。
第二方面,本申请实施例提供了一种配置游戏技能的系统,所述系统包括:
服务器通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类;
所述服务器通过编译器将所述完整的技能类进行编译,并生成所述完整技能类的技能实例。
在其中一些实施例中,所述编译器使用java语言实现。
在其中一些实施例中,所述通过编译器将所述完整的技能类进行编译包括:
在程序运行的情况下,所述服务器通过所述编译器的动态编译技术即时改变所述技能实现类。
在其中一些实施例中,所述技能模板包括释放技能对象、战场对象和辅助功能函数,所述技能实现类包括成员变量、成员函数和逻辑关系。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项所述的配置游戏技能的方法。
第四方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项所述的配置游戏技能的方法。
相比于相关技术,本申请实施例提供的一种配置游戏技能的方法,通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类,然后通过编译器将该完整的技能类进行编译,并生成该完整技能类的技能实例,解决了在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题,提高了游戏技能或者buff设计上的灵活性,减少沟通成本。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种配置游戏技能的方法的应用环境示意图;
图2是根据本申请实施例的配置游戏技能方法的流程图;
图3是根据本申请实施例的配置游戏技能系统的结构框图;
图4是根据本申请实施例的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本申请提供的配置游戏技能的方法,可以应用于如图1所示的应用环境中,图1是根据本申请实施例的一种配置游戏技能的方法的应用环境示意图,如图1所示,其中,该应用环境的系统包括服务器10和智能终端11,其中,服务器10通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类,通过编译器将该完整的技能类进行编译,并生成该完整技能类的技能实例,应用于智能终端11的游戏软件中,实现游戏技能效果,解决了在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题,提高了游戏技能或者buff设计上的灵活性,减少沟通成本。
本实施例提供了一种配置游戏技能的方法,图2是根据本申请实施例的配置游戏技能方法的流程图,如图2所示,该流程包括如下步骤:
步骤s201,通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类,其中,技能是在满足一定的条件前提下,针对指定的任务、道具、npc和地图坐标实现一定效果的游戏行为指令,例如,对敌方攻击造成伤害,或者对友方加血产生增益效果。可选的,本实施例通过字符串拼接技术将程序中预先编写好的技能模板和策划编写的技能实现类代码进行合并,形成一个完整的技能类,其中,技能实现类由策划编写配置在excel表中,并以字符串的形式存在于程序中。实施例中程序编写技能基础模板,能简化程序并实现模块复用,降低开发成本,提高程序的可用性,此外,技能实现类由策划在表格中配置技能的相关参数,实现游戏技能的具体动作,两者分工明确,减少了沟通成本;
步骤s202,通过编译器将完整的技能类进行编译,并生成完整技能类的技能实例,本实施例通过编译器将上述得到的完整技能类进行编译生成完整技能类的技能实例,应用于智能终端11的游戏软件中,实现游戏中的技能效果,可选的,技能模板和技能实现类合并成的一个完整的技能类的技能实例的代码如下所示:
本实施例中实现的具体技能效果为:释放技能的对象发出攻击,造成目标1点掉血伤害,游戏人物被向左以及向右各传送1米,完成整个技能实例。
通过上述步骤s201至步骤s202,相对于现有技术中,在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题。本实施例中服务器10通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类,通过编译器将该完整的技能类进行编译,并生成该完整技能类的技能实例,应用于智能终端11的游戏软件中,实现游戏技能效果,解决了在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题,提高了游戏技能或者buff设计上的灵活性,减少沟通成本。
在其中一些实施例中,编译器使用java语言实现,其中,编译器是将源代码翻译为能直接被计算机或虚拟机执行的机器语言的目标代码,通常源代码为高级语言,如pascal、c、c 、java、汉语编程等或汇编语言,可选的,本实施例使用java语言的编译器将预选编写的技能模板和技能实现类进行编译生成完整技能类的技能实例,实现游戏中的技能效果。
在其中一些实施例中,通过编译器将完整的技能类进行编译包括:在程序运行的情况下,通过编译器的动态编译技术即时改变技能实现类,可选的,在程序运行的情况下,服务器10通过java语言编译器的动态编译技术能即时改变技能实现类,实现游戏技能的热更新。本实施例采用的动态编译技术可以在程序运行时即时加载编译,相比于相关技术中的静态编译,无需在程序运行前进行编译,流程简单,实现方便。此外,由于java语言的动态编译技术,使得游戏技能可实现热更新,提高了游戏技能和buff设计上的灵活性。
在其中一些实施例中,技能模板包括释放技能对象、战场对象和辅助功能函数,技能实现类包括成员变量、成员函数和逻辑关系。可选的,技能模板由程序员编写,并编写相关函数和变量提供给策划使用,一般包含有释放技能的对象,如代码中的playercaster,战场对象,如battlemapbattlemap和辅助功能函数broadcasteffect。技能模板能实现复用;此外,技能实现类由策划编写配置在excel表中,一般包含成员变量、成员函数和程序逻辑关系,表1是技能实现类表格配置表,如表1所示,可选的,逻辑关系有:数值运算,函数调用等,成员变量有:魔法值mp、血hp、目标变量target等,成员函数有:寻路函数、查找目标函数、地形判断、传送函数等,将技能模板和excel表中的技能实现类进行合并,然后用java的动态编译技术编译生成技能实例,实现游戏中的技能效果。实施例中策划和程序的分工明确,减少了沟通的成本,提高了程序的可用性,降低开发成本。
表1
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例还提供了一种配置游戏技能的系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本申请实施例的配置游戏技能系统的结构框图,如图3所示,该系统包括合并模块31和编译模块32:
合并模块31,用于通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类;编译模块32,用于通过编译器将完整的技能类进行编译,并生成完整技能类的技能实例。
通过上述系统,合并模块31中程序编写技能基础模板,能简化程序并实现模块复用,降低开发成本,提高程序的可用性,此外,技能实现类由策划在表格中配置技能的相关参数,实现游戏技能的具体动作,两者分工明确,减少了沟通成本;编译模块32通过编译器将得到的完整技能类进行编译生成完整技能类的技能实例,应用于智能终端的游戏软件中,实现游戏中的技能效果。整个系统解决了在实现游戏技能或者buff时,技能设计不灵活、限制大、沟通成本高和实现复杂的问题,提高了游戏技能或者buff设计上的灵活性,减少沟通成本。
在其中一些实施例中,编译器使用java语言实现,其中,编译器是将源代码翻译为能直接被计算机或虚拟机执行的机器语言的目标代码,通常源代码为高级语言,如pascal、c、c 、java、汉语编程等或汇编语言,可选的,本实施例使用java语言的编译器将预选编写的技能模板和技能实现类进行编译生成完整技能类的技能实例,实现游戏中的技能效果。
在其中一些实施例中,编译模块32还用于在程序运行的情况下,通过编译器的动态编译技术即时改变技能实现类,可选的,在程序运行的情况下,服务器10通过java语言编译器的动态编译技术能即时改变技能实现类,实现游戏技能的热更新。本实施例采用的动态编译技术可以在程序运行时即时加载编译,相比于相关技术中的静态编译,无需在程序运行前进行编译,流程简单,实现方便。此外,由于java语言的动态编译技术,使得游戏技能可实现热更新,提高了游戏技能和buff设计上的灵活性。
在其中一些实施例中,技能模板包括释放技能对象、战场对象和辅助功能函数,技能实现类包括成员变量、成员函数和逻辑关系。可选的,技能模板由程序员编写,并编写相关函数和变量提供给策划使用,一般包含有释放技能的对象,如代码中的playercaster,战场对象,如battlemapbattlemap和辅助功能函数broadcasteffect。技能模板能实现复用;此外,技能实现类由策划编写配置在excel表中,一般包含成员变量、成员函数和程序逻辑关系,可选的,逻辑关系有:数值运算,函数调用等,成员变量有:魔法值mp、血hp、目标变量target等,成员函数有:寻路函数、查找目标函数、地形判断、传送函数等。实施例中策划和程序的分工明确,减少了沟通的成本,提高了程序的可用性,降低开发成本。
下面结合应用场景对本发明进行详细的说明。
本发明的目的是提供一种配置游戏技能的方法和系统,本实施例中的配置游戏技能的技术方案的流程步骤包括:
s1,程序员编写技能基础模板,并编写提供给策划使用的相关函数和变量,技能模板中包含有复杂逻辑,且能实现复用;
s2,策划在excel表中配置技能实现类,并编写具体实现代码,其中主要包含了成员函数、成员变量和逻辑关系;
s3,服务器启动时将步骤1的技能模板和步骤s2的技能实现类合并成一个完整的技能类,使用java的动态编译技术编译并生成这个类的实例。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
另外,结合上述实施例中的配置游戏技能的方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种配置游戏技能的方法。
在一个实施例中,图4是根据本申请实施例的电子设备的内部结构示意图,如图4所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图4所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的数据库用于存储数据。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种配置游戏技能的方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
1.一种配置游戏技能的方法,其特征在于,所述方法包括:
通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类;
通过编译器将所述完整的技能类进行编译,并生成所述完整技能类的技能实例。
2.根据权利要求1所述的方法,其特征在于,所述编译器使用java语言实现。
3.根据权利要求1或2所述的方法,其特征在于,所述通过编译器将所述完整的技能类进行编译包括:
在程序运行的情况下,通过所述编译器的动态编译技术即时改变所述技能实现类。
4.根据权利要求1所述的方法,其特征在于,所述技能模板包括释放技能对象、战场对象和辅助功能函数,所述技能实现类包括成员变量、成员函数和逻辑关系。
5.一种配置游戏技能的系统,其特征在于,所述系统包括:
服务器通过字符串拼接技术将预先编写的技能模板和技能实现类合并成一个完整的技能类;
所述服务器通过编译器将所述完整的技能类进行编译,并生成所述完整技能类的技能实例。
6.根据权利要求5所述的系统,其特征在于,所述编译器使用java语言实现。
7.根据权利要求5或6所述的系统,其特征在于,所述通过编译器将所述完整的技能类进行编译包括:
在程序运行的情况下,所述服务器通过所述编译器的动态编译技术即时改变所述技能实现类。
8.根据权利要求5所述的系统,其特征在于,所述技能模板包括释放技能对象、战场对象和辅助功能函数,所述技能实现类包括成员变量、成员函数和逻辑关系。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至4中任一项所述的配置游戏技能的方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至4中任一项所述的配置游戏技能的方法。
技术总结