The Keep-alive Time-stamp and TinyFugue

Most ISPs (we really mean all) will drop stale connections. If you've been connected to the game too long without sending or receiving anything odds are incredibly high that you'll be disconnected. The easiest way around this is to ensure that the game keeps sending you output on a regular basis. Some players choose to use their @Atime to do this, but what if you want to put other code in there without tripping over a keep alive? What if you don't want to bother with setting up any code on the MARE side at all?

Enter the timestamp channel. On a regular basis (once per minute), the current date and time are sent to this channel. If you've joined, you'll receive it too, keeping your connection nice and fresh (and nobody likes a whiffy connection, geeze, just what were you DOING with it?). The output of this channel looks something like this:

[timestamp] Sat May 20 17:23:57 2017

Of course, you don't want your screen filling up with all those time stamps (Wait, you do? Gosh you're weird). This means you need your client to hide them. This is called gagging. No, not like that, like tying a gag over a mouth. In most clients this is done with a trigger.

Getting started

First things first, you have to actually join the channel. So send this to the game:

+ch +timestamp
+ch public

and you'll see output that looks something like this:

[timestamp] * QBFreak has joined this channel.
Channel timestamp is now default.
Channel public is now default.

Now we need to create our trigger!

Creating the trigger

You create triggers in TinyFugue by typing the appropriate command into the input box. Unless you specify otherwise your trigger will apply to all connected worlds.

Here's what you need to type to gag the timestamp channel:

/def -ag -t'\[timestamp\] *' timestamp-gag

You will not see a response to the /def in the output window.

If you want the trigger to persist the next time you launch TinyFugue, you need to add the above /def command to your .tfrc file. You can confirm the trigger is defined after loading TinyFugue with the following command:

/list timestamp-gag

Which should display something very similar to the /def above. You can also remove it with the following command:

/undef timestamp-gag

OK, your trigger is defined and you should be all set. The only thing left to do is test it. You can do so with the following command:

@echo [timestamp] test

You shouldn't see any output back from the game. If you did, something is wrong with your trigger. Check and make sure the pattern set with -t is correct.

-- SolarQBFreak - 22 May 2017
Topic revision: r1 - 22 May 2017, SolarQBFreak
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding WikiMARE? Send feedback