【插件资讯】插件来源:网路资源转载提供会员参考
使用指令:cs游戏中文名插件
安装路径:cs游戏中文名插件
【插件介绍】cs游戏中文名插件安装说明:
1.把nameu.amxx放到addons/amxmodx/plugins,
并在addons/amxmodx/configs/plugins.ini里加上一行nameu.amxx
2.把memhack_amxx.dll放到cstrike\addons\amxmodx\modules,
并在cstrike\addons\amxmodx\configs\modules.ini里加上一行memhack
- 在控制台输入utf8name 1开启中文ID功能,0关闭(默认开启)
- u_needaccess 1需要权限ADMIN_LEVEL_B才能改中文ID
- u_needaccess 0不检查用户权限(默认)
使用方法:
- 设置好csmate的路径(其实可以不需要中文聊天软件)
- 进入游戏按Y输入 name 中文ID
name.zip - amxx插件/代码
memhack.rar - memhack
memhack_source.rar - memhack代码
本插件(nameu.amxx)建议配合amxx版本1.75以上已知问题:中文ID可以拥有权限,但要注意,users.ini文件/数据库里的数据一定要用UTF-8编码
- 某些插件不支持UTF-8编码,中文ID可能会显示为乱码
- linux用的memhack可以到这里下载:
http://forums.alliedmods.net/...postcount=62- 如果跟其他插件冲突,可以试一下把这句
register_forward(FM_ClientUserInfoChanged, "fwdClientUserInfoChanged", 0)
改成
register_forward(FM_ClientUserInfoChanged, "fwdClientUserInfoChanged", 1)
这样用get_user_name()之类的函数得到的游戏ID应该是一串数字而不是中文(没测试过,猜的),不过权限问题就得另外解决了
语音时名字显示为乱码(无法解决,貌似要修改客户端关于语音那个dll文件)
某些插件top排名显示为乱码(强制使用UTF-8编码应该就能解决问题,我不懂html~~嘻嘻)
本插件可能会跟某些插件冲突导致
解决方法:修改插件代码,用下面这个函数代替get_user_name()
#include <fakemeta>
#include <memhack>
stock get_name(id, name[32])
{
new buffer = engfunc(EngFunc_GetInfoKeyBuffer, id)
new strtmp1[256]
copy_infokey_buffer(buffer, strtmp1, 255)
new offset = contain(strtmp1, "\name\") + 6
new thischr
new i
for (;;i++)
{
thischr = memhack_get_char(buffer + offset + i, MEM_NULLBASE, MEMTYPE_DATA, MEM_SIGNED)
if (thischr == '\' || thischr == 0)
{
name
= 0
break
}
else
{
name = thischr
}
}
} 附件