2008-01-16 23:19:50 +00:00
|
|
|
|
If you have any additions, corrections, ideas, or bug reports please stop by the
|
|
|
|
|
Builder Academy at telnet://tbamud.com:9091 or email rumble@tbamud.com -- Rumble
|
|
|
|
|
|
|
|
|
|
A social is the easiest command to add to the game thanks to the social editor;
|
|
|
|
|
aedit. Socials serve as a means of expression among players, and have no effect
|
|
|
|
|
on gameplay itself (unless you make a trigger to fire off a social). Socials
|
|
|
|
|
can be used locally or globally with gemote.
|
|
|
|
|
|
|
|
|
|
HELP AEDIT
|
|
|
|
|
|
|
|
|
|
Syntax: aedit <social>
|
|
|
|
|
|
|
|
|
|
Aedit is an online action (social) editor that allows you to create socials
|
|
|
|
|
on the fly. Anyone can add new socials just ask a level 33 or above to set your
|
|
|
|
|
OLC to 999 and explain how it works. Use astat to see examples.
|
|
|
|
|
|
|
|
|
|
Here is the much coveted list of $ codes applicable to socials: There are six
|
|
|
|
|
different dollar-sign codes which can be inserted into the messages. Each is a
|
|
|
|
|
dollar-sign followed by a letter. If the letter is lowercase, the player using
|
|
|
|
|
the social is referenced. If the letter is capital, the target character is
|
|
|
|
|
referenced. The letter N inserts the character's name, an E inserts a subject
|
|
|
|
|
pronoun (he, she, it), an S inserts a possessive pronoun (his, hers, its), and
|
|
|
|
|
an M inserts an object pronoun (him, her, it).
|
|
|
|
|
|
|
|
|
|
$e he/she/it person doing social
|
|
|
|
|
$E he/she target of social
|
|
|
|
|
$m him/her person doing social
|
|
|
|
|
$M him/her target of social
|
|
|
|
|
$n char name person doing social (your name)
|
|
|
|
|
$N char name target of social (other persons name)
|
|
|
|
|
$s his/her/its person doing social
|
|
|
|
|
$S his/her target of social
|
|
|
|
|
$t body part of victim
|
|
|
|
|
$p object
|
|
|
|
|
|
|
|
|
|
See also: ASTAT, SOCIALS, AUTOSAVE
|
|
|
|
|
|
|
|
|
|
This is all you really need to know to make socials. Now if you want to edit
|
|
|
|
|
the socials file directly or understand the format in depth keep reading.
|
|
|
|
|
|
|
|
|
|
The file is formatted as follows:
|
|
|
|
|
|
|
|
|
|
<command> <command sort name> <hide flag> <min pos of vict> <min pos of char>
|
|
|
|
|
<min level>
|
|
|
|
|
<messg to character if no argument>
|
|
|
|
|
<messg to others if no argument>
|
|
|
|
|
<messg to char if victim not found>
|
|
|
|
|
<messg to char if vict is char>
|
|
|
|
|
<messg to others if vict is char>
|
|
|
|
|
<messg to char if victim found>
|
|
|
|
|
<messg to others if victim found>
|
|
|
|
|
<messg to victim>
|
|
|
|
|
<messg to char if body part found>
|
|
|
|
|
<messg to others if body part found>
|
|
|
|
|
<messg to victim if body part found>
|
|
|
|
|
<messg to char if object found>
|
2015-03-26 12:21:07 +00:00
|
|
|
|
<messg to others if object found>
|
2008-01-16 23:19:50 +00:00
|
|
|
|
|
|
|
|
|
All socials are 14 lines followed by a blank line. After the blank line is
|
|
|
|
|
either the beginning of the next social or a dollar sign which marks the end of
|
|
|
|
|
the file. The first line of any social has six elements: the command name, the
|
|
|
|
|
abbreviated version of the command, the "hide-flag", the minimum position of the
|
|
|
|
|
victim, the min pos of the char (below), and the minimum level. that any victim
|
|
|
|
|
must be. The hide-flag is a Boolean value. If it is 0, the social is visible to
|
|
|
|
|
anyone in the room. If it is 1, the social is only visible to the character who
|
|
|
|
|
uses it and the character who is the "victim". Most such socials are only usable
|
|
|
|
|
on characters who are awake, meaning that they are either resting or more alert,
|
|
|
|
|
and so the minimum position value we will use is 5.
|
|
|
|
|
|
|
|
|
|
Positions:
|
|
|
|
|
Dead 0 = POS_DEAD
|
|
|
|
|
Mortally Wounded 1 = POS_MORTALLYW
|
|
|
|
|
Incapacitated 2 = POS_INCAP
|
|
|
|
|
Stunned 3 = POS_STUNNED
|
|
|
|
|
Sleeping 4 = POS_SLEEPING
|
|
|
|
|
Resting 5 = POS_RESTING
|
|
|
|
|
Sitting 6 = POS_SITTING
|
|
|
|
|
Fighting 7 = POS_FIGHTING
|
|
|
|
|
Standing 8 = POS_STANDING
|
|
|
|
|
|
|
|
|
|
The next 13 message lines contain the statements that will be shown to various
|
|
|
|
|
characters in certain conditions. The first line is the message sent to the
|
|
|
|
|
player who uses a social when the social has no argument. The second line
|
|
|
|
|
contains the message sent to others in the room when the social has no argument.
|
|
|
|
|
The third message is sent to the player using the social when the player names
|
|
|
|
|
a target, and that target is present in the room. The fourth message is sent to
|
|
|
|
|
others in the room under the same circumstances. The fifth message is sent to
|
|
|
|
|
the target character. The sixth message is sent to the player who uses the
|
|
|
|
|
social when the player supplies a target, and that target is not available. The
|
|
|
|
|
seventh message is sent to the player who uses the social when they player
|
|
|
|
|
supplies his or herself as a target. The eighth message is sent to others in
|
|
|
|
|
the room under the same circumstances. The remaining follow the same theme but
|
|
|
|
|
for body parts and objects. A pound sign in any message line means that there
|
|
|
|
|
is no message.
|
|
|
|
|
|
|
|
|
|
Keep in mind that "messages", "socials", and the world files are not part of
|
|
|
|
|
the source code, but rather are strictly data files. They are read by the game
|
|
|
|
|
at runtime and throughout the course of the game. Changes made to them do not
|
|
|
|
|
require recompiling the executable, they only need for the game to stop running
|
|
|
|
|
and be restarted. You can change information in these files at any time. In the
|
|
|
|
|
tbaMUD codebase the socials appear in alphabetical order in the file, but they
|
|
|
|
|
can appear in any order and can be rearranged if necessary. The socials file is
|
|
|
|
|
located in the lib/misc/ directory. Socials are all handled through the
|
|
|
|
|
generalized command do_action where the $ codes listed above are parsed.
|
|
|
|
|
|
|
|
|
|
Each social must contain the first two messages (if the social ignores
|
|
|
|
|
arguments), or all thirteen messages (if the social takes an argument). Each
|
|
|
|
|
message must be contained in one line. The command-name indicates which social
|
|
|
|
|
is being specified. The command sort name is the shortest part of the command a
|
|
|
|
|
player must type for it to match. The hide-flag can be either 0 or 1; if 1, the
|
|
|
|
|
social is hidden from OTHERS if they cannot see the character performing the
|
|
|
|
|
social. The action is not hidden from the VICTIM, even if s/he cannot see the
|
2025-07-02 21:26:19 +02:00
|
|
|
|
character performing the social, although in such cases the character’s name
|
|
|
|
|
will, of course, be replaced with “someone”. The min positions should be set to
|
2008-01-16 23:19:50 +00:00
|
|
|
|
dictate the minimum position a player must be in to target the victim and
|
|
|
|
|
perform the social. Min level allows you to further customize who can use what
|
|
|
|
|
socials.Where it makes sense to do so, text fields may be left empty. If
|
2025-07-02 21:26:19 +02:00
|
|
|
|
editing manually you should by put a ‘#’ in the first column on the line. Aedit
|
2008-01-16 23:19:50 +00:00
|
|
|
|
does this automatically.
|
|
|
|
|
|
|
|
|
|
Examples:
|
|
|
|
|
|
|
|
|
|
A social only requires 2 message lines. This is the simplest form of a social.
|
|
|
|
|
|
|
|
|
|
~ack ack 0 0 0 0
|
|
|
|
|
ACK!
|
|
|
|
|
$n goes ACK!!
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
~lick lick 0 5 0 0
|
|
|
|
|
You lick your lips and smile.
|
|
|
|
|
$n licks $s lips and smiles.
|
|
|
|
|
You lick $M.
|
|
|
|
|
$n licks $N.
|
|
|
|
|
$n licks you.
|
|
|
|
|
Lick away, nobody's here with that name.
|
|
|
|
|
You lick yourself.
|
|
|
|
|
$n licks $mself -- YUCK.
|
|
|
|
|
You lick $S $t.
|
|
|
|
|
$n licks $N's $t.
|
|
|
|
|
$n licks your $t.
|
|
|
|
|
You lick $p.
|
|
|
|
|
$n licks $p.
|
|
|
|
|
|
|
|
|
|
~comfort com 0 5 5 0
|
|
|
|
|
Do you feel uncomfortable?
|
|
|
|
|
#
|
|
|
|
|
You comfort $M.
|
|
|
|
|
$n comforts $N.
|
|
|
|
|
$n comforts you.
|
|
|
|
|
Comfort who?
|
|
|
|
|
You make a vain attempt to comfort yourself.
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
#
|
|
|
|
|
You comfort $p.
|
2015-03-26 12:02:39 +00:00
|
|
|
|
$n comforts $p.
|