精華區beta mud_sanc 關於我們 聯絡資訊
嗯~最基本的做法如下: #trig (關鍵詞) {#cap 視窗名} #trig 是在命令列建立觸發的指令,當然寫在觸發內容中也可使用。 #cap 則是抓取訊息到指定視窗的意思。 而()內的文字會出現在Patten一欄,{}的部份會出現在Commands的欄位中。 例如:你要將標有聖潔龍族的訊息抓到名為CHAT的視窗中,方便瀏灠。語法就是 #trig (聖潔龍族) {#cap chat} 如上,有空格的地方都要空格。 然而,聖潔龍族的資訊只佔聖殿總聊天訊息量的一部份,要是一個一個設定, 會讓觸發數相當龐大不易整理。因此,相似格式的訊息,如公眾頻道,可以如此設定: #trig (【%1】) {#cap chat} 以上語法中,%1可以套入任何字句,長度不限,起於【,結束於】,不管是 【閒聊】【聖潔龍族】【聖殿英雄傳說】【石頭家族】....等等,都在該語法的擷取 範圍,如此一來,就能節省不少設定相似觸發的心力。 注意:以上例子因族繁不及備載,只能簡略舉四例,排列順序與未列出者和編輯者個    人立場無相關。 (avert) 再來,【%1】是很方便簡潔的設定,但因為太簡潔了,所以也抓了不少額外資訊, 量少無妨,但連續性的訊息會造成洗頻,這樣為不漏看訊息而做的觸發就白費了。 洗頻情節重大者: 【F5】【F4】【F3】颶風三兄弟的戰鬥訊息。 Weapon的二天一流技能練功戰鬥訊息,如受流左,受流右等等招式名(avert weapon) 圍歐時寒的超大量戰鬥訊息,時寒的任一劍招都會。 因此,我們會希望能做個黑名單來阻擋這些戰鬥訊息流入擷取視窗, 由於寫法較長,所以直接到觸發編輯視窗寫入,做法大致如下: patten欄:【(%1)】 與上例不同處在%1用括號括了起來,事實上和沒括應該沒什麼不同,保險起見而已。 (avert) Commands欄: #var hide {%1} 上句的目的在設定一個名為hide的變數,內容會填上【(%1)】中%1所抓出的任何內 容,{%1}中的{}是為了連空格也抓進變數中,zmud才不會亂做新變數出來。 使用格式如下: #var 變數名 變數內容 變數預設值 因此,當%1的內容有空格,會導致部份字元跑到變數預設值一欄去,有時候zmud會因此 自行建一個新變數,觸發就會失敗,所以要加{}。 #var hide2 1 同樣也是做一個變數,名為hide2,但內容預設會填入1以備使用!(常常用) 要檢閱變數的內容,按下zmud上方Variable按鈕即可瀏灠。 #case @hide2 {#cap chat} {#noop} #case 是一個類似寫選擇題的語法,格式如下: #case 答案 {選項一} {選項二} {選項三}..... 如果你在答案中填下1,zmud會執行選項一的內容,填2則執行選項二的內容,依此類推。 而該語法的答案當然由zmud自己填,如果要自己填,那乾脆不要寫。所以在答案填下變數 hide2,前方要加上@,zmud才會知道你要用hide2的內容。基本上,hide2的值是1,故 zmud會執行選項一(#cap chat)的動作,在大部份的情況下,所有符合【%1】格式的訊息 都會擷取到chat視窗。 #noop則是什麼都不做的意思。如果hide2的值為2,本觸發將不會執行任何擷取的動作。 接著是設立黑名單了,如果不想抓【F5】,就如以下設定: #if (@hide = "F5") {#var hide2 2} #if意思很明確,即如果、假設之意,格式如下: #if (符合條件) {指令一} {指令二} 如果()內的要求合格了,就做指令一,不合格就做指令二,原則上指令二可有可無。 因此本句的大意為: 如果hide的值是F5,就把hide2的值改為2。 F5左右的引號建議加上,以免節外生枝。 如此一來,當zmud執行到#case這句時,就會執行選項二{#noop},什麼都不做了! 整段語法組合順序如下: patten: 【(%1)】 commands: #var hide {%1}           將關鍵句所得內容寫入hide。 #var hide2 1           將hide2值寫上1。 #if (@hide = "F5") {#var hide2 2} 如果hide的值為F5,將hide2改成2。 #case @hide2 {#cap chat} {#noop} 依照hide2的答案來執行選項。 如果要增加黑名單,只要依#if那行格式不停增列即可,#case要擺最後。 最後,zmud都有吃中文字的問題,造成觸發失敗,但使用#var可以迴避這個問題, 除了抓到的字串正確率較高外(如閃華裂光拳,可以正確無誤地寫入變數值), 如果抓到的字串和原來的字串不相符,只要將寫入變數中的內容直接拿來使用,就能 讓觸發能正常地使用。 注意: 1.本篇所有內容依zmud 5.55版編輯規則編輯完成,不保證其它版本可以使用! 2.本篇各類zmud觸發指令列表使用方式參考自: http://suzin.pixnet.net/blog/post/9225957 紅貓的重生世界 不保證使用方式的正確性。 3.本篇作者資質魯鈍,int值在500以下,跟石化人差不多,不保證本觸發的編法最完美, 最簡便,效果最好,使用前請三思! 4.本篇作法只保證對作者一帖見效,不保證其它人用了也有效。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.163.171.176 ※ 編輯: hmml 來自: 218.163.171.176 (08/30 09:33)
bahatest :推不保證有效 08/30 12:32
mishaer :推int值500以下..:D 08/30 13:38
Layase1 :7.21不能用還是推 08/30 13:49
Layase1 :#if { !%match( %line, "{xxx}" ) } {#cap chat} 08/30 13:55
Layase1 :commands加入這行 XX就是想黑名單的keyword了 08/30 13:56
hmml :做血肉recall判斷觸發挺合適的! 08/31 02:02
Layase1 :順便PO一下用CON算MOB血量的觸發吧 08/31 22:22