Courier - Layout

Welcome, one and all. This has nothing to do with the core debate surrounding Couriers, this is just a way for me to lay out my personal thoughts. - Daen

Talk:Courier - Layout

Principle

 * The Courier idea operates under the assumption that Goods  are always in a physical form, similar to Minecraft.   Goods can't be teleported around, they are required to physically travel through the world in order to move.  The main idea behind Courier s is to provide a structured and safe way for players to transport   Goods  from place to place.

Basic Terminology (Not set in stone, obviously)

 * Goods - Anything that can be traded between players without needing Player Studio or other SOE interaction.


 * Sealed Package - An item that represents the Goods the Originator is sending to the Recipient.
 * Expiration - How long the Sealed Package can be in transit before being considered a failed delivery.
 * Reward - The amount paid to the Courier upon a successful delivery.
 * Collateral - The amount the Courier pays to accept a Courier Contract.
 * Originator - Player that creates the Sealed Package.
 * Recipient - Player that will receive the Sealed Package.
 * Origin - The Mailbox in which the Originator places the Sealed Package in preparation for transit.
 * Destination - The Mailbox the Recipient marks as being where all Sealed Packages should be delivered.
 * Courier - Player that moves the Sealed Package from the Origin to the Destination.
 * Courier Contract - An item that can either be traded or placed on a Courier Board to allow Couriers to access a Sealed Package.
 * Courier Board - A placeable prop that allows players to access Courier Contracts.
 * Mailbox - A placeable prop used to store messages, Sealed Packages, and Goods.
 * Courier Rep - A ranking system that represents a Courier's reputation.

Delivery Process

 * Originator wants to send Goods (via purchase, gifting, trade, etc.) to a Recipient.
 * Originator packages Goods into a Sealed Package and places it in the Origin.
 * The Courier Contract is generated by the appropriate player.
 * If the Sealed Package is a gift, the Courier Contract is generated by the Originator.
 * If the Sealed Package is a purchase or trade, the Courier Contract is generated by the Recipient.
 * The Courier Contract is placed on a Courier Board (allowing players to see it) or traded to someone specific.
 * Whomever accepts the Courier Contract becomes the Courier for that delivery.
 * The Courier goes to the Origin to pick up the Sealed Package and takes it to the Destination.
 * If the Courier dies, logs out for too long, or passes the Expiration, it is a failed delivery.  In the event of a failed delivery, the Courier Contract is returned to the Courier Board or the player it was originally generated for.  The Collateral the Courier  paid is added to the Reward for future attempts to deliver the Sealed Package.  A failed delivery results in -1 to the Courier's Courier Rep.
 * Otherwise, it is a successful delivery.  This results in the Courier being paid the Reward and +1 to the Courier's Courier Rep.

Courier Contract

 * The Courier Contract is purely an enabler.  It's an item that shows the information everyone involved in the process needs.  The Contract can be generated by both sides of the delivery, and I'll explain why.  If someone wants to give a gift, it's important that they have access to the Contract.  This allows them to set up the Origin, Expiration and Reward, which essentially means that as a real-world comparison they are paying for shipping.  As long as they know the Destination, they can send the package without my direct involvement.


 * If it's a trade or a purchase, it makes more sense to have the Recipient interacting with the Contract.  This allows them to set up the Expiration, Reward, and Destination, which essentially means that they are paying for shipping just like buying from Amazon.  As long as the Recipient has the Origin, they can set up a delivery without the Originator's direct involvement.


 * Origin - This variable is set by the Originator.  The Origin can be changed for every delivery or permanently bound to a Mailbox.
 * Destination - This variable is set by the Recipient.  The Destination can be changed for every delivery or permanently bound to a Mailbox.
 * Reward - This variable is, at minimum and by default, x amount based on the distance from Origin to Destination.  The variable can be raised within the Courier Contract but not lowered so that Couriers are always being paid fairly.
 * Expiration - This variable is, by default, set to x hours after the Contract is posted to a Courier Board.  This can be changed to be any of the following:
 * x hours after the Contract is accepted by a Courier
 * by x time on y day
 * Any of the above together, e.g. x hours after the Contract is accepted by a Courier and by y time on z day
 * Collateral - This variable is set to be, by default, x cost based on the distance from Origin to Destination.  This value can not be changed by players at all.