QuickShop 4.3

Details

  • Filename
    QuickShop.jar
  • Uploaded by
  • Uploaded
    Apr 26, 2013
  • Size
    124.95 KB
  • Downloads
    5,665
  • MD5
    e270a71db068daaaf76599b2a474076d

Supported Bukkit Versions

  • CB 1.5.1-R0.2

Changelog

Changelog

Donate if you like it? =]

4.3

  • Fix for NPE
  • Check for unloaded worlds
  • Correct soft-depend to softdepend
  • Improved shop detail in logs
  • Fixed a bug where players could destroy others signs
  • Fixed a bug where locked shops could be destroyed by others

4.2

  • Improved config comments about limits
  • Improved display item handling
  • Possible fix for some SQLITE_BUSY issues
  • Small optimization for chunk loading
  • Fix for display items under half steps, signs, etc
  • Safely delete shops on boot if they're invalid
  • Fixed a NPE bug on some shops

4.1

  • Fixed an NPE error caused by shops with no display items (Eg, shops with blocks ontop of them)
  • Fixed an introduced by hopper protection in 1.4.7 etc.

4.0

  • Added config option: Whole number prices only (For item based economies)
  • Hopefully fixed MySQL connection issues
  • Don't log dupe removal
  • MySQL improvements, revamped database
  • Allow shops to be created on any InventoryHolder block (Chests, Furnaces, dispensers, etc) if configured to do so (Regen your config for this!)
  • Remove display items that have blocks on top of the shop (Neater)
  • Stop NoLagg/Spigot merging display items
  • Check player distance on purchase when they enter the # of items to buy

3.9:

  • Handles people who update Bukkit before QuickShop
  • Print stacktrace on conversion errors
  • Listen for PlayerTeleportEvent as well
  • Fail shop purchase/creation if the player is too far away somehow

3.8.2:

  • Somehow apparently works on 1.5 when 3.8.1 doesn't
  • Fix for missing obfuscated field with forge
  • Fix some database writes not being async

3.8.1:

  • Improved item names (Thanks, Daenara!)
  • Added limits permissions (You will have to regenerate your config to see it)
  • More stable database handling
  • Removed the need for NMS... Should work on all versions
  • This will require a CONVERSION, which will be done automatically and will take time!
  • Moved MsgUtil to Util (API)
  • Moved ShopManager to Shops (API)
  • Now works on obfuscated cores

3.7.1

  • Forge compatibility

3.7

  • Fixed shop.onLoad() and shop.onUnload() being called multiple times
  • Throw ShopPreCreateEvent immediately before asking to create a shop
  • Fix a NPE when clicking non-quickshop signs
  • Tidied NMS code
  • Added optional fee to change the price of a shop (Thanks mitchej123!)
  • Remove "Sign dupes" (Who cares? It's a sign...)
  • Display remaining stock on signs (May require you to click the shop for it to update)
  • Possible fix for MySQL connection timeouts
  • Removed support for < 1.4.5, added support for Libigot (and other bukkit branches.. possibly forge?) that use 1.4.7+ ONLY
  • Some more possible NPE fixes
  • Added shopIterator
  • Added MySQL/SQLite exporter to convert to and from MySQL and SQLite. Usage: /qs export
  • Give ops quickshop.create.* by default

3.6

  • Delete display items if shop creation failed
  • Removed conversion debugging
  • Display more details when a shop fails to load or convert
  • Fix MySQL reporting shops table doesn't exist - It does.
  • IMPORTANT Players NO LONGER have permission to CREATE shops by default! (Because of the poll results)
  • IMPORTANT Players STILL have permission to USE shops by default.
  • New way of handling NMS code
  • Support for Libigot
  • Delete invalid shops again
  • Some fairly big internal display item changes
  • Shop.java is now an interface! ChestShop now implements Shop.
  • Support for 1.4.7 (Untested, though!)

3.5.1

  • Fixed ShopCreateEvent and ShopPurchaseEvent's cancelling event in API

3.5

  • [API] Changed Shop to an interface, and added ChestShop which implements Shop
  • Added naming for heads
  • Tried to fix some bugs in converting shops at 2.9 and 3.4.

3.4.2

  • Fixed prices being truncated (Rounded down) when using MySQL

3.4

  • Important: Fixed a dupe glitch with unlimited buying shops and anvils
  • Added spout item name support and tidied up item names - Thanks mikenon!
  • Reworked database queries - they should be safer now
  • MySQL support for those who have SQLite issues (Note: Manual conversion is required currently)
  • Expire transaction messages after 7 days to save database space
  • Fixed locked database error when fetching player messages
  • Items are now stored in the database differently (again). This will take a moment to convert (Again).
  • Fix for admins hitting chests with items in creative (Instabreak meant the shop would ask for a price, then be destroyed, making price request useless)
  • Fix for /qs reload

3.3 (Unreleased)

  • Improved debugging
  • Fix enchanted books, they can now be sold and bought safely
  • Fixed /qs setowner not using messages.yml
  • Increased debug info for database errors
  • /qs refill and /qs empty commands added for admins to restock shops

3.2 This version is for MC 1.4.6, and WILL NOT WORK for 1.4.5 (1.4.5 is http://dev.bukkit.org/server-mods/quickshop/files/43-quick-shop-3-2a/)

  • Added economy option in config.
  • Native Satoshis support (Untested!)
  • Tidied up lots of code
  • Fixed potion names (Such as Invisibility potion)
  • Converted /qs unlimited to toggle unlimited state instead

3.1

  • Check a player has enough room in their inventory before purchase.
  • Fix conversion issue if a database had no records!

3.0

  • Never officially released
  • Merged move, join, quit and click listeners into PlayerListener
  • Minor optimization: Only delete a players messages if they had some
  • Possibly fix bug from lazy admins doing lazy economies because they're lazy.

2.9 This requires bukkit b2543+ (AKA 1.4.5-R1.0) DO NOT USE FOR 1.4.6!

  • Fix for bukkit breaking everything...
  • Possible fix for creating a shop causing the chest to open
  • By default, players now have the following permissions. If this is not intended, remove them from your players!
  • quickshop.create.sell
  • quickshop.create.buy
  • quickshop.create.double
  • quickshop.use
  • quickshop.find
  • Use NBT tag system for all shops - Unlimited shops for books etc will keep data
  • A fix for the shop menu being sent whenever a chest opens
  • Heavily modified the database API

2.8 This requires bukkit b2512 or higher!!

  • Update to new scheduler system (If it doesn't work on your version of bukkit, update!)
  • Fixed an item dupe involving mobs picking up items (Partially, the dupe is fixed, some other minor issues are caused til bukkit updates)

2.7

  • Performance tweaks
  • More API methods for shops
  • Cleaned up shop menus
  • Warn players when their double chest shop buying price is > selling price
  • Call ShopCreateEvent and ShopPurchaseEvent when appropriate
  • Converted /shop to a proper alias instead of a separate command
  • Major API cleanup
  • Fixed signs in all builds of bukkit facing the wrong way
  • Added /qs reload command. Permission: quickshop.reload

2.6 - Compiled against bukkit build 2457 (Mc 1.4) (The old versions worked on 1.4 anyway...)

  • Changed API around
  • Fixed a bug with loading chunks
  • Further optimized database
  • Strip colorcodes from player messages when they enter a price
  • Chunk issues introduced in 2.5 fixed
  • Handle checking if a player can create a shop very differently: Now throws a dummy chest open event. If they can open it, the shop can be created.
  • Removed unused dependencies (From above)
  • More detailed messages on missing vault / missing economy plugins
  • Commented config more, removed unused options
  • Preserve NBT data

2.5

  • Fixed some bugs with herochat
  • Fixed not dropping enough items on the floor when making an oversized purchase
  • Optimized database not to run the buffer until it's given a query

2.4

  • Improved /qs find: Now checks the item contains it rather than starts with it.
  • Improved /qs find: Variable distance, use item data name (E.g. RED_WOOL) instead of material (E.g. WOOL)
  • Metrics instead of Metrics lite (No change though)
  • Tidied up some debugging code, add fixed dupes to qs.log
  • Reduced aggressiveness of item watchers
  • Fixed /qs price being able to change a price below 0.01 each.

2.3

  • Added /qs find <item>. Permission node is *quickshop.find*
  • Added metrics. Yay!

2.2

  • Fix for player-just-purchased messages (Woops.)
  • Removed unused debugging codes
  • Timestamps on qs.log
  • Ensure a shop hasn't changed after a person has tried to buy - Prevents scams.
  • Doublechest support! Needs quickshop.create.double perm node
  • Buy & Sell shop support via doublechests! (They share the same inventory)
  • Fix for /qs price not saving on restart
  • Inform players how many items they have when trying to sell items

2.1

  • HeroChat compatibiltiy
  • Signs are protected from being destroyed if shop.lock is true in config
  • Signs can't be broken by creative players accidently anymore
  • Fixed missing towny: true in config
  • Nicer exiting from logging
  • Logwatcher shutdown fix

2.0

  • Optionally log transactions to qs.log
  • Reordered shop messages
  • Added message system for offline players who had items bought
  • Tweaked default messages (You may want to delete your current messages.yml unless you've modified it)
  • More currency formatting
  • Changed queries from HashSet to List, which should fix issues with creating/deleting shops in the same spot quickly (And other jerky SQL errors)
  • Added "average nearby price" to shops
  • Let players buy from themselves any amount, even if they dont have the cash (You dont need money to pay yourself)
  • Fixed /qs price usage details and help section
  • Fixed signs

1.9

  • API Methods (isShop(), setPrice())
  • Command for changing shop price
  • Localization for different languages (messages.yml)
  • Bugfixes
  • Unlimited shops are now 10k, it looks nicer

1.8

  • Huge API changes (Well...)
  • ShopManager for API
  • Fixed a bug with MultiWorld that would cause shops to wipe (And database errors!)

1.7

  • Check economy response for success (Added compatibility) Hopefully fixes someones mistake between #MineConomy and #Vault.
  • Cleaned up code, tiny optimisations
  • Updated chatlistener comments

1.6

  • Fixed a bug where shops weren't removed on break
  • Fixed a bug where shops signs did not change after using /qs buy | sell
  • Fixed a bug where shops weren't giving money if they were unlimited BUY shops

1.5

  • Added Debug command
  • Limit which signs we try to change/update
  • More verbose debugging
  • Changed chunk system. Should be a HUGE increase in efficiency.

1.4

  • Fixed a serious dupe and deleting of items with buying/selling.

1.3 (Unreleased)

  • Sped up chunk loading by half (Still is very slow)
  • Null checks
  • Missing rare nullcheck on chat (ASync :S)
  • Added /qs clean command (Deletes shops with 0 stock)

1.2

  • Bunch of API Changes
  • Fixed NPE if a player destroys a shop without interacting with it (@Sneak-only)
  • Multiple minor optimisations
  • LWC Support (Can't create a shop on locked chests)
  • Fix a potential item dupe
  • Deleted duplicate listener
  • Teleport items back if they're too far instead of moving them back
  • Fixed item dupe where the item would fall under the chest

1.1 Changes:

  • Cleaned up unused code
  • Fixed leaves (Possibly others too) showing up as slabs
  • Much improved signs, especially when shops are placed closely in a tight space!

1.0b Changes:

  • Compiled in JRE 6 (I think)

1.0 Changes:

  • Wooo! 1.0!
  • Added /shop alias for /qs
  • Added Residence support - thanks @T00thPick1

0.9 Changes:

  • Display number of shops loaded on load
  • Merged buy/sell creation actions
  • Added getRemainingSpace(), matches(), buy(), sell() methods
  • Added support for buy shops
  • Tidied up listener code
  • Delete display items on chunk unload
  • Added shop bypass permission for snooping staff if chests are locked
  • Added /qs buy and /qs sell to change the type of shop you're looking at from Buy <-> Sell
  • Reordered permissions Important - You will have to redo the permissions.
  • Changed permission nodes Moved a bunch of permissions around, check the project page for the new ones!
  • Added permissions list to plugin.yml

0.8 Changes

  • Validate enchantments before applying them when loading the shops
  • Added SetOwner command (quickshop.setowner permission node)
  • Added SetOwner method (API)
  • Fixed ChatListener to be thread safe (Is now Sync instead of ASync)
  • Removed Always-Chat config option (Can't use this any more)
  • Fixed NPE if shop owner was offline (Maybe?)

0.7 Changes:

  • Compiled against latest Minecraft Bukkit 1.3 builds
  • Check the world is the same before comparing distance
  • Removed debugging "WG Blocked"
  • Fixed crash if you /qs unlimited'ed while not looking at a chest
  • Made locked chests unbreakable
  • Updated to Async chat handler, REQUIRES BUKKIT 2284 +
  • Stop creative players from destroying shops if they don't own the shop

0.6 Changes:

  • Fixed locked chests
  • Optionally disable paying unlimited shop owners
  • Signs are now automatically placed near a shop
  • Clicking a sign instead of a shop shows the menu anyway
  • Option to disable autosign

0.5 Changes:

  • Added /quickshop unlimited command
  • Added quickshop.unlimited permission node
  • Added unlimited shop
  • Added sneak-only to create a shop option
  • Added item blacklist
  • Added bypass permissions for blacklist (quickshop.bypass.ITEM_ID)
  • Remove a players shopping cart if they quit
  • Automatically update config file *Note, remotes comments
  • Remove display item if we find an invalid shop

0.4 Changes:

  • Still process the event if cancelled (@Hogging AntiSpam/mute plugins)
  • Stop ItemWatcher and BufferWatcher tasks (reload friendly) on disable
  • Moved database variables around to make sense
  • Added warnings system ('QuickShop doesn't lock your chests for you' if set in the config)
  • Friendlier names
  • Changed 'X just purchased' message
  • Added total value of chest when clicked on
  • Added option to send message to chat if it's not a number
  • Don't cancel events if we didn't use it
  • Make sure the shops still there when confirming number to purchase/price
  • Save new config options
  • Fixed item dupe: Forgot to delete items from world if the shop was found to be invalid (E.g. removed by WorldEdit) thanks @Spearhartt

0.3 Changes:

  • Moved lock-shops to shops.lock in config
  • Attempt to hook into PreciousStones, Lockette, WorldGuard, Towny and GriefPrevention
  • Added options to disable hooking into plugins (above)
  • Readded delete shops on reboot
  • Fixed NPE when deleting items

0.2 Fixed:

  • Forgot to check world is loaded when using display items.

0.1 Fixed:

  • Initial (Official) release.

* Mobs may pick up display item stacks and fight using them. (Players cannot pick up the items the mobs drop though!)
* Some people are receiving: //[SEVERE] java.lang.UnsatisfiedLinkError /tmp/sqlite-3.7.2-libsqlitejdbc.so /tmp/sqlite-3.7.2-libsqlitejdbc.so failed to map segment from shared object: Operation not permitted// - I have no idea why and what the effects are. If you receive this, please send me your java version, database backend, etc - And any side effects it is causing.  Thanks :)