修改源码禁止一些特殊符号修改宠物昵称
大家都知道在石器SF里是可以修改宠物昵称的,同时在登出后宠物数据包括昵称都会保存到saac的文本里,这里面其实会导致一个问题,一些没禁止的符号会被写入到文本里会导致数据错乱甚至崩端,我们需要预防余下,修改源码来实现。
1、打开callfromcli.c这个是接收客户端封包的文件
2、搜索void lssproto_KN_recv( int fd,int havepetindex,char* data )这个就是接收宠物修改昵称的封包
3、看到if( checkStringErr(data) ) return;在下面加入下列代码:
if(strstr(data,"|")!=NULL&&strstr(data,"'")!=NULL&&strstr(data,"/")!=NULL&&strstr(data,"\\")!=NULL){ CHAR_talkToCli( fd_charaindex, -1, "宠物名中请不要带有非法字符!", CHAR_COLORRED); return; }这里面一些特殊的符号想 | ' / \\等都是很危险的,所以一定得禁掉。