Acknowledged [All Main Servers Suggestion] Chest Shop Orderbook

Discussion in 'Suggestions' started by Moosagi, Jan 15, 2023.

Thread Status:
Not open for further replies.
  1. Moosagi

    Moosagi President
    President ⛰️⛰️ Ex-Mayor ⚒️⚒️

    Joined:
    Jun 2, 2015
    Messages:
    89
    Trophy Points:
    33,570
    Gender:
    Male
    Ratings:
    +39
    In Game Name:
    moosagi
    What part of EcoCityCraft is this suggestion for:
    All Main Servers
    Short title for your suggestion:
    Chest Shop Orderbook
    What are you suggesting:
    An orderbook module. Chest shops auto-execute orders in an "order-book" (described below), possibly limited to a special kind of chest shop, and possibly included solely as part of a perk. For example, perk 1 allows the ability to create "order book" chest shops, which are normal chest shops connected to the "order book", and perk level 2 (orderbook plus!) could be the ability to link such chests together (described below).
    Why is this a good addition for EcoCityCraft?:
    This is a natural extension to ecc shopdb. The coding for this feature is so simple and straightforward I am willing to do it myself.
    Other information:
    I made a similar suggestion a few years ago but I'm making it again because of some new ideas and information I have received and because of some new developments to shopdb (i.e. integration). I believe this is a natural and straightforward evolution of shopdb that will happen eventually so I want to give it a push.

    An order book is quite simply this. Every time a chest shop is updated in the shopdb ecosystem, the shopdb ecosystem checks to see if it is an orderbook chest shop. For example if the first line of the chest shop sign says orderbook. Simple. Then it enters the B and S prices into a list, sorted by PRICE and then by TIME of order entry. So if three people enter the same S price the first one is first in line. Then, starting by S price, the system checks to see if a B price is equal to or lower than the first S price on the list. If so, the orders are matched and the order is 'executed'. There is never a situation where an unknown buy and sell price can occurr so long as there is atleast one B or S price on the market. As a convenience, for the first time an order book is created, if the B and S prices are crossed it is safe to go in at the midpoint since this is BETTER for BOTH the buyer and seller. (rule: always ok to give someone a better price).

    Anyways, this is a truly trivial addition to shopdb and could be implemented there, or as a separate web feature, say a PHP plugin that takes something like chestupdate(chest_id, item_id, quantity, B, S) and adds the info to an orderbook. Then there needs to be a system where this script can move money between two players, and items between two chests. With those two functtions enabled the system is complete.

    Order execution does not need to be immediate.

    This idea solves the only real problem with an in game market which is delivery. Without being able to guarantee space for delivery (ex. into a chest shop) the system would fail.

    I'm willing to try and code a simple example of how this would work, maybe, but I think it's simple enough that whoever did shopdb could code this in short order.

    Another quick example of how this works is a new kind of chest sign which has item_name, bid: $ or ask $ and a quantity number, and this sign could act as a 'limit order'. Anyways... to facilitate this I will be making a secondary and related suggestion to the shopdb team on how information is presented.
    Plugin or custom addition:
    some shopdb modifications, possibly a new module which moves items and money between chests
    One suggestion per form:
    I Understand.
     
  2. andrewkm

    Founder Premium Upgrade

    Joined:
    Apr 5, 2011
    Messages:
    20,375
    Trophy Points:
    102,160
    Ratings:
    +15,066
    • Informative Informative x 1
    • List
    #2 andrewkm, Jan 16, 2023
    Last edited: Jan 16, 2023
Thread Status:
Not open for further replies.