The invention discloses a desktop card game engine, which relates to a desktop card game and programming language technology field, which comprises a control module, parsing module, card management module, database module, communication module; the control module is used for processing events, initialization of the core game resources; module is used to simulate the actual effect of the process, including the actual effect of processing core mechanism and language interpreter; the card management module for the management of card bag, card, the effect can be independent of the game alone database editor, can also be used for game library editing; the syntax analysis module for conversion card the text can be used for brand and effect of game resources database; the communication module will be the actual game game player visual resources through the communication to the client, and Perform operational interaction. The invention can realize the core of the game processing engine and enable the player to be competent for the work of the custom card.
【技术实现步骤摘要】
一种桌面卡牌游戏引擎
本专利技术涉及桌面卡牌游戏与编程语言
,特指一种桌面卡牌游戏引擎。
技术介绍
卡牌类游戏是桌面游戏的一个类别,也是其中占比非常大的一个类别。主要包含以TCG(TradingCardGame集换式卡牌游戏)及其变种类型,针对广泛的以牌(特指单张牌)为核心的一大类桌面游戏,这些桌面游戏的存在以下共同点:一是牌之外的附带部件少,区别于版图、棋类游戏;二是重视牌与牌的互动而不是排列组合,区别于传统的扑克、麻将等游戏。由RPG(Role-PlayingGame)游戏进化而来的卡牌类游戏很自然地带有了RPG游戏的很多元素。首先,卡牌类游戏的基本元素有:区域、卡牌、效果,大多数卡牌类游戏都会有生物、法术、装备等不同类型的卡牌,这些牌会游走于战场的各个区域之间,通过效果、战斗等互动手段来进行对决,对于生物而言,生命值、攻击力等属性也是不可或缺的。其次是时间的离散性。卡牌类游戏的初衷是在桌面上进行RPG游戏的凝练,而桌面这一场合很难采取回合制以外的游戏方式,原因是缺少时钟。游戏的突现性也是一个重要的特征,很少有桌面游戏会选择设计固定数目的关卡,这十分不利于游戏的可玩性。而无限制的设计对于桌面游戏的开发与发行都是不可能的。所以桌面游戏往往把多变性体现在卡牌(或其他元素)的互动上。卡牌类游戏的原本设计目的是在桌面上,用卡牌来表示玩家的动作,进行交互式的游戏。而随着时代的发展,人们对互联网的依赖越来越大。卡牌类游戏的玩家们希望在不能见面时,也能通过网络进行游戏,这便产生了用计算机实现卡牌类游戏的需求。目前市面上的卡牌类游戏,一些主流游戏厂商大都推出了自 ...
【技术保护点】
一种桌面卡牌游戏引擎,其特征在于,所述桌面卡牌游戏引擎包括:核心模块、控制模块、文法分析模块、卡牌管理模块、数据库模块、通信模块;所述核心模块用来模拟实际效果流程,其包含实际效果处理的核心机制与语言解释器;所述控制模块用于处理分发事件、初始化游戏资源,为主控制流程;所述卡牌管理模块用于管理卡牌包、卡牌、效果,其独立于游戏单独进行数据库的编辑或/和用于游戏牌库编辑;所述文法分析模块用于将数据库中卡牌及效果文本转换为可使用的游戏资源;所述通信模块用于将实际游戏中玩家可视资源通过通信传给客户端,并进行操作上的交互。
【技术特征摘要】
1.一种桌面卡牌游戏引擎,其特征在于,所述桌面卡牌游戏引擎包括:核心模块、控制模块、文法分析模块、卡牌管理模块、数据库模块、通信模块;所述核心模块用来模拟实际效果流程,其包含实际效果处理的核心机制与语言解释器;所述控制模块用于处理分发事件、初始化游戏资源,为主控制流程;所述卡牌管理模块用于管理卡牌包、卡牌、效果,其独立于游戏单独进行数据库的编辑或/和用于游戏牌库编辑;所述文法分析模块用于将数据库中卡牌及效果文本转换为可使用的游戏资源;所述通信模块用于将实际游戏中玩家可视资源通过通信传给客户端,并进行操作上的交互。2.根据权利要求1所述的一种桌面卡牌游戏引擎,其特征在于,所述控制模块包括游戏初始化单元、游戏设置读取单元与游戏主控制流程单元;所述游戏初始化单元用于创建客户端资源、客户端通信线程,加载核心模块、文法分析模块、数据库模块;所述游戏设置读取单元用于将游戏所使用卡牌扩展包、游戏规则效果从数据库模块中读取出来,加载至核心模块中;所述主控制流程单元用于分发处理用户级事件,调用核心模块处理效果,将核心模块中的游戏资源信息显示给客户端。3.根据权利要求1所述的一种桌面卡牌游戏引擎,其特征在于,所述文法分析模块包括效果描述语言的文法结构、LR分析与抽象语法树的文法解析器;所述效果描述语言的文法结构包括元素的描述方式、效果的描述方式、以及条件分支与循环过程结构的支持方式;所述基于LR分析与抽象语法树的文法解析器的语言定义于LR文法中,使用LR分析器进行解析,将效果转化为抽象语法树后存于游戏资源中。4.根据权利要求1-3任一项所述的一种桌面卡牌游戏引擎,其特征在于,所述元素的描述方式为:所述元素包括区域、卡牌、效果、属性;游戏玩家拥有区域,区域拥有卡牌,卡牌拥有效果,区域、卡牌、效果可归类为对象,对象间使用拥有的方式获取,对象间是递归拥有的;所述效果的描述包括:将卡牌效果分解为动作,所有每个动作均视为一个效果,所述一个效果含有多条命令,每条命令含有效果调用名、施法者、目标、参数;条件分支与循环过程结构的支持方式包括:1)分支结构,在每条命令前加入条件,而所有命令仍构成同一效果,每个效果只可能有一层命令调用,分支的层数只有一层,复杂的分支结构使用多个效果叠加来实现;2)循环结构,选用递归的方式模拟可以实现不定次数的循环结构。5.根据权利要求4所述的一种桌面卡牌游戏引擎,其特征在于,所述核心模块的核心机制包括基于栈的效果调用机制、基于队列的事件机制、属性栈机制和世界分支机制;所述基于栈的效果调用机制包括:将一切的游戏动作均定义为效果,效果可以由效果产生,也可由效果触发;产生效果是指效果中所定义的必须发生的效果,产生效果是原效果的子效果;触发效果是指其它效果响应原效果后接连发生;由效果产生或触发的效果将在效果栈的最上层出现,并优先结算,为了动态处理接在效果后触发的效果,设置一个活动表记录活动的效果,以便在效果结束时进行搜索,直到调用了最底层的内建效果,则由核心模块中的内建效果对游戏资源进行操作;所述基于队列的事件机制包括:通过事件机制使用串行的方式模拟实体卡牌上描述的同时发生的效果;当一个效果同时产生了多个效果时,在所述多个效果结算完毕之前,所述多个效果将不能触发新的效果,但所述多个效果仍将产生子效果,进而对局面进行改变,在所述多个效果的最后一个效果处理完之前,所述多个效果的其他前面的效果可能已经处理完成;所述多个效...
【专利技术属性】
技术研发人员:白亮,栾绍童,
申请(专利权)人:中国人民解放军国防科学技术大学,
类型:发明
国别省市:湖南,43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。