suxxx 发表于 2014-9-22 12:45:02

zmud7.21处理乱码的一个非常简单的办法

zmud7.21,大家都知道最大的问题是中文支持不好,遇到拼音里带k的变量会乱码。

机器人遇到这个乱码,就难以匹配触发。

论坛里有不少解决方案,大家可以搜一下。这里给出一个非常简单的解决方法:那就是以乱码匹配乱码。

zmud的变量赋值中文以后,如果遇到k会乱码,如果再次赋值,这个乱码为稳定下来。我们用这二次赋值的值来进行触发的匹配,就不会出错了。

具体看下实例:


这个孔风,存入变量是会出现乱码的,但是这里可以自动匹配成功,具体实现看下面两条触发:






接任务时候获得的名字二次赋值入变量。触发做任务的时候,也二次赋值以后进行比较,这样就不怕乱码了。

北大侠客行MUD,中国最好的MUD

kaihui 发表于 2014-9-22 12:48:32

太实用了!师姐出品不凡,顶!

suxxx 发表于 2014-9-22 14:10:05

补充下,上面是触发,对于取值也可以类似处理,变量里存乱码就行了,比如护镖的地点选择变量:
建康府是乱码,可以存乱码

seagate 发表于 2014-9-22 14:10:25

应该劝人直接用mush,这样解决太麻烦了,会产生大量的无价值代码

hepat 发表于 2014-9-22 14:18:59

完全看不懂

suxxx 发表于 2014-9-22 14:20:11

呜呜呜,已经入了zmud泥潭,深深陷在里面难以爬上mush大船啊

imtt 发表于 2014-9-22 14:56:14

乱码害人呀,一不小心就……

oolong 发表于 2014-9-22 15:08:13

曲线救国的触发解决用vbs啊。{:7_279:}

#ALIAS set_trigger_xiaobanhe {#SS "VBScript" Dim Char
Char=getvar("killer_name","").value
ProcessCommand "#tr xiaobanhe_npc {^%s形迹可疑的%s"&Char&"~((*)~)$} {after_xiaobanhe_npc_found}"}

比如你npc的名字抓取到变量killer_name,执行alias -- set_trigger_xiaobanhe 就行了。
预先设置好after_xiaobanhe_npc_found的alias

看看成果:
^%s形迹可疑的%s孔风~((*)~)$
after_xiaobanhe_npc_found
这样减少系统负担,对于@npc死了这种触发,再比对变量会判断别人的npc,对zmud721稳定性不好啊。

mookt 发表于 2014-9-22 15:08:31

确实是好主意啊,这样就没问题了。




721还不仅仅是乱码的问题吗,有时候正用着,721突然自己关闭了,462要稳定多了。

oolong 发表于 2014-9-22 15:20:59

没遇到过自动关闭情况,zmud721总体很稳定,要注意尽量不要使用太高级的函数,多用#alias #var这些基本的,应该不会崩溃。
但是有缺点就是多开窗口会资源耗尽。
所以我转cmud了,cmud和462一样可以一个id一个程序。
页: [1] 2
查看完整版本: zmud7.21处理乱码的一个非常简单的办法