rofation 发表于 2006-11-23 21:42:41

点通中地图同步插件构想,请AMXX高手指教帮忙

条件:两台CS1.5服务器,AMXX1.71
一台假设公网IP:59.58.56.55一台内网IP(可访问外网的):192.168.1.23
各位点通AMXX高手可以试着编写这样的环境吗?

功能:用内网IP的CS1.5服务器每60秒检查一下公网IP服务器的当前地图,如果跟内网IP不相同,则内网IP更换地图为公网IP的地图,如果相同,则保持地图不变.这个就是服务器间地图同步.
可能编写的时候有点难度,因为需要调用到公网IP的地图信息,请点通AMXX高手指教,谢谢您了.

Rulzy 发表于 2006-11-23 21:59:45

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

我认为,使用 AMXX 是实现不了的,估计需要用 CPP 编一个模块吧。

ahcat 发表于 2006-11-24 07:32:53

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

理论上可以实现.

但是随之带来的是两个问题:
1. 服务器老是随便换图. 因为要和公网服务器同步
2. 可能会卡服务器

rofation 发表于 2006-11-24 07:57:02

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

ahcat,终于来了,服务器一般不会随便换图,换图时间一般为45分钟.不知ahcat可以试写出来代码吗?

jim_yang 发表于 2006-11-24 16:32:59

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

amxx可以实现,需要socket模块,有空的可以练练手,比较简单。

ahcat 发表于 2006-11-25 07:51:32

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

Post by jim_yang
amxx可以实现,需要socket模块,有空的可以练练手,比较简单。

你指的是在 两个服务器都装插件的方法

我觉得只在 一个服务器装插件的方法更好

pop781 发表于 2006-11-25 14:31:01

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

这个主题不错,可惜我没有不知道获取服务器信息资料的方法
像一些HLSW的服务器管理工具,并不用在服务器里安装插件也可以获得服务信息
谁能指教一下?谢谢。

更正:找到一点资料,应该是信息可以用socket模块进行获取服务器信息的
但没有找到HL的信息格式详细格式,谁能给点提示?谢谢

pop781 发表于 2006-11-25 16:34:29

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

ok,参照服务器玩家跳转插件,简单修改了一下,测试成功
没有进行详细研究,有很多地方可以修改的,现在只是按照
楼住要求60秒检测一次,如果地图不同则更换为同一地图


修改里面的两行,更改为你的目标机器 ip 和 端口
g_saServerAddresses = "219.133.59.20" // 服务器ip
g_naServerPorts = 27015 // 端口

重行编译即可
安装在需要跟随的机器上

另外:
更好的方法应该是目标机器(外网那个)安装插件换图时检测需要跟随的机器(内网)的地图
如果不同则发送远程命令要求换图,就不用循环,可惜没有找到详细的资料,,以后再说了

pop781 发表于 2006-11-25 20:54:01

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

找到 HLDS 回应信息的说明,现在缺少发送远程命令的说明
http://www.valve-erc.com/srcsdk/Code/Networking/serverqueries.html

Ryu2877 发表于 2006-11-26 14:14:05

回复: 点通中地图同步插件构想,请AMXX高手指教帮忙

ig用心厚道。。。先收录下相关信息,有空研究学习。。。
页: [1] 2
查看完整版本: 点通中地图同步插件构想,请AMXX高手指教帮忙