Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Entire forum
➜ MUSHclient
➜ Tips and tricks
➜ Timestamps
It is now over 60 days since the last post. This thread is closed.
Refresh page
Posted by
| Daniel Phillips
(3 posts) Bio
|
Date
| Tue 31 May 2005 08:41 PM (UTC) |
Message
| Is there a way to trigger timestamps on MUSHclient?
I'd like to trigger such actions as...
You hurl a knife a Dingus
You regain your balance.
You jab Dingus
Your mind is now focused.
and many other things of that nature. I would enjoy it if there was set up to look much like[minute:second:milliseconds] if at all possible.
Muchas Nachos! | Top |
|
Posted by
| Flannel
USA (1,230 posts) Bio
|
Date
| Reply #1 on Tue 31 May 2005 08:49 PM (UTC) Amended on Tue 31 May 2005 08:50 PM (UTC) by Flannel
|
Message
| What do you want?
You mean send things at certain times? or do you want to trigger those things, and then display the times they occurred? |
~Flannel
Messiah of Rose
Eternity's Trials.
Clones are people two. | Top |
|
Posted by
| Tsinghahla
Sweden (14 posts) Bio
|
Date
| Reply #2 on Wed 01 Jun 2005 09:05 PM (UTC) |
Message
| Hmm..like..
Quote: [Start Timestamp]
Jab Flannel-/00:00:00
You have recovered balance-/02:35:17
Throw dagger at Flannel-/03:58:12
You have recovered balance-/05:58:12
[End Timestamp]
Say, "It takes me 2.35 second to regain balance after a jab"
Like that?
| Top |
|
Posted by
| Daniel Phillips
(3 posts) Bio
|
Date
| Reply #3 on Wed 01 Jun 2005 09:34 PM (UTC) |
Message
| Tsinghahla hit it right on the head. That is exactly what I want.
Something to determine the time it takes to jab and regain focus. | Top |
|
Posted by
| Flannel
USA (1,230 posts) Bio
|
Date
| Reply #4 on Wed 01 Jun 2005 10:29 PM (UTC) |
Message
| So, what resets the timers?
And then do what with that information?
Do you want it to display the time on each line?
Or do you want it to just note it? or put it in the status line? or what? |
~Flannel
Messiah of Rose
Eternity's Trials.
Clones are people two. | Top |
|
Posted by
| Tsinghahla
Sweden (14 posts) Bio
|
Date
| Reply #5 on Wed 01 Jun 2005 10:46 PM (UTC) |
Message
|
on zMUD its just with %time.
%time(ss.zz) is seconds.microseconds
%time(nn:ss.zz) is minutes:seconds.microseconds
%time(hh:nn:ss.zz) is hours:minutes:seconds.microseconds
And I guess you want aliases to turn it on/off and reset it evertime you turn it off?
I believe this is what he's looking for.
No idea how to make it though, but more information to people who knows, if it's doable. | Top |
|
Posted by
| Flannel
USA (1,230 posts) Bio
|
Date
| Reply #6 on Wed 01 Jun 2005 10:57 PM (UTC) |
Message
| If he just wants to know times between events, he doesn't need to go through much of anything.
If he wants to append the timestamp, he has to go through a plugin, and actually edit the line. Which will also have the ill effect of making his current triggers stop working (unless he includes the time in them).
So, it's definitely doable, I'm just trying to figure out if he needs timestamps on each activity, or if he just needs to know a span of time.
Lines already store their timestamp, and he can also simply create a trigger/alias to reset the timer (which would just store a time) and then just have whatever triggers just subtract their time from the stored time, and display that in the status bar, or in a note, or whatever else.
He can even reset the 'connected' time to zero, if he wants a running total.
Like I said though, pre/post fixing a timestamp is infact possible, and not that hard at all either. But it will have adverse affects that reverberate through all the triggers (and having to keep two versions, or an optional time, since you’ll want to be able to match regardless of whether the timestamp is on).
|
~Flannel
Messiah of Rose
Eternity's Trials.
Clones are people two. | Top |
|
Posted by
| Daniel Phillips
(3 posts) Bio
|
Date
| Reply #7 on Fri 03 Jun 2005 07:42 PM (UTC) |
Message
| All I want is something to print the time in minutes seconds and milliseconds at the end of a given line. Zmud does it with the %time command and I just throw along a #echo to show me on the main screen. I honestly didn't think it was that hard to understand whe way I put it but I guess I was wrong. I just want it to print the current minute second and millisecond, I can use math to figure out the difference from there. | Top |
|
Posted by
| Flannel
USA (1,230 posts) Bio
|
Date
| Reply #8 on Sat 04 Jun 2005 06:49 AM (UTC) |
Message
| Here's a plugin to append timestamps to lines (I still think there are better ways to get it done, but whatever):
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE muclient>
<!-- Saved on Friday, June 03, 2005, 10:00 PM -->
<!-- MuClient version 3.66 -->
<!-- Plugin "Timestamp" generated by Plugin Wizard -->
<!--
The reason this is in JScript is because it's the only language in which it's easy to deal with milliseconds.
This is an ugly plugin, because it destroys all sembalance of order in the lines.
I suggest adding color to the timestamp (for the append) do that with the
ANSI function (since we're dealing with packets, you need to insert ANSI sequences).
It's in the OnPluginPacketRecieved function, the only line that does much in that function,
easy enough to find.
I do suggest if you're only using it for a couple of lines, that you just omit a line, and renote it
(or just note the time afterwards or whatnot).
This plugin has functions to do only that as well.
Check the :now alias for a pretty cut and dry example.
Also, you can include hours by toggling the comments in the GetTime function as well.
-->
<muclient>
<plugin
name="Timestamp"
author="Flannel"
id="89596abf2cfcc625086f8255"
language="JScript"
purpose="Keep track of times between lines and optionally append a timestamp"
save_state="y"
date_written="2005-06-03 21:58:32"
requires="3.59"
version="1.0"
>
<description trim="y">
<![CDATA[
timestamp:on - turn timestamping on
timestamp:off - turn timestamping off
timestamp:reset - reset the start time
timestamp:now - note the current time
timestamp:help - display this page
]]>
</description>
</plugin>
<!-- Get our standard constants -->
<include name="constants.js"/>
<!-- Aliases -->
<aliases>
<alias
name="Reset"
match="^timestamp:reset$"
enabled="y"
regexp="y"
send_to="12"
ignore_case="y"
keep_evaluating="y"
sequence="100"
>
<send>var now = new Date();
setvariable("zerotime", now.getTime());
note("Timestamp Reset to Zero");</send>
</alias>
<alias
name="Toggle"
match="^timestamp:(on|off)$"
enabled="y"
regexp="y"
send_to="12"
ignore_case="y"
keep_evaluating="y"
sequence="100"
>
<send>var toggle = "%1".toLowerCase();
if (toggle == "on")
{
setvariable("enabled",1);
note("Timestamp Enabled");
}
else if (toggle == "off")
{
setvariable("enabled",0);
note("Timestamp Disabled");
}</send>
</alias>
<alias
name="Now"
match="^timestamp:now$"
enabled="y"
regexp="y"
send_to="12"
omit_from_output="y"
ignore_case="y"
keep_evaluating="y"
sequence="100"
>
<send>note(GetTime());</send>
</alias>
</aliases>
<!-- Variables -->
<variables>
</variables>
<!-- Script -->
<script>
<![CDATA[
function OnPluginPacketReceived (s)
{
if (GetVariable("enabled") == 1)
{
s = s.replace(/(\r\n|\r|\n)/g," - " + GetTime() + "$1");
}
return(s);
}
function FormatNumber (i,d)
{ //i is integer, d is digits (min)
//returns a string
var str = i.toString();
var digits = str.length;
for (var j = digits; j < d;j++)
{
str = "0" + str;
}
return (str);
}
function GetTime ()
{
var now = new Date();
var then = getvariable("zerotime");
var diff = now.getTime()-then;
var mill = diff % 1000;
diff = Math.round(diff / 1000);
var sec = diff % 60;
diff = Math.round(diff / 60);
/* //if you want hours, uncomment this
* var min = diff % 60;
* diff = Math.round(diff / 60);
* note(diff + ":" + FormatNumber(min,2) + ":" + FormatNumber(sec,2) + "." + FormatNumber(mill,3));
*/
return (diff + ":" + FormatNumber(sec,2) + "." + FormatNumber(mill,3));
}
]]>
</script>
<!-- Plugin help -->
<aliases>
<alias
script="OnHelp"
match="^timestamp:help$"
enabled="y"
regexp="y"
ignore_case="y"
>
</alias>
</aliases>
<script>
<![CDATA[
function OnHelp (sName, sLine, wildcards)
{
world.Note (world.GetPluginInfo (world.GetPluginID, 3));
}
]]>
</script>
</muclient>
|
~Flannel
Messiah of Rose
Eternity's Trials.
Clones are people two. | Top |
|
Posted by
| Aheram
(23 posts) Bio
|
Date
| Reply #9 on Sun 12 Jun 2005 02:30 PM (UTC) |
Message
| Does he mean TIMESTAMP or does he just want to know the duration? | Top |
|
Posted by
| Flannel
USA (1,230 posts) Bio
|
Date
| Reply #10 on Sun 12 Jun 2005 06:18 PM (UTC) |
Message
| He wants it stamped, the line appended with a time, but he wants to be able to zero it. So yeah, it really is a 'timer' type thing, but it's stamped onto the line.
If you want the time itself stamped, the plugin should be easy enough to modify (it actually makes the whole thing a lot simpler). |
~Flannel
Messiah of Rose
Eternity's Trials.
Clones are people two. | Top |
|
The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).
To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.
29,898 views.
It is now over 60 days since the last post. This thread is closed.
Refresh page
top