This is a collection of Mudlet modules that are intended to be used in HellMOO but might be useful more generally for other MUD/MOO style games as well.
Most of the modules are heavily inspired by similar functionality available in TinTin++ (as wel as other) clients. Note that all of this functionality already has equivalent ways to accomplish the same in Mudlet. The only thing this package does is to expose that functionality in a different, more ad-hoc and (hopefully) wrist-friendly way.
The whole package consists of a variety of modules that can be used together independently of eachother. The only dependency they all have is that the hum
module must be loaded first becuause that contains some generic facilities that are common to a number of modules.
hum
the top level loader (root) module (documented below)delay
executes a piece of code in the futureswatch
helps you to keep track of durations (it's a stopwatch)ticker
executes code on regular intervalsaction
triggers code on patterns of outputmapper
is a mapper API tailored to HellMOOhighlight
makes it easier to create highlights on the flygag
removes lines from output completely
Check out each module's subfolder for specific information about that module.
The recommended way to load modules is using the hum
system module. First, we need to load (or source) this module into our client session.
> lua dofile([[/scripts/hellmoo/hum.lua]])
This will load the loader and a setup some aliases that we can use to load additional modules. We can inspect the loader and see the raw object:
> lua hum
And this will display a literal Lua table with all the stuff that's hanging from the hum
object. Another thing we can do is get the hum
module's help by executing hum help
(or just the name of the module, in this case hum
).
> hum help
This will show you some general info and all aliases provided by the hum
module. Other modules might have examples and remarks in their help.
If we execute hum list
we should get a list of modules that are available:
> hum list
module loaded
action false
delay false
swatch false
ticker false
highlight false
gag false
If you just loaded the hum
module then none of the other modules should be loaded. We can load an individual module using the hum load
alias:
> hum load {ticker}
This will load the ticker
module, initialize it and make sure it's ready to be used. We can check this by just executing ticker
which should display this module's help file:
> ticker
We can verify that it's loaded using the hum list
alias as well:
> hum list
module loaded
action false
delay false
swatch false
ticker true
highlight false
gag false
Also you should be able to see the module on attached to the hum
object and available as the global ticker
object as well. You can inspect these by using the lua
alias.
This module is responsible for loading additional modules and offering a convenient discovery point.
hum load {<module>}
load an individual modulehum load all
load all available moduleshum list
list module infohum help
show the helpfile for this module
To read more about the hum
module you can always execute hum
(or hum help
) after loading it.