|
Caled Sorcerer
Joined: 21 Oct 2000 Posts: 821 Location: Australia
|
Posted: Tue Oct 22, 2002 12:18 pm
Achaean channel capture - Mod from Lalaynya's |
I took Lalaynya's script, and got it working, but decided that I wanted it to work differently. I found the multiple windows to be cluttering (each to their own, I suppose). Until I saw Lalaynya's though, I never understood how to do a channel capture script. Anyhoo...
What I wanted was for all channels to be captured to a single window, for each to be timestamped and to show which channel it belongs to (necessary since they're all in the same window). I also didn't want it gagged from the main window, and I wanted tells to be captured as well.
I wouldn't have bothered putting it here, since essentially anyone could modify it from Lalaynya's, but a couple of people already asked me about how to change it (it was in fact due to their questions that I decided to change it in the first place).
#CLASS {Communication}
#TRIGGER {^~((%w)~):(*)} {#var cap "%1";#class cap 1}
#TRIGGER {^(%w) tells you,} {#T+ cap}
#TRIGGER {^You tell} {#T+ cap}
#CLASS 0
#CLASS {Communication|Cap} {disable}
#TRIGGER {*} {#CAPTURE Channels}
#CLASS 0
The following should go in the settings file for the window named "Channels"
#CLASS 0
#TRIGGER {^~((%w)~):} {#SUBSTITUTE {"["%time( hh:mm)"] ("%1"):"}}
#TRIGGER {You tell (*), ~"} {#SUBSTITUTE {%ansi( 12)"["%time( hh:mm)"] - You tell" %1 ","}}
#TRIGGER {(%w) tells you,} {#SUBSTITUTE {%ansi( 12)"["%time( hh:mm)"]" %1 "tells you,"}}
Notes:
(1) If you want it to gag captured stuff from the main window, change: "#TRIGGER {*} {#CAPTURE Channels}" to "#TRIGGER {*} {#CAPTURE Channels;#GAG}"
(2) If a bug occurs where sometimes a tell you make yourself is not all captured (i.e. the first line of your tell), the bug is in the trigger pattern I coloured red for you, the fault being the use of (*), ". I think I fixed it, but if it occurs, thats where the prob will be.
(3) I've got the %ansi(12) in there because I like to see tells in red, but someone sends a tell, and their name is coloured something else by zMud (from an allies list), then the whole line was captured in the colour. If you don't like red, change it.
Caled |
|
|
|
Amylon Novice
Joined: 31 Jan 2003 Posts: 49 Location: Australia
|
Posted: Wed Feb 05, 2003 4:25 pm |
Any idea why this catches anything I type in the command line??
Amylon
--------------------
#trigger {(*) tells you, '} {tell %1 NO}
-------------------- |
|
|
|
Caled Sorcerer
Joined: 21 Oct 2000 Posts: 821 Location: Australia
|
Posted: Sun Feb 09, 2003 5:47 am |
Probably because it also needs the command #T- cap in a trigger that fires off the prompt.
Caled |
|
|
|
russtops Newbie
Joined: 04 Mar 2003 Posts: 2 Location: USA
|
Posted: Sat Mar 08, 2003 10:12 pm |
I don't understand how to put it in a settings file for a channel window.
conjure illusion The Pixie Queen sticks her tongue out and blows a raspberry at you. |
|
|
|
Caled Sorcerer
Joined: 21 Oct 2000 Posts: 821 Location: Australia
|
Posted: Sat Mar 08, 2003 10:49 pm |
Go to the command line.
Enter: #WIN channels
That will create a child window. It will, by default, not have an attached command line, but that doesn't matter. Resize this window to where you want it. I have mine on the right side of the screen, about half as high as the screen, and sized with a width that means it doesn't interfere with me reading the main mud window. Using comic sans as your font in the main window gives you a lot more horizontal room on screen. You will probably want to click on the "stay on top" button for that window, as well.
Then, copy the stuff that needs to go into the settings file for that child window. Click on the child window. Paste it with ctrl+v. Press enter. Alternatively, you could click on the child window, then click on preferences... find the option "attached command line" and check it, which will give the child window an attached command line. Than you just paste the settings to the command line and press enter. Same thing.
To open the settings file for the child window - to make sure they were created right, select the window by clicking on it, then open the settings editor. Check its all good, then save the settings and get out of there.
The last thing you need to know, is how to save the position of the window. You have to click on the window to select it, -then- save layout. Just saving layout normally, doesnt save the position of the child window.
Caled |
|
|
|
Larkin Wizard
Joined: 25 Mar 2003 Posts: 1113 Location: USA
|
Posted: Tue Mar 25, 2003 4:46 am |
Is there any way I can turn off the extra prompts I see? I have the channels gagged, but I get all of these annoying extra prompts instead. I don't really want to gag all of my prompts, so I'm hoping to find another way.
Thanks,
Larkin |
|
|
|
Caled Sorcerer
Joined: 21 Oct 2000 Posts: 821 Location: Australia
|
Posted: Wed Jul 30, 2003 4:33 am |
Possibly.. hehe. You aren't seeing extra prompts I dont think.. its just that you're gagging a block of text between two prompts.. giving you double prompts. I'm not going to write the solution for you, since I don't gag the tells anyway, but if I were going to.. I'd consider making the prompt trig that does
#T- cap
A temporary trigger created when the capturing begins... and adding a #GAG to the temp trig. |
|
|
|
kyishi Novice
Joined: 08 Oct 2003 Posts: 31 Location: United Kingdom
|
Posted: Wed Oct 08, 2003 8:18 pm |
Do you know how i stop it from not capturing the whole text from the channels and tells and so on. And how do i stop it from not capturing all the tells that there are, i was sent a tell and it captured it and then when i got the next one it did not display it in the child window?? Got any ideas??
|
|
|
|
itsacat Newbie
Joined: 11 Oct 2003 Posts: 5
|
Posted: Sat Oct 11, 2003 9:45 pm |
Heres the script I wrote for redirecting text in achaea, it does a different colour for tells and clans.
It works and it only gets confused when someone has a tell as their warcry... i just havent got round to sorting it out. If you want to use it, import then disable the chattxt subfolder before connecting.
#CLASS {chat}
#CLASS 0
#CLASS {chat|chattxt}
#TRIGGER {*} {#VAR lineend %rightback( %trigger, 1);#if (@lineend = %char( 34)) {#WIN speech %trigger;#CO bold,red;#gag;#T- chattxt;#T+ chattrig};#if (@lineend <> %char( 34)) {#WIN speech %trigger;#CO bold,red;#gag}}
#CLASS 0
#CLASS {chat|chattrig}
#TRIGGER {*tells you*} {#VAR speechcol "red";#VAR lineend %rightback( %trigger, 1);#WIN speech %trigger;#gag;#if (@lineend <> %char( 34)) {#T- chattrig;#T+ chattxt}}
#TRIGGER {You tell*} {#VAR speechcol "red";#VAR lineend %rightback( %trigger, 1);#WIN speech %trigger;#gag;#if (@lineend <> %char( 34)) {#T- chattrig;#T+ chattxt}}
#TRIGGER {~(*~)~:*} {#VAR speechcol "yellow";#VAR lineend %rightback( %trigger, 1);#WIN speech %trigger;#gag;#if (@lineend <> %char( 34)) {#T- chattrig;#T+ chattxt}}
#CLASS 0
thats it.. btw i used to have a trigger for each clan/guildchan etc which meant i could have a different colour for each one. just disable the ~(*~)~:* trigger and add triggers for the different clans and use the same code. eg #TRIGGER {~(Dwarves of Kongol Drak~)*}
Itsacat - aka Tacasti :P |
|
|
|
itsacat Newbie
Joined: 11 Oct 2003 Posts: 5
|
Posted: Sat Oct 11, 2003 9:56 pm |
uhhh sorry two things with that code, first you dont need the "#co bold,red;" lines in the * trigger (i was playing around forgot to remove them) and secondly you need this in your speech window settings to do the colour.
#TRIGGER {*} {#CO @speechcol,bold} |
|
|
|
quicksilver85 Beginner
Joined: 16 Jan 2004 Posts: 15 Location: USA
|
Posted: Fri Jan 16, 2004 5:09 am |
I downloaded the mudreader plugin. I am attempting to use this script to capture the channels and then have mudreader read them out to me. When it captures to a window it also captures my prompt despite my trigger to disable at next prompt. What can I do?
Also, as a side note, how do I permanently close a child window? |
|
|
|
Firey Wanderer
Joined: 30 Dec 2003 Posts: 61 Location: Norway
|
Posted: Wed Feb 25, 2004 1:20 pm |
ummm.... why doesn't anyone do it the easy way????
Do this:
#TRIGGER {You tell %1} {#CAPTURE TELLS}
#TRIGGER {%1 tells you} {#CAPTURE TELLS}
It works completely fine for me... Then I'll get all those tells I send and I get on a window over the mud.... I made the horenzital split thing. |
|
|
|
Lirril Novice
Joined: 23 Oct 2000 Posts: 44 Location: Ireland
|
Posted: Wed Feb 25, 2004 6:38 pm |
One reason might be because this doesn't deal properly with tells and channel says that are longer than one line. Perhaps one of those clever multistate triggers would be of use in this scenario.
- Lirril |
|
|
|
Askar Newbie
Joined: 24 Jan 2003 Posts: 2
|
Posted: Mon Mar 01, 2004 2:25 pm |
Here is a simular set I personally use for channels, for multiple possible channel ... each can goto seperate windows or combined in one.
#trigger {%1 tells you '%2'} {#window tells %time("dd-mm-yyyy hh.nn.ss") - (%1): %2}
#trigger {You tell %1 '%2'} {#window tells %time("dd-mm-yyyy hh.nn.ss") - (You tell %1): %2}
with minor changes for each channel ie, You say '%1' ... You say to %1 '%2' ... %1 says '%2' ... %1 says to you '%2' ... out to Says chat window using variables contained in the lines to report the info.
Only prob with these 2 triggers is that if you recieve a line with zmud prompt variables you may lose some info in the transfer. ie text following some of the following characters @ $ ; : . ^ ? <> [] {} () % |
|
|
|
discordia Newbie
Joined: 05 Dec 2003 Posts: 8 Location: USA
|
Posted: Thu Mar 11, 2004 9:19 pm |
I love capturing my channels and tells in Achaea, cleaned up on my spam, however I like to log what I do on Achaea and does anyone have a tip for gettng the child windows to log without having to manually do it each time I log in?
|
|
|
|
Kelemvor Newbie
Joined: 23 Mar 2004 Posts: 4 Location: United Kingdom
|
Posted: Tue Mar 23, 2004 8:18 pm |
I have used the script from the original message, but it is capturing every thing the MUD(Aetolia) send to the main window.
Any ideas??????
Kel |
|
|
|
Zulithe Newbie
Joined: 16 Jul 2002 Posts: 8 Location: USA
|
Posted: Sat Mar 27, 2004 8:43 am |
Kelemvor I am having the *exact* same problem. Perhaps some changes in the scripting lately (since that script was made in 2002...)
I'm using zMUD 7.04 and I'm very new at scripting... can someone please help :) Achaea is such a cool mud and this script will be so useful :) |
|
|
|
Kelemvor Newbie
Joined: 23 Mar 2004 Posts: 4 Location: United Kingdom
|
Posted: Sat Mar 27, 2004 9:45 am |
I have managed to find my problem yours might be the same
#CLASS {Communication|Cap} {disable}
#TRIGGER {*} {#CAPTURE Channels}
#CLASS 0
The problem i found was that this trigger was not put into the cap class so the #T- cap was not turning it of, check this trigger for its class if it has none change it to cap.
That solved my trouble
hope it helps
Kel |
|
|
|
discordia Newbie
Joined: 05 Dec 2003 Posts: 8 Location: USA
|
Posted: Tue Mar 30, 2004 1:04 am |
When I updated to Zmud v 7.04 I to had a lot of issues with the capture script.
This is my update to it. Not 'totally' perfect but it should work out for you. If you run REFERENDUM (to see it's command arguments in Achaea) you'll end up pulling them up into your chat window. However, it seems to work fine everywhere else.
Code: |
#CLASS {chat}
#CLASS 0
#CLASS {chat|chattrig}
#TRIGGER {^~(*~)~:*} {
#MAKEWINDOW chat "scrolling=yes|align=top|tight=chat"
#VARIABLE lineend {%rightback( %trigger, 1)}
#IF (@lineend = %char( 34)) {
#CAPTURE chat
#GAG
} {
#T+ chattext
#T- chattrig
}
}
#TRIGGER {^~<~<*~>~>~:*} {
#MAKEWINDOW chat "scrolling=yes|align=top|tight=chat"
#VARIABLE lineend {%rightback( %trigger, 1)}
#IF (@lineend = %char( 34)) {
#CAPTURE chat
#GAG
} {
#CAPTURE chat
#GAG
#T+ chattext
#T- chattrig
}
}
#CLASS 0
#CLASS {chat|chattext}
#TRIGGER {*} {
#VARIABLE lineend {%rightback( %trigger, 1)}
#IF (@lineend <> %char( 34)) {
#CAPTURE chat
#GAG
} {
#CAPTURE chat
#GAG
#T+ chattrig
#T- chattext
}
}
#CLASS 0
|
Hope it helps. It pulls the ansi from Achaea directly to your chat window, without need for colouring/triggering each channel.
Let me know if you have any probs. (Now if I could just get it to LOG automatically *grin*)
discordia/Belynia (achaea) |
|
|
|
Eric Freeman Newbie
Joined: 11 May 2003 Posts: 5 Location: USA
|
Posted: Sun May 02, 2004 10:28 am |
quote: Originally posted by discordia
I love capturing my channels and tells in Achaea, cleaned up on my spam, however I like to log what I do on Achaea and does anyone have a tip for gettng the child windows to log without having to manually do it each time I log in?
Just wondering if anyone answered this guys question. I would like to do the same thing and have the window setup when i first log in. Also the command line on the bottom of the window doesnt need to be there at all.
-Eric Freeman |
|
|
|
Eric Freeman Newbie
Joined: 11 May 2003 Posts: 5 Location: USA
|
|
|
|
fannwyl Newbie
Joined: 14 May 2004 Posts: 1
|
Posted: Fri May 14, 2004 9:09 am |
I loaded discordia's script, and I really like it, but I am still seeing the "extra" prompts in the main window. I am a super-newb with this stuff (just upgraded from 3.62 *boggle*) and I have been able to deceifer what to do.
If someone could give me a really straightforward answer on how to take care of that, it would be VERY much appreciated.
Thanks! Fannwyl |
|
|
|
Bobert Beginner
Joined: 01 Apr 2004 Posts: 20 Location: Purdue University
|
Posted: Wed Jun 09, 2004 2:41 am |
I'm using discordia's script and am quite happy with it, don't mind the extra prompts simply because I get a note when something has been spoken on a channel.
However, I would like to know if there was a way to change the size of the text in the new window, so that I could make it even smaller without destroying the formatting.
Thanks for any help |
|
|
|
Chim Beginner
Joined: 06 Jan 2004 Posts: 13 Location: Canada
|
Posted: Wed Jun 09, 2004 2:46 am |
Could you give me an example of how I'd cautpre a channel? For instance, say I wanted to capture the Ashtan channel? It's always preceded by "(Ashtan)" so I just need to know where to put that in the script.
|
|
|
|
Foilhat Newbie
Joined: 13 Jun 2004 Posts: 3
|
Posted: Sun Jun 13, 2004 3:01 am |
quote: Originally posted by fannwyl
I loaded discordia's script, and I really like it, but I am still seeing the "extra" prompts in the main window. I am a super-newb with this stuff (just upgraded from 3.62 *boggle*) and I have been able to deceifer what to do.
I'm the same boat (new to zmud and unhappy with the extra prompts), but I think I have a solution based on Lalaynya's code. This script, assuming I haven't broken it while cleaning it up, should capture each channel to a new window and suppress the extra prompts. Tip: Windows can be docked into other windows so that you get a tab for each channel that indicates when you've got a new message with a green light - nice touch Zugg!
#CLASS {Chat}
#VAR channel {chat} {chat}
#TRIGGER {^~((%w)~):(*)} {
#VAR channel %1
#CAP @channel
#GAG
#T+ cap
}
#CLASS {Chat|cap} {disable}
#REGEX {^(?!d+h, d+m.*-).*} {
#CAP @channel
#GAG
}
#REGEX {^d+h, d+m.*-} {
#GAG
#T- cap
}
#CLASS 0
Here's a couple of extras that allow you to have zmud beep when you get a new message on a channel (enabled with speed menu) and replace the channel name with a timestamp. Note that these have to go in the settings of the CHANNEL windows:
#VAR soundon {0} {0}
#VAR soundaction {Enable} {Enable}
#TRIGGER {^~(*~)~:} {#if (@soundon) {#beep}}
#TRIGGER {^~((%w)~): } {#sub {"("%time(hh:mm)") "}}
#MENU {@soundaction audio notifications} {
#mat soundon not(@soundon)
#if (@soundon) {
#say Audio notifications are now ENABLED
#var soundAction Disable
} {
#say Audio notifications are now DISABLED
#var soundAction Enable
}
} ""
All of this is working like a charm here, so if you run into problems please reply. I might have broken something when I cleaned it up. |
|
|
|
|
|