【正文】
2) 用戶更換大廳時(shí),大廳服務(wù)器請(qǐng)求數(shù)據(jù)庫服務(wù)器執(zhí)行更換大廳操作,數(shù)據(jù)庫服務(wù)器再對(duì)數(shù)據(jù)庫進(jìn)行相應(yīng)操作,并返回操作后的結(jié)果。 ② 大廳服務(wù)器與數(shù)據(jù)庫服務(wù)器的交互??蓮膬蓚€(gè)部分來分析: ① 登錄服務(wù)器與數(shù)據(jù)庫服務(wù)器的交互。 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 4 系統(tǒng)難點(diǎn)技術(shù)分 析與設(shè)計(jì) 19 4 系統(tǒng)難點(diǎn)技術(shù)分 析與設(shè)計(jì) 系統(tǒng)架構(gòu)設(shè)計(jì)與分析 根據(jù)分析,我們?cè)O(shè)計(jì)出系統(tǒng)架構(gòu)圖。 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 3 系統(tǒng)設(shè)計(jì) 18 執(zhí)行完畢后,表 thing 創(chuàng)建成功。(如圖 ) 圖 表 hsgcverifycode ⑥ 創(chuàng)建表 thing。 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 3 系統(tǒng)設(shè)計(jì) 17 圖 表 gift ⑤ 在數(shù)據(jù)庫 ocean 創(chuàng)建表 hsgcverifycode。 在 MySQL Command Line Client 中執(zhí)行如下命令: 執(zhí)行完畢后,表 gift 創(chuàng)建成功。 USE ocean; CREATE DATABASE ocean; 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 3 系統(tǒng)設(shè)計(jì) 16 執(zhí)行完畢后,表 account 創(chuàng)建成功。 ③ 在數(shù)據(jù)庫 ocean 中創(chuàng)建表 account。(如圖 ) 圖 數(shù)據(jù)庫 ocean ② 然后連接數(shù)據(jù)庫 ocean。 ① 創(chuàng)建數(shù)據(jù) 庫 ocean。這一步設(shè)計(jì)的結(jié)果就是所謂“邏輯數(shù)據(jù)庫”。 E m p la c e A c c e s sP K E m p la c e A c c e s s I d T y p e S h ip A c c e s s E m p la c e I n d e P la c e 圖 表 EmplaceAccess 屬性 后綴為 Access 代表為本地?cái)?shù)據(jù)庫里的表 以上表的實(shí)體關(guān)系 (如 圖 ) : 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 3 系統(tǒng)設(shè)計(jì) 14 T h i n gP K T h i n g I d A c c o u n t I d T h i n g T y p e b B i n d b I n s t a l l e d A c t i v e T i m e A c c e s s I d S h i p A c c e s s I d E m p l a c e I n d e xG i f tP K G i f t I d A c c o u n t I d T h i n g T y p e A c c e s s I d B e n e f a c t o r D e s c T e x tH S G C V e r i f y C o d eP K H S G C V e r i f y C o d e I d A c c o u n t I d V e r i f y C o d eA c c o u n tP K A c c o u n t I d U s e r N a m e P a s s w o r d E x p e r i e n c e M o n e y L e v e l C u r S h i p A c c e s s I dS h i p A c c e s sP K S h i p A c c e s s I d T y p e G o o d s F o r w a r d V T u r n i n g V V o l E m p l a c e C o u n t H p D e f C a n n o n D e f T o r p e d oR o l e A c c e s sP K R o l e A c c e s s I d G o o d s t o n n a g e o p e r a t e L o a d B u l l e tG u n A c c e s sP K G u n A c c e s s I d T y p e G o o d s R o t a t e S p e e d P i p e C o u n t S h o o t G a p S h o o t R a n g e P o w e r P o w e r R a n g e T o r p e d o S p e e d B u l l e t S i z eI t e m A c c e s sP K I t e m A c c e s s I d G o o d s U s e C o u n t P l u s M o d e T a r g e t D i f f 1 T a r g e t D i f f 2 T a r g e t T y p e V a l u e V a l u e A c c M o d e V a l u e C o n t i n u e M o d e P l u s T i m e R e g i o n RE m p l a c e A c c e s sP K E m p l a c e A c c e s s I d T y p e S h i p A c c e s s E m p l a c e I n d e P l a c e 圖 實(shí)體關(guān)系圖 數(shù)據(jù)庫邏輯設(shè)計(jì) 邏輯設(shè)計(jì):主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。 G u n A c c e ssP K G u n A c c e ssId T y p e G o o d s R o ta te S p e e d P ip e C o u n t S h o o tG a p S h o o tR a n g e P o w e r P o w e r R a n g e T o r p e d o S p e e d B u lle tS iz e 圖 表 GunAccess 屬性 ⑧ ItemAccess: 存儲(chǔ) 游戲中物品的信息 (如圖 ) 。 S h ip A c c e ssP K S h ip A c c e ssId T y p e G o o d s F o r w a r d V T u r n in g V V o l E m p la c e C o u n t H p D e fC a n n o n D e fT o r p e d o 圖 表 ShipAccess 屬性 ⑥ RoleAccess: 存儲(chǔ) 游戲中角色的信息 (如圖 ) 。 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 3 系統(tǒng)設(shè)計(jì) 11 GiftPK G iftId AccountId ThingType AccessId Benefactor DescText 圖 表 Gift 屬性 1) GiftId:禮物的 id; 2) AccountId:接收禮物用戶的 id; 3) ThingType:禮物類型 ; 4) Benefactor:送禮物的用戶; 5) DescText:禮物附帶的描述 以上表都是在游戲過程中與用戶交互時(shí)生成的 此外,還有本地腳本數(shù)據(jù)庫中的表 ( 后綴為 Access 代表為本地?cái)?shù)據(jù)庫里的表 ), 但這些表不在設(shè)計(jì)范圍中,故不 做 詳述。 ④ Gift: 存儲(chǔ)用戶 禮物信息 (如圖 )。用戶登錄時(shí)產(chǎn)生這些信息,用于用戶進(jìn)入、更換大廳時(shí)使用,用戶退出游戲后,產(chǎn)生的這些信息將被刪除。 6) ActiveTime:用戶物品有效時(shí)間; 7) AccessId:用戶物品在本地角本數(shù)據(jù)庫表中的 id; 8) ShipAccessId:用戶戰(zhàn)艦在本地腳本數(shù)據(jù)庫表中的 id。用戶可在游戲大廳中相應(yīng)界面看到這些信息。 ② Thing: 存儲(chǔ) 用戶道具信息 (如圖 )。用戶可在游戲大廳中相應(yīng)界面看到這些信息。 [6] 根據(jù)需求, 我們可 設(shè)計(jì) 出 如下的表: ① Account: 存儲(chǔ) 用戶賬號(hào)信息 (如圖 )。以擴(kuò)充的實(shí)體 —( ER 模型)聯(lián)系模型方 法為例,第一步先明確現(xiàn)實(shí)世界各部門所含的各種實(shí)體及其屬性、實(shí)體間的聯(lián)系以及對(duì)信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述 (在數(shù)據(jù)庫中稱為用戶的局部視圖 )。這個(gè)概念模型應(yīng)反映現(xiàn)實(shí)世界各部門的信息結(jié)構(gòu)、信息流動(dòng)情況、信息間的互相制約關(guān)系以及各部門對(duì)信息儲(chǔ)存、查詢和加工的要求等。 [2] 基于 MySQL 的以上優(yōu)點(diǎn),我們選擇 MySQL 做為該網(wǎng)絡(luò)游戲的數(shù)據(jù)庫管理系統(tǒng)。 很多原因讓 MySQL 正合需要。隨著網(wǎng)站以及基于 Web 對(duì)分布式應(yīng)用程序變得越來越復(fù)雜,有效管理數(shù)據(jù)來改善處理效率、降低響應(yīng)時(shí)間和提高用戶的全面技能就變得越來越重要了。嚴(yán)格按照這些準(zhǔn)則產(chǎn)生了一個(gè)價(jià)格便宜而富有特色、適應(yīng)標(biāo)準(zhǔn)而容易擴(kuò)展、速度快而效率高的 RDBMS,使 MySQL 成為開發(fā)者和管理者建立、維護(hù)和配置復(fù)雜應(yīng)用程序的完美工具 。 MySQL 的較低總體擁有成本和更穩(wěn)定、更安全的系統(tǒng)特性,使越來越多的企業(yè)吧它們的系統(tǒng)移植到MySQL,并且收獲著 MySQL開放源代碼帶來的效益。 我們不難發(fā)現(xiàn)這樣急速增長的原因。它得到了像 Sony, Xerox, HP 和 NASA 這樣的公司或組織的積極使用。在過去的幾年中,它已經(jīng)成為線上和線下適合于數(shù)據(jù)庫驅(qū)動(dòng)的應(yīng)用程序最受歡迎的 RDBMS 之一。之前產(chǎn)生的驗(yàn)證碼會(huì)被刪除。成功即提示成功重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 2 系統(tǒng)需求分析 7 消息,否則提示重新操作。成功即提示成功消息,否則提示重新操作。成功即提示成功消息,否則提示重新操作。成功即提示成功消息,否則提示重新操作。成功即提示成功消息,否則提示重新操作。激活成功則提示激活成功,否則提示重新操作。如果通過驗(yàn)證即成功更換大廳,否則提示重新操作并驗(yàn)證。更換大廳時(shí),重新產(chǎn)生驗(yàn)證碼。如果通過驗(yàn)證即成功進(jìn)入大廳,否則提示重新選擇并驗(yàn)證。 2) 選擇大廳:登錄后,用戶可以選擇大廳進(jìn)行游戲。(如圖 ) 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 2 系統(tǒng)需求分析 6 用 戶選 擇 大 廳更 換 大 廳激 活 物 品丟 棄 物 品 購 買 物 品贈(zèng) 送 禮 物接 收 禮 物丟 棄 禮 物登 錄退 出 圖 操作包用戶用例 操作包用戶用例介紹如下: 1) 登錄:用戶啟動(dòng)登錄器,輸入賬號(hào)、密碼進(jìn)行登錄。同時(shí)可用于維護(hù)大廳信息。( 如圖 ) 用 戶顯 示 用 戶 信 息顯 示 大 廳 信 息 圖 顯示包用戶 用例 顯示包 用戶 用 例介紹如下: 1) 顯示用戶信息:顯示在線用戶狀態(tài),包括用戶積分等各種數(shù)據(jù),以及用戶當(dāng)前狀態(tài)等。 下面列出了與數(shù)據(jù)庫系統(tǒng)相關(guān)的用例。操作包主要是客戶端的游戲操作,包括用戶登錄游戲、離開游戲、進(jìn)入大廳、更換大廳等。 用戶用 例分析 在網(wǎng)絡(luò)游戲中的用戶用例根據(jù)功能分為 3個(gè)包,分別為顯示包、操作包、設(shè)置包。 ④ 在用戶一局游戲結(jié)束后, 用戶的游戲信息會(huì)改變。在大廳可進(jìn)行查收禮物、購買物品 、配置自己物品 等操作 。 ② 通過驗(yàn)證后,從數(shù)據(jù)庫中讀取出用戶的個(gè)人資料如 賬號(hào)名 ,同時(shí)讀取用戶的游戲資料如積分、 等級(jí)、金錢 等參數(shù)。其主要分為兩大塊:登錄服務(wù)器與數(shù)據(jù)庫的交互,大廳服務(wù)器與數(shù)據(jù)庫的交互。 [4] 數(shù)據(jù)庫系統(tǒng)需求 本階段主要任務(wù)就是:調(diào)查和分析用戶的業(yè)務(wù)活動(dòng)和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們?cè)跇I(yè)務(wù)活動(dòng)中交流的情況,確定用戶對(duì)數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約 。軟件需求分析工作是一個(gè)不斷認(rèn)識(shí)和逐步細(xì)化的過程。它實(shí)際上是一個(gè)對(duì)用戶意圖不斷進(jìn)行揭示和判斷的過程,其目的在于細(xì)化、精華軟件的作用范圍,確定擬開發(fā)軟件的功能和性能、約束、環(huán)境。充分交換意見,系統(tǒng)在廣大的相關(guān)人群中謀取平衡與折衷,最終達(dá)到相互諒解的過程。 需求分析主要是解決軟件產(chǎn)品應(yīng)該達(dá)到的各項(xiàng)功能和非功能要求,即用戶要求做什么。在這個(gè)過程中,系統(tǒng)分析員和軟件工程師確定顧客的需要。 重慶大學(xué)本科學(xué)生畢業(yè)設(shè)計(jì)(論文) 2 系統(tǒng)需求分析 4 2 系統(tǒng)需求分析 需求概述 在軟件工程中,需求分析指