基于unity的回合制卡牌游戏系统的设计与实现开题报告

 2023-12-01 10:08:19

1. 研究目的与意义

随着计算机技术的不断发展,网络传播速度越来越快,网络游戏已经成为现在人生活娱乐,打发时间,缓解压力的一项不可或缺的项目。其中卡牌游戏(麻将,扑克等),是从中世纪一直一直以实体风靡全球,直到现在完成电子化的一种游戏类型。其前景广泛,创作简单而不单调。从玩家角度来看,卡牌游戏上手简单,玩法多样,能够满足各种需求,抽卡设计满足赌博心理,短快操作符合当代人碎片化的时间。进阶来看,一款卡牌游戏如果获得成功,其后续开发也能够有足够的发展空间,包括周边产品(游戏角色手办,实体卡片等),玩法创新(开发新模式,新玩法等),各种活动(线上、线下比赛,抽奖赢奖励等)。卡牌游戏作为游戏制作的上手类型,难度够低,上限够高,对新手是一种很不错的练手选择。

本课题拟完成一款基于unity的回合制集换类卡牌游戏的设计与实现,用来给大家带来娱乐方面的一些民俗故事,缓解一些现实中的精神压力,给大家带来放松与欢笑。本系统拟采用unity引擎去制作服务器端与客户端。使用unity的优点有:容易上手,所见即所得:轻松开发,友好的可视化编辑界面功能强大,编写方便,极易上手。 功能齐全,缩短开发时间:Unity引擎简单易用,几乎集成了游戏开发的所有功能,更有Asset Store提供开发所需的所有资源。

2. 课题关键问题和重难点

基于unity的回合制卡牌游戏系统分为四个大模块:基于unity的服务器端开发、ui设计、游戏机制以及玩法的实现、游戏系统的分类开发。本课题拟完成基于unity的回合制卡牌游戏系统的设计与实现 。

本课题的关键:

1. 服务器的开发及数据存储

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 国内外研究现状(文献综述)

自上个世界50年代,电子游戏诞生于美国以来,伴随着信息技术的发展和互联网的偶极,电子游戏已经极大的改变了人们的生活,电子游戏产业也得以飞快的发展。长期以来电子游戏产业饱受争议,但是其创造的市场价值和带来的经济收益早已不容忽视。在日本、韩国、美国等文化娱乐高度发达的市场中,电子游戏有着举足轻重的地位。[1]从2000年开始,美国游戏产业产值已经超过了电影业,2020年全球游戏市场同期增长31.6%,达到20兆6471亿日元(约1.2138万亿人民币),2022年,日本游戏玩家已经正式超越了5500万,游戏行业成为了引领娱乐业发展的重要产业。[2]

在我国,随着经济的发展,政策的改变和社会宏观环境的变化,近年来,我国的电子游戏产业得到了快速发展,从端游英雄联盟、pubg等到移动手游如和平精英、王者荣耀等的风靡,我国游戏市场不断扩大,用户规模也逐年增长,截至2021年我国游戏市场实际销售收入达2965.13亿元,用户规模增速开始减缓,增速较为缓慢,我国游戏用户规模接近饱和,2021年用户规模达6.66亿人,仍保持千万级人数增长规模。[3]但是目前游戏市场整体呈现同质化趋势,大部分游戏换汤不换药,游戏核心玩法不变,缺少优质产品,缺少创新玩法。

针对玩法创新这一需求,国内外都进行了大量研究。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 研究方案

1. 系统功能结构

系统总体功能结构如图1所示

图1 回合制卡牌游戏系统功能总体结构图

1)UI界面

主界面为选择进一步功能而设计的页面,玩家可以在主界面选择加入对战、卡组管理

对战界面该界面为对战进行时的界面。

卡组管理界面主要功能是查看和管理自己的卡池。

2)逻辑模块

LUA脚本该功能用于卡牌规则的处理。

逻辑引擎:图形表现。

3)卡组构建

卡组管理:管理卡组,查询卡牌,能够进行卡组添加,卡组修改,卡组删除操作。

卡组预览:查看卡池或卡组

4)游戏对战

局域网对战:满足游戏需要双方玩家的基本需求。

5)游戏资源

保存游戏的美术,音乐和数据库资源,在需要时直接调用。

2. 核心功能流程图

图2 主界面功能流程图

图3 卡组管理流程图

图4 玩家对战流程图

3.研究方案

基于unity 3d 的回合制卡牌游戏系统的设计与实现主要分成三部分:

UI设计、数据库设计、逻辑系统设计

1)UI设计。设计好主页面,对战页面,以及卡组管理页面。

2)数据库表设计。

因为卡牌是集换类卡牌游戏的核心,因此数据库主要存储卡牌数据。卡牌所持有的属性数量是决定游戏性的关键。卡牌CARD数据库如表1所示:

表1CARD属性表

编号

字段名称

字段类型

字段说明

备注

1

CardId

Int

卡牌编号

主键

2

CardCost

Int

卡牌花费

3

CardName

String

卡牌名称

4

CardClass

Int

卡牌类别

5

CardType

Int

卡牌属性

6

CardSerious

Int

卡牌系列

7

CardRarity

Int

卡牌稀有度

8

CardAttack

Int

卡牌攻击力

9

CardHealth

Int

卡牌生命值

10

CardDesc

Int

卡牌描述

11

CardEffect

Int

卡牌效果

实体类表示如下:

CARD表(卡片id,主键自动递增,卡片花费,卡片名称,卡片类别,卡片属性,卡片系列,卡片稀有度,卡片攻击力,卡片生命值,卡片描述,卡牌效果)

3)逻辑系统设计

卡牌游戏最重要的基础就是核心规则的实现处理,本系统将图形处理逻辑与规则处理逻辑分离,让规则逻辑处理时不需要考虑到游戏图形的处理。由图形界面产生的时间会按照一定的格式传输到逻辑系统进行处理,逻辑系统处理完成后,将处理结果传回给图形界面,并且由图形界面绘制。简单流程如图5所示:

图5 逻辑系统处理流程图

此外,为了实现多样化的卡片效果,要新增一个Effect类,用来保存卡片效果,这类效果往往优先于基础规则。并且实际对战时,数据库只能说明卡牌是哪一种卡而无法说明是哪一张卡,因此实际上数据库的卡和游戏端的卡是一对多的关系。实际的卡牌id需要在游戏中临时生成。在效果对卡片进行处理时候,卡片往往是变动的对象,因此需要一个Field类来管理这些对象,并且处理场上所有的信息。Effect类的效果处理基本上交给Field类处理。最后,还需要一个Game类来创建一局新的游戏,包括充值玩家状态,生成参与游戏的Card和创建一个新的Field类,为Card类赋予LUA链接的脚本文件来获得Effect类。逻辑图如下所示:

图6 逻辑类关系图

5. 工作计划

2022-2023-1学期:

第15-16周:完成选题,查阅相关中英文资料。

第17周:与导师沟通进行课题总体规划。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。