• Hey there Guest,
    Welcome, and thanks for visiting our community! :)
    Use our forums to connect with other users, talk about your adventures in Terraria, post questions and answers, talk about things you'd like to see in the server/community, etc.

Server Shop Update Consideration

White

Drop Bear
Staff member
Administrator
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
 

White

Drop Bear
Staff member
Administrator
Other things to note:

Buyers and sellers would still be able to cancel their transactions.
You would be able to list your own trade IDs, just not be able to see any others.

Eg: /ss list trades
Would output a list of transactions.
For example:
Code:
#1 [S] Shackle 10c - Complete - ID: 1234
#2 [B] 14x Life Crystal 10s - Pending - ID: 1246

You could then cancel a transaction via one of the trade IDs.
Completed transactions would not be cancel-able, and would be removed from the list of transactions upon collection.
 
Last edited:

Vaeldious

The Wandering Prophet
Former Staff
As long as I can tell my listed items apart from everyone elses, I'm down. I assume the core mechanics wouldn't change, for example, buying your own items (or even implementing a BipCoin storage system within ServerShop). Zero values may be a hurdle to overcome codewise due to the division factor, but thats not my department. Also, the whole percentage thing may be confusing to some younger/foreign players, so as long as that portion of the command is optional, doesn't look overly complicated. For example, I just type /ss buy shackle, it would assume I'm ok with buying at the mean price. Last suggestion is to be able to browse buy offers, the same way we can browse all sellable items. If I know theres an offer for 15 life crystals, I'd go dig some up. I support it.
 

Users who are viewing this thread

Top