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)
PVPGN 暗黑破坏神2 1.11b战网配置问题汇总的更多相关文章
- PVPGN1.8.2 + D2GS1.11(38)搭建暗黑破坏神1.11b战网(配置指南)
首先介绍一下PVPGN和D2GS,PVPGN是一个多人网络游戏平台,全称是(Player vs Player Gaming Network),它的前身是Bnetd.Bnetd由于吃到暴雪的官司败诉,最 ...
- windbg配置问题汇总
.loadby sos.dll mscorwks.symfix c:\windows\symbols windbg配置问题汇总 1.Failed to find runtime DLL (clr.dl ...
- NO.3 CAS配置问题汇总
1. webapp对接到CAS认证时,若CAS Server端的tomcat配置了SSL,则对接的webapp所在的JAVA环境要导入CAS Server端tomcat所用的CRT证书,Windows ...
- eclipse配置问题汇总
问题1:fatjar安装出现故障 问题描写叙述:由于要打包包括第三方jar包的工程,需下载eclipse插件.一般下载地址:http://sourceforge.net/projects/fjep/ ...
- VM CentOS7 网络配置问题汇总
0. 前言 在进行配置之前,我们首先需要明确几个概念: I. VM的网络连接方式 ①. 桥接模式(Bridge) 此模式下,VM centOS 在网络中作为一台独立主机存在,它可以访问网络中的任何 ...
- Nagios学习实践系列——配置研究[监控当前服务器]
其实上篇Nagios学习实践系列——基本安装篇只是安装了Nagios基本组件,虽然能够打开主页,但是如果不配置相关配置文件文件,那么左边菜单很多页面都打不开,相当于只是一个空壳子.接下来,我们来学习研 ...
- Nagios学习实践系列
其实上篇Nagios学习实践系列--基本安装篇只是安装了Nagios基本组件,虽然能够打开主页,但是如果不配置相关配置文件文件,那么左边菜单很多页面都打不开,相当于只是一个空壳子.接下来,我们来学习研 ...
- centos 7下部署grpc
gRPC 是一个高性能.开源和通用的 RPC 框架,面向移动和 HTTP/2 设计.目前提供 C.Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版 ...
- winDBG排错小记
去年底,公司一个上线了近一年的系统逐渐出现访问缓慢,操作超时的问题.本人使用winDBG工具对抓下来的内存映象进行了诊断,虽最后没有查出什么原因,但在过程中也学到了不少东西,现记录如下 一. “Fai ...
随机推荐
- django 学习-12 Django表单 初步
1.先创建项目和应用 django.admin.py startproject cs cd cs django.admin.py startapp blog 2.vim setti ...
- ASP.NET缓存全解析1 转自网络原文作者李天平
有时候总听到网友说网站运行好慢,不知如何是好:有时候也总见到一些朋友写的网站功能看起来非常好,但访问性能却极其的差.没有“勤俭节约”的意识,势必会造成“铺张浪费”.如何应对这种情况,充分利用系统缓存则 ...
- Ajax中get提交和post提交的区别
$.post("HandlerLiuYan.ashx", { leixing: leixing, danwei: danwei, liuyan: liuyan, name: nam ...
- 关于div 浮动在select,或table控件之上
<div style="position:absolute; display:none; z-index:99999" id="d3" onmouseov ...
- Cocos2d-JS特效
Cocos2d-JS提供了很多特效,这些特效事实上属于间隔动作,特效类cc.GridAction类,也称为网格动作,它的类图如下图所示. 网格动作类图 网格动作cc.GridAction它有两个主要的 ...
- in C#,编译型常量(const)和运行时常量(readonly)
readonly 关键字与 const 关键字不同. const 字段只能在该字段的声明中初始化. readonly 字段可以在声明或构造函数中初始化. 因此,根据所使用的构造函数, readonly ...
- 30类css选择器
大概大家都知道id,class以及descendant选择器,并且整体都在使用它们,那么你正在错误拥有更大级别的灵活性的选择方式.这篇文章里面提到的大部分选择器都是在CSS3标准下的,所以它们只能在相 ...
- 9款超绚丽的HTML5/CSS3应用和动画特效
1.CSS3飘带状3D菜单 菜单带小图标 这次我们要来分享一款很特别的CSS3菜单,菜单的外观是飘带状的,并且每一个菜单项有一个精美的小图标,鼠标滑过菜单项时,菜单项就会向上凸起,像是飘带飘动一样,形 ...
- hdu 2501 Tiling_easy version 递推
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2501 题目分析:已知有2*1,2*2,两种型号的瓷砖,要求铺满2*n的格子有多少种方法.可以考虑最左边 ...
- (一)在linux上ubuntu搭建hustOJ系统
同实验室有人在用java写签到系统,正好我在学习PHP,我就在想能不能在以前学长留下来一直没用OJ上添加一个签到功能. 于是说干就干,就找了许多关于hustoj的文章参考. 首先要说的是安装husto ...