Skip to content

Latest commit

 

History

History
172 lines (90 loc) · 3.84 KB

需求文档.md

File metadata and controls

172 lines (90 loc) · 3.84 KB

需求文档

**小组成员:**游添予、吴梦堉、董晨

**版本号:**1.0

**修订日期:**2020.7.11

修订记录:

版本号 修订人 日期 描述
1.0 董晨 2020.7.11 创建文档

目录:

基本信息

目录

  1. 引言

    1.1 项目背景

    1.2 参考资料

    1.3 假定和约束

    1.4 用户特点

  2. 功能需求

    2.1 界面相关

    2.2 人物相关

    ​ 2.2.1 人物属性

    ​ 2.2.2 人物动作

    2.3 功能相关

    ​ 2.3.1 道具

    ​ 2.3.2 战斗

    ​ 2.3.3 交易系统

    2.4 音乐音效相关

  3. 非功能需求

    3.1 合理性需求

    3.2 美观性需求

  4. 运行环境

    4.1 硬件设备

    4.2 软件支持


1.引言

####     1.1 项目背景

​ 本项目旨在实现一款经典策略RPG游戏《魔塔》。游戏具有复杂的系统和属性,例如攻击、防御、生命、金币、经验等,任何一个轻率的选择都可能导致游戏的失败。

​ 本项目将分为5个阶段完成。各阶段工作如下。

​ 第一轮迭代:设计整体MVVM架构;设计公用的数据结构,用于模块间传值。

​ 第二轮迭代:每个人负责Model、View、ViewModel模块中的一个,在各自的分支上进行开发,并进行单元测试。要求完成玩家状态(血量、攻击力等)和持有道具的显示、地图的显示和人物移动的交互(包括遇敌、开门、捡起道具、上下楼层)。

​ 第三轮迭代:每个人负责Model、View、ViewModel模块中的一个,在各自的分支上进行开发,并进行单元测试。要求完成特殊道具和npc的交互(包括显示怪物属性的道具、快速上下楼层的道具、用金币买属性的商人等)。

​ 第四轮迭代:添加背景音乐,增加存档功能(可能需要连接数据库)。

​ 第五轮迭代:整体测试,优化并修补漏洞。

​ 本项目由ZJU课程综合实践ⅡC++项目管理和工程实践魔塔小组开发。

#### 	1.2 参考资料
  • SJDXQcourseware(短学期教学资料),https://github.com/Zhejiang-University-GKC/SJDXQcourseware

      + MagicTowerTHU-MagicTower,https://github.com/MagicTowerTHU/MagicTower
    

    1.3 假定和约束

      + 使用C++语言开发
      + 使用Qt作为应用程序开发框架,开发GUI程序
      + 单机桌面版,不要求C/S,B/S架构。有GUI界面,并能通过界面完成一系列操作
    

1.4 用户特点

​ 本项目作为《C++项目管理和工程实践》课程的实验项目,其面向的用户主要是课程相关人员。

2. 功能需求

2.1 界面相关

	- 实现游戏窗口显示更新
	- 实现地图界面、道具界面和人物属性界面显示与更新

2.2 人物相关

##### 		2.2.1 人物属性
属性名 初始值
生命
攻击
防御
经验
金钱
##### 		2.2.2 人物动作

​ 实现任务的移动、拾取、碰撞、解锁、切换楼层、战斗等。

2.3 功能相关

##### 		2.3.1 道具

	- 不同颜色的钥匙可以解锁对应颜色的门
	- 剑可以增加攻击力、盾可以增加防御力
	- 显示怪物属性的道具
	- 快速上下楼层的道具

##### 		2.3.2 战斗

​ 实现与怪物的战斗,伤害计算为“攻击-防御”。

	##### 		2.3.3 交易系统

​ 与商人交互,可以用金币购买属性。

2.4 音乐音效相关

​ 实现播放音乐、音效。

3. 非功能性需求

3.1 合理性需求

​ 地图设计合理,解密方面可以通过,难度适中。

3.2 美观性需求

​ 界面美观、图片清晰、音乐音效有合理音质。

4.运行环境

4.1 硬件设备

4.2 软件支持