PVPGN 暗黑破坏神2 1.11b战网配置问题汇总
寫了第一篇配置指南之后,很多人向我咨詢有關戰網搭建的問題。于是覺得很有必要把若干常見的問題,和常用的進階配置匯總一下,以方便更多人。
1.游戲版本和PVPGN與D2GS版本的問題。
PVPGN建議選擇1.8.2及以上的版本,最新的標準版為1.8.5可以在http://pvpgn.berlios.de/index.php?page=files查找下載,如果玩的人較多,建議使用MySql版,小范圍測試和體驗的,任意版本都可以。游戲版本和D2GS的版本是對應的,也就是說如果你要搭建1.10版的暗黑的戰網,那么你就要用1.10的D2GS,1.10版本的D2GS請到http://d2dev.dlg.cn/查找下載。支持1.11b游戲版本的,由Marsgod大人繼onlyer之后通過反匯編的形式改進,最新版本build(43)可以在http://www.pvpgn.pl/d2gs/查找下載,1.12a的用戶較少,這里就略過不提。
錯誤的PVPGN版本與D2GS版本的搭配,會造成PVPGN啟動失敗,以及諸多的游戲問題;錯誤游戲版本可能會造成PVPGN、D2CS或者D2DBS啟動失敗,也可能造成進入游戲后登錄戰網,無法創建人物,或者創建了人物無法進入游戲等問題。 這里要提醒大家注意的是:你的服務器端,尤其是D2GS,必需放在一個可用的暗黑2游戲文件夾當中。如果你的暗黑2沒法玩單機的話,那么創建戰網后,必然導致排隊1的問題,也就是D2GS.EXE無法正常啟動。
2.配置文件的相關問題。
簡單的可用配置,需要修改以下文件:d2gs.reg(應該位于游戲目錄下d2gs.reg修改完成后需要雙擊添加進注冊表)、d2cs.conf、d2dbs.conf、realm.conf(應該位于pvpgn/conf目錄下),這三個文件每次修改后都需要重新啟動服務端才可以生效。
客戶端可以登錄戰網,可以注冊新賬號并登錄,但是提示無國度,或無法法連接國度服務器的及類似問題,多數是由配置文件修改不完全,配置錯誤引起的;還有可能是因為IP地址的錯誤引起的。
內網搭建服務器,并且要求內網和外網都可以訪問的,需要修改address_translation.conf文件(位于pvpgn/conf目錄下),找到所有類似于#192.168.1.100:4000 internetip:4000?? 192.168.1.0/24??? ANY的行,去掉行首的#號,192.168.1.100改成服務器的內網IP,internetip改成外網IP,192.168.1.0/24這里是重點,如果你的內網只有192.168.1.x這個網段,這里就應該是192.168.1.0/24,如果是192.168.0.x這個網段,就應該改成192.168.0.0/24,如果有多個網段,通過路由互聯的,網段之間要用小寫逗號隔開。如192.168.0.0/24, 192.168.1.0/24。另外要注意的就是,服務器端用到的端口,請先在路由器或者防火墻中映射好,4000、6112~6114……。
創建游戲總是排隊1,或者只能創建1個游戲,再創建就排隊;這多是因為d2gs.reg修改不當造成的,記事本打開d2gs.reg,找到"MaxGames"=dword:00000001,修改為"MaxGames"=dword:00000064(這里是16進制,64=100),記得修改完成后雙擊注冊,并重啟服務端。
其它原因引用攻略中的一段文字
游戲排第一位的問題 這是個最讓人頭痛的問題,但大部分還是能解決的!出現排位1的問題要從以下幾個方面入手
1;沒有gs或者gs沒有啟動
2;gs配置不對,修改注冊表文件d2gs.ren中的ip為你的d2cs的ip地址
3;d2dbs.conf和d2cs.conf中沒有添加gameservlist
4;gs版本和d2cs不配套
5;gs console中設定的maxuser和maxgame有誤
6;使用了安裝版的暗黑游戲(包括正版),我遇到過這樣的問題。
7;導入的GS端的注冊表文件{d2gs.reg}中 "D2CSSecrect"="NENU" 這個選項非空或者和國度名不符
8;在Win64位操作系統中搭建服務器后出現排隊1問題的,請訪問此鏈接:Win64位操作系統無法運行暗黑2戰網D2GS的解決辦法
找不到國度,大多數是d2cs或d2dbs服務的故障,而可能導致故障的原因有很多種,這就需要檢查d2cs.log、d2dbs.log文件(位于pvpgn/conf/var目錄下),打開日志文件,重點查找“erro”、“fail”字眼的行,大致分析出出錯的原因。其它PVPGN相關的服務也經常需要用到日志文件排錯,可以先刪除現有的日志文件,然后重歷錯誤,再檢查新的日志文件。
另外,下載的D2GS壓縮包中,通常都帶一個“暗黑服務器攻略V0.3.chm”幫助文件,這是個新手搭建戰網的好參考,建議多看看。 怎么使用MySQL作為用戶數據庫呢,在pvpgn/conf目錄中找到bnetd.conf,刪除原有的生效的storage_path(特點是前面沒有#號),找到# storage_path = sql:mode=mysql;host=127.0.0.1;name=PVPGN;user=pvpgn;pass=pvpgnrocks;default=0;prefix=pvpgn_一句,去年前面的#號,修改host為MySQL服務器的IP,name為數據庫名(要先在mysql中創建一個同名的空數據庫),user用戶名,pass密碼,其它不用動。
3.戰網游戲問題
再說排隊1,最近遇到把服務端放在一個1.11b的覆蓋補丁里面,而不是一個完整可用的1.11b游戲目錄里面,結果導致總是排隊1的問題,主要體現就是,進程管理器中的d2gs.exe總是上下亂跳,那是因為d2gs服務總是啟動它。
可以進入戰網,也可以創建人物,并且創建游戲后也不排隊,但總是創建游戲失敗:這通常是游戲版本錯誤或者游戲文件不完全造成的。檢查你的d2gs.log文件,尋找Failed字樣,來判斷真正產生錯誤的原因。最近遇到因為d2dbs無法存取用戶人物存檔文件造成總是創建游戲失敗的問題。這樣的需要先檢查有沒有啟動d2dbs,或者啟動之后有沒有出錯。(最近在一個server2003服務器上配bn,發現權限問題也會導致游戲的創建失敗,有兩個權限要設置,一是pvpgn文件夾要有“Everyone“的完全控制權限,二是d2cs服務登錄賬號的權限)
戰網中,選擇人物雙擊進入后的屏幕左半部的文字,可以通過修改news.txt來更改,更改后請將編碼改為ascii,進入頻道之后左半部分顯示的motd可以通過修改bnmotd.txt來更改,bnmotd.exe每行必需以%I開頭,其中的一些語法可以參考pvpgn\docs\bnmotd.txt;新聞和motd文件都位于pvpgn\conf目錄下。創建游戲后屏幕左上角顯示的歡迎信息需要修改d2gs.reg中的"MOTD"項。
如何添加一個戰網管理員。非數據庫版本的,要修改usr目錄下的同名acc文件,用記事本打開,在最后一行加入"BNET\\auth\\admin"="true",MySQL數據庫版的,要打開pvpgn_bnet表,找到你的同名acc,修改auth_admin字段,并修改為true。關于管理員命令,這里就不細說了,可以去網上查。
如何Telnet管理戰網,pvpgn戰網的telnet有兩種,一種是telnet到gs,一種是telnet到pvpgn;到gs的這一種需要在命令模式輸入"telnet gsip 8888"來登錄(gsip就是你gs的IP地址),默認密碼是"abc123"。第二種要修改bnetd.conf文件,找到#telnetaddrs = ":23"一句,去掉前面的#號,在:23前面加入服務器的外網IP,如果是內網管理,就加入內網IP,用戶名和密碼就是管理員acc和pass(這種跟你在游戲中進入頻道聊天是一樣的)。
如何防止更多的bot,這個除了用最新的帶d2warden的d2gs1.11b(bulid43)之外,可能目前沒有太好辦法。不過43的warden已經可以防止d2jsp等早先流行的bot。另外91d2戰網利用PVPGN的versioncheck功能來檢測是d2load是否bot啟動,但這種方法對相關技術的要求較高,并且需非常熟悉versioncheck。
如何初始化ladder的排名,這個非常簡單。假設你定在2010年1月1日00:00:00要對服務器重新開荒,請打開b2cs.conf文件,找到ladder_start_time行,把后面的0改成2010-01-01 00:00:00(format: yyyy-mm-dd hh:mm:ss)然后,刪除pvpgn/var/ladders中的所有文件。(注意,當修改了天梯開始時間之后,在這個時間之前所創建的所有char,都將變成非天梯人物)
出DC的相關設置,請參考我早先的總結 http://www.cnblogs.com/shalves/p/5147804.html
4.多國度互聯,共享人物數據相關研究。
2009年10月31日:今天正好有時間,初步研究了一下多國度互聯共享人物數據的問題。得出結論如下:
要在主服務器上運行N個獨立的D2CS,并且每個CS的配置文件d2cs.conf中,關于人物存檔的路徑,要和主服務器上其它CS的路徑一致,也可以用為D2CS.EXE快捷方式,并為這個快捷方式的目標加" -c c:\diablo2\pvpgn\conf\d2cs2.conf ”參數的方法來啟動多個D2CS(就像給d2loader加 -w -ns之類的啟動參數一樣)。你的每一份d2cs.conf中的serveraddr項都要使用一個不同的端口。要在國度服務器上運行一個獨立的D2GS。 在配置國度服務器的時候,建議先按照單機的步驟,測試可用了,再配置成獨立gs的國度服務器。
下面我舉一個例子來說明怎么搭建多國度并且共享人物數據。
假設你有兩臺電腦作為服務器,pc1和pc2。pc1的ip地址為192.168.1.101,pc2的為102。
再假設你的pc1和pc2上都已經各有了一個可用的單國度,分別為d2server1和d2server2(怎么配置單國度服務器端請參考我的配置指南)。
再假設你想將pc1設為主服務器,就是戰網的6112端口服務器。
那么先修改pc1上的pvpgn/conf/realm.conf文件,在原有的國度下面添加一條"d2server2" "d2 close battle net" 192.168.1.102:6115,修改完成后保存。還要修改pvpgn/conf/d2dbs.conf文件,找到gameservlist項,在原有的IP地址后面加一個逗號,并添加pc2的IP 192.168.1.102(像這樣的gameservlist = 192.168.1.101,192.168.1.102)。
然后copy一份pvpgn/conf/d2cs.conf文件,重命名為d2cs2.conf。在里面修改realmname項為你的第二國度名稱d2server2;修改servaddrs項,IP不要動,把端口號改為6115;再修改gameservlist項,把IP改為pc2的IP 192.168.1.102。
找到pvpgn/d2cs.exe,為其創建一個快捷方式,并為快捷方式增加啟動參數 -c c:\diablo2\pvpgn\conf\d2cs2.conf,(注意-c前面有空格,這里的路徑你應該按照你實際的路徑來,這個d2cs2.conf就是剛才copy并修改的那一份)。
再轉到pc2上來,找到pc2上服務器端的d2gs.reg;先注冊一下,然后運行regedit打開注冊表編輯器,按照HKEY_LOCAL_MACHINE\SOFTWARE\D2Server\D2GS的位置去找D2GS項。找到后展開,在右側修改里面的內容。修改D2CSIP和D2DBSIP項,為pc1的IP 192.168.1.101;修改D2CSPort項為十進制的6115;
最后要做的就是保證pc2上的服務端與pc1上服務端中間D2Server.ini是一致的。
到這里配置工作就完成了,先在pc1上依次啟動pvpgn、d2dbs、d2cs、d2gs服務(或者用我建議的start server.bat);然后再啟動那個加了參數的d2cs.exe的快捷方式。最后,啟動pc2上的d2gs服務。 客戶端所用的注冊表文件,里面應該用pc1的ip,因為pc1是主服務器,啟動了pvpgn。希望你是一次就配置成功了的!
另外我還小研究了一下多國度不共享人物數據的方法,而且我覺得這樣似乎比共享數據更有意思。下面說說大概原理。
大家都知道d2cs主要負責國度和char,看名字Diablo 2 Character Server就明白了嘛。d2dbs主要負責數據交互和人物的存取;pvpgn主要負責開平臺、6112端口、和負責acc;也就是說如果pc1上已經運行了pvpgn,那么pc1就是主服務器,這個時候pc1上配置了realm.conf(添加一個國度,比如"d2server2" "d2 close battle net" 192.168.1.102:6113),pc2上如果正確配置了d2cs.conf文件(主要是里面的bnetdaddr,要是pc1的IP);當pc1上的服務端啟動之后 ,再啟動pc2上的d2cs.exe,就會發現多了一個國度,并且這個國度里沒有人物數據。創建新的人物之后,文件被保存到pc2的pvpgn/var/charsave中去了。這就實現了不共享人物數據;再在pc2上再啟動d2gs服務和d2dbs.exe(這兩個的配置都不用修改,不啟動d2dbs.exe會無法創建游戲),就完成了一個多國度不共享人物數據的戰網。
5.我最近打包的簡單配置版。
請到91D2論壇下載http://bbs.91d2.cn/read-htm-tid-748127-page-e.html#a,這是我10月18日,打包的KT-D2版本,里面附帶了傻瓜式的配置說明。
2012年1月3日?:斷斷續續還是有很多網友向我求助,本來我有心做一個一鍵安裝包,但無耐我只是一個.net 程序員,就算做一個exe,還要讓用戶再安裝.net框架,有點得不嘗失了。所以,今天還是做了一個更傻瓜的安裝包,只需要修改IP地址和復制文件就可以了。省去了用戶自己去下載和整理服務端的麻煩。
下載地址:http://ishare.iask.sina.com.cn/f/22578217.html
版本:Pvpgn1.8.5 + D2gs1.11b(build46),客戶端支持 暗黑破壞神2毀滅之王v1.11b
說明:還是一個壓縮包,包內有安裝說明,一切照安裝說明來就可以了。因為時間關系沒有測試,有發現問題的,及時跟帖指出。
?
2013年補充:
在帳號文件增加了"BNET\\auth\\admin"="true"但是執行GM命令卻提示“This Command is reserved for admins”
解決辦法,再往文件中增加兩條: "BNET\\auth\\command_groups"="255" ? ? ? "BNET\\auth\\operator"="true"
?
最終版本(原創文章,轉載請注明出處http://hi.baidu.com/roleya/blog/item/a0dade1738730603c93d6dd7.html)
轉載于:https://www.cnblogs.com/shalves/p/5147596.html
總結
以上是生活随笔為你收集整理的PVPGN 暗黑破坏神2 1.11b战网配置问题汇总的全部內容,希望文章能夠幫你解決所遇到的問題。