《魔獸世界》(World of Warcraft)是由著名游戲公司暴雪娛樂所制作的第一款網絡游戲,屬于大型多人在線角色扮演游戲。游戲以該公司出品的即時戰略游戲《魔獸爭霸》的劇情為歷史背景,依托魔獸爭霸的歷史事件和英雄人物,魔獸世界有著完整的歷史背景時間線。 [1] 玩家在魔獸世界中冒險、完成任務、新的歷險、探索未知的世界、征服怪物等。
魔獸世界單機怎么連接數據庫?你點開Web·mysql,然后右鍵此圖標,在一個擴展選項上看看有兩個連接,如果停止XX都是亮的那就沒問題,你看看如果中間單獨啟動XX是亮的,那你的端口被占用了,一是重啟,并且 在下次撥號前再連接一次,只要自動出的LOCAL//的注冊網頁彈出來,再啟動魔獸世界服務器就成了 魔獸世界用的什么數據庫?引用自cnblogs@Zealic: 最近幾天重溫了一下WOW,結合最近學習的數據庫知識和自己的了解,對WOW的大概體系做了分析。當然,我僅僅只是窺豹見斑而已,希望對WOW有所了解的大俠能給我和向了解WOW的人指點;讓世人更加了解WOW,讓中國的游戲能夠學習(不是抄襲)并超越WOW。 不知道哪來的想法,就想到了WOW的數據庫的結構以及程序實現,那么,就來了解一下吧。 首先想到:Game Server 使用的是什么OS和Database 起初猜測為 : Unix/BSD ,數據庫為 Oracle 這樣比較適合WOW這樣的大型網絡游戲,因為其存儲和數據量極大 網上查到的一些關鍵資料,可以證明我的猜想和實際相差不大 1.9C在一次服務器故障中的說明,下面只列出關鍵部分 08:29 收到EVA存儲報警郵件,聯系數據中心工程師,聯系惠普工程師. 08:35 故障應急流程啟動,相關人員包括THE9/HP/Blizzard US . 15:33 Oracle專家加入故障應急流程 15:50 暴雪數據庫工程師開始與Oracle專家繼續分析故障情況. 17:15 暴雪表示暫時還未從他們的admin以及DBA處獲得任何有新的消息,他們仍然在研究此故障。 2.Blizzard的數據庫管理員招聘要求 Oracle Database Administrator The World of Warcraft development team is looking for a self-motivated and knowledgeable IT professional to help administer the WoW databases. As the person responsible for handling the database-side of WoW pushes and patches, our Live Team Oracle DBA's job duties would include designing, configuring, maintaining, monitoring, benchmarking and troubleshooting Oracle databases. Blizzard offers a fun, creative, and technically challenging environment with excellent compensation and a full range of benefits. Responsibilities: Provide production on-call support. Maintain and enhance existing databases. Perform routine database maintenance. Work with end users to ensure smooth production rollouts and pushes. Assist in training other employees. Requirements: 3+ years professional Oracle DBA experience, including Oracle 9i. Extensive experience with database performance tuning. Experience working with large databases (>1TB). Experience with Oracle RAC and Partitioning features. Proficiency in Linux/Unix environments including shell scripting. Plusses: Strong knowledge of SQL & PL/SQL. Familiarity with UNIX tools and shell scripting Familiarity with HP EVA's and Data Protector. Passion for video games, including MMORPG's 因此WOW的服務器應該為 : HPUNIX + ORACLE 那么我就對WOW的數據庫做一些猜想,至于正確與否或者符合程度集合,就無從而知了 主要分為以下幾塊 -游戲服務器: 這里說的是游戲中的服務器,而非上面提到的物理意義上的服務器,比如,七區的惡魔之魂、黑鐵、加基森就是游戲服務器。 -游戲區: 游戲大區,一個大區是由許多個游戲服務器構成的。之所以分大區,我認為完全是因為物理原因,每個區都其物理構成應應該是一個服務器群集,而在這群集上,有許多的數據庫實例,每一個數據庫實例都對應一個游戲服務器。 -驗證系統: 游戲中的登錄、排隊、驗證身份應該都是又這一部分完成的。 -聊天頻道: 聊天頻道是一個獨立的服務器,這一點可以從游戲中人物、地圖都很卡而聊天卻完全不受影響的情況分析出來,聊天不可以離線發送消息,因此我可以武斷的認為,聊天服務器基本不操作數據庫,至多在當前無法處理或者玩家暫時接收不到的情況下,使用一些臨時的表來保存消息;或者服務器將聊天數據全部保存到數據庫中,以方便對玩家的行為查詢。 另外,聊天服務器是獨立于所有服務器的,每個區的所有游戲服務器都是使用對應于該區的聊天服務器。這樣,可以專門針對聊天服務器的特性,對服務器的系統和數據庫進行專門的優化 -副本&戰場: 副本&戰場(以下簡稱副本)我覺得也應該和聊天服務器相同,是個獨立的服務器,不過他與普通游戲服務器不同,并沒有保存其他的地圖數據,僅僅保存了副本地圖的數據。 至于如何實現跨服戰場,我以為,應該是將需要的角色數據做拷貝到副本服務器中,并且鎖定原本服務器中的數據(表或行),在退出戰場時,用副本服務器的數據更新原來的數據。我們可以把戰場看做數據庫中的臨時表,做了處理以后更新到需要保存的地方。 通過上述解釋,也可以理解為什么在進入戰場時需要加載畫面了,加載畫面并不僅僅是作為一個過渡畫面,它還承載了加載客戶端資源,與服務端通信進行處理;顯示加載畫面時,副本服務器應該是如上所說游戲服務器交換了角色數據。 大型副本與普通副本不同的地方,我覺得僅僅是重置時間和副本策略做了改變而已。 -地圖 地圖的定義是在客戶端的資源中的,為防止用戶篡改,BLZ對定義地圖的資源文件和DBC進行使用了混淆命名以及檢查校驗;之所以這么認為,是因為中國WOW公測的時候,出現一些加速外掛,可以讓角色直接穿越墻壁、地表等看起來不可能穿越的物體,這便驗證了BLZ為了減輕服務器負擔,直接在客戶端進行了大部分的碰撞檢測。 WOW的的實際地圖結構和游戲中我們所見到的不一樣,他是把一塊大陸分成N個小塊的地圖數據,客戶端僅僅需要加載玩家角色所在位置附近的所有地圖塊就可以了。其技術細節就不做詳細分析了。 -東西大陸: 每個大陸都應該是一個獨立的數據庫,之所以出現加載畫面,我認為是因為兩個大陸的地形材質大不相同,客戶端需要先釋放出發大陸的所有資源,加載目的大陸的必要資源,同時轉移角色的數據到目的大陸。 -角色: 游戲中的角色應該是被分離成數個表,包括玩家的屬性,任務,包裹,郵箱,銀行等。一些重要的,比如物品包裹、郵箱、銀行,服務器會在很短(相對其他數據而言)的時間內將內存中的緩存數據寫入提交到數據庫中;而一些相較以上數據不是很重要的數據,則需要很長時間才會提交到數據庫。這也解釋了為什么服務器回檔時,角色的位置和任務等都回檔了,而物品卻沒有回檔,這也造成了傳說中的雙手痛擊。 -怪物: 世界中的怪物生成應該是使用了Prototype模式,那么保存怪物的數據其實之需要保存其會變化的值就即可。 -其他: 游戲中總是有一些事件發生,比如:暗月馬戲團的來訪,萬圣節的活動,情人節的活動等等,這些東西應該都是具有伸縮性的,可以想象,為了方便BLZ自WOW的管理和擴展,在服務器或服務器群集管理中心中,應該有BLZ為自己和代理商提供的工具或者說腳本使用指南。至于WOW采用的腳本是什么,這個我就猜不到了,可能是Perl\Python\SH吧,反正不會是LUA。 -行為與技能: 為什么WOW玩起來感覺這么流暢,沒有其他網絡游戲看起來或感覺起來反應遲鈍,WOW并沒有每時每刻都與客戶端進行通信;其主要工作原理是,客戶端首先處理用戶的輸入,并執行相應的開始動畫或處理,而實際顯示結果要等待服務端處理并返回后才會顯現出來,這就是為什么在掉線后,玩家還做操作角色,但是卻無法獲得操作結果。 技能和行為差不多,其實很多游戲中的限制都是在客戶端進行的,這都是BLZ為了減輕服務端的負擔、減少通信量而造成的。那么,我在這里大膽的猜測,只要分析出內存地址或相應代碼,WOW是有很多地方可以被篡改的;因為據我所知,目前WOW的所有外掛都是通過暴力修改客戶端的內存實現的,而非常見的修改網絡封包,BLZ加密還是做的很不錯的 :)。 基本上就分析了這么多了,我試圖從自己的腦子里挖出更多的東西,可惜所了解的東西仍然太少,沒辦法,現這樣吧。 ---------------------------------------------- PS:大芒果單機版WOW采用的MySQL 中國國內對于網絡游戲以批評、質疑多于贊賞,央視作為主流官方媒體更是如此。但在2011年CCTV-13頻道的視頻中,主持人首次對《魔獸世界》這款網游進行了肯定,并且稱贊其有創意有創新,與國內產品對比鮮明。 |
溫馨提示:喜歡本站的話,請收藏一下本站!