MUSHcode:
MUSHcode, aka "Softcode", is a language designed for MUSH-style virtual
worlds, and implemented (with some major and minor differences) in
PennMUSH, TinyMUSH, RHostMUSH, and MUX variants. It can generally be
considered a child of lisp, except that it has *no* variables. Everything
is a string, or in lisp terminology, can be considered a symbol.
On MUSHing and MUSHcoding:
The number one aid to me with both mushing and mushcoding is Tinyfugue,
and my set of .tf scripts. You can find my suite of scripts in:
tf/.
I am a purist when it comes to programming and Computer Science Theory.
Basically, that means - while you *can* use some functions to do the
job of others, using the intended one helps maintain mental program flow,
readability and understandability. Keep things clean, and use everything
you know and that's available to you.
Eventually, I'll probably get around to writing some kind of treatise on
MUSHcode and how I approach it, in case it aids others in learning to
code.
Walker's MUSH-related projects:
My publiclly released and "soon to be released" projects are listed below.
If a project is not posted and it's past its "eta" date, bug me on M*U*S*H
and I'll see if I can't get around to it.
-
WalkerBot - WalkerBot exists in two forms - one will be
available for download, and that is the 'single mush' version. I do
have another which can connect to multiple mushes. Unfortunately, its
code is a horrid mess that I have no intention of cleaning up, and
the single-mush version is actually more recent, more stable, and
supports almost all the features of the multi-mush one.
-
Poker Table - This poker table contains a number of games,
including the classic Five Card Draw and Texas hold'em, as well as
a number of other games including Omaha (Both High and Hi-Lo versions),
Chowaha, Double Board, and Five- and Seven-card stud. It needs
WalkerBot to do the automatic hand ranking, but players can
determine their hands and split the pot themselves, in the absence
of WalkerBot.
-
"Math Chip" and Graphing Calculator - I know what you're thinking.
A 'graphing calculator' on a text-based MUSH? This was designed to accept
human style input (i.e: "graph x + sin(x) - 2x^2") and plot it on the
graph. It can also be used to do simple and quick calculations. A 'math
chip' is included that contains only the math calculation functions.
-
Personal Secretary - If you're like me, you're constantly losing track
of your dozens, if not hundreds, of objects. The 'item manager' helps
manage it. Its first iteration was the "Amulet of Memory" I wrote some
years back, and it has since improved. It needs namegrab(), which was
added to PennMUSH in 1.8.1p4
-
Other - I do have a number of other projects on M*U*S*H that
I'm not including here because I doubt there would be too much interest.
If you *are* interested, email me or @mail me on M*U*S*H and I'll either
get to cleaning it up and post it here, or email you the @decompile.
These include, but are not limited to:
- 'tex' - A code helper for tinyfugue users like me.
- Once Upon a Time game - A storytelling game. Good for parties
or when a bit drunk.
- Bridge table - Old code for a contract bridge game.
- Party Game Console - Definitely needs cleanup, it supports multiple
party games, mostly mafia variations. It's ugly.
- Boggle - A Boggle game. Uses the lookup() function on M*U*S*H to
verify words.
- M*U*S*H-specific stuff like a paddleboat, BeFunge interpreter,
'adminwhack', costume party for +public during Halloween, etc.