搜索
楼主: baihypm

求禁外网指定ID

[复制链接]
发表于 2007-12-12 05:04:38 | 显示全部楼层 来自 中国–福建–漳州

回复: 求禁外网指定ID

在users.ini把那个ID加上密码,然后再加一个以IP段为帐号的ID,这个IP段在users.ini中的位置要排在那个ID的前面,如:
"192.168." "" "z" "de"
"要禁用的ID" "随便设置一个密码" "z" "a"
回复

使用道具 举报

发表于 2007-12-12 05:09:54 | 显示全部楼层 来自 中国–福建–漳州

回复: 求禁外网指定ID

Post by zwfgdlc
以下代码没测试过,理论上应该可以,自己测试下,先在configs文件夹建立一个player.ini文件,在这个文件里写上你想要限制的ID,一行一个,默认局域网IP为192.168段
[php]
#include <amxmodx>
#include <amxmisc>
#define PLUGIN_NAME "New Plug-In"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "zwfgdlc"
new player[512]
new configsD...
下面这一行要改一下,否则,类似于154.192.168.4这样的IP也会认为是内网:
if(containi(ip,netbarip)==-1 && containi(player,name)!=-1)

应改为:
if(containi(ip,netbarip)!=0 && containi(player,name)!=-1)
回复

使用道具 举报

发表于 2007-12-12 14:44:18 | 显示全部楼层 来自 中国–广东–惠州

回复: 求禁外网指定ID

谢谢版主指点,今天看看了下,发现个很严重的问题,少了个客户端信息改变的判断,又重新增加了客户端信息变更检测
[php]
#include <amxmodx>
#include <amxmisc>
#define PLUGIN_NAME "New Plug-In"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "zwfgdlc"
new player[512]
new configsDir[64]
new netbarip[16]
public plugin_init()
{
register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR);
get_configsdir(configsDir, 63)
format(configsDir, 63, "%s/player.ini", configsDir)
loadSettings(configsDir)
register_cvar("amx_netbarip","192.168")
get_cvar_string("amx_netbarip",netbarip,15)
}
loadSettings(szFilename[])
{
if (!file_exists(szFilename))
return 0
new len, pos = 0,temp[32]
while (read_file(szFilename,pos++,temp,31,len) )
{
if(temp[0==';']||len==0)
continue
format(player,511,"%s %s",player,temp)
}
return 1
}
public client_connect(id)
{
new name[32],ip[16]
get_user_name(id,name,31)
get_user_ip(id,ip,1)
if(containi(ip,netbarip)!=0 && containi(player,name)!=-1)
{
server_cmd("kick #%d ^"%s^"",get_user_userid(id),"对不起,此ID禁止在外网登陆")
}
}
public client_infochanged(id)
{
new oldname[32],newname[32],ip[16]
get_user_name(id,oldname,31)
get_user_info(id,"name",newname,31)
get_user_ip(id,ip,15)
if(!equal(oldname,newname))
{
if(containi(ip,netbarip)!=0 && containi(player,newname)!=-1)
server_cmd("kick #%d ^"%s^"",get_user_userid(id),"对不起,此ID禁止在外网登陆")
}
}
[/php]
回复

使用道具 举报

 楼主| 发表于 2007-12-14 21:51:26 | 显示全部楼层 来自 中国–广东–广州–白云区

回复: 求禁外网指定ID

测试中,有结果再来报告!谢谢各位大大。再问个我把上面代码用文本文件保存成UTF-8的sma文件用compile.exe不能转换成amxx,保存成ANSI就可以。要不别人CS出现一行乱码不知道啥意思。
回复

使用道具 举报

发表于 2007-12-14 22:34:43 | 显示全部楼层 来自 中国–广东–深圳–南山区

回复: 求禁外网指定ID

这样他还可换个ID进来作弊!直接封他IP就行了呀!!!!
我也遇到这样的人!也是外网自己家里面的!他每次重起都不一样的IP!
第一次连接 61.145.110.25
第二次连接 61.145.139.110
第三次连接 61.145.61.54
第四次连接 61.145.73.61
第五次连接 61.145.85.41
他的IP前2段始终不变....
你只要在HLSW里面禁封 "61.145."就搞定了!
他再怎么重起都进不来了!
感谢我吧~这招最有用!
回复

使用道具 举报

发表于 2007-12-15 04:52:31 | 显示全部楼层 来自 中国–北京–北京

回复: 求禁外网指定ID

AMXX1.76C下编译没问题,你自己试下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

发表于 2007-12-15 07:37:42 | 显示全部楼层 来自 中国–福建–漳州

回复: 求禁外网指定ID

Post by baihypm
测试中,有结果再来报告!谢谢各位大大。再问个我把上面代码用文本文件保存成UTF-8的sma文件用compile.exe不能转换成amxx,保存成ANSI就可以。要不别人CS出现一行乱码不知道啥意思。
估计你是使用Windows的记事本来保存为UTF8的,是吧?如果是这样,你下载我在发布区上发布的修改过的compile.exe,用它覆盖原来的compile.exe就可正常编辑了,或者你不要用记事本来保存,下载个UE,将其保存为无BOM的UTF8格式。
回复

使用道具 举报

 楼主| 发表于 2007-12-16 15:56:11 | 显示全部楼层 来自 中国–广东–广州–白云区

回复: 求禁外网指定ID

Rulzy谢谢啦~发现我越来越爱点通了,哈哈~
回复

使用道具 举报

 楼主| 发表于 2007-12-17 16:50:36 | 显示全部楼层 来自 中国–广东–广州–白云区

回复: 求禁外网指定ID

zwfgdlc ,你发的sma和后面发代码我都试过了,貌似不行啊!虽然Rulzy vbmenu_register("postmenu_288058", true);  大大的方法可行,但是还是期望你的这个插件。
回复

使用道具 举报

发表于 2007-12-17 21:54:28 | 显示全部楼层 来自 中国–广东–惠州–惠城区

回复: 求禁外网指定ID

你再试下............

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

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

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