UltraTrader
Remember the donate button works, I could use some fresh Mt. Dew (I also except BitCoin (address below)
Information
Links | Description |
---|---|
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk. | |
Jenkins | Development Downloads on CI provided by CloudBees |
GitHub | Source Code is hosted by GitHub.com by DemgelOpenSource group |
Website | WebSite is hosted by Github using maven-site |
Donate BitCoin | 17U5koSrxqYphGTSN4nZsd1sDr7Ti96XW4 |
Donating FUN | Some fun options for donating if you don't have money but want to help |
Citizens Wiki | My Wiki entry on Citizens 2 website |
Most Documentation will be on the Website
at http://ultratrader.thedemgel.com
Installation |
Commands | Permissions | Create A Trader | Localization | Configuration | Setting Shop Limits
UltraTrader and Citizens
UltraTrader doesn't require Citizens to run. But it does come ready to integrate out of the box, and most extensions do currently require the use of citizens. UltraTrader will work with Citizens to create NPC traders, but if you don't want to use Citizens, you can easily make blocks/signs into shops.
Buying and Selling
Some notes on buying and selling:
- Owners will always receive items from their shop for free (FREE)
- Owners can never sell items to their own shop. Items placed into a Traders buy screen will just be returned.
External Plugins
As a way to extend Ultratraders without bloating the already sizable amount of code required any farther, I have started to create external plugins that extend UltraTrader. Some of these can be found on the Jenkins Site, but we aware that these are not bukkit tested yet, and may be full of bugs.
Working Extensions (not flawlessly yet)
- UltraRental - Create Rental NPCs
- UltraDenizen - Allows UltraTrader to work with Denizens
- UltraWorldGuard
- Adds some requirements that can be setup by:
- using required traits in limits.yml
- adding required trait permissions "trader.limit.required.default.worldguardowner"
- currently only adds "worldguardowner" (trader must be standing a region the player owns) and "worldguardmember" (trader must be standing in a region a player is a member of)
- Currently should still work, but updates are suspended till I the new repo.
- Adds some requirements that can be setup by:
- UltraFrames
- Currently will show randomly changing items that your shop sells
- add ultraframe trait to NPC
- right click with stick to select
- place item frames and watch the magic.
- Currently will show randomly changing items that your shop sells
Compatibility Extensions
These extensions are there to extend the compatibility of UltraTraders to more specific modes beyond the normal use of UltraTraders. Some planned extensions will likely be a bridge Extension for handling Bukkit->Forge communications, as well as NBT related code that I don't want to place directly into UltraTrader.
Metrics
This plugin utilizes Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
If you wish to disable this feature (/me cries), you can do so by opt-ing out, which you can do in the config file under /plugins/PluginMetrics/
Some Videos
If anyone wants to create a video demonstrating the use of UltraTrader, please PM me, thanks. I will be creating more as time goes on, but removed the out dated material for now
TODO
- command to allow Ops to not always get items for free from all stores
- Currently I have removed OPs completely from the free sell list (OPs no longer get free items, or shouldn't)
- Players can use the "/traderplayer toggleop" command to toggle paying at their own shop (for test purposes)
- Item to allow click to see shop information
- The command is there (/trader info) but it does nothing yet due to forced update
- adding aliases: "/trader" -> "/ut" - "/traderplayer" -> "/utp" - "/traderadmin" -> "/uta"
- removing logging from ultratrader and using a extension plugin, to hopefully invite some members to add pull requests to add logging features.
Thanks
- dayron1313 - Github issues
- Chriszh - for being persistant ;)
This error also happens with craftbukkit (latest dev build), not only spigot:
[21:55:56 WARN]: [UltraTrader] Task #160 for UltraTrader v1.0 generated an exception java.lang.NullPointerException
at com.thedemgel.ultratrader.conversation.addsellitem.AddItemBeginPrompt.getNextPrompt(AddItemBeginPrompt.java:28) [?:?] at org.bukkit.conversations.MessagePrompt.acceptInput(MessagePrompt.java:32) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at org.bukkit.conversations.Conversation.outputNextPrompt(Conversation.java:286) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at org.bukkit.craftbukkit.v1_7_R1.conversations.ConversationTracker.beginConversation(ConversationTracker.java:20) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at org.bukkit.craftbukkit.v1_7_R1.entity.CraftPlayer.beginConversation(CraftPlayer.java:979) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at org.bukkit.conversations.Conversation.begin(Conversation.java:186) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at com.thedemgel.ultratrader.ShopListener$2.run(ShopListener.java:181) [?:?] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:587) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-36-g9f75167-b3005jnks]
@antoniobenedetti
I usually have to build twice, for some reason citizens repo doesn't always like my Jenkins and doesn't download so the build fails.
Nope, the same thing. I hope you will fix it when you have free time:
[21:39:37 WARN]: [UltraTrader] Task #143 for UltraTrader v1.0 generated an exception java.lang.NullPointerException
at com.thedemgel.ultratrader.conversation.addsellitem.AddItemBeginPrompt.getNextPrompt(AddItemBeginPrompt.java:28) [?:?] at org.bukkit.conversations.MessagePrompt.acceptInput(MessagePrompt.java:32) [spigot.jar:git-Spigot-1304] at org.bukkit.conversations.Conversation.outputNextPrompt(Conversation.java:293) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.conversations.ConversationTracker.beginConversation(ConversationTracker.java:20) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.entity.CraftPlayer.beginConversation(CraftPlayer.java:987) [spigot.jar:git-Spigot-1304] at org.bukkit.conversations.Conversation.begin(Conversation.java:186) [spigot.jar:git-Spigot-1304] at com.thedemgel.ultratrader.ShopListener$2.run(ShopListener.java:181) [?:?] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:58) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:612) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:273) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:560) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:467) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [spigot.jar:git-Spigot-1304]
Alright, thanks. It looks like the latest source failed to build.
@antoniobenedetti
I am going to have to do more testing, but I have pushed a new file to the Jenkins, you are free to try that out once I confirm that it has properly built.
This is an odd error that I admit to not being able to reproduce, or create a testing environment for atm, you are running spigot, and I don't have that setup currently and don't have time just at this moment.
Once I get the chance, I will setup a spigot server just to be 100% sure it isn't something odd with that.
Yes, i'm using the latest download.
@antoniobenedetti
Ok, just to be sure, are you using the lastest download of Ultratrader?
I'm trying to add new item in my trader category. It doesn't ask me for the sell price, instead it removes my item and it gives me this error.
@antoniobenedetti
what were you trying to do when this happened?
It is not working for me:
[19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:00 INFO]: null [19:30:09 WARN]: [UltraTrader] Task #1061 for UltraTrader v1.0 generated an exception java.lang.NullPointerException
at com.thedemgel.ultratrader.conversation.addsellitem.AddItemBeginPrompt.getNextPrompt(AddItemBeginPrompt.java:28) [?:?] at org.bukkit.conversations.MessagePrompt.acceptInput(MessagePrompt.java:32) [spigot.jar:git-Spigot-1304] at org.bukkit.conversations.Conversation.outputNextPrompt(Conversation.java:293) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.conversations.ConversationTracker.beginConversation(ConversationTracker.java:20) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.entity.CraftPlayer.beginConversation(CraftPlayer.java:987) [spigot.jar:git-Spigot-1304] at org.bukkit.conversations.Conversation.begin(Conversation.java:186) [spigot.jar:git-Spigot-1304] at com.thedemgel.ultratrader.ShopListener$2.run(ShopListener.java:181) [?:?] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:58) [spigot.jar:git-Spigot-1304] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:612) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:273) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:560) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:467) [spigot.jar:git-Spigot-1304] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [spigot.jar:git-Spigot-1304]
It may be possible that my leg is starting to feel somewhat normal and I might be able to get back to developing again on a more regular basis. I apologize for some waits and slow updates and feature updates, but not being able to sit in a chair for longer than ItelliJ to load, makes it hard to do more than is immediately necessary,
@StugAce
The newest file has yet to be approved, sorry don't know why it is taking this long.
But this is the same error that is fixed.
Looks like the new version is confused for me:
31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:424) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.java:175) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.a(MinecraftServer.java:275) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.g(MinecraftServer.java:319) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at net.minecraft.server.v1_7_R1.MinecraftServer.m(MinecraftServer.java:342) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.CraftServer.enablePlugins(CraftServer.java:282) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugin(CraftServer.java:300) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:384) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:350) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:250) [craftbukkit_dev_2995.jar:git-Bukkit-1.7.2-R0.2-15-g2f3dbd3-b2995jnks] 31.01 20:33:55 [Server] INFO at com.thedemgel.ultratrader.UltraTrader.onEnable(UltraTrader.java:151) [?:?] 31.01 20:33:55 [Server] INFO at com.thedemgel.ultratrader.shop.ShopHandler.initShops(ShopHandler.java:38) [?:?] 31.01 20:33:55 [Server] INFO at com.thedemgel.ultratrader.data.YamlDataObject.initShops(YamlDataObject.java:272) [?:?] 31.01 20:33:55 [Server] INFO at com.thedemgel.ultratrader.data.YamlDataObject.load(YamlDataObject.java:62) [?:?] 31.01 20:33:55 [Server] INFO java.lang.NoSuchMethodError: com.thedemgel.ultratrader.shop.Shop.<init>(Lcom/thedemgel/ultratrader/StoreConfig;)V 31.01 20:33:55 [Server] ERROR Error occurred while enabling UltraTrader v.92 BETA (Is it up to date?)
@Mattrock607
Just wait for them to approve the new version I have uploaded (read down a few posts) this issue has been fixed, or use the Jenkins lastest build.
Each and every time I try to create a shop, in version 1.0, it's dropping me out of the game (but not crashing the server). Here's the error message:
User Mattrock607 has disconnected, reason: Internal Exception: java.lang.NoSuchMethodError: com.thedemgel.ultratrader.shop.Shop.<init>(Lcom/thedemgel/ultratrader/StoreConfig;)V
Edit: I rolled back to the 0.92 beta and it seems to be fine, it's just a 1.0 error as far as I can tell
@Artaelz
there is a new build uploaded that probably handles you error for creating the shop, and I will likely add a alias for trader soon.
change the command because myRPG uses /trader too.
Also when I try to create a shop while im in the npc talking thingy and i type create it says attemping to create shop and nothing happens... On console it says this
[SEVERE] Error handling conversation prompt
@tenowg
Yes, this has fixed the issue for me. Thank your very much! :D
Awesome plugin and you're doind a very good job, it's appreciated.
@ArgonathRPG
Last message was to have you tagged as well. Thanks for bring this to my attention.
@Amealthea
ok, I would ask you to do me one thing please :) I have updated my Jenkins build, I have no idea how it even compiled with a method attempting to call a constructor I had removed, but unfortunately it had, My jenkins build should be fixed, it works locally at least after a download (not using local build). So if you could test it for me, I would be grateful, and if it passes your test I will reupload to bukkit.
https://tenowg.ci.cloudbees.com/job/UltraTrader/lastSuccessfulBuild/
Or if anyone else will confirm this fix