搜索
查看: 13258|回复: 14

ʹ

[复制链接]
发表于 2003-8-3 21:50:46 | 显示全部楼层 |阅读模式 来自 中国–湖北–武汉
今天为大家介绍的是新版本的AMX(从AMX0.9.4RC5版本开始)一些比较实用而且重要的新功能之一:
一台机器上的多个不同端口的服务器共享使用一个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文件的路径就可以了。
还有什么疑问或者不明白的地方请发贴回贴询问好了。谢谢支持!:):]:D

DT_becking
发表于 2003-8-4 01:09:21 | 显示全部楼层 来自 中国–江苏–扬州
8错
回复

使用道具 举报

发表于 2003-8-4 12:06:41 | 显示全部楼层 来自 中国–广西–柳州
好,支持
回复

使用道具 举报

发表于 2003-8-4 14:35:55 | 显示全部楼层 来自 中国–广西–南宁
我似乎觉得拷贝两个HLDS比频繁调用一个AMX更省系统资源,况且2G的空间对于现在的硬盘来说根本不是问题。

只是乱猜,没有测试过:)
回复

使用道具 举报

发表于 2003-8-9 13:48:37 | 显示全部楼层 来自 中国–陕西–汉中–汉台区
很强啊,我简直无语言了,不过对于技术的进步,就是解放生产力在这里充分体现了,在cs专用服务器下,一个40G的硬盘里只有一个2G的文件,呵呵似乎不是一个大问题,但在这一章里,我又学到了好多,谢谢,BECKING 的贡献和对知识的认真,我也要好好学习了
回复

使用道具 举报

发表于 2003-8-17 20:53:40 | 显示全部楼层 来自 中国–福建–三明
顶~~~~~~~~~~~~~~~~~~
回复

使用道具 举报

发表于 2003-8-22 13:02:50 | 显示全部楼层 来自 中国–北京–北京
hao
回复

使用道具 举报

发表于 2003-8-28 15:47:15 | 显示全部楼层 来自 中国–北京–北京
becking  我试过了这个方法~~ 不好使啊...
回复

使用道具 举报

发表于 2003-8-29 10:26:55 | 显示全部楼层 来自 中国–北京–北京
becking不知道大家有没有人试过你这个方法  我亲自作了好机次  多没有成功..

这个功能我很需要.. 不知道你 自己试过没有?
回复

使用道具 举报

发表于 2003-8-29 13:49:15 | 显示全部楼层 来自 中国–北京–北京
我的意思是想实现 AMX.CFG 和 USERS.INI的个性配置 可是不好使..
回复

使用道具 举报

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

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