|
发表于 2002-12-25 23:26:09
|
显示全部楼层
来自 中国–天津–天津
简简就我的理解说说吧
其实,这个vac防作弊从根本上说只是一种手段,而不是一个实体意义上的程序。
=====================================
实现的方法,就是在cs的官方网站长期架设一个服务器,这个服务器里装载着可以起到防作弊作用的相关插件。
1)那么当你的服务器可以连通外网又打开防作弊参数时(+secure .or. -module vactest),你的服务器就会尝试从这个官方的服务器网站上下载两个文件
ModuleC.dll和ModuleS.dll,据我观察,S结尾的是服务器所用的主要文件,而C结尾的文件只是一个用来跟客户端文件进行对比异同的参考文件。
以上是指的windows2000环境,linux下应该是ModuleS_i386.so,我只是猜的,因为我并没架过linux环境下的CS服务器。
2)客户端在连通服务器时,如果发现服务器是需要安全验证的(即服务器左方显示没有黄色的叹号),就需要也去那个官方网站检查一下,用那个ModuleC.dll文件里所定义的方法检查客户端是否有作弊的情况。而且这种检查是定期的,过一阵子检查一次,如果发现有作弊的现象,就一脚踢出。
大概就是这个样子吧。
=====================================
而所谓的vac模拟,是利用java完整的网站功能,虚拟架设了一个vac的服务器,而这个服务器可以提供以上官方网站所能实现的完全功能,唯一的缺憾就是官方服务器的相关检查作弊组件会由官方不断更新,而我们自建的则只能手工下载。
因为网速的关系,我们可能会下载很多次才能成功,所以我以前才专门写了一个批处理用来不断的自动下载相关插件,直到彻底成功。
=====================================
而你如果搭建了一个完整的vac服务器,你会发现那个java的黑窗口处于等待状态,如果你不理解你可以认为那就是一个web,它在等待着各类用户的存取。比如说,你现在启动hlserver服务器的话,你会发现那个java窗口里出现了xx.xx.xx.xx downloading 什么文件的字样,应该是两个,这就说明你的vac服务器运转正常了,因为它响应了你本地服务器的请求。
如果一个不能上外网进行vac验证的用户,经过修改他客户端的woncomm.lst后,也会到你的这个java服务器上来存取文件,你会见到xx.xx.xx.xx来你这里check access。
=====================================
再说的简单一点,对于valve的核心思想,他是想要用两个服务来实现完整的反作弊功能,一个是你的cs服务(本地),一台是valve的作弊组件检查下载服务(远程)。
而你如果用这个自建的方法,就解决了无法连上外网并启动反作弊的功能,你还是用两个服务来实现的该功能。只不过这两个服务全都做到了你的服务器上。只要定期更新反作弊插件,你的自建服务器完全等同于官方服务器的全部功能。而且稳定性由你控制,速度如果是你周边的用户,肯定是很快的。
=====================================
明白了吗?
这里高手众多,我以我自己粗浅的见解大概说了一些,有些班门弄斧了。
有说的不对的地方,请大家指教。 |
|