Hi all, I'm here with an idea for an update for the server shop that I'd like some feedback on.
At this point in time, the server shop allows you to browse items and displays the exact price any item has been listed for, and who by.
You buy an item with /ss buy <name> [amount] [tradeid], with the amount and id being optional.
What I propose is the following:
The server shop page shows you the mean price for the item you search. (i.e., the average price between the lowest and highest prices - see below for a full example).
You buy an item with /ss buy <name> [amount] [% above/below mean].
If no % is specified, you attempt to buy for the mean price.
You sell an item with /ss sell <name> [amount] [% above/below mean].
If no % is specified, you sell for the mean price.
A worked example:
You are attempting to buy a Shackle.
The listed (mean) price is 10c
The shop actually contains 4 shackles:
1. Shackle @ 8c
2. Shackle @ 9c
3. Shackle @ 11c
4. Shackle @ 12c
You use /ss buy Shackle 1 10% - i.e., you attempt to buy 1 shackle at 10% MORE than the mean price, for a total of 11c.
You are sold item #3 because it matches your offer exactly.
Alternatively: You use /ss buy Shackle 1 -10% - i.e., you attempt to buy 1 shackle at 10% LESS than the mean price, for a total of 9c.
You are sold item #2 because it matches your offer exactly.
Alternatively: You use /ss buy Shackle 1 -50% - i.e., you attempt to buy 1 shackle at 50% LESS than the mean price, for a total of 5c.
Your offer will remain in a pending state until someone sells a shackle at 5c or less.
Refunding:
You are attempting to buy a Shackle.
The listed (mean) price is 10c
The shop actually contains 5 shackles:
1. Shackle @ 5c
2. Shackle @ 10c
3. Shackle @ 10c
4. Shackle @ 10c
5. Shackle @ 15c
You use /ss buy Shackle 1 10% - i.e., you attempt to buy 1 shackle at 10% MORE than the mean price, for a total of 11c.
There is no offer at 11c, so you are sold one of the shackles that are worth 10c and your 1c is refunded. The seller receives 10c.
Purchasing multiple items at once:
Say the shop contains 15 life crystals:
6x life crystal @ 12s each
3x life crystal @ 8s each
6x life crystal @ 9s each
The mean price is 10s.
You put in a buy offer for all 15 at 10% over (11s): /ss buy "Life Crystal" 15 10%
Your transaction would partially complete: you would be sold 6x life crystals at 9s each, and 3x life crystals at 8s each, and be refunded 21s (due to purchasing at 9s and 8s). The remaining 6 life crystals would stay as a pending purchase until someone listed life crystals at 11c each or below.
Mean pricing:
All items in the following example are the same type, and only differ in cost
Item1: 5g
Item3: 6g
Mean: 5.5g
The mean value is displayed on the server shop, while the item costs are not
If you have any questions and feedback, please let me know. I'll try to provide answers and examples where possible
At this point in time, the server shop allows you to browse items and displays the exact price any item has been listed for, and who by.
You buy an item with /ss buy <name> [amount] [tradeid], with the amount and id being optional.
What I propose is the following:
The server shop page shows you the mean price for the item you search. (i.e., the average price between the lowest and highest prices - see below for a full example).
You buy an item with /ss buy <name> [amount] [% above/below mean].
If no % is specified, you attempt to buy for the mean price.
You sell an item with /ss sell <name> [amount] [% above/below mean].
If no % is specified, you sell for the mean price.
A worked example:
You are attempting to buy a Shackle.
The listed (mean) price is 10c
The shop actually contains 4 shackles:
1. Shackle @ 8c
2. Shackle @ 9c
3. Shackle @ 11c
4. Shackle @ 12c
You use /ss buy Shackle 1 10% - i.e., you attempt to buy 1 shackle at 10% MORE than the mean price, for a total of 11c.
You are sold item #3 because it matches your offer exactly.
Alternatively: You use /ss buy Shackle 1 -10% - i.e., you attempt to buy 1 shackle at 10% LESS than the mean price, for a total of 9c.
You are sold item #2 because it matches your offer exactly.
Alternatively: You use /ss buy Shackle 1 -50% - i.e., you attempt to buy 1 shackle at 50% LESS than the mean price, for a total of 5c.
Your offer will remain in a pending state until someone sells a shackle at 5c or less.
Refunding:
You are attempting to buy a Shackle.
The listed (mean) price is 10c
The shop actually contains 5 shackles:
1. Shackle @ 5c
2. Shackle @ 10c
3. Shackle @ 10c
4. Shackle @ 10c
5. Shackle @ 15c
You use /ss buy Shackle 1 10% - i.e., you attempt to buy 1 shackle at 10% MORE than the mean price, for a total of 11c.
There is no offer at 11c, so you are sold one of the shackles that are worth 10c and your 1c is refunded. The seller receives 10c.
Purchasing multiple items at once:
Say the shop contains 15 life crystals:
6x life crystal @ 12s each
3x life crystal @ 8s each
6x life crystal @ 9s each
The mean price is 10s.
You put in a buy offer for all 15 at 10% over (11s): /ss buy "Life Crystal" 15 10%
Your transaction would partially complete: you would be sold 6x life crystals at 9s each, and 3x life crystals at 8s each, and be refunded 21s (due to purchasing at 9s and 8s). The remaining 6 life crystals would stay as a pending purchase until someone listed life crystals at 11c each or below.
Mean pricing:
All items in the following example are the same type, and only differ in cost
Item1: 5g
Item3: 6g
Mean: 5.5g
The mean value is displayed on the server shop, while the item costs are not
If you have any questions and feedback, please let me know. I'll try to provide answers and examples where possible