搜索
查看: 1924|回复: 4

如何做到一个DOD目录两个不同的AMXX配置?

[复制链接]
发表于 2008-2-27 11:32:25 | 显示全部楼层 |阅读模式 来自 中国–山东–东营
我的服务器有两个DOD端口,都有AMXX插件,并且都在同一个目录下。现在我想实现如下效果,就是端口27017要求有烟雾弹插件,而另一个端口27018不要求有烟雾弹插件,而要求有弹药无限插件,请问如何实现啊?
 楼主| 发表于 2008-2-27 13:24:16 | 显示全部楼层 来自 中国–山东–东营

回复: 如何做到一个DOD目录两个不同的AMXX配置?

一台机器上的多个不同端口的服务器共享使用一个AMX,但每个端口都拥有不同的AMX插件和相关配置。
条件:AMX0.94RC5以上版本。
同一个HLDS目录下不同端口的服务器。

举例:
我在一台机器上的27015、27016两个端口开了两个服务器,一个为pub服务器,一个为比赛服务器。两个服务器想使用同一个AMX,但因为两个服务器功能不一样,所以不可能所有插件配置都一样,特别是比赛服务器,除了比赛插件以外,其他插件很少;而pub服务器又需要很多fun功能的趣味插件,分别安装两个个HLDS是非常耗费硬盘空间的。这时新版本的新共享使用功能就派上用场了。

效果:
通过下面的设置后,两个服务器可以共同使用一个AMX了,但是每个服务器的设置都不相同,比如插件的启动和模块的引导等。大大节省了服务器资源、增强了必要的稳定性和硬盘空间。

设置范例:
1. 首先在addons\amx目录下新建一个叫27016的文件夹(文件夹名可以任意取)。
2. 然后在27016目录中新建plugins和logs两个目录,使得两个服务器分开使用不同的插件,日志文件也可以分开存放。并且把csstats.amx文件分别复制到27016目录中去。最后请复制你想要的插件*.amx文件到27016\plugins目录中去。
3. 最重要的一步,分别在addons\amx目录下以及amx\27016两个目录下新建一个文件名config.ini的文件,加入以下内容:
addons\amx目录下的config.ini内容为:
; Configuration file for AMX
amx_basedir addons/amx
amx_logdir addons/amx/logs
amx_modules addons/amx/modules.ini
amx_plugins addons/amx/plugins/plugins.ini
amx_vault addons/amx/vault.ini
csstats_score addons/amx/csstats.amx
csstats addons/amx/csstats.dat

addons\amx\27016目录下的config.ini内容为:
; Configuration file for AMX
amx_basedir addons/amx
amx_logdir addons/amx/27016/logs
amx_modules addons/amx/27016/modules.ini
amx_plugins addons/amx/27016/plugins/plugins.ini
amx_vault addons/amx/27016/vault.ini
csstats_score addons/amx/27016/csstats.amx
csstats addons/amx/27016/csstats.dat
这样通过修改27016\plugins目录下的plugins.ini和27016目录下的modules.ini文件就可以让两个服务器使用不同的插件和模块了。而且两个服务器的玩家top15等记录以及各种设置也是分开的。
4. 在27015端口服务器的启动参数后添加:+localinfo amx_cfg "addons/amx/config.ini"
这样27015端口使用各种配置是位于amx目录下的默认配置。
27016端口的服务器启动参数后添加:+localinfo amx_cfg "addons/amx/27016/config.ini"
这样27016端口服务器各种配置是位于amx/27016目录下根据config.ini定义的新的amx配置。
到此配置完成。

注解:
上面的amx_bsedir是amx基本配置文件的存放地点,比如:amx.cfg,users.ini等文件放置的位置,这个我还没有调试。

amx_logdir则是你所配置的另一个端口服务器的amx日志log的存放路径,如果你想把amx的log日志存放到27016\logs目录下,则把amx_logdir
addons/amx/logs改成amx_logdir addons/amx/27016/logs就可以了。如果不修改则默认存放在addons\amx\logs目录下。

amx_modules是你所配置的另一个端口服务器的模块引导文件的新位置,这样你可以在另一个端口的服务器上单独减少或者增加各种模块的使用,比如按照举例里,我想在27016的服务器上只使用amx_mm和amx_csstats模块,则更改amx_modules addons/amx/modules.ini为amx_modules addons/amx/27017/modules.ini,然后修改27016目录下的modules.ini文件,只定义使用两个模块就可以了。如果不修改则默认使用addons\modules.ini文件调用服务器要使用的模块。

amx_plugins可以用来定义其他端口服务器使用的插件的引导文件的位置,比如将amx_plugins addons/amx/plugins/plugins.ini改成amx_plugins addons/amx/27017/plugins/plugins.ini后,修改27017/plugins/plugins.ini文件后,就可以为27016端口的服务器调用不同的插件了。如果不修改,则两个服务器都使用addons/amx/plugins/plugins.ini 来调用插件。

amx_vault addons/amx/vault.ini用来定义服务器AMX的各种插件变量的存放路径。

csstats_score addons/amx/csstats.amx用来定义amx中的csstats数据统计插件的路径。

csstats addons/amx/csstats.dat用来定义玩家top15等记录以及部分数据,如果想几个服务器分开统计则按照路径分别修改就可以了,如果修改为csstats addons/amx/27016/csstats.dat,则另一个服务器的玩家top15记录与默认的记录分开记录。不修改则几个服务器的所有记录一起统计。

上面举例用的是两个端口的服务器,其实无论多少个端口的服务器都可以共享使用同一个AMX但分开不同设置,你只要修改一下他们的config.ini文件,然后为服务器启动参数加上其config.ini文件的路径就可以了
回复

使用道具 举报

发表于 2008-2-27 15:11:52 | 显示全部楼层 来自 中国–广西–南宁

回复: 如何做到一个DOD目录两个不同的AMXX配置?

CS的可以实现么??
回复

使用道具 举报

 楼主| 发表于 2008-2-28 09:35:03 | 显示全部楼层 来自 中国–山东–东营

回复: 如何做到一个DOD目录两个不同的AMXX配置?

楼上说的blog我看过了,不是太详细。
回复

使用道具 举报

发表于 2008-3-8 13:06:22 | 显示全部楼层 来自 中国–福建–龙岩

回复: 如何做到一个DOD目录两个不同的AMXX配置?

修改hlds中的swds.dll名字,在修改swds.dll中的liblist.gam名字就行了

也就是说你的CS目录有2个swds.dll(只是名字不同),cstrike里面有2个liblist.gam文件(只是名字不同)

DOD和CS应该差不多
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表