青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Creative Commons License
本Blog采用 知識共享署名-非商業性使用-禁止演繹 3.0 Unported許可協議 進行許可。 —— Fox <游戲人生>

游戲人生

游戲人生 != ( 人生 == 游戲 )
站點遷移至:http://www.yulefox.com。請訂閱本博的朋友將RSS修改為http://feeds.feedburner.com/yulefox
posts - 62, comments - 508, trackbacks - 0, articles - 7

MMORPG中游戲世界的構建

Posted on 2007-12-16 05:24 Fox 閱讀(3196) 評論(7)  編輯 收藏 引用 所屬分類: G游戲編程

Author: Fox

一個
MMORPGMassively Multiplayer Online Role Playing Game)的架構包含客戶端和服務器兩部分。客戶端主要涉及計算機圖形學、物理學、多媒體技術等,服務器主要涉及網絡通信技術、數據庫技術,而人工智能、操作系統等計算機基礎學科知識的應用體現在MMORPG開發過程中的方方面面。

一、游戲世界的劃分

理想狀態的游戲世界僅由一個完整的場景組成,在《魔獸爭霸 III 》、《 CS 》這樣的單機游戲中,所有玩家位于該場景中,在理論上,位于該場景中的任意玩家都可以看到游戲中所有玩家并與之交互,出于公平性和游戲性(而不是技術上)的考慮,游戲中并不會這樣做。

然而,目前的 MMORPG 中,幾乎沒有任何一款可以做到整個游戲世界只包含一個場景,因為在一款 MMORPG 中,同時在線的玩家數量成百上千,甚至是數萬人同時在一個游戲世界中交互。以現在的網絡技術和計算機系統,還無法為這么多玩家的交互提供即時處理。因此, MMORPG 的游戲世界被劃分為大小不等、數量眾多的場景,游戲服務器對于這些場景的處理分為分區和無縫兩種。

在分區式服務器中,一個場景中的玩家無法看到另一個場景中的玩家,當玩家從一個場景到另外一個場景跨越時,都有一個數據轉移和加載的過程(尤其是從一個分區服務器跨越到另外一個服務器時),玩家都有一個等待的時間,在這段時間內,服務器的主要工作是實現跨越玩家數據的轉移和加載以及后一個場景中玩家、 NPC 等數據的傳輸,客戶端的主要工作是實現新場景資源的加載和服務器通信。主要時間的長短主要取決于后一個場景中資源數據的大小。分區式服務器的優點主要是各分區服務器保持相對獨立,缺點是游戲空間不夠大,而且,一旦某個分區服務器中止服務,位于該服務器上的所有玩家將失去連接。

所謂無縫服務器,玩家幾乎察覺不到場景之間的這種切換,在場景間沒有物理上的屏障,對于玩家而言,眾多場景構成了一個巨大的游戲世界。場景之間,甚至服務器之間“沒有了”明確的界線。因此,無縫服務器為玩家提供了更大的游戲空間和更友好的交互,實現了動態邊界的無縫服務器甚至可以在某個服務器中止服務時,按一定策略將負載動態分散到其他服務器。因此,無縫服務器在技術上要比分區服務器更加復雜。

目前國內上市的 MMORPG ,大多采用分區式服務器,做到無縫世界的主要有《完美世界》和《天下貳》等,國外的 MMORPG 中,像《魔獸世界》、《 EVE 》等,都實現了無縫世界。

無縫服務器與分區式服務器在技術上的主要區別是,當位于場景 S1 中的玩家 P1 處于兩個(甚至更多)場景 S1 S2 的邊界區域內時,要保證 P1 能夠看到場景 S2 中建筑、玩家、 NPC 等可感知對象。而且邊界區域的大小要大于等于 P1 可感知的范圍,否則就可能發生 S2 中的可感知對象突然閃現在 P1 視野中的異常。

無疑,無縫世界為玩家提供了更人性化和更具魅力的用戶體驗。

二、無縫世界游戲服務器的整體架構

MMORPG 的服務器架構從功能上主要劃分為三種:

1、 登錄服務器( Login Server

登錄服務器用于玩家驗證登錄,并根據系統記錄玩家信息得到其所在節點服務器,并通過世界服務器為登錄玩家和對應節點服務器建立連接。

2、 世界服務器( World Server

世界服務器將整個游戲世界劃分成不同場景,將所有場景按一定策略分配給節點服務器,并對節點服務器進行管理。世界服務器的另一功能是與登錄服務器交互。因此,世界服務器是登錄服務器、節點服務器的溝通橋梁,當然,一旦玩家登錄成功,世界服務器將主要處理節點服務器間的通信。因此,世界服務器對于玩家是透明的。

3、 節點服務器( Node Server

節點服務器負責管理位于該節點的所有玩家、 NPC 的所有交互,在無縫世界游戲中,由于邊界區域的存在,一個節點服務器甚至要處理相鄰節點上位于邊界區域的玩家和 NPC 的信息。

在具體實現上,不同的 MMORPG 為了便于管理,可能還會具有 AI 服務器、日志服務器、數據庫緩存服務器、代理服務器等。

三、 無縫世界游戲服務器的主要技術需求

1、 編程語言( C/C++ SQL Lua Python

2、 圖形庫( Direct 3D OpenGL

3、 網絡通信( WinSock BSD Socket ,或者 ACE

4、 消息、事件、多線程、 GUI

5、 OS

三、無縫世界游戲服務器需要解決的主要問題

1、 資源管理

無論是服務器還是客戶端,都涉及到大量資源:玩家數據、 NPC 數據、戰斗公式、模型資源、通信資源等。當這些資源達到一定規模,其管理的難度不可忽視。而且,資源管理的好壞,直接關系到游戲的安全和生命。

2、 網絡安全

安全永遠是第一位的,我們無法指望所有的玩家及其所持的客戶端永遠是友好的。事實上,威脅到游戲的公平性和安全性的大多數問題,歸根結底,都是由于網絡通信中存在的欺騙和攻擊造成的,這些問題包含但不限于交易欺騙、物品復制。

3、 邏輯安全

邏輯安全按理說應該是游戲中最基本的考慮,覆蓋的范圍也最廣最雜。隨機數系統是一個非常值得重視的問題,隨機數不僅僅用于玩家可見的一些任務系統、戰斗公式、人工智能、物品得失等,還可用于網絡報文加密等。因此,隨機數系統本身的安全不容忽視。另外一個常見的邏輯安全是玩家的移動,最主要的就是防止加速齒輪這樣的變態操作。

4、 負載均衡

MMORPG 中的負載均衡包括客戶端及服務器資源管理和邏輯處理的負載均衡,其中最難預知的是網絡通信的負載均衡,正常情況下的網絡通信數量是可以在游戲設計時做出評估的,但因惡意攻擊造成的網絡負載是無法預測的。因此,負載均衡所要處理的主要是實時動態負載均衡和災難恢復。負載均衡需要解決的問題包括負載監控、負載分析、負載分發和災難恢復。

5、 錄像系統

錄像系統的構建,主要用于重現關鍵數據的輸入輸出,如玩家交易、玩家充值,或者當 bug 出現后,為邏輯服務器(泛指上文提到的所有類型服務器,主要是節點服務器)相應部分啟動錄像系統。待收集到足夠數據后,通過錄像系統重現 bug 。為了使邏輯服務器不受自身時間(如中斷調試等)的影響,還可以專門設計心跳服務器來控制數據傳輸。

四、總結

MMORPG 中,真正的 bug 永遠存在于將來。從這一點出發,關于 MMORPG 中游戲世界的構建,怎樣苛刻的思考都不為過。

參考資料:

1、 [美] Kim Pallister編, 孟憲武 等譯. 游戲編程精粹5, P467-474, P516. 人民郵電出版社, 2007年9月. 北京.
2、 [美] Thor Alexander編, 史曉明 譯. 大型多人在線游戲開發, P174-185. 人民郵電出版社, 2006年12月. 北京.
3、 [美] Dante Treglia編, 張磊 譯. 游戲編程精粹3, P117-122. 人民郵電出版社, 2003年7月. 北京.
4、 [美] Mark DeLoura編, 王淑禮 等譯. 游戲編程精粹1, P90-93. 人民郵電出版社, 2004年10月. 北京.
5、 [美] Douglas 等著, 於春景 譯. C++網絡編程 卷1. 中國電力出版社, 2004年11月. 北京.
6、 [美] Stephen D. Huston 等著, 馬維達 譯. ACE程序員指南. 中國電力出版社, 2004年11月. 北京.
7、 [美] Erich Gamma等著, 李英軍 等譯. 設計模式. 機械工業出版社, 2000年6月. 北京.
8、 游戲引擎全剖析. http://bbs.gameres.com/showthread.asp?threadid=101293.
9、 服務器結構探討:登錄服的負載均衡. http://gamedev.csdn.net/page/351491d0-05ad-48a4-85e1-77870bc1eef3.
10、服務器結構探討:最終的結構. http://gamedev.csdn.net/page/28695655-974c-4291-8ac4-2589c4e770d3.
11、談談網絡游戲服務器解決方案. http://www.beareyes.com.cn/2/lib/200411/08/20041108102.htm.
12、負載均衡——大型在線系統實現的關鍵(下篇)(服務器集群架構的設計與選擇). http://blog.csdn.net/sodme/archive/2005/06/15/394576.aspx.
13、云風的BLOG. http://blog.codingnow.com/

/*****************************************************************************
? 從0:00到5:00,在寫這篇隨筆的過程中,我翻找、點擊著上面的這些資料,其實還有更
? 多的資料,沒有記在上面,算是為開題做的準備。現在依然是睡意全無。越寫越覺得
? 不夠,越想越覺得還有更多東西寫不出來……
? PS:這些資料大都不是第一次翻,以前看這些資料大多只是單純的看,現在有目的的
? 看,才覺得都寫得很有味道。不管是不是同意所有觀點,都不是本文討論的重點。
*****************************************************************************/

Feedback

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-16 12:00 by 海邊沫沫
又有一個超級高手橫空出現在cppblog了。

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-16 13:57 by mengcaizhulin
高手就在身邊,隨時隨地都要向其學習!

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-16 14:31 by 秦歌
碩士開題?寫的不錯,以后多交流,我的博客http://m.shnenglu.com/xczhang

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-16 22:41 by 夢在天涯
能寫出這個來,高手,以后多交流!

來個游戲系列的,超級受歡迎~

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-18 18:41 by 微塵
樓主真是淵博啊!

# re: MMORPG中游戲世界的構建  回復  更多評論   

2007-12-21 17:49 by Xerxes
五個小時 樓主辛苦了....大家學習了

# re: MMORPG中游戲世界的構建  回復  更多評論   

2008-08-19 09:49 by 魔鬼螳螂
有空多多交流!學習到了!
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费久久99精品国产自| 欧美激情一区二区三区全黄| 红桃视频国产精品| 国产伦精品一区二区三区免费 | 亚洲免费视频在线观看| 亚洲欧美激情诱惑| 久久高清福利视频| 免费亚洲一区二区| 亚洲精品一区二区三| 亚洲乱码日产精品bd| 亚洲专区在线| 老司机一区二区| 欧美日韩成人一区二区三区| 国产精品日韩欧美大师| 亚洲承认在线| 亚洲欧美视频在线观看| 免费久久99精品国产自在现线| 亚洲成人在线免费| 国产精品二区影院| 国产亚洲一区在线| 亚洲乱码一区二区| 欧美亚洲一区在线| 亚洲丰满在线| 欧美一级免费视频| 欧美美女日韩| 在线播放豆国产99亚洲| 亚洲资源在线观看| 亚洲第一网站免费视频| 香蕉成人久久| 欧美日韩午夜| 亚洲欧美日韩综合| 亚洲国产精品t66y| 午夜久久资源| 欧美精品自拍| 亚洲国产你懂的| 欧美尤物一区| av不卡在线观看| 欧美freesex8一10精品| 国产一区日韩欧美| 亚洲欧美成人精品| 亚洲乱码精品一二三四区日韩在线 | 亚洲精品久久久蜜桃| 久久gogo国模裸体人体| 国产精品色婷婷| 一区二区三区国产在线| 欧美ed2k| 久久婷婷丁香| 国产亚洲欧美日韩精品| 午夜精品一区二区三区在线| 一本色道88久久加勒比精品| 欧美精品久久久久久久| 亚洲精品日韩激情在线电影| 欧美刺激午夜性久久久久久久| 性色av香蕉一区二区| 国产精品尤物| 久久成人精品无人区| 亚洲欧美高清| 国产亚洲女人久久久久毛片| 久久精品1区| 欧美在线观看视频在线| 国产一区二区三区四区hd| 久久xxxx| 久久全球大尺度高清视频| 在线观看日韩av电影| 麻豆成人综合网| 久久这里有精品视频| 亚洲成人在线免费| 亚洲国产成人精品女人久久久| 免费久久久一本精品久久区| 亚洲精品乱码久久久久久黑人| 亚洲国产高清在线| 欧美日韩大陆在线| 亚洲欧美三级在线| 亚洲欧美日韩网| 在线观看中文字幕不卡| 亚洲精品乱码久久久久久久久| 欧美精品在线网站| 亚洲欧美国产日韩天堂区| 午夜欧美大尺度福利影院在线看| 国产亚洲精品一区二区| 欧美黄色一级视频| 欧美性猛交一区二区三区精品| 香蕉国产精品偷在线观看不卡| 欧美伊久线香蕉线新在线| 亚洲电影有码| 美女精品一区| 国产精品激情| 久久精品系列| 欧美.com| 欧美伊人久久久久久午夜久久久久| 亚洲欧美日韩网| 亚洲国产日韩欧美在线99| av成人手机在线| 激情综合久久| 亚洲美女毛片| 国内成人精品一区| 亚洲精品久久久久久久久久久久| 国产精品视频不卡| 欧美黄色影院| 国产无遮挡一区二区三区毛片日本| 欧美岛国在线观看| 国产精品视频第一区| 亚洲国产经典视频| 国产欧美日韩一区| 一本色道久久综合亚洲91| 激情欧美一区二区三区在线观看| 日韩视频久久| 亚洲国产精品黑人久久久 | 久久久久久久综合日本| 亚洲私人黄色宅男| 欧美+亚洲+精品+三区| 久久精品一区二区三区不卡牛牛| 欧美激情精品久久久久久蜜臀| 久久精品国产一区二区三区免费看 | 亚洲国产精品999| 国产午夜亚洲精品羞羞网站| 亚洲精品在线观看视频| 精品999网站| 亚洲综合视频网| 亚洲午夜精品网| 欧美国产欧美亚洲国产日韩mv天天看完整 | 久久天天狠狠| 久久国产精品久久久| 欧美色图五月天| 亚洲精品视频二区| 亚洲毛片av在线| 欧美国产日韩免费| 亚洲国产aⅴ天堂久久| 亚洲国产经典视频| 久久视频一区二区| 老牛国产精品一区的观看方式| 国产色视频一区| 亚洲欧美日韩中文在线制服| 亚洲欧美日韩精品一区二区 | 一二三区精品| 一区二区三区免费网站| 欧美极品一区| 亚洲乱码国产乱码精品精| 欧美 日韩 国产一区二区在线视频| 日韩亚洲欧美成人| 免费成人在线观看视频| 麻豆国产精品一区二区三区 | 一区二区在线观看视频| 久久久亚洲精品一区二区三区| 久久久视频精品| 一区在线电影| 蜜臀久久久99精品久久久久久| 欧美成人一区二区三区| 最新日韩在线| 欧美日韩精品一区| 在线一区欧美| 久久久精品久久久久| 1000精品久久久久久久久| 美女精品视频一区| 亚洲激情自拍| 亚洲综合清纯丝袜自拍| 国产日韩视频一区二区三区| 久久高清免费观看| 亚洲国内高清视频| 午夜伦欧美伦电影理论片| 国产一区二区三区免费观看| 老妇喷水一区二区三区| 日韩系列欧美系列| 久久久综合免费视频| 亚洲欧洲在线看| 国产精品网站一区| 免费视频最近日韩| 亚洲一区国产视频| 欧美激情国产日韩| 篠田优中文在线播放第一区| 在线日韩成人| 国产精品推荐精品| 欧美精品电影| 久久国产福利| 亚洲一区3d动漫同人无遮挡| 美国三级日本三级久久99| 亚洲图片在线| 136国产福利精品导航| 国产精品嫩草久久久久| 女人香蕉久久**毛片精品| 午夜视频久久久| 日韩写真在线| 亚洲国产精品第一区二区三区| 欧美一区二区视频观看视频| 99精品视频免费| 国产综合久久久久久| 欧美色图麻豆| 欧美精品成人91久久久久久久| 久久国产精品第一页| 亚洲午夜av在线| 亚洲理伦在线| 亚洲国产精品一区二区第四页av| 久久国产精品一区二区| 亚洲免费中文| 一本久道综合久久精品| 亚洲高清一二三区| 国产自产高清不卡| 国内外成人免费视频| 国产片一区二区| 国产精品视频大全|