DynaMark - a simple dynamic market / shop
Overview
DynaMark is lets players buy and sell commodities at automatically determined prices which are based on demand.
Latest Download
Public Release
Standard
Direct v0.1.1.0
Alternate Command
Direct v0.1.1.0a
- per command permission support (permission nodes)
- switch to database use
- you can still use a flat file to add large groups of commodities at once
- in game (console or play) commands "/market add" and "/market remove" are now used to manage which commodities are on the market
- MYSQL support (info)
- unspecified bug fixes
Development Bulid
Standard
BitTorrent Direct v0.2.0.0
Alternate Command
BitTorrent Direct v0.2.0.0a
- remove old broken method for config
- allow multiple names per commodity
- add commodity suggestion on misspellings
- add new config method
- allow per commodity enabling and disabling of trade-ability
- allow per commodity configuration of names
There are significant changes in the way commodity information is stored and the way in which the config file is used and its format. I have not yet written any sort of 0.1.x.x to 0.2.x.x conversion tools. As of right now, if you want to keep the commodity data (for example the current prices) which you have, you will need to look at a new database file, look at yours, and then manually convert it. I think this pretty much involves just changing the 'name' of each commodity to the appropriate 0.2.x.x format.
ChangeLog
The change log can be found here.
Database Manipulation
For now, the easiest way to add or remove items is to use a sqlite editor. http://sourceforge.net/projects/sqlitedbrowser/ has been recomended by missingscrews. Sqliteman is my preferred alternative.
Player Commands
- /buy
- Buys an amount of the specified item
- Usage: /buy cobblestone 128
- /sell
- Sells an amount of the specified item
- /sell all
- Sells all sellabe items in your inventory
- Usage: /sell pork 7
- /price [item] [amount (optional)]
- Checks the price of a specified item
- Usage /price diamond
- /market [top | bottom | list]
- Has three uses, 'top' and 'bottom'. 'top' returns the top 10 most expensive items on the market. 'bottom' does the same for the least expensive items.
- Or 'list' to show all available items on the market
- Usage: /market top
Config
Has it's own page now.Click Here
Longer Description
When first run, DynaMark will create a database of items which are available to sell. All items start out with a value of $10 and this will go up by $0.01 for every one of the item bought. The reverse occurs for every one of the item sold. You can modify this database as you see fit.
Source
- github
- Anyone is welcome to help out on the project, just do some work and make a pull request.
Donations
Donations accepted at:
- 1M8i6TWmnTfWCuTQJMQUkX8xJbCEctaXkF
- Or http:btc.to/1qq for short
- I welcome donations that are even less than $0.01
@UltiByte
DynaMark seems to rely on Vault, so if you have the 1.0.0 or the 1.0.0a version, you need to get the Vault.jar or it will error out like that.
Hello :)
I was doing great with this plugin, everything was working fine, then I installed 3 new plugins and got this error:
[SEVERE] Error occurred while enabling DynaMark v0.1.0.0 (Is it up to date?): java.lang.Integer cannot be cast to java.lang.String java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at me.smickles.DynamicMarket.DynamicMarket.onEnable(DynamicMarket.java:164) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:188) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:968) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:280) at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:186) at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:169) at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:348) at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:335) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:165) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
I then went on to remove all 3 plugins I inserted and still got the error. I then checked if my craftbukkit version was up to date, and it was. I then deleted and re-installed DynaMark and still got exactly the same error.
I've run out of troubleshooting methods. I really don't want to remove all my other plugins as they seemingly didn't cause the error, and because I have about 35, so sifting through them would take ages. However if this is the course of action I need to take I will.
I really do like this plugin and want to continue using it, however at the minute I can't
What do you suggest I do?
Uh, cannot wait for the Location Restriction ToDo. We don't want the user to have the ability to buy and sell from anywhere on the map as we feel it makes the game a lot easier (you're mining but runs out of food .. no problem /buy food).
I hope you find some more time to further develop this plugin, or find somebody to help you.
Having a child has really slowed down development here. If anyone wants to help out, that would be great. I'm sure we can come to a fair arrangement with regard to future project donations if anyone contributes a good piece of code.
@TTlabambaTT
I agree with the earlier sentiments of being able to place this in only certain areas, even doing different items in different areas. And the NPC Shopkeeper aspect would be cool to; like opening a spoutcraft menu when you right click on the npc character.
Such an awesome plugin but we found one issue. It's not multiworld. Any chance of implementing that?
I tried setting per world permissions and even using the negate option on
- - DynaMark.sell
Didn't matter as a test character with no op was still able to buy and sell in the restricted world. This a conflict with MultiInv or Vault?
Or am I missing that it's not PEX / MultiVerse Compatible?
@smickles
You get cuboid restrictions and multi-relational database support going as well as make it so you can only trade during the day and I will not only download and run this mod, but I'll make a generous donation.
edit: been running this mod for a few days now, can't live without it.
@Secpro
Do yo mean a config with all possible items setup in it?
Just wondering if there is a full item list for this plugin. That would help a lot... XD!
Alright everybody,
I've pretty much got permissions working and pretty much got DynaMark working with a database (MYSQL optional)
I'm done for today, however if you want to give it a test run, just compile the source of the
dev
branch on github.MYSQL config
Permission Nodes
lots of progress so far today on development. We should have a pretty big 'feature' release coming soon.
@nanashiRei
http:dev.bukkit.org/server-mods/dynamicmarket/tickets/15-separate-buy-and-sell-values/#c3
Does the info on the other side of that link answer your question well enough? If so, I think I'll paraphrase it into the config section above.
Can you explain what _spread_ does? It's unclear to me.
@mike0fmikes
What do you think I'm trying to do here?
;)
But seriously, that's quite the compliment of the project's goals. Thank you.
@smickles
Cuboid restriction would be incredible....between that, and (multi)relational databases this mod would be the go-to for a world market on a server.
@Xemnas33
I just have to get DynaMark working with a database instead of a flat file, then, sign based restriction is likely next on the list. Cuboid location restriction will probably come some time later.
As soon as you have location restriction working i'm definitely switching over to this! :)
@enilsss
Yes, I do intend to implement your idea. I need to get things switched over to work with a database -instead of the current flatfile-
for now, the best i can suggest is to spread the word of the '/market list' command to show all available commodities.
Hey I already asked for this before, but is there any way you could add the ability to put multiple names for the same items? So many items in my server aren't being used in the market because no one knows their names :(
Thanks.
Here's another screencast for those who are interested.
It sows some "customer support", research and dev on database support, and some more random music from youtube.
Link to the video