专利名称:一种网页游戏引擎及应用其开发网页游戏的方法
技术领域:
本发明涉及网页游戏开发技术领域,尤其涉及一种网页游戏引擎及应用其开发网页游戏的方法。
背景技术:
网络游戏是最受欢迎的娱乐休闲方式,但是网络游戏客户端文件体积过大,动辄几G,十几G的下载量,严重影响用户体验。而网页游戏具有打开浏览器就能玩,无需安装任何客户端,方便体验,轻松便捷的特点,越来越受到游戏玩家的青睐。目前网页游戏普遍采用的开发模式是集中式开发,即所有游戏功能集中在一个进程中执行,串行处理所有请求。当服务器承载人数过多时,这种串行处理排队机制,会造成相当长的处理延时,过长延时是用户无法接受的。这种集中式开发的速度,也因为游戏功能集中且相互限制,而受到很大制约。现有网页游戏开发模式,并没有形成一套完整的体系,传统的串行开发模式,开发周期长,功能杂糅,承载能力差,响应速度慢,功能扩展性和稳定性都无法满足广大网页游戏用户的需求。
发明内容
为弥补现有技术的不足,本发明提供了一种网页游戏引擎及应用其开发网页游戏的方法,根据网页游戏自身的技术特点和网页游戏一般功能结构,本技术方案提供的网页游戏引擎灵活轻便,易于开发维护。本技术方案提供的网页游戏引擎采用模块化开发方式, 结构清晰,扩展性强,稳定可靠,并且提供诸多标准化的功能模块,应用本技术方案提供的网页游戏引擎开发网页游戏可以筛选定制功能,门槛低,开发周期短。本发明提供的网页游戏引擎,包括网页游戏服务器、主逻辑模块、数据库模块和日志模块;所述主逻辑模块设有主逻辑模块接口,所述数据库模块设有数据库模块接口,所述日志模块设有日志模块接口 ;所述主逻辑模块设有主逻辑扩展接口,所述数据库模块设有数据库扩展接口,所述日志模块设有日志扩展接口 ;所述主逻辑模块、所述数据库模块和所述日志模块中至少两个模块通过各自的模块接口对接组合成所述网页游戏引擎。优选的所述主逻辑模块接口,用于所述主逻辑模块与所述网页游戏引擎已有的模块和/ 或新增加的模块对接;所述数据库模块接口,用于所述数据库模块与所述网页游戏引擎已有的模块和/ 或新增加的模块对接;所述日志模块接口,用于所述日志模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述主逻辑扩展接口,用于扩展所述主逻辑模块;所述数据库扩展接口,用于扩展所述数据库模块;
所述日志扩展接口,用于扩展所述日志模块。优选的所述主逻辑模块,用于提供网页游戏框架的功能子模块;所述数据库模块,用于将数据存储于数据库和从数据库中读取数据;所述日志模块,用于将所述网页游戏引擎已有的模块和/或新增加的模块的逻辑处理行为标记为日志记录目标,并对所述行为进行记录。优选的,还包括战斗逻辑模块,所述战斗逻辑模块设有战斗逻辑模块接口 ;所述战斗逻辑模块设有战斗逻辑扩展接口。优选的,所述战斗逻辑模块接口,用于所述战斗逻辑模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述战斗逻辑扩展接口,用于扩展所述战斗逻辑模块。优选的,所述主逻辑模块包括角色模块、道具模块、技能模块、交互模块和场景模块;所述角色模块设有角色模块接口,所述道具模块设有道具模块接口,所述技能模块设有技能模块接口,所述交互模块设有交互模块接口,所述场景模块设有场景模块接口 ;所述角色模块、所述道具模块、所述技能模块、所述交互模块和所述场景模块中至少两个模块通过各自的模块接口相互对接;所述角色模块设有角色扩展接口,所述道具模块设有道具扩展接口,所述技能模块设有技能扩展接口,所述交互模块设有交互扩展接口,所述场景模块设有场景扩展接口。优选的所述角色模块,用于处理所述网页游戏中的角色事务;所述道具模块,用于处理所述网页游戏中的道具事务;所述技能模块,用于处理所述网页游戏中的技能事务;所述交互模块,用于处理所述网页游戏与用户之间的交互事务;所述场景模块,用于处理、控制游戏场景;所述角色模块接口,用于所述角色模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述道具模块接口,用于所述道具模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述技能模块接口,用于所述技能模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述交互模块接口,用于所述交互模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述场景模块接口,用于所述场景模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述角色扩展接口,用于扩展所述角色模块;所述道具扩展接口,用于扩展所述道具模块;所述技能扩展接口,用于扩展所述技能模块;所述交互扩展接口,用于扩展所述交互模块;所述场景扩展接口,用于扩展所述场景模块。优选的,所述网页游戏引擎通过所述网页游戏服务器与路由设备连接并接入网络,所述网页游戏服务器通过所述网络与网页游戏用户使用的信息处理设备连接,所述网页游戏服务器通过所述网络将所述信息处理设备请求的数据发送到所述网页游戏用户使用的所述信息处理设备上并通过所述信息处理设备上的网页浏览器显示出来。优选的,组成所述网页游戏引擎的所有模块各自独立响应、并行处理所述信息处理设备的各种请求,所述所有模块之间通过所述模块接口或所述扩展接口相互连接通讯。本发明提供的应用所述网页游戏引擎开发网页游戏的方法,包括以下步骤Si,根据网页游戏情节需要选取所述网页游戏引擎提供的模块;S2,若所述网页游戏引擎提供的模块不能满足需要则编写所需模块,如能满足则直接进行S3 ;S3,通过各模块的模块接口和/或扩展接口,对接、组合Sl和S2提供的模块,形成网页游戏框架;S4,根据游戏情节需要制作生成图像资源文件、音频资源文件、脚本资源文件以及其它类型的资源文件;S5,组合S3形成的网页游戏框架和S4所制作生成的资源文件,完成网页游戏开发。本发明的有益效果是1.本发明提供的网页游戏引擎灵活轻便,易于开发维护。本发明提供的网页游戏引擎采用模块化开发方式,结构清晰,扩展性强,稳定可靠,并且提供诸多标准化的功能模块,应用本技术方案提供的网页游戏引擎开发网页游戏可以筛选定制功能,门槛低,开发周期短。2.本发明提供的网页游戏引擎将传统网页游戏开发繁杂的过程进行简化,设计成通用模块,使用本发明提供的网页游戏引擎开发网页游戏,只需要对现有模块进行整合,仅个别未提供模块,需要重新开发。整合模块完成,游戏开发即完成了。这是网页游戏开发方式的一次飞跃,摒弃由策划设计,到程序开发,策划调整设计,程序再调整开发,传统的串行开发模式,实现完全自由开放,随意组合的搭积木式开发,大大提高了开发效率,缩短开发周期。
图1是本发明的网页游戏引擎的结构示意框图;图2是应用本发明的网页游戏引擎开发网页游戏的方法的步骤流程框图;图3是应用本发明的网页游戏引擎开发一款网页游戏的实例示意框图。
具体实施例方式下面结合附图对本发明进行详细介绍本发明提供的网页游戏引擎,包括网页游戏服务器、主逻辑模块、数据库模块和日志模块;所述主逻辑模块设有主逻辑模块接口,所述数据库模块设有数据库模块接口,所述日志模块设有日志模块接口 ;所述主逻辑模块设有主逻辑扩展接口,所述数据库模块设有数据库扩展接口,所述日志模块设有日志扩展接口 ;所述主逻辑模块、所述数据库模块和所述日志模块中至少两个模块通过各自的模块接口对接组合成所述网页游戏引擎。所述主逻辑模块接口,用于所述主逻辑模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述数据库模块接口,用于所述数据库模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述日志模块接口,用于所述日志模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述主逻辑扩展接口,用于扩展所述主逻辑模块;所述数据库扩展接口,用于扩展所述数据库模块;所述日志扩展接口,用于扩展所述日志模块。所述主逻辑模块,用于提供网页游戏框架的功能子模块;所述数据库模块,用于将数据存储于数据库和从数据库中读取数据;所述日志模块,用于将所述网页游戏引擎已有的模块和/或新增加的模块的逻辑处理行为标记为日志记录目标,并对所述行为进行记录。所述网页游戏引擎还包括战斗逻辑模块,所述战斗逻辑模块设有战斗逻辑模块接口 ;所述战斗逻辑模块设有战斗逻辑扩展接口。所述战斗逻辑模块接口,用于所述战斗逻辑模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述战斗逻辑扩展接口,用于扩展所述战斗逻辑模块。所述主逻辑模块包括角色模块、道具模块、技能模块、交互模块和场景模块;所述角色模块设有角色模块接口,所述道具模块设有道具模块接口,所述技能模块设有技能模块接口,所述交互模块设有交互模块接口,所述场景模块设有场景模块接口 ;所述角色模块、所述道具模块、所述技能模块、所述交互模块和所述场景模块中至少两个模块通过各自的模块接口相互对接;所述角色模块设有角色扩展接口,所述道具模块设有道具扩展接口, 所述技能模块设有技能扩展接口,所述交互模块设有交互扩展接口,所述场景模块设有场景扩展接口。所述角色模块,用于处理所述网页游戏中的角色事务;所述道具模块,用于处理所述网页游戏中的道具事务;所述技能模块,用于处理所述网页游戏中的技能事务;所述交互模块,用于处理所述网页游戏与用户之间的交互事务;所述场景模块,用于处理、控制游戏场景;所述角色模块接口,用于所述角色模块与所述网页游戏引擎已有的模块和/ 或新增加的模块对接;所述道具模块接口,用于所述道具模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述技能模块接口,用于所述技能模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述交互模块接口,用于所述交互模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述场景模块接口,用于所述场景模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述角色扩展接口,用于扩展所述角色模块;所述道具扩展接口,用于扩展所述道具模块;所述技能扩展接口,用于扩展所述技能模块;所述交互扩展接口,用于扩展所述交互模块;所述场景扩展接口,用于扩展所述场景模块。所述网页游戏引擎通过所述网页游戏服务器与路由设备连接并接入网络, 所述网页游戏服务器通过所述网络与网页游戏用户使用的信息处理设备连接,所述网页游戏服务器通过所述网络将所述信息处理设备请求的数据发送到所述网页游戏用户使用的所述信息处理设备上并通过所述信息处理设备上的网页浏览器显示出来。组成所述网页游戏引擎的所有模块各自独立响应、并行处理所述信息处理设备的各种请求,所述所有模块之间通过所述模块接口或所述扩展接口相互连接通讯。本发明提供的应用所述网页游戏引擎开发网页游戏的方法,包括以下步骤Si,根据网页游戏情节需要选取所述网页游戏引擎提供的模块;S2,若所述网页游戏引擎提供的模块不能满足需要则编写所需模块,如能满足则直接进行S3 ;S3,通过各模块的模块接口和/或扩展接口,对接、组合Sl和S2提供的模块,形成
7网页游戏框架;S4,根据游戏情节需要制作生成图像资源文件、音频资源文件、脚本资源文件以及其它类型的资源文件;S5,组合S3形成的网页游戏框架和S4所制作生成的资源文件,完成网页游戏开发。本发明提供的网页游戏引擎,包括主逻辑模块,战斗逻辑模块,数据库模块和日志模块四大部分。主逻辑模块又包括角色模块,道具模块,技能模块,交互模块,场景模块等各个子模块,每个子模块处理对应的网页游戏用户行为及请求,由于网页游戏用户在同一时间,可能使用的行为是不相同的,每个行为都有独立的模块进行处理,由于各模块采用并行处理方式处理网页游戏用户的行为所以大大提高了处理速度,使服务器处理性能大幅提升。战斗逻辑模块是最重要的处理模块之一,一般网页游戏的核心玩法就是战斗,战斗也是网页游戏中使用频度最高的模块,因此,提供了一个相对独立的战斗逻辑模块,进行专门的战斗逻辑处理。数据库模块,负责游戏数据存取事务,网页游戏用户登录网页游戏时,将所述用户数据从数据库中读取出来,所述用户的各种行为,都可能改变所述用户的这些数据,数据改变必须即时保存到数据库,以避免数据丢失。数据库模块对频繁的数据存储和读取进行处理。日志模块和其他所有模块都相关联,任何模块的任何逻辑处理行为,都可以标记作为日志记录目标,对这些行为进行记录,可以进行网页游戏用户行为分析和数据挖掘,可以快速定位和查找BUG。为了实现快速开发的目的,本发明提供的网页游戏引擎针对网页游戏中常用功能,设计出各种通用模块,根据通用模块特点,进行细分和综合,形成四大核心模块并对模块进行封装,所有模块均提供模块接口及各种扩展接口,整个网页游戏引擎可以根据功能需要,快速调整而不必改动核心代码,各模块之间的耦合度关联性已经降到最低,从而保证模块之间的筛选和增减,只需要调整部分接口代码。利用本发明提供的网页游戏引擎开发网页游戏,只需要从本发明的网页游戏引擎提供的模块中筛选需要的模块,自由组合,再修改少量代码进行细微调整,就可以完成整个网页游戏的开发。本发明使网页游戏开发更加快捷,更加稳定可靠。本发明的网页游戏引擎提供的模块都经过严格的测试和性能优化,保证高效、稳定、可靠。以下结合附图详细说明应用本发明的网页游戏引擎开发网页游戏的过程以开发一款《网页版魔兽世界》为例,附图3列出了所述《网页版魔兽世界》的模块需求列表,其相对于本发明的网页游戏引擎(以下简称引擎)提供的模块增加了一些功能需求,如好友管理、宠物坐骑、背包存储、公会管理、荣誉声望、交易模块和组队模块等。由于功能增加,引擎提供的一些模块也随之调整接口,以便与新增加的功能模块对接。以新增“好友管理”模块为例,该模块包括添加好友,删除好友,查看好友信息3 个主要功能,这3个主要功能与引擎提供的数据库模块、日志模块和主逻辑模块的部分功能都有关联;添加和删除好友,需要读写数据库,因此,需调用引擎提供的数据库模块接口,增加好友数据库表,用来存放好友的数据库信息;
添加和删除好友的行为,还需要记录到日志中,则调用引擎提供的日志模块接口, 加入监控好友添加和删除的行为日志;查看好友信息,需要查看该好友相关的角色信息和技能信息,因此,“好友管理”模块需要调用引擎提供的角色模块和技能模块的对应接口;基于引擎提供的数据库模块、日志模块、角色模块和技能模块的扩展接口,就可以快速开发出好友管理模块的基础功能。再以,新增“交易模块”为例,“交易模块”包括直接交易和拍卖行交易两大部分, 直接交易中,网页游戏用户发生的是以物易物、以物易钱两种方式,直接进行交易,瞬间完成;拍卖行交易中,所述用户发生的是以物易钱的方式,以挂单竞价拍卖、价高者得的方式进行交易;对于直接交易,涉及模块包括角色模块、背包存储模块和日志模块几个部分,当所述用户发生直接交易时,通过角色模块接口调用角色模块使角色的金币数额发生变化, 同时通过背包存储模块接口调用背包存储模块使道具类型、数量发生变化,且通过日志模块接口调用日志模块,在日志中加上相应的交易日志记录;对于拍卖行交易,涉及模块包括角色模块、背包存储模块、邮件管理模块、数据库模块和日志模块几个部分。拍卖行交易,所述用户行为分为,拍卖物品、竞价物品、一口价竞拍和查看拍品4个行为,倒计时结束,决定最终买家的一个系统倒计时行为;拍卖物品,需要通过背包存储模块接口调用背包存储模块,扣除对应的背包道具, 同时插入一条拍卖信息,这需要数据库模块接口调用数据库模块,创建拍卖信息数据表,存储该交易信息。同时通过日志模块接口调用日志模块,写入对应交易日志;查看拍品,需要通过数据库模块接口调用数据库模块进行查询,查看相关的拍卖信息。这个功能仅提供查询,则不需要额外进行日志或其他操作;竞价物品,需要通过角色模块接口调用角色模块,扣除对应物品价格的金币,通过数据库模块接口调用数据库模块更新数据库,更新相应拍卖条目的信息。通过日志模块接口调用日志模块,将竞价行为记录日志;一口价竞拍,需要通过角色模块接口调用角色模块,扣除对应物品价格的金币,通过数据库模块接口调用数据库模块更新数据库,更新相应拍卖条目的信息,通过日志模块接口调用日志模块接口,将竞价行为记录日志;系统倒计时结束,需要通过数据库模块接口调用数据库模块更新数据库,更新相应拍卖条目的信息,通过日志模块接口调用日志模块,将倒计时结束事件记录日志。以同样方式增加其它所有新增加的功能模块,将新增加的模块和引擎提供的模块通过模块接口和/或扩展接口对接,即完成了整个《网页版魔兽世界》的网页游戏框架,再根据游戏情节需要制作生成图像资源文件、音频资源文件、脚本资源文件以及其它类型的资源文件;最后将制作生成的资源文件与所述网页游戏框架组合,即完成了整个网页游戏开发。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
9
权利要求
1.一种网页游戏引擎,其特征在于包括网页游戏服务器、主逻辑模块、数据库模块和日志模块;所述主逻辑模块设有主逻辑模块接口,所述数据库模块设有数据库模块接口,所述日志模块设有日志模块接口 ;所述主逻辑模块设有主逻辑扩展接口,所述数据库模块设有数据库扩展接口,所述日志模块设有日志扩展接口 ;所述主逻辑模块、所述数据库模块和所述日志模块中至少两个模块通过各自的模块接口对接组合成所述网页游戏引擎。
2.根据权利要求1所述的网页游戏引擎,其特征在于所述主逻辑模块接口,用于所述主逻辑模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述数据库模块接口,用于所述数据库模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述日志模块接口,用于所述日志模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述主逻辑扩展接口,用于扩展所述主逻辑模块; 所述数据库扩展接口,用于扩展所述数据库模块; 所述日志扩展接口,用于扩展所述日志模块。
3.根据权利要求1所述的网页游戏引擎,其特征在于 所述主逻辑模块,用于提供网页游戏框架的功能子模块;所述数据库模块,用于将数据存储于数据库和从数据库中读取数据; 所述日志模块,用于将所述网页游戏引擎已有的模块和/或新增加的模块的逻辑处理行为标记为日志记录目标,并对所述行为进行记录。
4.根据权利要求1所述的网页游戏引擎,其特征在于还包括战斗逻辑模块,所述战斗逻辑模块设有战斗逻辑模块接口 ;所述战斗逻辑模块设有战斗逻辑扩展接口。
5.根据权利要求4所述的网页游戏引擎,其特征在于所述战斗逻辑模块接口,用于所述战斗逻辑模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述战斗逻辑扩展接口,用于扩展所述战斗逻辑模块。
6.根据权利要求1所述的网页游戏引擎,其特征在于所述主逻辑模块包括角色模块、 道具模块、技能模块、交互模块和场景模块;所述角色模块设有角色模块接口,所述道具模块设有道具模块接口,所述技能模块设有技能模块接口,所述交互模块设有交互模块接口, 所述场景模块设有场景模块接口 ;所述角色模块、所述道具模块、所述技能模块、所述交互模块和所述场景模块中至少两个模块通过各自的模块接口相互对接;所述角色模块设有角色扩展接口,所述道具模块设有道具扩展接口,所述技能模块设有技能扩展接口,所述交互模块设有交互扩展接口,所述场景模块设有场景扩展接口。
7.根据权利要求6所述的网页游戏引擎,其特征在于 所述角色模块,用于处理所述网页游戏中的角色事务; 所述道具模块,用于处理所述网页游戏中的道具事务; 所述技能模块,用于处理所述网页游戏中的技能事务;所述交互模块,用于处理所述网页游戏与用户之间的交互事务; 所述场景模块,用于处理、控制游戏场景;所述角色模块接口,用于所述角色模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述道具模块接口,用于所述道具模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述技能模块接口,用于所述技能模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述交互模块接口,用于所述交互模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述场景模块接口,用于所述场景模块与所述网页游戏引擎已有的模块和/或新增加的模块对接;所述角色扩展接口,用于扩展所述角色模块;所述道具扩展接口,用于扩展所述道具模块;所述技能扩展接口,用于扩展所述技能模块;所述交互扩展接口,用于扩展所述交互模块;所述场景扩展接口,用于扩展所述场景模块。
8.根据权利要求1所述的网页游戏引擎,其特征在于所述网页游戏引擎通过所述网页游戏服务器与路由设备连接并接入网络,所述网页游戏服务器通过所述网络与网页游戏用户使用的信息处理设备连接,所述网页游戏服务器通过所述网络将所述信息处理设备请求的数据发送到所述网页游戏用户使用的所述信息处理设备上并通过所述信息处理设备上的网页浏览器显示出来。
9.根据权利要求1-8中任一种所述的网页游戏引擎,其特征在于组成所述网页游戏引擎的所有模块各自独立响应、并行处理所述信息处理设备的各种请求,所述所有模块之间通过所述模块接口或所述扩展接口相互连接通讯。
10.应用权利要求1-9中任一种所述的网页游戏引擎开发网页游戏的方法,其特征在于包括以下步骤Si,根据网页游戏情节需要选取所述网页游戏引擎提供的模块;S2,若所述网页游戏引擎提供的模块不能满足需要则编写所需模块,如能满足则直接进行S3 ;S3,通过各模块的模块接口和/或扩展接口,对接、组合Sl和S2提供的模块,形成网页游戏框架;S4,根据游戏情节需要制作生成图像资源文件、音频资源文件、脚本资源文件以及其它类型的资源文件;S5,组合S3形成的网页游戏框架和S4所制作生成的资源文件,完成网页游戏开发。
全文摘要
本发明提供一种网页游戏引擎及应用其开发网页游戏的方法,其中网页游戏引擎,包括网页游戏服务器、主逻辑模块、数据库模块和日志模块;所述主逻辑模块设有主逻辑模块接口,所述数据库模块设有数据库模块接口,所述日志模块设有日志模块接口;所述主逻辑模块设有主逻辑扩展接口,所述数据库模块设有数据库扩展接口,所述日志模块设有日志扩展接口;所述主逻辑模块、所述数据库模块和所述日志模块中至少两个模块通过各自的模块接口对接组合成所述网页游戏引擎。本网页游戏引擎采用模块化开发方式,结构清晰,扩展性强,稳定可靠,并且提供诸多标准化的功能模块,应用本发明提供的网页游戏引擎开发网页游戏可以筛选定制功能,门槛低,开发周期短。
文档编号G06F9/44GK102402436SQ201110449318
公开日2012年4月4日 申请日期2011年12月29日 优先权日2011年12月29日
发明者张雷, 李振威, 李琛, 诸文彦, 谷峰 申请人:苏州新炎龙网络科技有限公司