-------------------------------------------------------------------------------
                         VOREGOTTEN REALM ANSI SUPPORT
-------------------------------------------------------------------------------
 
If you got an ANSI-capable MUCK client (for example: Trebuchet or Phoca95),
then you will be able to enjoy the ANSI support on VR. :-)
Voregotten Realm currently supports both "escaped ANSI" (the default for MUCKs
running the Fuzzball 6 server), and the "tilded ANSI" codes. Let's see how to
enable ANSI and use it on Voregotten Realm:
 
1.- Enabling ANSI for your character
 
First of all, turn on the ANSI emulation of your MUCK client, then turn on the
ANSI support for your character on the MUCK with the following command:
ansi on
 
If anything goes wrong (i.e. if you get strange characters in your MUCK client
window), turn ANSI off with:
ansi off
and check again your MUCK client configuration...
 
Please note: The ANSI colours won't render properly should your MUCK client
window background colour be set to anything else but black. Black background is
the norm for all ANSI enabled MU*s. Please make sure to configure your MUCK
client for a black background...
 
2.- Setting your ANSI preferences
 
Almost all the addon commands were rewritten to support ANSI (those commands
got their name hilighted in cyan in the 'globals' listing), and a unique,
per-user preference scheme was implemented on the MUCK to let everyone choose
which type of messages they want to see ANSIfied or not, and with which
attributes/colours, thus letting each user the freedom to customize the look of
the MUCK depending on their own tastes.
To setup your ANSI preferences, just use the menu-driven utility by typing:
ansi-colors
 
3.- Using ANSI in your objects and programs
 
The MUCK supports both escaped ANSI (example: \[[1;36;41mtest\[[0m) or tilded
ANSI (example: ~&161test~&r). The tiled ANSI is preferred because it is
simpler to use (see 'ansi #help2' for the codes and their meaning, and type
'ansi' without parameters to get a colours/attributes lookup table), and also
because it allows to issue messages following pre-defined styles which result
in different colours/attributes for each user, depending on their own prefe-
rences. On the other hand, the tilded ANSI doesn't allow to mix two or more
attributes or to change just one attribute/colour while letting the rest
untouched (each tilded ANSI code must have all three attribute, foreground
colour and background colour specified), therefore allowing less combinations
and effects. Depending on what you want to achieve, you may therefore choose
one or the other of the two encoding methods...
 
Because the server and the ANSI library will take care of stripping off any
ANSI code for users who are not using the ANSI emulation, you may embed ANSI
pseudo-codes (either tilded or escaped ANSI) in your characters/rooms/objects/
vehicles descriptions (@desc and @idesc).
 
You may also use directly escaped ANSI in @succ, @osucc, @fail, @ofail, @drop
and @odrop messages, or tilded ANSI provided you also use of the {ansi-tell:}
MPI macro. Example:
@succ <thing>=\[[31mYou take <thing>.\[[0m
@osucc <thing>=\[[32mtakes <thing>.\[[0m
or:
@succ <thing>={ansi-tell:~&010You take <thing>.~&R}
@osucc <thing>={ansi-tell:~&020takes <thing>.~&R}
The first method may seem simpler, but see below about {ansi-tell:}...
 
When using tilded ANSI and {ansi-tell:}, you may also specify an ANSI style
by postfixing the string to print with "~&_<style>". For example, using the
"error" style:
@fail <thing>={ansi-tell:You fail to take <thing>~&_error}
 
@osucc, @ofail and @odrop, messages are automatically prefixed with your name
but when using {ansi-tell:}, the "name_color" style is used to "paint" it.
 
NOTE: when used in @osucc, @ofail and @odrop, the "pose" ANSI style is used by
{ansi-tell:}, so that the players seeing your messages may have their own,
custom ANSI style applied instead of the one you defined.

Back to the main page.