资源描述
浙江工业大学本科毕业设计说明书(论文)
本科毕业设计说明书(论文)
(2013届)
论文题目 基于MMORPG类型的多人在线角色扮演网页游戏设计与实现
作者姓名 王岳春
指导教师 王奔
学科(专业) 软件工程0903
所在学院 计算机科学与技术学院
提交日期 2013年5月
I
II
摘要
网页游戏(WebGame)是网络游戏的一个重要发展方向,将信息技术、数据通讯传输技术、网络通信技术、控制技术及计算机软件技术综合运用于网络游戏,从而实现不需要安装客户端,只凭借浏览器就可以进行多人在线的网络游戏,甚至手机浏览器也可以游玩。《封神决2》是利用Flex技术实现用户界面的表现效果,其核心是使用浏览器的Flash插件显示swf动画,利用代码控制游戏界面与玩家的交互。
在毕业设计中使用了Adobe公司推出的FlashBuilder4.6编写程序代码,借助于Flash Professional实现玩家交互界面,基于After Effects实现游戏的动画效果,使用Photoshop实现游戏场景和各种图标。用户数据存储是基于Redis数据库,用PhotoSocket作为游戏逻辑服务器,MicrosoftIIS作为资源服务器,同时完成了一系列的业务逻辑和数据通讯。
该毕业设计完成了《封神决2》场景移动、地图传送、穿戴装备、装备强化、宝石合成、排兵部阵、自动战斗等基础功能,同时结合业务需求,实现了技能特效、场景特效、道具热感等功能。系统实现包含四个阶段,第一个阶段是进行需求分析,第二个阶段是制作游戏相关的动画、图片和图标,第三个阶段是通过代码控制动画的播放和进行业务流程的逻辑处理,第四个阶段是调整游戏画面与功能和修复程序缺陷。
关键词:网页游戏,Flex技术,Flash程序设计
63
Abstract
Web game (WebGame) is an important development direction of network game. The information technology, data communication transmission technology, network communication technology, control technology and computer technology are synthetically applied in web games. Web game has been achieved that it’s not necessary to download and install the client, only with opening the web page in the browser. And we can play multiplayer online games, even in mobile phone browser. "FengShengJue 2" uses Flex technology to achieve the expression effect of user interface, its core is using the Flash plugin of browser to shows SWF animation, using the code to control game interface and the interactions of players.
System in the graduation design uses Adobe FlashBuilder4.6 to code program, uses Flash Professional to achieve interactive interface of players, uses After Effects to achieve the animation effect of game, uses Photoshop to achieve game scenes and the game icons. User data storage is based on the Redis database, using PhotoSocket as game logic server, MicrosoftIIS as server of resources.
The graduation design has completed the basic function such as moving scene,map transfer,worn equipment,equipment to strengthen,gem synthesis, building formation and automatic combat, combined with the business requirements, at the same time, has achieve the skills, special effects, special effects, props thermal, and other functions.System implementation contains four stages, the first stage is the demand analysis, the second stage is to make animation, images and icons related to game, the third stage is to control playing of animation and handle the logic of business process with code, and the fourth stage is to adjust the graphics and features of game and fix bug.
Keywords:Web Game, Flex Technology, Flash Program Design
目录
摘要 I
ABSTRACT I
第一章 绪论 3
1.1 引言 3
1.2 研究背景及意义 3
1.3 本文的主要工作 5
第二章 《封神决2》综述 6
2.1 《封神决2》概述 6
2.2 《封神决2》模型结构 9
2.2.1 B/S模式简介 9
2.2.2 B/S结构的优点 10
2.3 《封神决2》的实现技术 10
2.3.1 Flex 技术介绍 10
2.3.2 Flex 技术优缺点 10
第三章 系统需求分析 11
3.1 系统功能需求 11
3.2 游戏GUI需求 13
3.3 系统性能需求 16
3.4 运行环境需求 17
第四章 系统设计 18
4.1 数据库设计 18
4.1.1 服务器端静态数据CSV数据表及其字段 18
4.1.2 客户端静态数据XML数据配置表及其字段 20
4.2 客户端数据中心设计 21
4.2.1 玩家账号信息存储 21
4.2.2 角色信息存储 21
4.2.3 道具信息存储 23
4.2.4 阵法信息存储 25
4.2.5 地图信息存储 26
4.2.6 游戏模型信息存储 27
4.3 显示角色功能的设计 28
4.3.1 角色页签的设计 30
4.3.2 显示角色属性的设计 30
4.3.3 显示角色模型的设计 31
4.3.4 角色装备栏的设计 31
4.3.5 角色经验条的设计 31
4.3.6 显示二级属性面板的设计 32
4.3.7 关闭按钮的设计 32
4.4 显示道具功能的设计 32
4.4.1 道具格的设计 34
4.4.2 下拉框的设计 35
4.4.3 按钮的设计 36
4.5 阵法界面的设计 36
4.5.1 阵法角色列表的设计 38
4.5.2 九宫格阵法排列的设计 39
4.5.3 显示阵法属性的设计 40
4.5.4 阵法升级的设计 40
4.6 道具强化功能的设计 41
4.6.1 装备洗练功能的设计 41
4.6.2装备继承功能的设计 43
4.6.3宝石合成功能的设计 43
4.6.4镶嵌功能界面的设计 44
4.6.5强化界面其他内容的设计 45
第五章 系统实现 46
5.1 游戏场景的实现 46
5.2 角色、道具系统的实现 47
5.2.1角色界面的实现 47
5.2.2包裹界面的实现 48
5.3 阵法系统的实现 49
5.4 强化系统的实现 50
5.4.1强化界面的实现 50
5.4.1洗练界面的实现 51
5.4.1镶嵌界面的实现 52
5.4.1继承界面的实现 53
5.4.1合成界面的实现 54
5.5 星盘系统的实现 55
5.6 游戏地图的实现 56
5.7 游戏战斗场景的实现 57
第六章 总结和展望 58
6.1 完成的工作 58
6.2 存在的问题及下一步操作 58
参考文献 59
致谢 60
附录 61
附录1 毕业设计文献综述 61
附件2 毕业设计开题报告 61
附件3 毕业设计外文翻译(中文译文与外文原文) 61
图目录
图3- 1 游戏基本功能用例图 11
图4- 1角色界面数据流图 29
图4- 2包裹界面数据流图 33
图4- 3阵法界面数据流图 37
图4- 4强化界面数据流图 41
图5- 1游戏场景 46
图5- 2角色、道具界面 47
图5- 3包裹界面 48
图5- 4阵法界面 49
图5- 5强化界面 50
图5- 6洗练界面 51
图5- 7镶嵌界面 52
图5- 8继承界面 53
图5- 9合成界面 54
图5- 10系盘界面 55
图5- 11世界地图 56
图5- 12区域地图 56
图5- 13战斗场景 57
表目录
表3- 1游戏设计的主要功能 11
表3- 2游戏UI的功能和设计 14
表4- 1角色账号字段表 21
表4- 2角色信息字段表 22
表4- 3角色等级信息字段表 23
表4- 4道具信息字段表 23
表4- 5道具基本属性字段表 24
表4- 6装备强化信息字段表 24
表4- 7套装属性字段表 25
表4- 8阵法详细信息字段表 25
表4- 9阵法基本属性字段表 26
表4- 10地图传送节点字段表 26
表4- 11地图场景信息字段表 27
表4- 12游戏模型字段表 27
表4- 13模型数据信息字段表 27
表4- 14怪物队伍信息字段表 28
浙江工业大学本科毕业设计说明书(论文)
第一章 绪论
1.1 引言
网页游戏简称Web游戏,其特点是不需要象传统游戏那样,下载客户端软件,而仅利用浏览器平台就可以运行游戏[1]。
网页游戏以其具有一般网络游戏互动社区的交流功能,同时具有无客户端网页登陆的特点,带给广大网络用户不一样的感受[4]。
网页游戏只要能打开IE,10秒钟即可进入游戏,不用下载庞大客户端,更不存在机器配置不够的问题,最重要的是关闭或者切换极其方便[5]。
Flash网页游戏是一种新兴起的游戏形式,以游戏简单、操作方便、绿色无需安装、文件体积小等优点而渐渐被广大网友所喜爱[6]。Flash被广泛应用于一些趣味化和小型的游戏之上,主要是因为它基于矢量图的优势,运行效率比较高,而且表现效果也比较好。对于一般的2D游戏来说,Flash的功能完全能够满足开发需求。对于一个玩家来说,只要有安装Flash Player的插件就可以玩Flash游戏了,而且这个插件很小,用途广泛,在通常的网页浏览中也会用到。
1.2 研究背景及意义
网页游戏的热潮是近两年开始的,作为一个“新事物”重新被越来越多的网民所重视起来,包括网络用户、开发厂商、投资人士等,共同审视这个被忽视的游戏类型。网页游戏的“特殊”,取决于其自身在两大领域中的特殊地位。其一,在网络娱乐领域当中,它与客户端网络游戏一样,属于网络娱乐体系的一个分支。网页游戏如今所表现出来的发展态势,也可以说是个繁盛的开端。其二,在WEB2.0应用领域,网页游戏也是一个利用浏览器所进行交互性展示的重要支线。而在今天,甚至对于WEB2.0如何获取用户群体方面,网页游戏比视频类网站更具有先进性和用户粘稠度。具有了如上两大特点,网页游戏重新被关注几乎是一种必然的趋势。尽管中国的互连网发展较为落后,但发展速度却是有目共睹的。在这种条件下,网页游戏将会得到长足发展并达到新的高峰也已经是一种不争的事实[8]。
随着网民认知程度的提高,网页游戏的市场越来越大,用户将越来越多。但是由于大多数用户只是将网页游戏当作不玩大型网络游戏时的辅助娱乐,这也决定了网页游戏市场与大型网络游戏市场息息相关。有分析机构预测,未来4年,国内网页游戏市场还将保持20%以上的增长率,预计到2013年的市场规模将达到3O亿元,并将占到整个网游总收入的5%至10%左右[7]。
天涯社区的游戏平台已经上线运营。在之前版本的天涯游戏平台中,拥有了所运营的游戏产品及相关活动、充值、客服等模块,还提供其他游戏功能。据《IT时代周刊》了解,天涯游戏平台现运营网页游戏五款,年内将每月引进至少一款新产品。除此之外,包括人人网、开心网在内的多家公司已经全面进入网页游戏联合运营领域,这些拥有庞大访问量的社交网站,正在尝试将无法立即变现的闲置流量通过网页游戏的方式转为盈利[2]。
目前,我国有近300多家互联网公司在开发及运营网页游戏,市面上正在运营和即将运营的各类网页游戏就已经超过450款,并按每4天3个的速度在持续增长。
现在市面上的网页游戏突然增加很多,让人眼花缭乱,但是很多的色情、虚假广告让玩家苦不堪言。其实一款网页游戏能否成功必须具备通过三项测试:首先就是游戏画面,由于网页游戏不提供客户端下载,而且网速的限制使图片大小有一定的限制,所以画面制约了网页游戏的发展,很多游戏就是因为玩家无法被粗糙的画面吸引,即使拥有再丰富的内容,也无法留住玩家。除了画面,游戏平衡性算得上是游戏的灵魂,—款游戏平衡与否,或者说是有多么平衡,将决定这款游戏的生存时限。最后,游戏的可玩性才是决定最终成败的关键。现在的网页游戏,抄袭、照搬、借鉴、模仿的作品比比皆是,成功的作品让诸多小游戏开发商拿去改头换面之后,又投放市场,欺骗玩家,让人愤慨[3]。
2009年7月15日,英国《卫报》刊发了一篇文章《<Evony>是不是互联网最下流的游戏?》,对游戏的侵权行为和色情营销进行了谴责。一些游戏公司则通过自己的产品对《Evonv》进行恶搞。在民间,一些网民也通过不同形式对《Evony》进行冷嘲热讽,甚至在Facebook上成立了一个相关的小组。仔细研究《Evony》的赢利模式,会发现与中国市场上大量的网页游戏如出一辙:如游戏一开始便赠送给玩家总计“价值150美元”的两个礼包,使玩家养成使用游戏币的习惯;玩家在购买30元的游戏币7天后,将免费获得50美元的礼包,吸引玩家第一次消费;有大量消耗游戏金币的游戏,如轮盘等带赌博性质的小游戏;iEvony,一个类似传销行为的官方程序,下载后可以导出玩家在MSN、Yahoo、Skype上的好友并发送游戏邀请,邀请者可以通过好友在游戏中的消费获益,以此来吸引玩家自发地推广,进而扩大用户等等[9]。这些营销手段和目前国内市场上的网页游戏运营行为一样。
1.3 本文的主要工作
随着中国网民群体的发展,网络游戏变得非常普遍,已经深刻影响了网民的日常生活[12][10]。但是客户端网游拥有庞大的客户端数据,而且操作繁杂。网页游戏的兴起解决了大量网民随时随地游戏的问题,已经成为网民尤其是上班族关注的焦点[11]。本论文以网页游戏为模板,设计可以供多人在线进行社交与娱乐的游戏。
各章内容概括如下:
第一章,介绍了本次设计研究的背景及意义和本文的主要工作。
第二章,详细介绍了《封神诀2》的基本概念,模型结构及其实现技术。
第三章,介绍了一些系统的总体需求分析。
第四章,详细介绍了本系统的主要设计,其中包含了静态数据库和动态数据库的设计,客户端数据中心的设计,各个GUI界面的设计,包括配套的数据存储结构、用户交互、与服务器的通信等。
第五章,详细介绍了本系统的主要实现的功能,包括游戏场景、角色系统、包裹系统、阵法系统、强化系统、星盘系统、地图功能和战斗场景。
第六章,主要对本文和以后发展的总结和展望。
第二章 《封神决2》综述
2
2.1 《封神决2》概述
网页游戏是一种特殊的网页交互处理模式,有着同传统的动态网页交互程序相类似的工作机理:将客户端的数据交互传递到server上,server处理完以后再展现在client上。出于游戏的娱乐需求,网页游戏所进行的数据形式交互更加复杂,交互动作更加频繁,实时性更为突出[10]。
《封神决2》是一款基于MMORPG的网页游戏,由杭州瓦卡科技有限公司负责开发。主要由14个系统(玩法)组成。
(1) 装备系统
玩家的角色可以穿戴装备,包括1件武器:手,4件防具:身体、披风、头盔、靴子,1件首饰:戒指。玩家打开装备栏时会同时打开角色状态栏,可以清楚的知道自己所穿戴的装备。同种装备只能穿戴一件,如果身上穿着同类型的装备时会自动脱下原来的装备。装备的属性附加在角色身上,可以在角色面板看到总属性。
(2) 镶嵌系统
装备可以镶嵌宝石,以此来增加装备的属性。宝石有10个级别,各级别效果有差异,从1%到10%(或者其倍数)。类型有11种,包括力量、体质、敏捷、仙术、命中、闪避、暴击、暴伤、免暴、坚韧、反击。为避免某项属性太过突出,限定一件装备不能镶嵌2种及以上相同的宝石。镶嵌上宝石可以随时移除,避免有些玩家不舍得用。
(3) 热感系统
鼠标指针移到装备上时会出现装备热感,可以清楚的知道该装备的基础信息(名字、图标、需求等级、需求职业、物理攻击、物理防御、魔法攻击、魔法防御、生命、速度、价格)和附加信息(强化等级,附加属性:力量、敏捷、体质、仙术,镶嵌的宝石)。本地数据只有该装备的基础信息,其他附加信息均在服务器数据上,需要时用通讯手段从服务器获取。
鼠标指针移到道具上会出现道具热感,可以看到道具的基础信息(名字、图标、说明、价格)。
鼠标指针移到指定按钮、图标、文字上会出现帮助热感,说明该功能如何使用、有什么效果、需要什么条件等。
(4) 洗练系统
装备的附加属性有4种,根据装备品质的好坏最多可以有3条附加属性(力量、敏捷、体质、仙术),通过洗练系统可以更改附加属性的种类和值。洗练有2种方式:随机(游戏币)洗练、定向(人民币、点券)洗练[13]。随机洗练会改变属性的种类和大小,增加值会在-5到5之间。定向洗练不会改变属性的种类和大小,增加值会在-5到10之间。洗练的值是有上限和下限的,不同装备会有不同上下限。
(5) 合成系统
因为一件装备镶嵌的宝石是有数量限制的,玩家自然需要一些高级宝石,合成系统可以给玩家提供帮助。基本条件是3个相同种类和级别的宝石可以合成1个高级的同种类宝石。提供了一个宝石合成界面来实现宝石的合成。合成方式有两种:单个合成,批量合成。合成时客户端先判断是否达到合成条件,逻辑运算通过后向服务器发送合成命令,服务器验算后返回合成消息。
(6) 纸娃娃系统
玩家装备不同的装备会有不同的表现。
(7) 战斗系统
战斗系统为解放玩家的双手而设计,全程战斗由AI进行,玩家不需要对战斗过程进行操作,只需要观看战斗动画,而且允许跳过战斗动画。玩家在地图场景触碰怪物会向服务器发送战斗触发命令,服务器根据玩家信息和怪物信息进行战斗模拟,记录战斗过程,演算完毕后向客户端返回战斗触发命令,玩家进入战斗场景,播放战斗动画(包括移动、攻击动作、受击动作、技能特效、死亡特效等)。VIP用户可以跳过动画的观看。为了避免玩家疯狂刷怪而造成服务器负担,游戏使用活力点来限制玩家进入战斗的次数。活力消耗完毕后不能进入战斗场景,但可以做每日活动。
(8) 职业系统
职业包括剑客、弓手、法师、刀盾(伙伴独有),不同职业有不同的技能、战斗表现、角色模型,各职业初始属性不同,属性成长也不同,比如剑客物理攻击高、弓手暴击高,法师魔法攻击高,刀盾防御高。玩家的初始职业对后期的伙伴类型的选择有重要影响。
(9) 星盘系统
星盘可以增加玩家的各种属性。包括体质、仙术、力量、敏捷、命中、闪避、暴击、暴伤、力量成长、仙术成长、体质成长、敏捷成长。成长类属性可以增加角色的成长值(比如额外力量成长2,那么100级会获得额外200点数的力量),其他属性都是加固定值,具体数值根据星盘级别而不同。
(10) 伙伴系统
游戏要求玩家组成一个队伍与怪物进行战斗。伙伴可以帮助玩家打败怪物,在遇到强敌的时候,多几个伙伴会很有帮助。伙伴和玩家一样有职业之分,更有特殊的职业——盾刀,可以帮助玩家抵挡伤害。伙伴和玩家基本一样,只是没有星盘系统。不过,伙伴有合体技,2个或以上伙伴同时满足条件时会触发,造成更多的伤害并且有华丽的合体技特效。通常玩家身上可以带9个伙伴,其他放在仓库里。
(11) 阵法系统
阵法为九宫格阵法,包括玩家在内最多可以有5个人同时上阵(玩家必须上阵)。阵法有30个级别,每10级为一个阶段,每一级阵法附加属性的值增加,每一阶段阵法附加属性的数目增加。阵法分为前、中、后三排,前排增加体质、生命值、反击率,中排增加力量和仙术、伤害、暴击率,后排增加敏捷、速度、怒气。怪物有各种攻击范围,一个合适的排兵布阵能够让生命值少的角色存活更久,可能是打败敌人的关键所在。
(12) 地图系统
地图有三级,最高级是世界地图,第二级是区域地图,第三级是场景地图。多个场景组成区域地图,多个区域地图组成世界地图。场景地图分为城镇和野外两部分。城镇场景里有NPC,可以买卖东西、交谈、接任务等。野外场景里有怪物,玩家打败怪物来壮大自己。进入野外场景需要消耗活力值。玩家、NPC和怪物在场景里可以看到,并且会有移动、待机等动画表现。
(13) 怪物系统
怪物分为普通怪、BOSS和世界BOSS。普通怪在一个场景里有许多个,战斗力比较弱,是玩家升级打怪的主要对象。BOSS在一个场景只有一个或者几个,战斗力比较强,需要玩家有一定的实力和策略才能打败,是玩家获取装备的主要途径。世界BOSS是活动怪,每天的固定时间会出现,战斗力极强。世界BOSS的血量是全服务器共享的,全服务器的人都可以挑战。如果玩家被BOSS打败,那么一定时间之后会复活,可以继续挑战。对其造成的伤害会被统计,根据伤害会有奖励,而且进行与世界BOSS死亡前的最后一场战斗的玩家会有额外奖励。
(14) 活动系统
除了世界BOSS外还有其他活动供玩家娱乐。
2.2 《封神决2》模型结构
网页游戏基本功能如图2-1所示,其结构如图2-2所示:
网页游戏的功能
玩家与客户端的交互
客户端与服务器端的通讯
客户端逻辑和数据结构处理
服务器端逻辑和数据库处理
图2-1:游戏开发的内容
数据处理
服务器端
客户端
数据处理
游戏
数据库
游戏控制
图2-2:游戏的基本框架
1) 玩家与客户端的交互
主要是客户端UI界面的显示和事件处理。
2) 客户端与服务器端的通讯
主要是通过传输协议客户端向服务器发送请求,服务器处理后返回请求。
3) 客户端逻辑和数据结构处理
主要是根据服务器的消息和本地数据进行计算。
4) 服务器端逻辑和数据库处理
主要是根据客户端消息和数据库数据进行计算,并对数据库进行增删改。
2.2.1 B/S模式简介
B/S结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效[17]。
2.2.2 B/S结构的优点
B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再注册一个账号,就可以使用了[18]。
2.3 《封神决2》的实现技术
在目前网页游戏的实现技术中,较常用的有ASP技术、PHP技术、Flex技术、JSP技术等Error! Reference source not found.。《封神决2》使用了Flex技术。
2.3.1 Flex 技术介绍
Flex是Adobe公司最新的服务器端产品。该技术提供了一个新的、基于标准的语言和编程模型。其编程模型支持常用的设计模式。能够使企业创建许多有吸引力的、交互的快速应用。增强了用户对网页的体验。传统网页游戏开发的局限是表现层受到一定的约束,而Flex技术能轻松地解决这一技术难题[14]。
2.3.2 Flex 技术优缺点
运行效率一般,但是维护性好,有多种数据传递方法:Http Context、RemoteObject、Web Service等,可以开发大型网站,开源,控制Flash 播放,表现层界面更友好。
第三章 系统需求分析
2
3
3.1 系统功能需求
本次毕业设计系统的主要需求主要由策划组提出,根据策划组的设计来实现游戏的功能。主要研究和开发的功能如图3-1和表3-1所示:
图3- 1游戏基本功能用例图
表3- 1游戏设计的主要功能
功能需求
子功能
实现方法或原理
装备系统
穿戴装备
包括1件武器:手,4件防具:身体、披风、头盔、(帽子)、靴子,1件首饰:戒指。同级别的装备有不同的品质,属性有差异。同种装备只能穿戴一件。穿戴成功时装备属性附加到角色身上
卸载装备
需要背包有空位才能卸载,卸载后装备属性从角色身上移除
洗练系统
普通洗练
随机增加装备的附魔属性(-5到+5之间),随机变化附魔属性的类型(力量、敏捷、体质、仙术四种)
定向洗练
随机增加装备的附魔属性(-5到+10之间),附魔属性类型不变
确认洗练
如果对洗练的结果满意则确认将属性替换
取消洗练
如果对洗练的结果满意则不替换属性,保持原属性
镶嵌系统
镶嵌宝石
将宝石镶嵌到装备上以增加角色属性,以百分比形式增加。宝石有10个级别, 11种类别。单件装备不能镶嵌多个同种宝石
移除宝石
移除掉已经镶嵌的低级宝石为高级宝石留出空位。移除的宝石放回到玩家背包里,不会消失
强化系统
装备强化
装备的强化等级越高,装备的基础属性越高(攻击、防御等)。需求等级越高的装备强化属性加成越多,同级别品质越高的装备强化属性加成越多。强化等级不能超过角色等级
继承系统
继承装备
装备的强化等级可以继承到另一件装备上,回收在低级装备上消耗的资源
合成系统
宝石合成
将3个宝石合成1个高一级的宝石。高级宝石属比低级宝石有更高的属性加成
纸娃娃系统
改变外形
不同职业有不同的角色外形,不同装备有不同的装备外形
战斗系统
普通攻击
对目标进行普通攻击。播放普通攻击的动画,目标播放受击动画,根据职业、属性等计算伤害值,并在战斗场景中显示伤害值
技能攻击
对目标进行技能攻击、播放技能动画。伤害值根据技能、属性、怒气值进行计算。怒气值超过100释放技能,超过部分以百分比形式增加伤害
合体技
特殊指定的多个伙伴一起上战场时,当这些伙伴的怒气值都超过100则释放合体技。合体技播放特殊的合体技动画,对目标造成较高伤害
状态附加
Buff附加到角色身上时产生特殊效果
死亡
播放死亡动画,变灰、压缩、拉伸等动画形式
生命条表现
显示所有战斗单位的生命值,位于模型上方
跳过战斗
给予VIP玩家的特殊功能,允许VIP玩家跳过战斗过程直接获取战斗结果
战报
显示此次战斗获得的经验值和道具等信息
职业系统
盾刀
伙伴特有职业,生命多防御高的职业。主要用来放在阵法前排吸收伤害
剑客
属性比较平均的职业,可以适应任何阵法位置的战斗
弓手
速度比较快、暴击比较高、先手攻击的职业,适合阵法后排
法师
攻击比较高的职业,适合阵法中排
伙伴系统
招募伙伴
玩家完成某NPC的任务之后可以招募该NPC成为伙伴
伙伴出战
伙伴角色和玩家角色一样可以上战场进行战斗,享受阵法属性加成,有职业技能,有特殊合体技
伙伴携带
玩家只能带9个伙伴一起前往战斗场景,过多的伙伴存放在银行(酒馆),可以在城镇场景进行存取
阵法系统
阵法升级
阵法总共30级,每一级属性值增加,每10级多3条属性。分为普通领悟(游戏币)和元宝领悟(RMB)。普通领悟每次10点经验,20%概率20点。元宝领悟每次20点,20%概率40点。等级越高升级所需经验值越多
阵法前排
增加体质、生命值、反击率
阵法中排
增加力量和仙术、伤害、暴击率
阵法后排
增加敏捷、速度、怒气
9宫格阵列
显示角色模型,形象地表示队伍的阵型
星盘系统
星盘升级
星盘升级通过聚灵来获得经验值,升级后增加属性或者成长值
属性增加
增加角色的属性:体质、仙术、力量、敏捷、命中、闪避、暴击、暴伤
角色成长值
增加角色成长值:力量成长、仙术成长、体质成长、敏捷成长
地图系统
世界地图
最高级别的地图,包含多个区域地图
区域地图
包含多个场景地图,主要是将场景按照等级划分为一个区块
场景地图
分为城镇和野外两部分。城镇场景里有NPC,可以买卖东西、交谈、接任务等。野外场景里有怪物,玩家打败怪物来壮大自己。进入野外场景需要消耗活力值。玩家、NPC和怪物在场景里可以看到,并且会有移动、待机等动画表现
怪物系统
普通怪物
战斗力比较弱,但是成群出现的怪物。主要为玩家提供经验
BOSS怪物
战斗力比较强,数量比较少,但是会带一群普通怪物进行战斗,是玩家装备和道具的主要来源
世界BOSS
战斗力极强,几乎可以秒杀一切玩家。作为活动时的怪物出现,允许全服玩家同时对其进行挑战。根据玩家对其造成的伤害给予奖励,将之击杀的玩家有特殊奖励。是特殊道具、超级装备的来源
热感系统
道具热感
鼠标移动到道具上时出现的提示信息,包括名字、图标、说明、价格
装备热感
鼠标移动到装备上时出现的提示信息,包括名字、图标、需求等级、需求职业、物理攻击、物理防御、魔法攻击、魔法防御、生命、速度、价格、强化等级,附加属性:力量、敏捷、体质、仙术,镶嵌的宝石
帮助热感
鼠标指针移到指定按钮、图标、文字上会出现提示信息,说明该功能如何使用、有什么效果、需要什么条件等
3.2 游戏GUI需求
本次毕业设计完成的GUI主要由策划组提出,根据策划组的设计来实现客户端的功能,按照美术组的图片进行GUI的实现,在此基础上给予玩家用户一定的交互便利。GUI工程是一个Flash工程,它的作用是通过加工美术提供的GUI的fla文件,最终生成一个swc文件给主工程使用。这个工程可以用Flash打开,然后导入外部库,选择美术提供的fla文件。从外部库文件中选择相应的界面元件,在链接上注明类名称,然后编辑这个元件,如果需要子元件的实例,点击那个子元件,填上实例名称即可。最后发布为swc,复制到主逻辑工程的lib文件夹中。很多情况下,需要代码控制界面的表现,这时候需要在工程里对这个界面编辑代码、增加时间轴脚本等[15]。主要研究和开发的功能如表3-2所示:
表3- 2游戏UI的功能和设计
功能需求
子功能
实现方法或原理
角色面板
显示角色的基本属性
根据服务器获得的数据(角色基本属性、装备信息、星盘信息),解析之后保存在本地,再根据角色的等级成长、属性成长、装备附加、星盘附加来计算最终值,并显示在角色面板上
显示角色的扩展属性
根据角色的基本属性、装备附加、星盘附加计算扩展属性,显示在角色扩展属性面板上。当玩家将鼠标移动到角色模型上时显示扩展属性面板,鼠标移开时隐藏扩展属性面板
显示角色的模型
根据面板的设计,在面板固定位置显示当前选择的角色的模型(以swf格式保存)。默认播放角色待机状态的动画
显示角色穿戴的装备
将从服务器收到的角色装备信息解析,保存在本地,将对应的6种装备显示在角色面板的指定位置上。装备格以道具格的基本功能为模板
显示装备的属性
装备属性包括基本属性(客户端维护一张道具表),附加属性(保存在服务器数据库,包括附魔属性、宝石镶嵌属性、套装属性),显示面板使用了装备信息显示面板
卸下角色的装备
点击装备格会向服务器发送一个卸载装备的请求,根据返回成功或失败做不同的操作。成功:将装备从角色身上移到背包中,将装备的属性从角色属性中减去。失败:提示玩家不能卸载装备(比如背包已满)
不同伙伴之间的切换选择
点击角色栏左边的页签可以切换显示不同的角色,第一个是玩家角色,其他都是伙伴角色(在游戏中获得的NPC,伙伴没有星盘系统,拥有特殊职业盾刀,在战斗中可以使用合体技),选择页签之后角色面板上所有属性都将重新计算并显示
背包面板
道具格
封装成自定义控件类,作为显示道具的容器。显示道具的图标、堆叠数量,根据道具是否是装备调用装备信息显示面板和道具信息显示面板
道具筛选
封装成自定义控件类,功能和样式像Select Box。提供白色(表示全部道具)、蓝色、红色、紫色、橙色5种颜色选择相应品质的道具,触发筛选事件,调用筛选方法获得道具显示在背包面板上
装备穿戴
点击道具格,先判断是否是装备,否,什么也不做,是,向服务器发送穿戴装备请求。根据服务器返回信息进行操作,成功:将装备从背包移动到指定角色身上,否:提示穿戴失败
批量出售
点击批量出售按钮在背包面板右侧显示批量出售面板
批量出售面板
选择
此时点击道具无论是否是装备都会移动到批量出售面板的道具格中
取消选择
点击道具格此道具、装备回到背包
全部出售
将出售面板的道具提取出道具id并格式化,发送到服务器
关闭
将所有道具移回到背包
信息显示面板
道具属性显示
显示道具的信息:图标、名字、价格、说明
装备属性显示
显示装备的信息:图标、名字、价格、等级需求、职业需求、基础属性、强化属性、附魔属性、镶嵌属性、套装属性
帮助信息显示
显示某条帮助信息(如按钮的功能、名词的解释等)
阵法面板
阵法属性
显示当前等级的阵法的附加属性,在战斗中对角色属性进行加成
阵法升级
升级阵法获得更强的属性,总共30级,每10级为一个阶段,以星星表示等级。有
展开阅读全文