Inactive [ECON] DynaMark v0.2.0.0 - A Simple Dynamic Market / Shop [1.2.5-R1.3]

Discussion in 'Inactive/Unsupported Plugins' started by smickles, Sep 26, 2011.

  1. Offline

    smickles

    (We've made the move to BukkitDev, come here)
    Some info is outdated on this thread, please go to the BukkitDev page for the most up to date info.

    DynaMark - A Simple Dynamic Market / shop


    Donations
    • [​IMG] 1M8i6TWmnTfWCuTQJMQUkX8xJbCEctaXkF
    [​IMG] Or http://btc.to/1qq for short​
     
    diannetea and aMannus like this.
  2. Offline

    Adinoob

    Yes. I write: /buy stone 1, /sell stone 1 etc.

    This is my list of plugins:
    AdminCmd
    bPermissions
    EndermanPickup
    iConomy
    Jobs
    KRegion
    LWC
    mChar
    mcMMO
    OnlineUsers
    OtherDrops
    serversave
    SpoutBackpack
    Spout
    WorldEdit
    WorldGuard
    xAuth

    bukkit 1185
     
  3. Offline

    smickles

    Ok, the latest release should fix your problem.
     
  4. Offline

    dssdassw

    i cant get it to be recognized! >_< it gave me an error when dynamark.jar wasnt able to be found in plugins:register and then i made ergister a folder, placed dynamark and factions inside. factions is now correctly hooked, but dynamark isnt on my plugins list -_-' i apoligize if the answer is obvious but im new to installing plugins...also sorry for my lack of descriptive skills, if you need more details just ask.
     
  5. Offline

    smickles

    DynaMark.jar should be placed in the plugins folder. You also need Register (another plugin) in your plugin folder.

    If that doesn't work for you then copy and paste whatever error you are seeing here, so that I can see it and help you.
     
  6. Offline

    dssdassw

    20:43:59 [SEVERE] Could not load 'plugins\DynaMark.jar' in folder 'plugins': Reg
    ister
    org.bukkit.plugin.UnknownDependencyException: Register
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
    ava:133)
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
    java:213)
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
    .java:136)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:138)
    at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:103)
    at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigur
    ationManager.java:52)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:136)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:348)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    --> the error when dynamark is in the plugins folder
     
  7. Offline

    smickles

    Ok, I fixed it, it was a quirk with Bukkit that I didn't know about.
    the Latest Release should fix it this time, I promise.
    Plus, you get new options in the config ;D
     
  8. Offline

    Jameshobbs

    I got the latest release and backed up my config file (and then deleted it from the plugins folder). Reloaded the DynaMark.jar using '/plugman reload DynaMark', and everything worked great with reloading. I was hoping to see what the new optional parameters were, but the default config file from before was added.

    I peaked through your commit history for min/max branch and noticed a few changes that were hopeful for being the parameters to add to the config file.

    So as a test I tried using it on dirt
    Code:
    dirt:
        value: 0.12
        number: 3
        minValue: 0.01
        maxValue: 6.0
        changeRate: 0.01
    
    I then reloaded using the plugman command... checked '/market bottom' and saw that the reload was successful because my new value for dirt was in.

    So I had someone sell some dirt. First test was sell 12 dirt. I ran '/market bottom' again and the price was valued at 0.0. I then ran '/price dirt' and it came out to 0.01. Next leaving things this way he sold 10 more dirt. running '/market bottom' again shows the price for dirt at -0.1, and '/price dirt' is still at 0.01. Then if you buy 10 dirt the price is still at 0.01, but '/market bottom' goes back to 0.0.

    Could you please fix this bug?
    Thank you.
     
  9. Offline

    smickles

    Yes, I will get on this right away.

    '/market bottom' should honor the price minimum
    and
    New options should be put into the config with default values (if there arn't already 'handwritten' values in there)

    Thank you so much for this. It's currently just me working on the project so post's like this really help out.

    A quick update with regard to the new options in the config file:

    The new values not showing up in the config seems to be an odd issue with plugman. Reloading DynaMark with plugman yields the result you have described. However, using 'reload' at the console or stopping and starting the server seems to yield the expected results.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 20, 2016
  10. Offline

    Jameshobbs

    It looks like a server restart added the new values :D

    Any idea if the server restart will also fix the minValue issue or is it a bug?
     
  11. Offline

    smickles

    Well, the minValue issue is a bug. I need to fix a bit of the code (and would have already, but Eclipse has gone wonky on me). I hope to have a fix for this out later today.
     
  12. Offline

    Jameshobbs

    Excellent. Love the concept of the plugin so I'm hoping to set up the server to have a balanced economy. Also cant wait for the logarithmic changeRate :D
     
  13. Offline

    smickles

    Also, I would like to clarify that this issue is one of form, not function. That is, it's only showing the wrong number, not using the wrong number ;)
     
  14. Offline

    Jameshobbs

    One thing that made me uneasy was when I went negative (to -0.1) in order for the price to raise up 0.01 i would have to buy 12. Is this correct or should it go up 0.01 every time I buy for the price.

    Edit: Also when I ran /price on the item it stayed at 0.01 when it was < 0.0 between buys (from /market bottom)
     
  15. Offline

    smickles

    It does this because once a value passes below a minimum, it will begin to function as a counter instead of the value (because the value used will be minValue).
    I have it working this way intentionally. If someone was to sell 1000 dirt when the price was at .01, each of those 1000 dirt is worth .01, and if someone then buys 1001 dirt, they get charged .01 for the 1000 and then .02 for the 1001st.

    Would you rather have an option where the price will 'bounce' off the minimum with no 'elasticity'?
    i.e price is at .01
    player a sells 100 dirt and receives $1
    blayer b now buys 100 dirt and is charged .01for the fist, .02 for the second, .03 for the third and so on?
     
  16. Offline

    Jameshobbs

    Perhaps a way to represent the counter when you do price so a buyer can calculate how much it would cost. Also it would be nice to have a price check command to check how much something would cost if you specify an ammount. For instance if I type /pricecheck dirt 1000, then it would show me how much it would cost total to buy/sell 1000 dirt.
     
  17. Offline

    smickles

    As for the '/price dirt 1000' showing how much it would cost to buy (or sell) 1000 dirt ... i've been meaning to do that.

    And how about '/market bottom' displaying like this
    Code:
    1. dirt .01 [10]
    2. cobblestone .01 [5]
    3. sand .02
    .. etc..
    
    with the [#] being the 'elasticity' counter
     
  18. Offline

    Jameshobbs

    I think the [#] would be perfect! That would at least make it feasible to calculate the cost of an item for the time being until you add the '/price dirt 1000' addition.
     
  19. Offline

    smickles

    Check it! I've got /market working that way.
     
  20. Offline

    diannetea

    Currently the market on my server is completely out of whack with the prices it begins with. A couple of people took the opportunity to game the system and it is really my fault for not changing common items like dirt and cobblestone to begin at .01 instead of 10.

    I'm not entirely sure how to fix it. I don't want to be a jerk and take away the money to start from scratch - though I guess if it has to come to that it will - but right now I'm at a complete loss. I don't think static prices are ever fair. Maybe if it could depend on what has already been sold? Or perhaps there could be a purchase timer so that the plugin would only allow them to sell so much at one point in time?

    Is anyone else having this problem, and what have you done to try to balance it?
     
  21. Offline

    smickles

    I think it may help to consider that the people you say gamed the system are like 'early adopters'. And that the money that they made on the common stuff will most likely be used to make things like obsidian and diamond move to the prices that they ought to be at. In the end, my suggestion is to let it go, these people may have taken (what will become) a relatively small gain for now, but they will probably blow the money and ultimately help balance the economy. And the balanced economy will benefit your other players more than the 'gaming' benefited these few people.

    But I understand your frustration.
    I chose 10 because it seemed to be the middle ground for most prices.
    If I had the default values start at .01 for every thing, People would just buy a whole lot of diamond .01.
    Would it be better if I used my server's config (or an average of several servers)? I wonder then if people would complain that this stopped the market from finding a 'natural' balance.

    If you could consider the issue for a little while, I would really like to hear your opinion.
     
  22. Offline

    diannetea

    Well it might be best to start easily found items such as dirt and cobblestone at something low like 1. Diamond and other items are probably fine to start around 10. I also ended up changing the increase to .1 instead of .01 and it is looking a bit better now.

    Having an example of a real server might also give people an idea of what they might want to set values to.
     
  23. Offline

    smickles

    In response to this,

    I'd like to ask anyone who has been running DynaMark for a little while to post a copy of their config.yml
    I want to take the numbers of several of us and average them together to use as an example.
     
  24. Offline

    Jameshobbs

    Here is the a copy of the server I help maintain. We haven't set it live yet... we wanted to use commandSign to have a sign based usage so people cant just use the market commands from anywhere... I will let u know how it goes tho.

    Code:
    # Food
    pork:
       minValue: 0.01
       value: 1.0
       changeRate: 0.01
       number: 319
       maxValue: 10.0
    sugarcane:
       minValue: 0.01
       value: 0.12
       changeRate: 0.01
       number: 338
       maxValue: 10.0
    egg:
       minValue: 0.01
       value: 2.0
       changeRate: 0.01
       number: 344
       maxValue: 10.0
    beef:
       minValue: 0.1
       value: 2.0
       changeRate: 0.01
       number: 363
       maxValue: 10.0
    fish:
       minValue: 2.0
       value: 2.0
       changeRate: 0.01
       number: 349
       maxValue: 10.0
    chicken:
       minValue: 0.01
       value: 1.0
       changeRate: 0.01
       number: 365
       maxValue: 10.0
    rottenflesh:
       minValue: 0.01
       value: 0.5
       changeRate: 0.01
       number: 367
       maxValue: 10.0
    # Common
    string:
      minValue: 0.01
      value: 2.0
      changeRate: 0.01
      number: 287
      maxValue: 10.0
    cactus:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 81
      maxValue: 10.0
    feather:
      minValue: 0.01
      value: 2.0
      changeRate: 0.01
      number: 288
      maxValue: 10.0
    flint:
      minValue: 0.01
      value: 1.0
      changeRate: 0.01
      number: 318
      maxValue: 10.0
    seeds:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 295
      maxValue: 10.0
    brownmushroom:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 39
      maxValue: 10.0
    sapling:
      minValue: 0.01
      value: 0.25
      changeRate: 0.01
      number: 6
      maxValue: 10.0
    rose:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 38
      maxValue: 10.0
    dandelion:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 37
      maxValue: 10.0
    redmushroom:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 40
      maxValue: 10.0
    leather:
      minValue: 0.01
      value: 1.0
      changeRate: 0.01
      number: 334
      maxValue: 10.0
    wool:
      minValue: 0.01
      value: 1.0
      changeRate: 0.01
      number: 35
      maxValue: 10.0
    cobblestone:
      minValue: 0.01
      value: 0.15
      changeRate: 0.01
      number: 4
      maxValue: 10.0
    gravel:
      minValue: 0.01
      value: 0.12
      changeRate: 0.01
      number: 13
      maxValue: 10.0
    wood:
      minValue: 0.01
      value: 1.0
      changeRate: 0.01
      number: 17
      maxValue: 10.0
    stone:
      minValue: 0.01
      value: 0.3
      changeRate: 0.01
      number: 1
      maxValue: 10.0
    dirt:
      minValue: 0.01
      value: 0.12
      changeRate: 0.01
      number: 3
      maxValue: 10.0
    sand:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 12
      maxValue: 10.0
    coal:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 263
      maxValue: 10.0
    soulsand:
      minValue: 0.01
      value: 1.0
      changeRate: 0.01
      number: 88
      maxValue: 10.0
    bone:
      minValue: 0.01
      value: 0.5
      changeRate: 0.01
      number: 352
      maxValue: 10.0
    # Un-Common
    obsidian:
       minValue: 0.01
       value: 4.0
       changeRate: 0.25
       number: 49
       maxValue: 100.0
    redstone:
       minValue: 0.01
       value: 0.5
       changeRate: 0.25
       number: 331
       maxValue: 100.0
    melonseeds:
       minValue: 0.01
       value: 1.0
       changeRate: 0.25
       number: 362
       maxValue: 100.0
    gunpowder:
       minValue: 0.01
       value: 1.0
       changeRate: 0.25
       number: 289
       maxValue: 100.0
    clay:
       minValue: 0.01
       value: 2.35
       changeRate: 0.25
       number: 337
       maxValue: 100.0
    iron:
       minValue: 0.01
       value: 4.0
       changeRate: 0.25
       number: 265
       maxValue: 100.0
    slime:
       minValue: 0.01
       value: 5.0
       changeRate: 0.25
       number: 341
       maxValue: 100.0
    enderpearl:
       minValue: 0.01
       value: 3.0
       changeRate: 0.25
       number: 368
       maxValue: 100.0
    netherrack:
       minValue: 0.01
       value: 0.5
       changeRate: 0.25
       number: 87
       maxValue: 100.0
    pumpkinseeds:
       minValue: 0.01
       value: 1.0
       changeRate: 0.25
       number: 361
       maxValue: 100.0
    # Rare
    mossstone:
       minValue: 0.25
       value: 2.0
       changeRate: 0.5
       number: 48
       maxValue: 1000.0
    gold:
       minValue: 0.25
       value: 3.0
       changeRate: 0.5
       number: 266
       maxValue: 1000.0
    diamond:
       minValue: 0.25
       value: 10.0
       changeRate: 0.5
       number: 264
       maxValue: 1000.0
    lapis:
       minValue: 0.25
       value: 1.0
       changeRate: 0.5
       number: 22
       maxValue: 1000.0
    # Crafted Items
    bookshelf:
       minValue: 1.0
       value: 7.0
       changeRate: 0.25
       number: 81
       maxValue: 1000.0
    dispenser:
       minValue: 0.5
       value: 4.0
       changeRate: 0.25
       number: 81
       maxValue: 1000.0
    musicbox:
       minValue: 0.5
       value: 12.0
       changeRate: 0.25
       number: 81
       maxValue: 1000.0
    noteblock:
       minValue: 0.5
       value: 3.0
       changeRate: 0.25
       number: 81
       maxValue: 1000.0
    brickblock:
       minValue: 0.5
       value: 3.2
       changeRate: 0.25
       number: 81
       maxValue: 1000.0
    sandstone:
       minValue: 0.25
       value: 1.5
       changeRate: 0.25
       number: 24
       maxValue: 1000.0
    glowstone:
       minValue: 0.5
       value: 3.0
       changeRate: 0.25
       number: 348
       maxValue: 1000.0
    
    Also whenever the server restarts... for some reason these items are added:

    Code:
    grass:
        minValue: 0.01
        value: 10.0
        changeRate: 0.01
        number: 31
        maxValue: 10000.0
    vine:
        minValue: 0.01
        value: 10.0
        changeRate: 0.01
        number: 106
        maxValue: 10000.0
    apple:
        minValue: 0.01
        value: 10.0
        changeRate: 0.01
        number: 260
        maxValue: 10000.0
    snow:
        minValue: 0.01
        value: 10.0
        changeRate: 0.01
        number: 332
        maxValue: 10000.0
    
    Before I restarted I had removed them because we dont want them sold at the market.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 20, 2016
  25. Offline

    smickles

    Oh my, that's my own fault I suppose. I need to rework how the config file is generated.
    Please bear with me, I may be able to 'kill two birds with one stone'.
    I should have this fixed in no more than a day or two.
     
  26. Offline

    goldseed

    I am planning to use this good plugin, when it supports for "second Data Type" items.

    Good Job!
     
  27. Offline

    TOGuy

    This plugin is fantastic. Exactly what our server was looking for. But one of the players suggesting having a "mark-up" or "market fee" where items are bought for a percentage less than the market value, and/or sold for a percentage more than its value. You think this would be possible?
     
  28. Offline

    jazzman170

    i get this error when i try to sell/buy something to/from the shop:


    22:33:23 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'buy'
    in plugin DynaMark v0.0.2.6
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:41)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:16
    3)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:3
    53)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.
    java:756)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:721)

    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:714)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
    at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java
    :500)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:464)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:374)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:417)
    Caused by: java.lang.IncompatibleClassChangeError: Expected static method com.ni
    jikokun.register.payment.Methods.hasMethod()Z
    at me.smickles.DynamicMarket.DynamicMarket.buy(DynamicMarket.java:154)
    at me.smickles.DynamicMarket.DynamicMarket.readCommand(DynamicMarket.jav
    a:292)
    at me.smickles.DynamicMarket.DynamicMarket.onCommand(DynamicMarket.java:
    277)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:39)
    ... 13 more
    >


    whats causing it?
     
  29. Offline

    smickles

    When I get the WTB/WTS feature working, I'll be sure to make this an option for you.

    it's possible you have register.jar in the lib/ folder instead of the plugin/ folder.

    or

    If you are using BOSEconomy, there is an issue with Register and BOSE. There is a work-around which I am in the process of implimenting. I should have that done soon.

    If neither of these apply to you, please let me know.

    I will implement this and the fixed price option as soon as I deal with a couple of bugs.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 20, 2016
  30. Offline

    jazzman170

    yea i use BOSEconomy so thats gotta be it :p makes sense too cause plugin gets that error when i buy/sell so anytime it deals with my boseconomy "coins".
     
  31. Offline

    Jameshobbs

    Will it be possible to add permissions nodes for the various commands? Currently the server I am on uses PEX.
     

Share This Page