热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

详细设计2.0

详细设计文档项目名称:英雄达拉崩吧小组名称:Scientific_ZEAL软工小分队项目负责人:刘帅小组成员:房渤萱张赐宋从

 

 

 

 

 

 

 

 

 

 

 

 

 

详细设计文档

 

 

 

 

 

项目名称:英雄达拉崩吧

小组名称:Scientific_ZEAL软工小分队

项目负责人:刘帅

小组成员:房渤萱 张赐 宋从智 冯惠妍

1. 引言

1.1编写目的

本部分旨在阐明编写详细设计的目的,面向读者对象。

本文档主要描述各个模块的细节设计,明确软件的结构与实现过程,分析各个模块,描述模块的功能、性能和结构等方面包括模块接口、调用关系、处理过程和算法,以及各个模块的测试方案。本文档的主要读者为软件设计人员、模块开发人员、管理人员、测试人员。

1.2项目背景

1.2.1项目来源

本项目一开始由刘帅、宋从智提出。

1.2.2项目实现

本项目由刘帅、宋从智、张赐、房渤萱、冯惠妍共5人共同实现。

1.3定义

(1)RPG:即Role-Playing-Game,角色扮演类游戏,在游戏中,玩家负责扮演这个角色在一个写实或虚构世界中活动。

(2)CG:Computer Animation,计算机设计动画。

(3)战棋模式:回合制的、角色扮演的、在地图上按格移动人物进行作战的游戏模式。因为这种游戏模式类似于下棋的博弈模式,故称为回合制战棋游戏。

(4)回合:游戏中玩家可以操作的时机,只有在自己的回合内才能控制自己的单位进行操作。

(5)攻击范围:攻击的最大限度范围,超过这个范围则判定无法攻击。

(6)行动力:每回合可以行走的最大距离。

(7)HPMP:即Health Point Mana Point,生命值和魔法值。当受到来自敌人的攻击时,生命值会减少,当生命值为0时,角色死亡;角色释放某些技能需要消耗一定量的魔法值。

(8)BUFF:即状态,分为增益BUFF和不良BUFF

(9)HP药:恢复一定血量。

(10)MP药:恢复一定魔法值。

(11)BUFF药:根据类别强化自身某项能力。

(12)血量:判断角色是否死亡的标志。

(14)经验值:判断角色是否能够升级的标志。

(15)攻击力:对对面造成伤害的数值。

1.4参考资料

[1]窦万峰.软件工程方法与实践[M].北京:机械工业出版社,2009.

[2] GB/T 8567-88,计算机软件产品开发文件编制指南[S]

1.5版本信息

项目编号

修改日期

修改后版本

修改位置

修改内容概述

1

2018-6-18

1.00

全部

第一次完成编写

2

2018-6-19

2.00

全局

增添部分内容,修改格式,完善文档

 

2. 总体设计

2.1需求概述

设置系统初始化:设置基本的参数,对各个子系统模块进行初始化操作。包括:设置英雄人物的初始属性,系统的指令记忆,各个装备的属性和所需的经济。

界面和地图设置:对过场动画,游戏界面,关卡地图等多方面内容进行设置。玩家在运行游戏后,可以依照剧情流程图中的顺序,详细查看每一个方面的细节内容。

游戏资料数据库设置:将游戏中所设计到的人物、技能、物品等多种参数进行合理化配置。包括数值数据和图片数据。

游戏进程控制:协助玩家进行合理的游戏流程,提示玩家当前的任务。

游戏存档:存储当前玩家已经进行的游戏进度,解决玩家由于时间缘故无法一次完成所有内容而需重新进行游戏的问题。

战斗执行:对多种战斗模式进行设置。

 

2.2软件结构

 

3. 程序描述

3.1模块基本信息

3.1.1系统初始化模块

主要包括:数据库信息载入、系统设置初始化

3.1.2界面和地图模块

主要包括:地图设置与界面设置

3.1.3游戏数据库模块

主要包括:人物设置、技能设置、道具设置

3.1.4游戏进度控制模块

主要包括:验证用户状态、检查用户当前游戏进度

3.1.5游戏存档模块

主要包括:角色存档、进度存档、时间存档

3.1.6战斗执行模块

主要包括:多回合处理、伤害计算、战斗结算

3.2算法

3-2-1 初始化模块调用以下算法完成该功能

模块2-1:

2-1-1 数据库信息载入

2-1-2 系统设置初始化

3-2-2 界面和地图设置中调用以下算法完成该功能

模块2-2

2-2-1 界面模块划分

2-2-2 界面美化

2-2-3 地图处理事物机制

2-2-4 地图图层搭建

2-2-5 地图BGM设定

2-2-6 地图事件触发设置

3-2-3 游战斗执行模块调用以下算法完成该功能

模块2-6

2-6-1 回合行动与伤害计算

2-6-2 多回合处理

2-6-3 结算

3.3程序逻辑

3.3.1系统初始化模块

    功能描述:

(1) 根据存档初始化游戏,生成游戏角色以及地图信息。

(2) 开始游戏

3.3.2界面和地图模块

    功能描述:

(1) 设置地图及界面图片,以及播放的背景音乐等

(2) 设置地图上可触发的事件

 

3.3.3游戏数据库模块

    功能描述:设置游戏中所有数据

 

3.3.4游戏进度控制模块

    功能描述:

(1) 根据游戏进度给予玩家提示。

(2) 根据游戏进度推进剧情。

 

 

 

3.3.5游戏存档模块

    功能描述:保存游戏当前状态,包括角色状态游戏进度、系统时间等。

3.3.6战斗执行模块

    功能描述:

(1) 设置战斗回合。

(2) 根据招式计算战斗伤害,判断胜负

 

3.4性能

(1)支持鼠标操作、键盘操作以及游戏手柄操作

(2)在CPU、内存高占用的条件下,无重大问题发生。

(3)加载过程时间过长时给出提示。

3.5接口

RPG MakerMV 接口

3.6测试要点

采用黑盒测试方法,对英雄人物的初始值、属性,以及界面与地图上事件的触发为测试要点。

转:https://www.cnblogs.com/song1900/p/9203787.html



推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 本文介绍了C#中数据集DataSet对象的使用及相关方法详解,包括DataSet对象的概述、与数据关系对象的互联、Rows集合和Columns集合的组成,以及DataSet对象常用的方法之一——Merge方法的使用。通过本文的阅读,读者可以了解到DataSet对象在C#中的重要性和使用方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
author-avatar
手机用户2502910855
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有