TinyFugue Packages

If you are just getting started with TinyFugue, then this unofficial tf information page might help you get started. It has basic instructions and suggestions. Andy Mortimer also has a beginner's guide for tf.

Most of the packages require a relatively recent versions of TinyFugue. You can find the latest version on the homepage or directly with ftp.

The packages should mention the minimum required version. If you know of any later versions which break the packages, please let me know.

Packages:

Other TinyFugue macro sites:

Ex-TinyFugue macro sites: (does anyone know where these moved to?) Last checked November 11, 1996.

Note: This page is under construction; what else is new with the web?


Store and Reload History

When you have to quit tf, but you'd like to have the recall history still there the next time you start, use this.

Example usage:

;; To save some histories before you log out:
;
;	/store_history -wdruid ~/tf.hist
;	/store_history -wimbris ~/tf.hist
;	/store_history -wcave ~/tf.hist
;	/store_history -g ~/tf.hist
;	/quit
;
;; After you restart tf:
;
;	/restore_history ~/tf.hist
    

Get the Macros: storehist.tf

Requires tf version 3.5 alpha 18 or more recent (may work with older).

TDEF

If you've ever wanted to pretend to be a Mas-Neotek robot, this is for you. (Example Mas-Neotek-like bots: Julia, Gloria, Colin, Newt, Xeglon, OliverJones)

You can set up a collection of triggers which operate appropriately no matter if a person speaks or whispers/pages you.

A very simple example:

;; Just do something like this:
;	/tdef -mglob -t'snausages*' snausages = /reply Yams!!!
;
;; Then you do the following "right" things:
;
;	Rosminah says, "Snausages."
;	You say, "Yams!!!"			<- respond with 'say'
;
;	Ben whispers, "Snausages taste good."
;	You whisper, "Yams!!!" to Ben.		<- respond with 'whisper'
;
;	Hawkeye pages from Evil Patio: "snausages!"
;	You page, "Yams!!!" to Hawkeye.		<- respond with 'page'
;	(see also: /help input)
;
;	Codrus says, "What are snausages?"
;						<- no response!
    

Get the Macros: tdef.tf

Requires tf version 3.5 alpha 20 or more recent.
(i.e. requires tf with /trigger that understands -w<world>)

Playing Two Characters on Same World

If you play two characters on the same combat mud, where one character mostly follows the other one around. Then you can use the ignore.tf package to gag text from the following world.

Simple example to automatically gag text from the following character (no matter which world it is on) from the two worlds aa and bb.

;; Example lines in your world file:
;
;	/addworld aa BOB xxx localhost echo
;	/addworld bb FRED xxx localhost echo
;	/ignore_auto aa bb
    

Get the Macros: ignore.tf

Requires tf version 3.5 alpha 18 or more recent (may work with older).

Watching for Players (Faster /watch.)

A faster replacement for /watch provided with TF. If you want to watch for multiple players, this is the way to go.

Simple example:

;; Probaby typed at the command line:
;
;	/watch Lynx
;	/watch Storm
;	/watch Garrett
;	/watch Moira
;
;	/unwatch Druid
    

Get the Macros: new_watch.tf

Requires tf version 3.5 alpha 18 or more recent (should work with older).

Other Utilities and Goodies

Various useful small things.


Here are some simple macros to do math operations on variables. They work correctly with both local and global variables.

/def -i ++ = /test %{1} := %{1} + 1
/def -i -- -- = /test %{1} := %{1} - 1
/def -i +N = /test %{1} := %{1} + %{2}
/def -i -- -N = /test %{1} := %{1} - %{2}
    

Amuse your friends with outputs like:

Voodoo says, "% Your tf has been running for 18 days 23 hours 26 mins 40 secs."
OliverJones | % Your tf has been running for 119 days 8 hours 43 mins 43 secs.
    

If you want to know how long your tf has been running stick the following line someplace early in your .tfrc, and then stick the macro below anywhere you like.

;; Set the tf startup time in .tfrc, only once.
/test tf_start_time := (tf_start_time | time())

/def tf_time =\
    /let seconds=$[time() - tf_start_time]%;\
    /echo % Your tf has been running for \
	$[seconds/86400] days $[mod(seconds/3600,24)] hours \ 
	$[mod(seconds/60,60)] mins $[mod(seconds,60)] secs.
    

General Programming Hints and Suggestions


David Moore, dmoore@ucsd.edu
Last modified: Thu May 29 20:52:36 PDT 1997