需求分析文檔
1.引言
1.1編寫目的:
作為軟件系統開發技術協議的參考依據,為雙方提供參考。根據遊戲特點,對被開發軟件系統的主要功能、性能進行完整描述,為軟件開發者進行詳細設計和編程提供基礎。為軟件提供測試和驗收的依據,即為選取測試用例和進行驗收的依據。
旨在為遊戲下階段的設計、開發提供依據和指導,為項目組成員對需求的詳盡理解,以及在開發遊戲項目中協同工作提供強有力的保證。本文檔的預期讀者有用戶、需求分析人員、項目經理、程序員和測試人員。在閱讀本文檔時,首先要了解產品的功能概貌,然後可以根據自身的需要對每一功能進行適當的了解。
1.2項目背景:
隨著計算機圖形處理能力的飛速提升,近幾年,遊戲畫面的表現水平已經有了很大的提升。畫面的精細的確對故事的表現力有很大幫助,但是許多遊戲不管怎麽玩,也沒法給我們帶來最初那種震撼與感動,那些低清的貼圖、棱角分明的 3D 形象,卻可能是我們最美好的記憶。
幸運的是,隨著手機處理能力的飛速提升,我們已經能在移動平臺上玩到許多屬於時代的經典遊戲,不管你是想買一份正版,補上當年盜版欠下的債,還是想回憶經典,追憶過去,或者幹脆作為一個新玩家,想體驗一下老遊戲。
1.2.1項目名稱:飛機大戰
1.2.2項目的提出者:王依民
項目開發者:王依民、胡曉倩、殷悅、胡應財、李克勤
用戶:遊戲玩家
實現該軟件的計算中心或網絡:個人電腦
同其他系統交互:操作系統
1.3定義:
(1) 血包:血包供戰機補給生命值
(2) BGM:Background Music,即背景音樂。
(3)血量:判斷角色是否死亡的標誌。
(4)經驗值:判斷角色是否能夠升級的標誌。
(5)攻擊力:對對面造成傷害的多少。
(6)暫停功能:遊戲進行過程中按下Z鍵可進入暫停模式,再按Z則返回遊戲
(7)回合:遊戲中玩家可以操作的時機,只有在自己的回合內才能控制自己的單位進行操作。
(8)攻擊範圍:攻擊的最大限度範圍,超過這個範圍則判定無法攻擊。
(9)無敵模式:遊戲進行過程中按下Y鍵可進入無敵模式,再按Y則返回正常遊戲。該模式下戰機生命值不會減少,可供測試使用
(10)魔法值:戰機魔法值會隨著時間遞增,魔法值供戰機道具功能的使用,過一個關卡魔法值不清零
(11)戰機大招:當戰機魔法值滿狀態時,按下X鍵消耗所有魔法值可發動大招,對屏幕中的敵機進行清屏
(12)防護罩:當魔法值不為0時,按下C鍵可打開防護罩道具,該狀態下戰機處於無敵狀態,不會損失生命值,但魔法值會隨著防護罩開啟慢慢降低
1.4參考資料
[1]竇萬峰.軟件工程方法與實踐[M].北京:機械工業出版社,2009.
2.任務概述
2.1項目目標
本項目是一個集休閑娛樂。豐富生活等諸多元素於一身的小遊戲。希望通過此項目的設計與推廣,為生活增添樂趣,增加休閑時間的活動。本項目名稱為“飛機大戰”,采用遊戲引擎Cocos Creator以JavaScript語言編寫,界面簡潔流暢,遊戲方式簡單,玩家易於上手。該項目還必須保證數據的安全性、完整性和準確性。
2.2用戶的特點
本項目的最終用戶可適應各個年齡階層,本項目易於上手,通過簡單了解遊戲規則即可進行遊戲。
2.3遊戲要求
① 遊戲可正常運行
② 可基本達到最終目標
③ 遊戲界面友好,易於交互
④ 項目具有較高的安全性和穩定性
2.4項目關鍵問題
①遊戲不能過於簡單單調,沒有吸引力,也不能太難,導致難以進行
②遊戲規則一定要明確,易於上手
③一定要進行足夠的測試確保遊戲得以正常運行
④各種設置要準確
2.5假定和約束
(1)軟件開發小組提供相應的開發階段文檔,用戶提供相適應的行業標準,使軟件開發與典型實例考核相結合。
(2)操作員與用戶要按照操作規程運行本項目,不得進行惡意破壞性操作。
程序開發人員需要在規定時間內進行系統設計、程序編碼、系統測試、程序調試等任務。
3.數據描述
3.1靜態數據
本遊戲定位為單機遊戲,需要考慮遊戲的平衡性,以帶給玩家更好的遊戲體驗。因此,本系統需要存儲每個角色自身屬性、敵機屬性、道具的效果、地圖自身的初始設定,以及優化遊戲的貼圖和音樂等。
3.2動態數據
①玩家進入遊戲信息
②玩家進入遊戲設置
③遊戲存檔記錄信息
④角色狀態變化
⑤道具加成變化
3.3數據庫描述
此遊戲的相關數據存儲采用的mysql8.0.12 for Win64 on x86_64 (MySQL Community Server - GPL)
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 |
|
M_name |
地圖名稱 |
VARCHAR |
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炸彈均具有一定的速度,且隨著關卡難度的增大,數量和速度均隨著關卡數增加而增加
4.5爆炸實現
添加碰撞效果,包括戰機子彈打中敵機爆炸、敵機炸彈打中戰機爆炸、戰機與敵機相撞爆炸、戰機子彈與敵機炸彈相撞爆炸、戰機子彈打中Boss、戰機與Boss碰撞以及戰機吃到血包七種碰撞效果。且碰撞發生後子彈、炸彈、血包均消失,戰機生命值減一,敵機和Boss生命值減少當前戰機炮彈威力的生命值,若敵機或Boss生命值歸零,則刪除敵機或Boss
4.6附加功能
①遊戲界面中顯示當前狀態下的關卡數、當前命數、當前得分、戰機血條、戰機魔法條、無敵模式提醒和戰機道具提醒,Boss模式下還有Boss血條
②進入遊戲先進入歡迎界面,歡迎界面中顯示遊戲使用說明,點擊鼠標左鍵和空格鍵開始遊戲。遊戲過程中戰機命數使用完、通關均有相應界面進行提醒,用戶可選擇重新開始遊戲或退出遊戲
5.功能說明
序號 |
功能項 |
描述 |
1 |
飛機能夠移動,發射子彈,用子彈擊毀敵軍戰機 |
|
2 |
飛機通過吃掉道具,改變自身屬性 |
|
3 |
敵軍飛機可以擊毀我軍飛機 |
|
4 |
Boss出現以及打敗Boss |
|
6.面向對象分析
略
7.運行環境規定
7.1遊戲開發過程中的電腦環境
設備處理器:Intel® Core™ i5-7200 CPU @ 2.50GHz 2.71GHz
內存(RAM):8.00GB(7.88GB可用)
系統:64位操作系統,基於x64的處理器
顯示適配器:Intel® HD Graphics 620
磁盤驅動器:HFS256G39TND-N210A
7.2運行環境
7.2.1設備環境:
普通PC, Intel Core 2雙核及以上,內存至少500M;需要4個以上的USB接口,支持雙鼠標和雙鍵盤工作。
7.2.2硬件環境:
此遊戲對計算機的配置要求不高,要求能正常運行當前主流編程軟件的計算機,即可正常運行該遊戲。但至少需要500M的硬盤空間,顯示器1280*768分辨率或者更高。
7.2.3軟件環境:
Cocos Creator v2.10
7.2.4網絡環境:
無
7.2.5操作環境:
Windows操作系統 Win2000/WinXP/Win7/Win8/Win10(32bit/64bit)
適應Windows操作系統不同的版本,支持不同類型的PC兼容機和筆記本電腦。
8.運行需求
8.1界面風格
遵守Windows風格
8.2硬件接口:與外部硬件的接口
鼠標、鍵盤必須是USB接口
8.3軟件接口:與其他軟件的接口
MySql數據庫
8.4故障處理
鼠標、鍵盤控制權交換故障,可通過重啟或重插拔恢復
9.其他要求
9.1 可用性、可維護性、可靠性、可移植性
遊戲可在不同的Windows平臺上使用,試玩。
遊戲支持不同的PC兼容機。
9.2安全保密性要求
無
9.3開發要求:支持軟件,包括操作系統、編譯程序、測試遊戲等
Cocos Creator版本v2.10及以上
Windows驅動MySql
按照黑盒測試方法設計測試遊戲用例進行驗收。
需求分析文檔