飞机大战游戏需求分析文档 5改
飞机大战游戏需求分析说明书
项目经理: 王依民
队伍组成:
计科1704 王依民 2017317210409
计科1704 胡应财 2017317210411
计科1704 殷 悦 2017317210427
计科1704 胡晓倩 2017317210428
计科1704 李克勤 2017317210429
软件工程
1.引言
1.1编写目的:
作为软件系统开发技术协议的参考依据,为双方提供参考。根据游戏特点,对被开发软件系统的主要功能、性能进行完整描述,为软件开发者进行详细设计和编程提供基础。为软件提供测试和验收的依据,即为选取测试用例和进行验收的依据。
旨在为游戏下阶段的设计、开发提供依据和指导,为项目组成员对需求的详尽理解,以及在开发游戏项目中协同工作提供强有力的保证。本文档的预期读者有用户、需求分析人员、项目经理、程序员和测试人员。在阅读本文档时,首先要了解产品的功能概貌,然后可以根据自身的需要对每一功能进行适当的了解。
1.2项目背景:
随着计算机图形处理能力的飞速提升,近几年,游戏画面的表现水平已经有了很大的提升。画面的精细的确对故事的表现力有很大帮助,但是许多游戏不管怎么玩,也没法给我们带来最初那种震撼与感动,那些低清的贴图、棱角分明的 3D 形象,却可能是我们最美好的记忆。
幸运的是,随着手机处理能力的飞速提升,我们已经能在移动平台上玩到许多属于时代的经典游戏,不管你是想买一份正版,补上当年盗版欠下的债,还是想回忆经典,追忆过去,或者干脆作为一个新玩家,想体验一下老游戏。
1.2.1项目名称:
飞机大战
1.2.2项目基本信息:
项目提出者:王依民
项目开发者:王依民、胡晓倩、殷悦、胡应财、李克勤
用户:游戏玩家
实现该软件的计算中心或网络:个人电脑
同其他系统交互:操作系统
1.3定义:
(1) BGM:Background Music,即背景音乐。
(2)敌机:我方战机的敌对方,共三种类型,分为小型、中型和Boss战机。
(3)攻击力:对对面造成伤害的多少。
(4)暂停功能:游戏进行过程中按下暂停按钮可进入暂停模式,再按下暂停按钮则返回游戏
(5)攻击范围:攻击的最大限度范围,超过这个范围则判定无法攻击。
(6)精灵机:即我方战机,在游戏引擎中,主角被称为精灵机,故我方战机取名为精灵机。
(7)战机大招:游戏过程中会随机降落清屏道具,吃下红色降落伞道具获取清屏功能,道具数量会叠加,按下道具按钮每次消耗一个道具可发动大招,对屏幕中的敌机进行清屏。
(8)狂暴模式:吃下随机掉落的黑色降落伞道具会自动触发战机双向炮弹进入狂暴模式,该状态下战机处于狂暴状态,不会损失生命值,持续时间15s.
1.4参考资料
[1]窦万峰.软件工程方法与实践[M].北京:机械工业出版社,2016.
[2]窦万峰.软件工程实验教程[M].北京:机械工业出版社,2016.
2.1项目目标
本项目是一个集休闲娱乐。丰富生活等诸多元素于一身的小游戏。希望通过此项目的设计与推广,为生活增添乐趣,增加休闲时间的活动。本项目名称为“飞机大战”,采用游戏引擎Cocos Creator以JavaScript语言编写,界面简洁流畅,游戏方式简单,玩家易于上手。该项目还必须保证数据的安全性、完整性和准确性。
2.2用户的特点
本项目的最终用户可适应各个年龄阶层,本项目易于上手,通过简单了解游戏规则即可进行游戏。
2.3系统整体结构
本系统是一个独立运行的系统,不需要与其他系统连接。
系统工作流程图如下:
2.4运行环境
2.4.1设备环境:
普通PC, Intel Core 2双核及以上,内存至少500M;需要4个以上的USB接口,支持双鼠标和双键盘工作。
2.4.2硬件环境:
此游戏对计算机的配置要求不高,要求能正常运行当前主流编程软件的计算机,即可正常运行该游戏。但至少需要500M的硬盘空间,显示器1280*768分辨率或者更高。
2.4.3软件环境:
Cocos Creator v2.10
2.4.4网络环境:
无
2.4.5操作环境:
Windows操作系统 Win2000/WinXP/Win7/Win8/Win10(32bit/64bit)
适应Windows操作系统不同的版本,支持不同类型的PC兼容机和笔记本电脑。
2.5游戏要求
① 游戏可正常运行
② 可基本达到最终目标
③ 游戏界面友好,易于交互
④ 项目具有较高的安全性和稳定性
2.6项目关键问题
①游戏不能过于简单单调,没有吸引力,也不能太难,导致难以进行
②游戏规则一定要明确,易于上手
③一定要进行足够的测试确保游戏得以正常运行
④各种设置要准确
2.7假定和约束
(1)软件开发小组提供相应的开发阶段文档,用户提供相适应的行业标准,使软件开发与典型实例考核相结合。
(2)操作员与用户要按照操作规程运行本项目,不得进行恶意破坏性操作。
程序开发人员需要在规定时间内进行系统设计、程序编码、系统测试、程序调试等任务。
3.数据描述
3.1静态数据
本游戏定位为单机游戏,需要考虑游戏的平衡性,以带给玩家更好的游戏体验。因此,本系统需要存储每个角色自身属性、敌机属性、道具的效果、地图自身的初始设定,以及优化游戏的贴图和音乐等。
3.2动态数据
①玩家进入游戏信息
②玩家进入游戏设置
③角色状态变化
④道具加成变化
3.3数据库描述
没用到数据库
3.4数据字典
字段名称 |
字段含义 |
数据类型 |
宽度 |
NULL |
备注 |
Uid |
玩家编号 |
VARCHAR |
12 |
NO |
|
Fid |
战机编号 |
CHAR |
10 |
NO |
|
Mid |
地图编号 |
CHAR |
5 |
NO |
|
Tid |
道具编号 |
CHAR |
5 |
NO |
|
Sid |
战机状态编号 |
CHAR |
5 |
NO |
|
SKid |
技能编号 |
CHAR |
5 |
NO |
|
F_name |
战机名称 |
CHAR |
15 |
NO |
|
T_name |
道具名称 |
VARCHAR |
15 |
NO |
|
S_name |
战机状态名称 |
VARCHAR |
15 |
NO |
战机状态 |
SK_name |
技能名称 |
VARCHAR |
15 |
NO |
|
SK_description |
技能描述 |
VARCHAR |
15 |
NO |
|
S_ description |
状态描述 |
VARCHAR |
15 |
NO |
|
T_ description |
道具描述 |
VARCHAR |
15 |
NO |
|
T_effect |
道具效果 |
VARCHAR |
15 |
NO |
表示道具的作用 |
3.5数据采集
游戏系统不需读取任何数据,直接点击运行。
4.功能需求
4.1背景移动
背景从上往下移动,当背景的上边框超过游戏界面下边框时应自动补图
4.2背景音乐
在战机发射子弹、精灵机击中敌机、敌机击中战机、精灵机敌机相撞、精灵机大招、游戏暂停、游戏结束时均添加了音效
4.3玩家移动
通过键盘,方向键和ASWD键可控制战机的位置,子弹自动发射,并且后期再增加鼠标控制战机位置这一效果,精灵机的位置随着鼠标的移动而移动。
4.4敌机创建
编写函数并调用函数随机产生敌机和Boss机。
界面中敌机出现的位置,以及敌机和Boss机均为随机的,敌机、Boss机均具有一定的速度,且随着游戏时间的推迟,后期逐渐增大,数量和速度均随着增加而增加。
4.5爆炸实现
添加碰撞效果,包括精灵机的子弹打中敌机爆炸、精灵机与敌机相撞爆炸、精灵机子弹打中Boss、精灵机与Boss碰撞以及精灵机吃到掉落的道具五种碰撞效果。且碰撞发生后子弹、炸弹、道具均消失。并且精灵机与敌机、Boss机发生碰撞则结束游戏。
4.6附加功能
①游戏界面中显示当前状态下游戏得分、无敌模式提醒和道具数量。
②进入游戏先进入欢迎界面,欢迎界面中显示游戏使用说明,点击鼠标左键开始游戏。游戏过程中精灵机命数使用完后用户可选择重新开始游戏或退出游戏。
5.功能说明
序号 |
功能项 |
描述 |
1 |
飞机能够移动,发射子弹,用子弹击毁敌军战机 |
1. 用WASD四个键控制飞机上下左右的移动。 2. 子弹发射出去,撞击敌军战机使其爆炸 |
2 |
飞机通过吃掉道具,改变自身属性 |
1. 飞机通过接触道具获得道具的加成 2. 增强子弹威力,提升伤害 |
3 |
敌军飞机可以击毁我军飞机 |
1. 敌军飞机由电脑调用函数随机产生 2. 当精灵机碰撞敌机时,精灵机失去生命,敌机也因此被撞毁,则游戏结束 |
4 |
Boss出现以及打败Boss |
1. Boss拥有比普通敌机更多的抗击能力 2. 当我军飞机与Boss碰撞时,我方战机直接撞毁。 3. 当我军子弹打中Boss机时,Boss机受到我方一定伤害后爆炸损毁。 |
6.详细描述
采用数据流图的方法建立模型。
本飞机大战系统运行游戏,加载游戏音效,生成敌机、战机(即精灵机)、游戏道具,战机发射子弹销毁敌机,改变敌机数量,战机使用游戏道具改变敌机数量,敌机数量改变,获得分数
战机子系统模块数据流图如下图所示:
战机子系统的数据流图
战机会根据代码随机生成,战机本身监听鼠标拖动事件和键盘事件,同时生成子弹,子弹击毁敌机,触发播放爆炸音效,同时增加分数。鼠标拖动战机,移动鼠标,战机移动,按下键盘键,实现飞机的上下左右移动
道具子系统模块数据流图如下图所示:
道具子系统数据流图
道具自动生成,道具分为两种,一种具有清屏功能,一种具有增加子弹数量功能。吃下清屏道具,道具数量叠加,按下道具按钮,实现清屏,道具数量减一。吃下增加子弹数量道具,会让子弹变成双道,威力增加。
敌机子系统模块数据流图如下图所示:
敌机子系统模块数据流图
敌机自动生成,分为普通敌机和Boss机,位置会随机变化,通过碰撞击毁我方战机,并触发爆炸音效的播放,然后结束游戏。
7.性能需求
7.1数据精准性
游戏内数据处理和计算的响应时间不超过5s,后续的实际运行中故障率、出错率均低于20%,软件故障率低于5%。以及相关的并发性、吞吐量。
7.2适应性
适应Windows操作系统的不同的版本。
支持不同类型的PC兼容机和笔记本电脑
能够适应不同类型的手机端
8.运行需求
8.1界面风格
遵守Windows风格
8.2硬件接口:与外部硬件的接口
鼠标、键盘必须是USB接口
8.3故障处理
鼠标、键盘控制权交换故障,可通过重启或重插拔恢复
9.其他要求
9.1 可用性、可维护性、可靠性、可移植性
游戏可在不同的Windows平台上使用,试玩。
游戏支持不同的PC兼容机。
软件故障率低于10%
9.2安全保密性要求
无
9.3开发要求:支持软件,包括操作系统、编译程序、测试游戏等
Cocos Creator版本v2.10及以上
Windows驱动
按照黑盒测试方法设计测试游戏用例进行验收。