[Complete] Messenger Proposal Spec

Ideas that have been discussed, approved, and are awaiting implementation.

Moderators: Maeve, Maeve

Post Reply
User avatar
Kinaed
Posts: 1984
Joined: Wed Jan 05, 2011 8:54 pm
Discord Handle: ParaVox3#7579

Fri Apr 01, 2011 1:54 pm

Code: Select all

NEW MESSENGERS

Syntax: message send <name> <message_to_player> / <message_to_room>
        message all <message>
        message cancel
        message receive

Message <name> <message> will send a default, publically visible messenger to a player. Message all <message> will send the message to all players in the game.

Example:

message send Tizona A shady fellow slips you a piece of paper that reads, "Your time is up, Awesome Ti!" / A shady fellow bumps into Awesome Ti as he passes.

Tizona will see:
A shadow fellow slips you a piece of paper that reads, "Your time is up, Awesome Ti!" [Messenger]

Others in the room see:
A shady fellow bumps into Awesome Ti as he passes. [Messenger]

Message send <name> <message_to_player> / <message_to_room> will give a player complete control over the form and shape the messenge arrives to the other player.

Message receive will trigger a waiting messenger to approach the target in a room. You may only have one messenger waiting at a time. If another messenger is attempted to be sent, the first message will fail and the latter one shall overwrite it, so it is best to receive messengers as quickly as alerted by the text "A messenger awaits you. Please type 'message receive' when in an RP appropriate place. [OOC]"

Message cancel will allow a sender to cancel the messenger, but they will not receive their coin. Messengers will still cost 5 silver to send.

Messages arrive/become available to their destination a random three to five minutes after being sent and will inform the sender if the messenger has failed or when the message has been received. Players will be unable to receive messengers in rooms marked privaterp, or with whererp turned off. Typing message receive in these circumstances will result in the error message, "You cannot receive a messenger whilst <in a privaterp room/whererp is off>."

A messenger in the queue will be wiped out by quitting the game or losing link for more than 6 OOC hours.

User avatar
Zeita
Posts: 324
Joined: Mon Jan 10, 2011 7:38 pm

Sun Apr 03, 2011 7:49 pm

Thank you,

This would be quite useful, especially the 'receive' function. As someone with frequent connection problems due to mudding while travelling, I'm often in the situation where I'm getting messengers while link dead and thus not hearing the actual messages. I often never know unless someone asks me if I received it. In any case, being able to receive at leisure would be great.

I also like the chance to personalise the message.. messages a bit more.

Thanks,
Charm.

User avatar
Kinaed
Posts: 1984
Joined: Wed Jan 05, 2011 8:54 pm
Discord Handle: ParaVox3#7579

Thu Feb 09, 2012 5:05 pm

I've altered this a bit. Opinions?

Code: Select all

Syntax: message prepare
        message send
        message send <obj>
        message cancel
        message receive
        message reject
@
{cMessage prepare{x will take a player into a menu where a character can 
fill in various fields to prepare a messenger.
@
{cMessage send{x will, provided the minimally required fields are 
filled in, send the message the player has prepared. It will take a 
random period between three and five minutes for the recipients of a
message to be alerted that they have a messenger waiting. Recipients
may only have one messenger awaiting them, so if another person sends
a messenger to a recipent when one is already unchecked in the queue,
the new message will overwrite the old one.
@
{cObj <obj>{x while in the message preparation menu will send an object 
in a player's inventory to another player, and charge 1 silver per size 
point of the obj. It cannot be used with the 'all',  'guild' or multiple
recipient options.
@
{cMessage cancel{x allows the sending player to halt a message they've
already sent, mostly used to correct grammar or other errors.
@
{cMessage receive{x is the command used by the recipient to access a
message waiting for them.
@
{cMessage reject{x is a recipient's command to reject the messager and
send a comment to the sender: "The hired messenger reports that they
were unable to find <remembered name>." 
@
The message preparation menu looks like this:
@
{c                          Messenger Preparation{x
@
{cRecipients   {r:{x <type recipient, then all names divided by commas, 'guild' or 'all'>
{cMessage      {r:{x <type message, then the message exactly as it should appear to the person receiving it, including any emote actions, language codes, etc.>
{cRoom Message {r:{x <type room, then how others viewing the messenger will see it>
{cObjects      {r:{x <type obj <item name> and this will show the short desc of an obj that is being sent>
{cCost         {r:{x <this is a calculated field, 5 silver per recipeint, 20 for all or 10 for guild>

Takta

Thu Feb 09, 2012 6:48 pm

Functionality that would be amazing: sending items.

Can be, to prevent abuse, that you can only send a single item of a certain maximum size and cost is based off size.

Size is probably better than weight for realism's sake.

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 8 guests