For users who want to update to Minecraft 1.20.2: You would need to use the dev version of Protocollib this time otherwise Protocollib will not work:
https://ci.dmulloy2.net/job/ProtocolLib/
This version brings 1.20.2 support and bug fixes, recommended update for all users.
Changes:
- Replace Rollbar error reporter token to new one, since previous one will be removed by rollbar site.
- Add 1.20.2 Support
- Improve real display item warning message in console
Fixes:
- Fix item hover in text not working on custom item.
- Fix could not create shop in the world using long world name, now we use varchar(128) type for world name in database
- Fix typo for limit comment in code
- Fix no thanks for translators on previous update notes, sorry for that and a big thanks to the translator who keep updating translation!
Also update bstats code to the latest 1.x version (through it's 2 years ago)
This version brings minor bug fixes and recommended update for all users:
Note: You would need to update AdvancedRegionMarket plugin if you are using its integration.(At least 3.5.3)
Bug Fixes:
- [1.20.x] Fix sign editing gui pop up when interacting with shop sign
- [1.20.x] Fix preview text can't be clicked after updating to newer 1.12.1 server core version
- Fix mysql dbPrefix issue when using convert command, which causing wrong mysql table names without prefix.
- Fix wrong owning shop amount in message when using transfer command
- Fix advanced region market integration not working on the new plugin version
- Fix sign right-clicking when result in editing sign on 1.20(.1) when NBTAPI support not enabled
- Fix transfer command will bypass shop limit
I know it has been a long time since last release, so it's time to do that! This time we brings 1.20(.1) support and bugs fixes, recommended update for all users, full changes log:
Add:
- 1.20(.1) Support
- Updated translation (Thanks to translators keep updating translation!)
Fixes:
- NumberFormatException when inputting non-number value on trading
- Click event not working on multiple color preview texts
- Wrong click event deprecated warning
- Wrong item name display on floating item when using custom color name with VirtualDisplayItem
- Debug command will crash plugin
- Purge could not be started again after error
- Shop sign became empty when setting sign text with NBTAPI enabled after 1.19.4
It's quite a long time since the previous release (It should be the first release in 2023?), but this version comes with 1.19.4 support (Seems no changes needed for this version, but supported version needed to be added for visual display item support) and re-enabled Crowdin OTA (Works with ghost-chu and solved it by self-host r2 Clouldflare server), also minor bugs fixes and performances improvements, recommended update for all users, full changes log as follows:
Added:
- Add finding enchantments on enchanted books feature in find command, now you can just type enchantment name to find the enchanted books (by SarahGreyWolf)
- Add PlayerShopClickEvent and Deprecated ShopClickEvent
- Add progress report for caching offline player
- Updated Crowdin translation, thanks to all the translator!
Performance Improvements:
- The player lookup performance have huge improved, it will help the shop loading for massive loading time reduced.
- Now all the command related to player name lookup will only search online players expect you enable include-offlineplayer-for-command in config.yml, it will solve the lag for a player using offline player name.
- Set connectTimeout to 10 seconds for fetching Crowdin OTA translation, solved stuck for server startup
Fixed Bugs:
- Offline player caching not working for some time
- Offline player search still working when offline player caching is enabled
- Enderchest shop not working
- Reload command may stuck on DatabaseManager init and crash server
- Bug for bypassing item stacking option
- Got NPE error when eco plugin not installed
- Lands integration not working in newest Lands plugin
- Static language not working, now it will fallback to the first language instead of game-language when only have one languages in enabled-languages
- Shop purger could crash server when purge shop amount is large
- Wrong depends on ArmShopBridge, causing undefined plugin loading order and dependency loop
- Could not setup free shop when price restriction not allowing 0 and allow-free-shop option is enabled
- Digit price checking not working (maximum-digits-in-price option)
- GroupManager was reported as incompatible plugin
- Not calc the real tax in message when selling item when using bypass tax permission
- Okhttp client not shutdown after plugin disabled
- Spartan compatibility module not working, and not a soft-depend for Spartan
- Price change log recording wrong new price
For full update notes please read the previous update
This version is released for fixing offline player caching and disable CrowdinOTA, more details as follows.
CrowdinOTA Disabling Notice
Today we receive an email from Crowdin for overusing OTA service, our current requests is beyond the free limit and we need to remove the distribution from crowdin and stop the download requesting or pay for 72 usd.
So we disable that temporary and looking for the another solution, in this time you will no longer receiving translation update from cloud again, no matter which version you are using, and built-in translation will still work.
This will not have any effect for translation overriding and plugin, and I recommend update to this version to reduce crowdin request, since crowdin side still thinks it need to take into the OTA requests even is an invalid request, as they said:
"Currently, we calculate all the requests sent to the distribution and even if you remove the account\project\disctibition, the requests will still be sent to AWS (Over-the-Air technology is built on top of AWS infrastructure)"
So we need to reduce our requests into free limit in the next month to avoid such high bills.
Sorry for your inconvenience, and thanks to downloading and using QuickShop plugin.
For full changelogs for 5.1.1.0 please read the previous update.
Since I'm busy in the other things, it has been the longest time for this release, anyway, this relase comes with 1.19.3 Support, bug fixes and some new features, recommended for all users to update, full changelogs as follows:
Fixes:
- Fix ClassCastException kick when a player nearby shop in 1.19.3 and with VisualDisplayItem enabled, it's caused by mojang changes on EntityMeta Packet in 1.19.3, protcollib update is needed for 1.19.3 server for using the latest api.
- Fix shulkers could be sell into shulker shop (By @Smudge in Github)
- Fix item of map comparing in QS matcher
- Fix entity protection not work for shop locks, it can cause bypass when entity breaking shop
- Fix PlayerArmSwingEvent related error for QuickShop
- Fix /qs create command doesn't work with no arg
- Fix shulker box could be pushed by pistion, now enchance-shop-protect will be forced enabled when using SHULKER as shop-block
- Fix wrong shop removing when firing FakeBlockBreakEvent due to prection-checking
- Fix broken update systems
- Fix wrong delays for eco plugin, it will cause some of eco plugins hook doesn't work
- [Interagtion] Fix AdvancedRegionMarket interagtion does not work on plugin version 3.4.3
- [Interagtion] Fix GriefPrevention interagtion using outdated api
- [Interagtion] Fix lands integration does not work on new plugin version
New features and improvements
- Add convertlog command for getting readable log (permission: quickshop.convertlog), now you can use /qs convertlog to get readable_qs.log in QuickShop plugin folder.
- Add modify staff shortcut in control panel, now you can click modify on the chat to get the command suggestion of /qs staff
- Add regex support for blacklist-world option, now you can use regex in this option, only need to make the regex prefix with $
- Add mysql-connect-options settings for let user use setting additional mysql connection options.
- Add create-needs-select-type option, when it was enabled it will ask shop type to use when creating shop
- Force cached all offline players when its amount > 2k, now large server should get lag free when using /qs staff and /qs setowner command and the other command needs username.
- Updated offline CrowdinOTA Manifest and offline translations, a big thanks to all of translators!
A Emergency Fix version for transfer command, if you can not update now please disable quickshop.transfer permission for player!
- Remove quickshop.transfer permission from quickshop.player permission
- Fix transfer command, now the type of shop it can transfer by player is limited
- Deprecated DisplayDupeRemoverWatcher and fix async error when using real display item
- Clearify the protection-checking message
- Updated translation, thanks to all the translators!
This version brings 1.19 support for QuickShop, through our plugin is supported, server software and other plugins may not work smoothly, so please take care your server and make a backup, and read the
update notes posted my md_5, and remember update protocollib to the
dev version if you are using 1.19!
After then, is the disable-move-event checking fixes for paper, it likely was broken is the long time, this time it will work again and giving clearly tips in console and paper.yml (or newly updated paper/paper-world-defaults.yml).
The last thing is the translations update, thanks to all the translators as usual! Without your support we can't offering multi-language support to plugin users!
Tips:
This version may
break your data, so please backup by
/qs export before updating!
If there have anything broken, you can rename the exported file to
recovery.txt then use
/qs recovery in
console to rollback!
As usual, this version brings some bug fixes and new features, and also brings updated translation! Thanks to all the translator!
About sudden blank sign issue: It's not our fault, click there for solution.
Bug Fixes:
- Fix a bug in taking tax account when refunding
- Fix all shop loading failed when only one shop corrupted
- Fix wrong update link
- Fix BlocksHub support not working
- Fix i18n file loading error (on some servers) by filling some contents into default file
- Fix incorrect message displaying when allow stacking option changed
- Fix incorrect min and max price configuration comment, it will affect all shops
- Fix taxing failed when using per-shop tax account
- Fix SuperiorSkyblock2 not handling coop
Changes:
- [Lands Integration] Support the deleted and expired land congratulating
- [SuperiorSkyblock2 Integration] Add privilege setup for trade and creation
- Enhanced 3rd plugin class and conflict checking, it will check if there have any class conflicting (e.g Install duplicated plugin jar) and report it
- Optimize the stacking changing logic, it will auto change price for stacking shop and logging when stacking was disabled
- Remove the warning message in economy-type configuration comment and add comment for Multi-Currency
- Remove outdated option in configuration comment
Recommended update for all 5.x users
Fixes:
- Fix mojang file downloading always waiting for 20 secs and i18n name not working issue in 5.1.0.5, you will need to use "/qs reset lang" to make it work again
- Fix wrong item meta comparing when shop item is not customed with QS matcher, which causing users traded item which is special to normal item shop.
- Fix "Container invalid" log not respect logging type
- Fix error when checking display item with real display item mode used
- Fix NPE when reporting error was disabled
Add:
- refund-from-tax-account-as-much-as-possible option, which allow to take the same balance of shop create cost from tax account as much as possible
- [WorldGuard Integration] whitelist-worlds option in WorldGuard Integration, which allow user to just let whitelist happened in the specific world.
This version contains bugs fixes, support for GriefPrevention 16.18 (In this version we only support 16.18 due the incompatible changes in their code), and updated translations (thanks for the kind translators!)
Fixes:
- Fix i18n file download always hanging server after 20 secs
- Fix root command tab-completing not working
- Fix limit not working in snapshot
- Fix VirtualDisplayItem not working in ProtocolLib 5.0.0 snapshot
- Fix duplicated display item bug when using RealDisplayItem
- Fix item name with large NBT item
- Fix duplicated message when trading with self shop item (thanks to @tdiant)
- Fix RGB color not working in control panel
- Fix purchase message not reset format after item name
- Fix NoSuchMethodError in older minecraft version (1.15.2)
- Fix NullPointerException when ranks options is not set
- Fix the permission in FabledSkyBlock Integration not working (@efekurbann)
- Fix Hot Unload/load integration system
- Fix Signature Verify failed after reset config by /qs reset config
- Fix override files and message broken when crowdin path broke
- Fix purchase history turn to english when joined the server
Tips about original developer Ghost_chu:
Due to the disagreement with Ghost_chu, ghost has quit from reremake fork and create a new fork called QuickShop-Hikari, and I will continue maintaining this fork, the main points we can't reach consensus is:
- He want to rename Reremake fork to Apollo fork then let version numbering start from 1.0, but I think it will confuse users and refuse this.
- I don't want the users using QuickShop plugin meeting the unstable and buggy experience again and want to keep the v5 maintaining.
There are the links about QuickShop-Hikari fork:
Anyways, thanks to Ghost_chu for maintaining this fork for a long time, and hoping his life running smoothly forever.
A small update for this plugin which containing bug fixes and some new features.
Fixes:
- Fix ClassCastException when using silent command in console
- Fix missing help of always-counting in quickshop help page
- Fix removeall command displayed in help page even don't have permission
- Fix Preview Text displayed even don't have permission
- Fix errors when handling large NBT item names and large NBT items
- Fix the wrong money earned when with tax
- Fix the wrong language when displaying trading notification
- Fix Fabled Integration not take effect
- Fix valid shop counting
- Fix total not changing in message after changing total in ShopPurchaseEvent
- Fix wrong message when creating shop in disabled world
- Fix NullPointerException about itemStack_saveMethod is null
- Fix NullPointerException about locale is null
- Fix errors when setting wrong display-type
- Fix CrowdinOTA$OTAException: Failed to grab data
- Internal bug fixes
Changes:
- Add detailed error for economy transaction
- Add effect level displaying for custom effect (Base effect not supported due to the limited bukkit api)
- Add cost goto tax-account feature
- Now the plugin will catching checking update result for 1 day
- Now the plugin will keep the original message when holochat data too large
- Improve protection-checking-blacklist related settings, now plugin will use QSEventManger automatically without setting
protection-checking-listener-blacklist, this setting was removed.
- Add updated translations, thanks to all of the translators!
- Internal code improvements
Say hello to 2022! There is the first release in 2022 after a month, and recommended for all users running minecraft server in 1.15.2-1.18.x, but as we always reminding,
you should make a backup before each update.
This release mainly for improving user experience and fixing bugs, also brings always-counting feature for real admin shops (admin shop but not unlimited) and enhanced jar verify logic, full change-log as follows:
Fixes:
- Fix color formatting and events in item hover message
- Fix the mistaken importing causes InaccessibleObjectException when changing staffs (Thanks @Happy-Hop7's report)
- Fix display disappeared when enabled display-auto-despawn
- Fix error when unlimited-shop-owner option is invalid value
- Fix item matching issue when using quickshop matcher, which causing unfair trading and not giving/taking item in certain cases (Thanks @Draesia 's report and help on this issue)
- Fix not matching raw item with other having nbt item when using quickshop matcher.
- Fix wrong sender limit in transfer command
- Fix misleading debug logs and variable names
- Fix size command always showing disabled message
- Fix compatibility module not working, which making protection-checking feature conflict with anti-chat plugin
- Fix error when NBTAPI not working
- Fix "String is too big" error when showing item having large NBT in chat
- Fix out-stock message not respect to custom item name
- Fix duplicate comments in config.yml, it only happened to server software which supporting comment saving
- Fix wrong warnings in display-items-check-ticks when setting to zero
- Fix shop creation can happened for destroyed old chest (Thanks @thunderlight411's report)
- Fix config files always updating shop.sign-dye-color option when first install
- Fix stored potion i18n file not take effected or can't be changed
- Fix setting offline owner and offline staff not working
- Fix tab-completing player name not returning online players when enabled include-offlineplayer-list
- [Worldguard Integration] Fix permission checking not work when not setting global region permission
New Features and Improvements:
- Add always-counting options for each shop, when enabled it, it will counting container even the shop is unlimited, making real adminshop is possible.
- Add at-server-startup and backup options for purge feature
- Add a comment in empty override json, guiding user for the link of override language tutorial.
- Add a logic for creating file when old message.yml is existed, guiding user for the link of migrate-v4-to-v5 tutorial.
- Improve some comments in config.yml
- Improve jar verify logic, now we will forcing-stop the server when detected the virus or change in the jar file for server security, also will generate a security report and open it automatically when is possible. (Commits by Ghost_chu and improved by me, he now back but not mainly developing QuickShop)
- Update the local translations from crowdin, thanks to all the translators!
This version is containing following bug fixes, hoping no more bugs happened, also give a huge thanks to translators for updating translation:
- Fix sign-dye-color is missing in config.yml
- Fix broken find command
- Fix wrong unlimited and free shop counting displayed
- Fix "§r" is not working
- Fix message coloring issue
- Fix silent command throwing exception when input is invalid
- Fix debug command not respecting local config.yml
- Fix weird comment newline in config.yml
Note: Please make a database backup before updating!
We also add a backup logic when purging shops
Note: Please make a database backup before updating!
Hello there! Here is sandtechnology, the maintainer after Ghost_chu quited, this version is mainly focus on stability and bug fixes, also improving poor user experience in v5, additionally, we also add 1.18(.1) support and offline multi-language feature, full changes as follows:
Fixes:
- Fix auto despawn watcher related issue
- Fix ShopPurger and purge command related issue
- Fix a bug in which the find command would display the result multiple times.(@Warrior)
- Fix case-sensitive and underscore issue in enabled languages
- Fix NoClassDefFoundError not handled by catch statement
- Fix item namespace method finding issue, also fix fallback
- Fix shop caching issue, causing weird shop sign display
- Fix case-sensitive issue in enabled languages
- Fix mistaken on update message, now it will display right download link
- Fix price command bypassing the integer only option.(@Nlkomaru)
- Fix coloring issue with certain input
- Fix misleading shop buying message and weird amount counting
- Fix stuck when i18n loading and language file loading
- Fix misleading shop creation message
- Fix broken potion effect i18n, it now will work properly
- Fix an NPE when failed to load message
- Fix error when invoking getContributors method in 1.15
- [WorldGuard Integration] A new settings was added for fixing global region issue
- [Towny Integration] delete-shop-on-plot-destroy using wrong event, now will use TownUnclaimEvent
- Fix wrong message updated by Crowdin OTA
- Fix broken comment adding and updating
- Fix built-in file not using UTF-8 for loading
Added & Changes:
- Offline multi-language feature, now we have bulit-in files, which will use when could not got files from Crowdin instead of reverted to English.
- [FactionUUID Integration] Drop support for 0.5.x and support 0.6.x
- 1.18(.1) Support
- A Event for changing Inventory (ShopInventoryEvent)
- Language system code logic improvement
- Drop SimplixStorage library which was used for loading config.yml since v5, it was unreliable to use
- Apply word-for-trade-all-items settings to trade message instead of hardcored "all"
- Printing errors when cannot create column in database
- Delete incorrect relocation and improvement in shading, causing unwanted error
English Version
Because multiple reasons, I decided to stop developing QuickShop and supports.
The future updates and support will be handled by the QuickShop team other people such as
@sandtechnology.
The real-life pressure and tasks make me can't breathe.
The pressure from school, family, support, and others.
In past years I have spent my all free time developing and supporting, and I feel more bad day by day.
That is not the life I want and I already feel the mental illness that it brings.
I noticed I must choose one between life and game. So I did my choice.
I take QuickShop from Kai since 2018 and I think it's time to pass the torch to next.
If you are interested QuickShop and want to join the team, contact me in discord anytime.
If you're a server owner, you can fork the repo and download the jar to make sure you have a copy of QuickShop. (The most important thing is to join our Discord server to make sure you won't lose contact with us.)
Same time, I have taken down my donate link including Patreon and Afdian.
Anyway, thanks to your guy's support and warm heart in past years.
And love u guys. ♥
Simplified Chinese Version (with details, you can try using google translate if you want to read more)
由于许多原因,我决定停止开发 QuickShop 并终止所有与其相关的支持。
不过,这并不意味着 QuickShop 的旅程到此结束。
我的搭档
@sandtechnology 将会接手这个插件并继续为其提供维护和后续支持服务。
sandtechnology 参与到开发中已有很长时间,熟悉 QuickShop 的架构,并有能力将其继续维护下去。
为什么会放弃 QuickShop?
由于来自现实生活的压力和繁重的任务让我难以喘过气来,也没有时间和精力继续维护这个项目。
学校,家庭和为 QuickShop 的用户提供支持占据了我所有的空闲时间。
在过去的几年里,我的所有空闲时间都坐在电脑前。
没有锻炼的时间、没有参与社团活动的时间、没有思考的时间。
我渐渐的感到我的性格正向着不好的方向逐渐改变,同时在我的身上发现了一些心理疾病的早期症状(我希望对此保密,因此请不要继续追问)。
经过反复考虑,我决定作出这个艰难的抉择。
QuickShop 项目最初并非我的作品,我在 2018 年从 KaiKikuchi 接过了这个项目并对其进行现代化改造和功能增强,至今已有 3 年。尽管十分不舍,但是时候将火炬传递下去了。
QuickShop 项目及其仓库正在进行迁移工作,预计在 2021/11/21 之前完成主要服务转移,并在未来数周内完成相关云服务的转移。
对于无法迁移的内容,我会尽我所能维持尽可能长的时间以确保大部分用户有足够的时间升级到不受影响的构建。
QuickShop 未来的方向?
QuickShop 的旅行还没有结束,新任开发者 sandtechnology 将会继续对此项目开发,添加新的功能和错误修复。
Bukkit Dev 的发布渠道可能会终止发布,SpigotMC 可能成为我们唯一的发布渠道。
任何相关的最新消息我们会在 Discord 频道里第一时间发布,请记得加入我们的 Discord 频道以避免错过最新消息。
我该怎么做以确保我的服务器还可以正常使用 QuickShop ?
作为开发者,你可以 Fork 我们的仓库,以确保你拥有 QuickShop 的副本。
作为服主,除了可以 Fork 仓库外,你还可以在我们的 CI 构建站下载构建 JAR 以保存。
请注意: CI 构建站并非永久性的保留构建结果,随着服务提供商的改动,过久的构建内容可能会被删除。你应该及时下载你需要的构建以存档保存。
这个资源(在 SpigotMC 上的)届时会被删除吗?
我们希望该页面 URL 不会被改变,但如果出现意外情况,我们会在我们的 Discord 频道发布公告以通知。
因此,请确保你已加入我们的 Discord 频道以避免因资源变动导致的失联。
我们会尝试联系 SpigotMC 的工作人员来迁移资源所有者,或者将重命名本账户。
但如果出现了不可抗力或意外,我们会在 Discord 频道与您取得联系。
QuickShop 的集成、Addon 后续还会维护吗?
不会,所有由
@Ghost_chu 维护的官方/第三方插件都会停止更新和支持。
不仅仅是 QuickShop,还有 ConsoleSpamFix 和 GemsEconomy-Reremake 等其他有关 Minecraft 的项目。
QuickShop 所使用的云服务如 Crowdin、在线更新 会停止吗?
会的,在大部分用户迁移到新版本后,由 Ghost_chu 所提供的云服务届时将会停止服务。
不过在此之前,我们会尽可能地延长相关服务的服务时间,我希望至少可以坚持到 Minecraft 1.21 版本。
尾声
感谢一直以来的支持我的朋友们,谢谢你们!
-----------------------------------------------------------------------
Sponsor List:
Thanks for donating while I maintaining the plugin.
- CharlyZhu
- Namiu
- R176
- Sylphrena
- LJack2k
- Joschua Schneider
- Funeral
- 胡蝶 しのぶ こちょう しのぶ
-----------------------------------------------------------------------
在时间的长河中,我们终会再次相遇。
In the long river of time, we will eventually meet again.
長い時間の川の中で、私たちは最終的に再び会うでしょう。
В длинной реке времени мы снова встретимся.
Im langen Fluss der Zeit werden wir uns irgendwann wiedersehen.
Dans le long fleuve du temps, nous finirons par nous revoir.
No longo rio do tempo, eventualmente nos encontraremos novamente.
En el largo río del tiempo, finalmente nos volveremos a encontrar.
I tidens långa flod kommer vi så småningom att mötas igen.
I tidens lange elv vil vi etter hvert møtes igjen.
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.loli.net%2F2021%2F11%2F20%2Fi7mzSJCcVhFTdup.png)
1. Fixed RGB color on the Sign third line incorrect
2. Fixed Sign doesn't update for buying shop. (and won't update anything before reload)
3. Fixed Shop Memory Caching system, it has broken over a year and nobody mentions it!
4. Improved Caching System and it should make QuickShop run faster on a busy server.
Fixed bug that cause all interaction event that related about shop container was cancelled by QuickShop.
Fixed item previewing in incorrect position.
Fixed broken integration with AdvancedRegionMarket
Re-added FabledSkyBlock Integration
5.0.0.12 has been removed caused by critrial bug
Fixed plugin crash if currency symbol configure incorrect.
Fixed NPE while Trader tax account is null.
Fixed Double-Chest shop loading.
Fixed bug that cause different names used in plugins.
For example:
The player created a shop using `Punch Sword` that rename from Diamond Sword.
Before this update, the plugin will use both names in different positions.
And now they're will use same name in everywhere and you can toggle them using configuration
Fixed UnsupportedOperationException: Use QuickShop#getConfiguration to instead exception.
Fixed item matching bug if user using Bukkit ItemMatcher (work-mode = 1) to cause shop always shows Out Of Stock issue.
Fixed bug that cause player trying to sell items to buying shop always says 0 items can be sold.
Fixed Economy provider not detected bug.
Fixed the strange text that started with !!=-=-=-=.
Fixed the strange text color formatting in trade messages and out of stock messages.
Fixed console spam when game-language is set to default.
Fixed translation override system completely doesn't work.
Fixed strange white sign issue.
Fixed translation caching system, also fixed always downloading translations issue.
Fixed the item in shop info chat always use item original name issue.
Fix configuration encoding issue.
Fix okhttp error.
Fix cache data saving bug.
Fixed some i18n system bugs
*We noticed a configuration reading encoding issue, we will provide a patch build later.
Hot Fix:
Fixed No such file and NoClassDefError
WARNING!
This major update contains Breaking Changes, You will no longer roll back to old versions without backup.
Also, all addons will stop working after these updates, addon developers will need to update their addons.
BACKUP!
This update contains configuration un-revertable and database modifications. You will no longer roll back to old versions without backup.
Long Term Support
If you're a large network, we recommend staying at LTS (4.0.9.10) for a while, since we cannot make sure v5 is stable like rock.
5.0.0.0 - Technical & Internationalization Update
==================================
We recommend installing NBTAPI.
Woah, this update has a ton of changes, we develop it almost three months, hope you enjoy the updates!
Remove:
1. 1.13, 1.14 supports have been removed. We don't support any version that is older than 1.15.2.
2. Remove PlotSquaredV4 and PlotSquaredV5 integration (Currently only support PlotSquaredV6).
Added:
1. Added IridiumSkyblock 3.x integration. (thanks @DoctaEnkoda)
2. Rewritten multi-language system, now it supports sending different locale messages to players (following client settings, the sign dynamic text requires
NBTAPI installed).
3. Use OkHttp to download files, and impl the caching system for assets.
4. Impl multi-threaded translation downloading.
5. Per-shop tax-account feature has been added to QuickShop.
6. Per-shop display switch feature has been added to QuickShop. Now you can disable the display item for a specific shop.
7. ShopOngoingFeeEvent, ShopOwnerNameGettingEvent has been added.
8. Added ability to use unofficial game assets mirror to download game assets. (Currently only supports BMCLAPI and MCBBS Mirror).
9. Added ShopPurger to allow users to purge the shops that owner a long time inactive or that got banned.
10. Added external cache feature to database sources, you can show the shop stock and space information on your Web UI!
Fixes:
1. Fixed NullPointerException caused by custom enchantment plugins.
2. Fixed "Cannot tick distance manager while unloading playerchunks" exception on Purpur.
3. Fixed ghost item issue.
4. Fixed reusable database connection and warped result set not in the resources-with-try block.
5. Fixed `/qs supercreate` command won't bypass the protection checks issue.
6. Fixed "java.lang.IllegalArgumentException: entityID cannot be negative" exception while HolographicDisplays installed.
Changes:
1. Refactored configuration reloading system. Now will no longer crash the whole server.
2. Improved background debug logger performance.
3. Improved DisplayItem and ShopManager performance.
4. Preview Item class name has been changed to improve the compatibility with ChestSort or other plugins.
5. API has been refactored, and all related methods and classes are now moved into `org.maxgamer.quickshop.api` package, also we extended the API and events, enjoying the powerful APIs.
6. New generated config.yml now contains comments, we always recommend resetting your config.yml after major updates.
Configuration:
https://pastebin.com/4mF0e5iK
Developer Support Channel:
https://discord.gg/bfefw2E
END OF LIFE!
Please note that this is the last version that supports MC < 1.15!
1.13 and 1.14 users no longer receive any updates in the future includes bug fixes, features, and security updates!
4.0.9.10 - 1.13/1.14 EOL Update
==================================
Bug Fixes:
1. QuickShopList addon broken after 4.0.9.9 because API changes, now we fixed it.
2. Material#isAir method not found exception.
3. /qs export command doesn't work as intended while player executing it.
4. Chain chunk loading when loading shops, causing lags and performance downgrade.
New:
1.
quickshop.player ALL-IN-ONE permission node for all permission that players needed.
[BETA]
2.
quickshop.moderator ALL-IN-ONE permission node for all permission that moderator needed.
[BETA]
For admins, just give quickshop.*
3. Updated translations! Thanks to all translators!
4.
quickshop.other.staff For admin to add staff in other owner shops.
Fix an item duping bug reported by an user today, recommend all 1.17 and 1.17+ user update immediately.
Fix a NPE error caused by AdvancedShopRegionMarket Integration.
In this month we are working on display item and shop loading and unloading optmization, also fixing bugs and accepting pull requests from a new contributor RaphtaliaPT, we also thanks CircusCow, Iban and Rean Schwarzer (RaphtaliaPT) in discord channel for testing and reporting bugs!
Performance Improvement:
- Rewrite Virtual Display Item, performance should be improved hugely for large amount shops
- Remove useless sync process for database
- Info command no longer load massive amount of chunks and crash the server
- Code logic Improvement
Add:
- AdvancedShopRegionMarket Integration (BETA)
- Refactored GriefPrevention Integration (Pull requests by RaphtaliaPT)
- All-in-one permission nodes (quickshop.player for player and
quickshop.moderator for moderator)
- Whitelist-mode for Towny Integration (Pull requests by RaphtaliaPT)
- Dynamic economy setup listener, now we will handle economy plugin dynamically
- Updated Translations files, thanks to all translators!
Bug Fixes:
- Fix a bug which causing Minedown format does not work in language files
- Fix a bug which loading language files by third times
- Fix a bug which making plugin won't update language files when changing Minecraft version
- Fix a bug which making item with custom symbols could not used for creating shop
- Fix multiple NPE errors reported by auto report error system
- Fix multiple "World unloaded" error reported by auto report error system
- Fix the language guessing when it is English
- Fix broken help command
Fix NPE when updating sign caused by the new sign feature.
4.0.9.5 was skipped for a bug in this version
Add:
- Glowing and dyeing sign feature.
- 1.17.1 Virtual DisplayItem Support (Remember to update ProtocolLib!)
- Sign placement checking for shop lock
Fixes:
- WorldGuard Integration not work after reloading
- Shop sign is editable by other plugin or server software
- Duplicated Item display when reloading with double chest shop loaded
- Server hanging when handling on-going fee
Fixes:
- Now we will prevent user reload and use Quickshop after use command /qs update updated plugin, you will need to restart the server for applying it, because it's unsafe for using after jar was deleted/replaced.
- Fix ArrayIndexOutOfBoundsException when using /qs command with having boot error.
Add:
- PlotSquared6 support for integration.
- Removed Shop API in 4.0.9.0, broken addon may work again.
- Updated translations, thanks to all translators in crowdin!
Fix shop broken issue after a server reboot and shop load failed issue.
[This is a temp build, we will release a new build after CodeMC.io Jenkins back online.)
Fix an bug which causing shops price was reset to 0.01 (minimum price)
when enabling whole-number-prices-only.
Fix an bug which causing old shop signs won't get updates.
Fix an bug which causing world unloaded shop won't be counted correctly
Fix player receive strange item related YAML format notify when somevody purcahsing with shops.
4.0.9.0 Compatbility Update
==================================
Some addons may stop working after this update. Needs to update.
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.imgur.com%2FkLpkCSI.jpg)
Summer time~
This update brings VirtualDisplayItem support for 1.17 with ProtocolLib and a ton of new features, bug fixes, and user experience optimization.
Compatibility:
1. Added 1.17 VirtualDisplayItem support with
ProtocolLib 1.17 dev builds.
New Features:
1. Added custom command prefix support, now you can custom and add multi command prefix like /wowshop /awesomeshop, etc.
2. Added unlimited shop account feature, now can change the shop owner to unlimited shop account when setting shop to unlimited.
3. Added LuckoPastebin to /qs paste pastebin providers.
4. EnvTester will also test VirtualDisplayItem when booting up and allow auto fallback to RealDisplayItem if ProtocolLib runs into the issue.
5. /qs reload command now working under stop working mode.
Bug Fixes:
1. Fixed UUID tax account feature.
2. Fixed /qs price command did not respect PriceLimiter settings.
3. Fixed double value compare issue in tax checks.
Removed:
1. Removed Caffeine lib since QuickShop shop searching/indexing performance has huge improved, no longer need that. We now migrated to Guava Cache.
API Changes:
1. Command system has been refactored.
2. MsgUtil.sendMessage has been refactored, it now only use to send i18n message with language-key. To send other messages, please use MsgUtil.sendDirectMessage.
Finding Volunteers:
We're looking for some active and awesome users of QuickShop to join our test project to help us find bugs before we release a new version.
If you glad to help us, please join our
Discord server.
4.0.8.7 Patch Update
==================================
Attention:
We already know the
[Preview Item] button in Chat UI doesn't work on 1.17 and will crash the server. This is a Spigot bug (
SPIGOT-3523), please wait for Spigot to fix it.
We already know the sign may keep empty when creating new shops on 1.17 and an error in the console will appear. This is a Spigot bug (
a3df386f7c6 and
d747f8ed158), please wait for Spigot to fix it.
Once Spigot fixed it and released the update through BuildTools, all errors and crashed I mentioned above should disappear without QuickShop updates.
Please do NOT report them to us, we already know them and nothing we can do, only wait Spigot to fix them.
Added:
1. Minecraft/Spigot 1.17 support.
4.0.8.6 - Hotfix Update
========================================
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.imgur.com%2FJUOKfnt.jpg)
This is a hotfix version.
Bug fixes:
1. Just fix a NullPointerException in 4.0.8.4 (4.0.8.5 has been skipped).
4.0.8.4 - Patch Update
===============================================
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.imgur.com%2FewZ4wxW.jpg)
As always, QuickShop released new update to keep improving the quality and performance.
New Features:
1. WorldEdit can correctly remove QuickShop shops.
Bug Fixes:
1. Memory Leaking issue in ShopLoader cause the ContainerShop object won't GC even shop has been deleted.
2. Memory Leaking issue in ContainerShop causes the DisplayItem object to keep in memory even shop has been unloaded.
3. Memory Leaking issue in VirtualDisplayItem causes the AsyncSendingTask object to keep in memory even VDI mark is stopped.
4. Fixed ArrayIndexOutOfBoundsException when handling error.
Removed:
1. JulySafe environment check has been removed since JulySafe did it by itself.
4.0.8.3 - Patch Update
===============================================
![[IMG]](/proxy/image?url=https%3A%2F%2Fi.imgur.com%2FWF3kpBd.jpg)
As always, QuickShop released new update to keep improving the quality and performance.
New features:
1. New flags allow you to disable the Java check warning. (Just hide the warning, but still, we will upgrading to Java16, anyway, you really should schedule an update before we choose to switch to 16)
Add this flag to your startup command line and you can disable it:
Code (Text):
-Dorg.maxgamer.quickshop.util.envcheck.skip.JAVA_RUNTIME_ENVIRONMENT_VERSION_TEST
Improvement:
1. Improved general performance.
2. Reduced the Jar file size (-1.3MB).
3. Plugin internal and console message grammar improve. HUGE thanks
@Chris6ix.
Bug fixes:
1. Fixed possibly shop creation de-sync issue.
2. Fixed NullPointerException when failed to put the info sign while creating shops.
3. Example config file `example.config.yml` now rename to `example-configuration.yml` to avoid users edit the example configuration file.
4. Fixed a bug that makes the virtual display invisible.
5. Fixed ConcurrentModificationException when loading worlds when other threads adding/removing shops from the shop index.
6. Fixed "World Unloaded" exception on 1.14+ servers.
7. Fixed number processing in the plugin and handle Infinity and NaN.
8. Use world default currency in TNE support to avoid post null to TNE.
9. Fixed plugin reloading fails on recent spigot/paper builds.
10. Fixed plugin not correct process waterlogged sign.
11. Handle canceled database tasks correctly.
12. Fixed info sign putting issue.
13. Fixed a bug in LogWatcher and cause the logs deleted.
14. Fixed a bug in ErrorReporter and cause the StackOverFlow error.
We decide to put off the QuickShop minimum Java requirement update date to make sure all owners have enough time to prepare.
Changes:
1. Refactor ShopAPI - It may break some addons.
New:
1. Now shop will shown Out of Stock or Out of Space on the sign when run out of stock or space.
Fix:
1. Random exception appears while shutting down server.
2. /qs owner command will break the first line on the sign.
3. Fix language system bug so it should can upgrading language file correctly.
Java16:
1. QuickShop will warn owner in console if server Java version older than Java 16 (it's 11 before this update).
!!READ THE CHANGELOG BEFORE UPDATE!!
!! B A C K U P !!
4.0.8.0(.1) - Minor Update
=============================================
There is Ghost!
Finally, I have free time to continue developing QuickShop after finished my exam.
This update basically optimized general performance and the plugin should no longer hurt server performance on the busy server or large network. If you still hit a performance issue, please create a report use
Spark sampler. (no timings pls)
For developers we added Calendar API and new ExtraAPI, some add-ons may need an update.
Removed:
1. Reserve Economy API support (API repo has been deleted)
2. FabledSkyblock support (API repo returns 404 Not Found)
Added:
1. Sign header color placeholder. Different colors for different stock statuses.
2. Calendar(Schedule) API for addons.
3. Towny plot clear feature support (shops in the cleared plot will be purged).
Optimize:
1. Heavy optimize DoubleChest related functions performance. General performance should be improved. Especially on a large network or server with busy hopper activities.
2. Default disable sign update while inventory moving to reduce shop indexing time.
3. General performance optimization and code clean-up.
4. ErrorReporter nolonger block the Server-Thread while submitting errors.
Fixes:
1. The warning "
No longer waiting file downloading because it now timed out, now downloading in background, please reset itemi18n.yml, potioni18n.yml and enchi18n.yml after download completed." always appears.
Changes (For developers):
1. Shop#getExtraManager has been removed. Use Shop#getExtra instead.
2. Shop#getExtra now returns ConfigurationSection and old extra data will update.
3. PriceLimiter#check now returns CheckResult container with result and min/max price.
4. Util#isDoubleChest and Util#getSecondHalf now using BlockData and BlockFace to process the DoubleChest (faster than BlockInventory#getLeftSide and getRightSide), so now they accepting BlockData and Block args.
5. QuickShop snapshot builds also have maven repo to use!
!!READ THE CHANGELOG BEFORE UPDATE!!
4.0.8.0 - Minor Update
=============================================
There is Ghost!
Finally, I have free time to continue developing QuickShop after finished my exam.
This update basically optimized general performance and the plugin should no longer hurt server performance on the busy server or large network. If you still hit a performance issue, please create a report use
Spark sampler. (no timings pls)
For developers we added Calendar API and new ExtraAPI, some add-ons may need an update.
Removed:
1. Reserve Economy API support (API repo has been deleted)
2. FabledSkyblock support (API repo returns 404 Not Found)
Added:
1. Sign header color placeholder. Different colors for different stock statuses.
2. Calendar(Schedule) API for addons.
3. Towny plot clear feature support (shops in the cleared plot will be purged).
Optimize:
1. Heavy optimize DoubleChest related functions performance. General performance should be improved. Especially on a large network or server with busy hopper activities.
2. Default disable sign update while inventory moving to reduce shop indexing time.
3. General performance optimization and code clean-up.
4. ErrorReporter nolonger block the Server-Thread while submitting errors.
Fixes:
1. The warning "
No longer waiting file downloading because it now timed out, now downloading in background, please reset itemi18n.yml, potioni18n.yml and enchi18n.yml after download completed." always appears.
Changes (For developers):
1. Shop#getExtraManager has been removed. Use Shop#getExtra instead.
2. Shop#getExtra now returns ConfigurationSection and old extra data will update.
3. PriceLimiter#check now returns CheckResult container with result and min/max price.
4. Util#isDoubleChest and Util#getSecondHalf now using BlockData and BlockFace to process the DoubleChest (faster than BlockInventory#getLeftSide and getRightSide), so now they accepting BlockData and Block args.
5. QuickShop snapshot builds also have maven repo to use!
Bug fixes:
- Fix display item related issue
- Display item won't be centered/disappear when change shop item or create a double shop
- Display item won't be showed when exceeds vanilla stack size
- Being kicked when using virtual-display-item mode
- Fix sign de-sync in double chest shop
- Fix incorrect permission based command help showing
- Fix an error when using old LWC plugin
- Fix an error when entering negative number in shop creation
- Fix an possible error when disabling plugin in QSListener environment
- Fix an possible error when closing GUIs
- Fix incorrect invalid message tips when using command in console
- Fix a updater bug which keeping notify update
Improvements:
- TaxAccount uuid support (Experimental)
- Now you can use uuid directly, to use it, just replace tax-account to uuid.
- Allow user delete corrupted shops
- Now Quickshop will delete the corrupt shops when loading, just enable delete-corrupt-shops in config.yml and it will works.
Fix NPE when loading shops.
Fix NPE while display item feature disabled and shop stop working issue.
BACKUP! This is update removed something!
4.0.7.8 - Minor Update
=============================================
Long time no see! There is Ghost!
Take time out of the busy and make this update, hope you guys enjoy it
New:
1. Adventure game mode support added, The players can interact with shops correctly under adventure mode.
2. Only use a single item and center it for a Double-Chest shop feature added ( thanks to
@Starmism ).
3. Added ability to swap behaviors between right-clicking and left-clicking.
4. Added new arg to allow the player to use create command to create a shop with stacking size.
Removed:
1. Removed ArmorStand display. (We have marked it outdated a long time ago already, it some armor still on the shop above, use /kill command to purge).
Optimize:
1. Optimized VirtualDisplayItem to save CPU time.
2. Optimized cache system logic to reduce CPU time cost.
We noticed some user reporting errors to us like:
Code (Text):
java.lang.SecurityException: SHA-256 digest error for org/maxgamer/quickshop/QuickShop.class
or
Code (Text):
[QuickShop] - [Error/Signature Verify] Security risk detected, QuickShop jar has been modified.
and plugin stop working.
To clarify, this not an error. That means QuickShop detected itself jar file has been modified. If you edited the file, revert it. If didn't modify QuickShop anything, that mean
your server probably infected by malware. To open any plugin jar file in your server plugins folder and check if there have a file named
.l_ignore inside.
If you found it,
backup your server as soon as possible and you can ask for help in our Discord support guild.
Have a good day

Fixes:
Fix an issue which will bypass double chest check.
Fix an issue which will create endless message bak files and could not custom message by editing messages.json.
Improvement:
Reimplement shop preview gui close logic.
Clean up i18n loading logic.
Add the right copyright for the code of verifying jar , thanks to @NicoNekoDev!
Update translations from Crowdin, thanks to all translators!
Fix StackOverFlowError on new server.
We're back to use the external download link since the JAR size too big that SpigotMC disallows upload it.
New:
- The command helps now will show disabled commands with special color and disable reason to clearly shown why this command doesn't work.
Optimize:
- Use Caffeine for cache providers and turn up maximum cache size to caching more objects.
- Recode cache system and it now can correctly cache stuff.
- Optimized cache system logic for better performance.
- Use PaperLib to improve the performance on Paper or Paper's fork platforms.
Security:
- Add digital signature and signature check to prevent QuickShop jar doesn't modify by the outside program to detect and defend Qlutch malware infecting.
Starting from this version, QuickShop will check its signature to make sure completeness and prevent modification. If QuickShop detected jar has been modified, QuickShop will stop loading to prevent virus infecting or break the server.
Fixes:
- DebugLogs cannot trace the calling source.
- Memory leaks that caused by the not-closed stream.
Developer:
- We're publishing our online Javadoc at CodeMC.io, you can find them there.
Fixed accident code merged from the local branch that causes start error.
Thanks
@creatorfromhell help QuickShop improve the TheNewEconomy module
This update also contains new translations.
BACKUP! This is a feature update and may break some things!
4.0.7 Feature Update - Multi Currency
=============================================
In this update, we're added the Multi-Currency feature to QuickShop.
Players can use different currency trade with shops. To use this feature, you must have the Multi-Currency Economy plugin installed. For now, we support GemsEconomy and TheNewEconomy. You can switch from Vault to them in config.yml!
We also fixed some bugs and do some works on it to improve the stability, Enjoy the update
New stuff:
1. Multi-Currency feature.
2. Make /qs amount command working under Adventure game mode.
3. Improve /qs create and it now create shops using `/qs create <price>` and `/qs create <price> <item>`; Example: To create a diamond shop you can type `/qs create 100 diamond`. It has language support that means you can use some like `/qs create 100 钻石`.
4. Added FabledSkyblock Integration. (Thanks
DoctaEnkoda)
5. /qs paste now supports `-file` arg to create a paste to a local drive.
6. New EnvironmentChecker, faster and stable than the old one.
7. New ExtraManager API to allow you to use ExtraAPI like BukkitConfiguration API.
8. New EconomyTransaction callback and event before commit.
Fixes:
1. Player can create shops use ShulkerBox and buying it to put ShulkerBox into another ShulkerBox.
2. QuickShop always turns `disable-move-event` off even protection disabled or no shops in the world.
3. /qs paste command doesn't work.
4. Small memory leaking from updater.
5. The async calling sync method only issue from integration.
6. Cannot download require file errors under the English language.
7. DisplayItem still appears even shop has been deleted when the auto-despawn feature enabled.
8. Strange SLF4J warning in the console.
9. Possibility memory leaking when auto-despawn on.
Optimize:
1. Rewritten GameLanguage and MojangAPI utils to optimize boot speed. Because old one keeping download files when rebooting every time.
2. Optimized some code logic to use a more stable and faster API.
3. Use Logger#log to print errors with reason to make it clear.
4. Optimized some API in ContainerShop general to prevent useless Bukkit API call.
5. Reuse some objects to prevent waste resources.
Off-topic:
We're collecting data to allows analysis of the performance of QuickShop.
If you want to help us to improve the performance of QuickShop,
please join our discord server and go #quickshop-optimization channel.
Any data like Timings, Spark report and something else about performance is welcome

Fixes:
1. Small bug in the QuickShop chat system.
2. Fixed sign won't update issue if the upgrade from old QuickShop version.
3. Protection doesn't work caused by "hopper.disable-move-item-event" in paper.yml activated, QuickShop now will automatically turn it off.
README:
QuickShop only disables "hopper.disable-move-item-event" when really do that.
You will receive the notice in the console if QuickShop disabled it, and you will see this comment in your paper.yml:
Code (Text):
disable-move-event-quickshop-tips: QuickShop automatic disabled this due it
will allow other players steal items from shop. This notice only shown when
have shops in current world and hopper protection is on and also disable-move-item-event
turned on.
If didn't want QuickShop to do that, you can do these things:
1. Prevent any shops created and exists in that world.
2. Or you can disable Hopper protection in QuickShop config but hopper will allow players to steal items from the shop use Hopper.
QuickShop supports per-world-settings, if QuickShop found per-world-setting for that world, QuickShop only will disable that world's disable-move-item-event option OR disable in default section when not found.
Fixes:
1. Fix /qs paste always create bad paste issue.
2. Sometimes item display will show as Json string (a spigot bug SPIGOT-5964)
New:
1. /qs find now can ignore out-of-stock/space shops (default is disabled)
2. New QuickEventManager used for new protection-checking-listener-blacklist feature, read the comments in config.yml to learn more. (Can be use to resolved the Issue with some crate or autopickup plugins etc.)
Misc:
1. Optimized performance.
This is a solid build that we hadn't find other bugs.
Fix:
1. Paste command sometimes will return an invalid paste url.
This update sponsored by two cute cats <3
Minor update 4.0.6.0 changelog
New features:
1. MineDown syntax support
QuickShop now generally support
MineDown syntax, so that means you can use a simple syntax to define a cool message output. And this is a simple sample:
You can find more knowledge about
MineDown syntax in their
wiki.
2. Improved `/qs removeall` command
Command now only will remove player himself shops (no any confirm so take care) without any argument.
If you want to delete other player shops, you need to type `/qs removeall <player>`.
The permission node now spilled to `quickshop.removeall.self` and `quickshop.removeall.other`.
3. Heavy optimized `/qs find` command
The find command no-longer loading chunk during searching shops.
We switched to Vector based searching logic so you can search shops in 10000000 blocks
without any lag!
4. New QuickChat system
This system has been created because we keeping to hit the issues between BungeeCord-Chat and Adventure chat libs.
Now you can switch the chat systems by changing the value between 0 and 1 in config.yml section `chat-type`.
Bug fixes:
1. Fixed the bug cause player cannot receive any chat output, so we move back BungeeChat lib and you can re-enable Adventure in config.
2. Fixed the bug that will spam the console with `NullPointerException` during player use command `/enderchest` to open an EnderChest and close it.
Changes:
1. We switched our default paste provider from
EngineHub Paste to
Pastebin.com
Fixes:
1. Try to patch the blank message sent to the player issue.
2. Fix duplicate package name in the paste.
3. Refactor config feature and introduce failed-safe configuration.
4. Fix Towny integration async event fire issue.
New:
1. Add ShopTaxEvent.
Fixes:
1. Try to patch the blank message sent to the player issue.
2. Fix duplicate package name in the paste.
3. Refactor config feature and introduce failed-safe configuration.
4. Fix Towny integration async event fire issue.
New:
1. Add ShopTaxEvent.
- Fixed NullPointerException when previewing shop item. (Thanks SrBedrock)
- Fixed strange string "dark_purple" in table formatting. (Thanks SrBedrock)
- Fixed plugin fails if failed to load "decimal-format" value.
- Fixed "World Unloaded" exception when user using DisplayAutoRemover. (Error Tracker: Rollbar#5)
Tips about player disconnecting issue:
It have been fixed since 4.0.5.7, Please all users which was affected updated to the latest version.
Fixes:
Fix NoSuchMethodException in the latest Towny version
Fix item preview lore missing issue
Fix InvalidIntegratedPluginClassException in PlotSquared Integration since 4.0.5.4
Fix a resources leak in database
Fix a javadoc generate error
Fix string concatenation in append method
And a big thanks to translators!
Attention:
We will drop Java 8~10 supporting when 1.17 released, just like what Paper does.
We highly recommend updating the Java version at least the Java11-LTS build.
You will see a big warning when you server booting up to reminding you to update to Java 11 since this QuickShop release.
Refactor:
1. actionBuy and actionSell now is UUID based, so it will support non-player trading with shops.
Improvement:
1. Only close the Preview GUI from QS when plugin reloading.
2. Make Json files human-readable again.
3. Fake player solution for taxer.
4. Enable shop-caches for all users.
5. Preventing register not needed listener, and move them to the standalone
listener. Useful for large servers or busy servers.
Save a lot of performance on a large server.
Some servers can do 26,368.43 times for a tick for these events, which means our processing time is 0.000143732486ms/times.
which is 1.44x10^-5 ms/times.
Preventing register is the best way to optimize performance.
6. Optimize DisplayAutoDespawnWatcher performance.
Fixes:
1. Amount format failed when input > Java Double max value
2. Migrate to Adventure for sending advanced messages to fix some `JsonSyntaxException`
We also planning to migrate to adventure completely.
3. Allow JenkinsUpdater to switch between the snapshot and release automatically so users won't receive update notice when using snapshots.
4. Fixed a possible security issue which making password showing.
5. Fixed language reloading issue.
For Users:
Integration and Compatibility Module Hot Loading:
Start from this version, all the integrations and compatibility modules will load when supported plugin enabled, and disable when supported plugin disabled, so you can enable and disable plugin smoothly! (Enabling worldguard Integration still needs restart due to the worldguard flag api)
For Devs:
Breaking Changes in Integration:
We have moved IntegrationHelper class to org.maxgamer.quickshop.integration package, which is make more sense in package organizing.
Add:
- Add oldLogic option for restoring old find command behavior.
- New Event: ShopItemChangeEvent and ShopTypeChangeEvent.
Fix:
- Solve class conflicting issue, it will result in some weird behaviors.
- Fix wrong javadoc in events and missing event calling.
- Fix shop finding bug.
- Fix item price limit bug.
- Fix error when handling null enchantment level .
Improvement:
- We now delete caching i18n file when switching language, so user can be more smoothly when switching language.
- Notify user when registering/unregistering module/integration.
- Language files, thanks to all the translators!
- Caching api instance to save memory
!!!THIS VERSION INCLIDED DATABASE OPERATION REDESIGNING, PLEASE MAKE A BACKUP BEFORE UPDATE!!!
The rare shop missing issue should be fixed in this version.
Fix ConnectionIsUsingException and
redesign database connection.
Fix interacting issue (shop trading/creating/managing) when setting interact-mode to 0 since 4.0.5.0 (Thanks to @mantraop on discord).
Fix an rare NoClassDefFoundError when loading plugin.
Fix:
Fix sign updating problem between 1.13 and 1.15.
Fix wrong distance in find command (thanks to
@kenanbit).
Improvement:
Putting database convert progress to an async task to prevent watchdog crash.
API:
New reload event which will called when quickshop was reloaded (
More info here)
Edited:
Developer Notice:
To eusure data consistency, we no longer support performing database operation directly, Please execute your SQL statement by DatabaseManager#runInstantTask and DatabaseManager#addDelayTask instead, or using extra API (Shop#getExtra and Shop#setExtra)
User Notice:
Please make sure you have backup before update, this version included database refactor!
Sign Refactor:
We now using a specific color code to detect shop sign, so you no longer won't be annoyed by changing username.
New:
1. New command to delete all shops from specifiec world.
2. Refactor database system to offer stable and fast connection.
3. Support split large log file, and compress it like server log.
4. Support sending stock message to staffs and auto remove shop on Towny member leave.
5. Making supercreate command is
REALLY BYPASS permission.
6. Support GriefPrevention Integration.
7. Add flag check and load check in WorldGuard Integration.
8. Support disable sneaking behavior.
9. Allow all item stack size option.
10. Allow addon changes the price in ShopPurchaseEvent.
11. Warning when not set display-type to 0 instead forcing change it.
12. Refactor find command by listing nearby shops.
Fix:
1. Fixed the config header doesn't written to config.yml.
2. Spammed paste created by plugin reloaded.
3. The issue about sign recognization.
Fix config.yml could not be changed on 1.16+ server
Fixed some serious bugs in 4.0.4.10, 4.0.4.11, and 4.0.4.12.
Rollback to 4.0.4.9 since some users reporting the bugs about the plugin doesn't work and stuck on the loading shops.
New:
1. QuickShop now will try automatic fix the broken config if it is possible.
2. New database manager now adds to the stable version that is faster and stable.
3. We're enabled caching-pool for all users and remove the beta labels.
4. Add a way to remove shop when a player is no longer trusted in the Lands
5. Add an option to allow disable background-debug-logger completely. (But you should turn on it when ready for reporting errors).
Fixes:
1. Fixed the NullPointerException when the enchantment level is null.
2. Forcing 1.16 users to use QS Matcher cause Bukkit Matcher has been breaks in 1.16.
3. Fixed Spartan support.
4. Fixed an error caused by world name and world UID.
5. Fixed boot error command handler, the error message now back!
Optimize:
1. Optimized DatabaseManager and now it more fast and stable.
2. Optimized general logic to improve the performance.
3. Removed some useless codes
Also updated translations.
Optimization:
- Replace Calendar API to Instant API in shop Logging
- Some logic optimize in sending item overlay
- Reduce calling getBalance and format method
- Re-work logging option, you can now disable debug log and shop trade balance log to gain performance boost.
Bug Fix:
Spartan support: We now support Spartan on protection checking, now Spartan should no longer block this.
Translation update: Thanks to all contributors on crowdin!
We upload the wrong version which from snapshot channel, causing update checker keeping notify update, now this version should fix it.
There are no difference between two versions expect the channel, if you disabled update checker, you can safely ignore this.
Fix an issue which shop create cost not work
Fix an NPE when disabling update checker
Fix Residence Integration bug which always blocking action
Add:
1. New flag OWN to WG flags to allow control player only can create the shop in their region.
2. "any-owner" option to control plugin checking OWN flag is any region at this location or all regions at this location is owner.
Changes:
1. Plugin no loger throw IllegalStateException when addon re-registering same command container.
2. /qs reload supports WorldGuard integration

.
Fix updater blocking Main Thread issue when player joining
Adds:
1. Allow disable the protection checking in some worlds
2. More details logger for shop deletion.
Changes:
1. Now version checker is Jenkins Build ID based.
2. Database censor only will apply in config.yml.
3. Update language files.
Fixes:
1. Try fix shop disappears issue.
2. Fix logic for method `delete(true)`
3. Fix QuickShop User Friendly Item Matcher won't match books issue.
Tests:
1. Fully supports 1.16.2 without any issue and changes.
2. Fully supports Paper 1.16.2without any issue and changes.
3. Upgrade from 1.15 and 1.14 or 1.13 to 1.16 required reset `cache` folder, `itemi18n.yml`, `enchsi18n.yml` and `potioni18n.yml`
4. To make new updates language files effects, you need reset `messages.json`.
1. Fix trade failed (Internal Error) when Tax account missing configure.
2. Allow disable tax account by setting it's to empty.
Update: if you are meeting error "EconomyTransaction Failed, last error:Failed to deposit tax account: 0.0" after updating, you can install this SNAPSHOT version to fix (The fix will include in the next release, it just ignore depositing to tax account when tax is zero):
https://ci.codemc.io/job/Ghost-chu/job/QuickShop-Reremake-SNAPSHOT/107/
Fix wrong tax display message and update translation from crowdin.
This version seems stable, next version will focus on reducing client lag on large shop.
You should update if you are using 4.0.4.x.
Fix a rare rollback bug which causing
Infinite money.
Fix a bug which may not close the MySQL connection correctly.
You should update if you are using 4.0.4.x.
Fix:
Fix a bug which causing counting tax wrongly.
Fix a bug which may causing data loss.
Fix a bug which causing wrong update tips.
Optimize some code logic.
Edit: Please download this version, current version having tax counting issue, please wait until a new version released.
Fix null player exception when trading with AdminShop
Edit: Please download this version, current version having tax counting issue, please wait until a new version released.
The biggest update in July, enjoy!
Download location moved:
We moved our snapshot and stable downloading to our CodeMC.io Jenkins, so you always can get the newest stable version and snapshot version from there! We also moved our maven repo to codemc.io nexus, you can find it under the description.
The direct downloading on SpigotMC won't change due some guys need that.
For stable downloading:
https://ci.codemc.io/job/Ghost-chu/job/QuickShop-Reremake/
For snapshot downloading:
https://ci.codemc.io/job/Ghost-chu/job/QuickShop-Reremake/
Changes:
- New EconomyTransaction util for internal calls and 3rd-party addons. It more clear, safe, and powerful, forget stupid deposit and withdraw.
- Control Panel click command no longer allow custom - It easy to broken with a bad language file copy.
- Make some high-frequency var can be caching.
- Shop caching pool now allows other addons to direct calls.
- Allow invalidating the shop caching pool by the set shop to null
- Fork name now is dynamic not hardcoded, Now you can easily change it in QuickShop.java and others place will follow changes(useful for the custom build)
- Removed A LOTS of useless code from the plugin.
- Removed useless language files from a plugin.
- Failed economy translation now has correct and more details notice will print to console.
- Permission Manager now won't print a lot of trash to console and debug log when debugging mode on.
- Removed some null checks for optimize performance.
- Use entry set to replace keySet for each gets for optimizing performance.
- CommandManager now allows custom fields or registered commands from the 3rd-party addon.
- Removed useless placeholder in the messages file.
- Hide stack option in ControlPanel when the stack feature is disabled.
Fix:
- Fixed tax account deposit/withdraw failed when not tax account failed.
- Fixed some Stream won't be close correctly to make memory leaks.
- Fixed cachable API always uses cached API even give false for `useCaching` var.
- Fixed a database multi-threaded issue.
- Fixed updater multi-threaded issue.
- Fixed CommandManager a bug due cannot correctly register the command from the 3rd-party addon.
- Fixed Decimal Formatting
- Fixed SQL_WARNING because creating the existed columns.
- Fixed tax incorrect on SELLING mode shop.
- Fixed /qs convert command doesn't work.
Developer Notice:
We moved our maven repo and ci to CodeMC.io, which means you will have the faster speed of downloading builds and dependency.
Maven Repo:
Code (Text):
<repository>
<id>quickshop-repo</id>
<url>https://repo.codemc.io/</url>
</repository>
<dependency>
<groupId>org.maxgamer</groupId>
<artifactId>QuickShop</artifactId>
<version>{VERSION}</version>
<scope>provided</scope>
</dependency>
Fix the shop won't save if addon set the extra data.
Update some command impl to modern api.
Merge the translations from Crowdin.
Fix another SQL error which causing failed to load shop
Fix SQL error which causing failed to load shops on MySQL based server
This version have MySQL bug, If you're using MySQL, Please wait us hot fix.
It won't effect SQLite server.
We have added an Extra API to allow Devs to save some data in the shop extra container.
If you want to use Extra API, you need to call Shop#getExtra(PluginInstance) and you will get a Map. It is thread-safe.
After read/writes data, you can use Shop#setExtra(PluginInstance, Map) to save the data into the shop. Extra data will flush to the database like the regular shop.
We also support 1.16 RGB color, you should modify your messages.json like this:
For example, I want to define a string `Bukkit Commons Studio` and use #00ffaa hex. And now you can write in messages.json like this:
&x&0&0&f&f&a&a Bukkit Commons Studio
Have a good day ^ ^.
- Fix a bug which make QS invoke ChunkMapDistance::addTicket asynchronously
- Fix a preview item bug which make ghost item happened
- Relocate jaskson which inherited by sentry to prevent conflict with other plugin have jaskson shaded
- Fix NCP Compatibility
Fixes:
- Fix a rare bug which making shop creation without sign placing area will not save shop to database. (ONLY happened when allow-shop-without-space-for-sign was enabled in config.yml)
- Fix a rare StackOverFlowError when vault formatter failed to format.
Add:
- New Transfer command to transfer a player's all shop to other. (Permission node: quickshop.transfer and quickshop.transfer.other)
- Enchanted book now can display enchatment directly, check example.config.yml for more information. (Thanks to mart-r)
Fixes:
1. The paste cannot create.
Add:
1. PlotSquard v4 and v5 supports (Beta).
Hi guys,
This update maybe is my last update for QuickShop,
In the future, @sandtechnology will use this account to keep update this project.
My country epidemic is ended, so I will go back to my school to fight for my college entrance examination, this may cost one year.
So I will no longer have free time to continue to maintain this project.
Thanks for everyone's supports me in these days, I will back after finish my the best important exam in my life
QuickShop forks now open and allowed for everyone to create a 3rd-party version and publish it.
Yours, Ghost.
----
Fix:
1. Dupe pre-create event calling.
2. shop.lock configuration doesn't work.
3. Empty skip doesn't work for the control panel and hoverable message.
Update:
1. Language files.
Enjoy it

Now, it will temporarily bypass the fastbreak and other NCP checking for creating a shop.
This is an LTS version.
That means this is version enough stable and no serious bugs.
Updater still will try getting the newest version, you can disable it in config when you're using the LTS version.
Update:
1. Merge some translations.
Fix:
1. /qs owner command will break sign update following.
Fix the issue that causes signs won't update.
Improve the sneak to options.
Fix:
1. /qs recovery command won't save shops into the database.
2. NullPointerException when trying upgrading from Minecraft 1.12.2.
3. Dupe print of Shop Control Panel when holding some items in offhand.
4. Tax doesn't work for selling.
5. NCP compatibility.
6. Residence module issue.
7. ItemMatcher bugs.
8. Mismatching shops when selling renamed items.
9. Broked translation rollback system.
10. LWC compatibility.
Improve:
1. The Caching system now powered by Guava.
2. Add whitelist mode for integrations.
3. The Towny module now supports per-world settings.
4. Tracking cancel source.
5. Fix typo.
Fixes some NPE bugs and update translations
Add:
1. Improve the built-in eco formatter.
2. New command /qs removeall to remove a player's all shops (BETA)
Fix:
1. Nothing need to fix, everything works like dream.
This is a breaking update, read changelog before updating!
Hello SpigotMC Community!
This might is a biggest update since Reremake released, so our awesome team developing it almost a full month (begin since 2020.3) to make sure our plugin enough stable and friendly.
Unfortunately,
this update will break all addons. But we got better upgradability, maintainability, and make extending plugin simply. And your guys and devs will got better
stability,
performance and also
powerful apis.
This is a major update and we changes all code almost,
so do not use hot-reload, give server a full backup and reboot.
Changes Log:
Because we have almost 1000+ commits in this update, so we cannot paste them all in there, we collect them and make this changelog, enjoy!
--------------------------------------
Stacking Shop
QuickShop now supports the stacks-item, turn on in config, give player permission, and here we go!
Service Based Modularization
In legacy QuickShop, if you want add something to like ItemMatcher, you will need re-compile whole plugin, open Pull Request, or create a issue. And now -- You can create a addon and register the service on Bukkit Service Manager, so when QuickShop booting up, QuickShop will use it and replace built-in one.
The details we will make a wiki on our Github!
New designed API
QuickShop API now can static access use QuickShop API and we collect some useful functions to there to avoid changes to break addons in future. And you also can access this API with our internal caching system to improve the speed.
This API also regulates the extension behavior to ensure that the author knows what to pay attention to when using the API.
New designed Compatibility Helper
Now it call Compatibility Module, new manager allow 3rd-party plugin register into our anti-cheat compatibility system so you no-longer need waiting us accept your issue and fix it.
Integration Helper now actually works
Integration 3rd-party register now actually works. You can hook your region protection plugin to there.
General optimization
We give QuickShop a heavily performance optimize. Such as caching results, caching configuration, merge codes, fast algo, caching pool, async. And also reduce the memory usage.
Developer details changes
We renamed our packages, now addons should update and use QuickShop API.
Bug fixes
- ShulkerBox matching issue.
- Enchants Book matching issue.
- Prevent SentryErrorReporter to crash the plugin.
- Auto-creating tax account if account not exist.
- Incorrectly spacing calculation for overstacking size item.
--------------------------
Some attention:
- Backup before updating.
- Don't use hot-reload and load when updating.
- This version not fully localized, some phrases need yourself translate, you can help us to translate on Crowdin.
- It will breaking all addons.
Special Thanks:
- Guys supporting on Patreon.
- @Andre_601 (PowerPlugins.net) to help us improve the messages file grammar.
- Translators on Crowdin to help us take QuickShop to world.
- Fans to reporting bugs on Github Issue Tracker.
- And all QuickShop users >w<!
Bukkit Commons Studio Present
Made with ❤
[1.13 only] Fix no class def error on 1.13 server
Rewrite:
1. Rewrite ItemMatcher, add more matching option.
Optimize:
1. Improve database performance when connection isn't stable.
Add:
1. Add an option which allow Shop owner break the shop sign.
2. Add serveral options for creative mode.
3. ShulkerBox supporting.
4. Add a option to prevent sign dupes.
Fix:
1. /qs staff del command doesn't works.
QuickShop API system still work in prograss, it doesn't work currently.
This update *should* fixed double-chest protection bypass issue..
Fix NullPointerException which caused by new caching system
Add:
- Add an option to disable hopper protection
Improve:
- Caching system is usable now, it can improve the performance for redstone and hoppers activities. We also fixed the memory leaking issue, enjoy the caches \o/.
- Reuse connection and disable autocommit to improve commit time
- Improve ProtocolLib support checking and error handling
Fix:
- Language file won't auto-repair when it losing somethings.
- Permission based help not working
Language:
- Update translations from Crowdin
- Add missed 3rd-plugin-build-check-failed translation
Fix:
1. Sign won't place immediately in the world
Change:
1. We now collecting plugins installed on your server version numbers in paste, so we can debug more bugs without test one by one.
Fix:
1. Config updater doesn't works, so many features not working, this update should fixed that.
New:
1. [EARLY BETA, DO NOT ENABLE IN PRODUCTION ENV] Caching system to caching shops seatch algo in the mem, it should optimized shop searching performance.
You can turn it on in config.yml -> use-caching: true.
If you found plugin caching issue or memory leaking, please report it to me, thanks!
Fix:
1. Lore blacklist not works as intended, fixed by
@jho5245
Optimize:
1. Database Manager performance
2. Remove not necessary task when unloading plugin, so quickshop won't stuck your server when you try shutting down.
3. Other not necessary sql tasks.
Fix an npe issue when item didn't have ItemMeta
Fix a bug with Spigot because we using a Paper API in previous update, now we fixed it and it back to work again under Spigot.
Add:
1. respect-item-flag now was added, if your item-flag say hide enchs, quickshop won't print them.
Fix:
1. Fix default fallback language cannot found in jar.
2. Sneak controller and shop limiter doesn't working.
3. Always have one shop cannot remove from database when failed to load. So will have A LOTS backups was created under root folder.
Optimize:
1. Removed some useless code to optimize performance.
Updated some languages files.
version number typo issue, there update just changed it on spigotmc
- Fix an issue in new version that broke Guilds plugin
- Fix one key update bug
- Add BlockHub support
- Update Crowdin translations
- Now messages are more detailed
- Now preview item message can be translated
- Enable VirtualDisplayItem for ALL users if they have ProtocolLib installed
- Tax checking improvement, now will check whether tax option is valid
- Rewrite background debug logger
- Improve database error catching
Fix Double chest protection and config update issue
This build fix a serious bug, the bug will let shops nolonger save into database.
Please update if you using version 3.1.4.15 or 3.1.4.16.
Add:
1. New logic for language system, now priority is:
same language built in translation file -> english translation file -> hardcoded translate
New logic more user-friendly, and now will backup when auto-switching language.
2. Async database helper.
@sandtechnology
Fix:
1. Thread-safe issue.
2. Virtual DisplayItem possible memory leaking.
Update:
1. All translations.
We have moved to Crowdin translation platform, it more easy-to-use. Minecraft and many apps/website using it.
So we decide move whole project to Crowdin, you can continue translate QuickShop in there:
https://crowdin.com/project/quickshop-reremake
Fix bug that protection-checking doesn't work.
For your data secure, you always should create a backup for QuickShop plugin datas.
Optimize:
1. Reduce some duplicate and useless checks/code.
2. Caching chunk object to save 100ms~ time spend on Virtual DisplayItem.
3. Virtual DisplayItem now is FULL ASYNC.
4. Disable DebugLogger when not in dev-mode.
5. Bypass all display checks request if Virtual DisplayItem was selected to boost speed.
6. Optimize SentryErrorReporter performance.
7. Caching Tax account OfflinePlayer object to prevent lagging.
8. Use queue for Virtual DisplayItem to reduce CPU Time cost when creating and executing tasks was scheduled on server-thread.
It also prevent our details overflow Integer.MAX_VALUE and turn to NaN on timings.....
Add:
1. New command /qs export to allow user export all shops data to a TXT file.
2. New command /qs recovery to allow user recover shops data from exported TXT file or even Paste! It can save your database in accident.
3. Now will auto create pastes when server booting up and shutting down, to save your databases and configurations and allow you restore them from paste.
Enjoy!
Optimized performance for shop searching. [REUPLOAD]
Optimized performance for shop searching.
Fix:
1. Virtual DisplayItem 1.13, 1.14 supports.
2. Virtual DisplayItem deadlock.
3. Some integration doesn't work.
Fix an bug in language system cause some features stopping works and now we fixed it and add a system to prevent throw errors when failed to getting phrase.
Fixed some bugs.
Optimize the ShopManager to reduce lagg when trading.
Update the language files on OneSkyApp platform.
Merge bug fixed for VirtualDisplayItem chunk calculation.
In previous version, ProtocolLib was shaded into plugin by accident and crash some servers.
This build fixed 1.13-1.14.4 and fixed spigot compatibility and display name won't shown even it enabled in config.
Recommended update.
Fix virtual display item won't sent again when player leave and back to one chunk.
Fix the NoClassDefError because uploaded jar is broken when uploading.
In this update, we have take the Virtual DisplayItem and Bug fixes update.
Virtual DisplayItem is packet based display, no any item entity will create on your server but you still can see them.
It need ProtocolLib depend. Configure it in config.yml.
//LAST V3 BRANCH FEATURE UPDATE//
We're working on Era branch, it is a full rewrite new branch.
New code more simply and fast, with new framework. It should contains 1.8-1.15 full version supports.
But that is a big project, No release ETA. So before it released, i still keep update v3 if it have serious bugs.
I have found a new QuickShop Reremake branch under development and is only support 1.12.2.
But it REMOVED OUR MAIN PROJECT AUTHORS NAME FROM AUTHORS LIST AND ONLY LISTED HIMSELF and deleted runtimes check or other keep data security checks.
This behaviour is illegal. If you are using it, that means you no longer can get any support from our dev team, and if your server receives any data damage because of the use of this branch, don't contact us for help.
We will keep on watching his activity and will send DMCA Takedown if he decides to purge our names thoroughly from their code.
But they have themself private git site, so basiclly DMCA takedown only will force them move from github to private.
So next, i will think about CLOSE SOURCES or STOP THE DEVELOPING PROJECT.
Thanks your guys donate me on parton and encourage me in past years, qsrr won't grow to today if without your guys supports.
But sadly, this is really a heavy blow, for the code stealer, nothing we can do.
Please forgive our actions next we will do if it make you sadly or uncomfortable.
Your best,
Bukkit Common Studio
- Ghost_chu
- Mgazul
- sandtechlogy
- maybe portlek will join there too.
For real-time news, you can join our discord server:
https://discord.gg/qXPNWXy
Add:
1. Now support matches banner details (colors, texures, etc.)
Add:
1. Now support matches banner details (colors, texures, etc.)
Just fix a bug in previous version(NullPointerException).
Actually, i had do checks for keys before use them.
But result is the key exist in both map, and when i get a value with the key, it be null....
*This world is magic.*
Fix:
1. tax not pay to account in config.
2. ItemMatcher cannot correctlly Enchantment Book.
Optimize:
1. Performance for shops finding.
This version may is last update for branch v3, in future, all new features will added to v4 branch, v3 will keep bug fixes before v4 released.
This version contains bug fixes, and update the language files.
I have revert a lot commits from our new dev and removed him repo access permission.
Now plugin full-control now only me, hope
Fix:
1. Another 1.13 NoDefClass errir.
Improve:
1. ArmorStand display now got improve and now had custom section in config.
Fix NoClassDefError on 1.13.2 server
Fix:
1. Thread-Safe issue.
2. Some items may lost their NBT.
3. Language system always override files.
4. MojangAPI utils no longer works
Optimize:
1. A little performance.
Optimize:
1. Listeners performance
2. DisplayItem utils performance
Fix:
1. Fix log file sometimes cannot create under Windows
2. Fix language system, it works now
Sync:
1. Update all languages with OneSkyApp platform
Fix bug in new algorithm can allow player access double chest another half.
All large chest was lost protection, please update immediately if you using 3.1.0
QuickShop 3.1.0
QuickShop Reremake now use "QuickShop" name, You will no longer see "Reremake" name in version number, but you still can use QuickShop.instance.getFork get fork name ("Reremake")
Changes:
1. Now we use QuickShop name not "QuickShop Reremake".
2. User no longer need reset files after switch language, now it will finish by plugin.
Add:
1. Queue shop container check, reduce lagg when shop loading.
2. WorldGuard, Towny, Resdience, PlotSquard and FactionsUUID plugins integration.
3. New fast algorithm for shop searching, default enable for all users, you still can turn off it to switch back classic method.
4. New command `/qs reset` allow you simple reset files like Config Messages and others.
5. Permission Node `quickshop.bypasscreatefee` allow player bypass create fee checks.
Optimize:
1. Improve shop searching performance (also see add#3).
2. Improve background debug logger performance.
3. New logger allow us output colorful messages to Console.
4. Improve plugin total performance.
Bug Fixes:
1. Message Loop.
2. Amount in Buy/Sell message can show as -2, -3, -4, etc.
3. Thread-Safe issue
Just update config file comments, no anythings fix, changes, or add.
Because i received a lot PM about new Language system, so i have updated the comments in example.config.yml.
Please read it... I want explode now...
Fix messages cannot purge from database issue.
Sorry for another update! SpigotMC resource manager may have a bug, our updater always get 3.0.4 version, so hope this update will flush that caches.
No many stuffs got changes, just fix download link and flush cache.
Fix some random NullPointerException
Add:
1. langutils-language now renamed to game-language and nolonger need LangUtils, it will fetch the language file from Mojang API. Also, if you not set it to a specify language zone, it default will use server language. You only need delete `potioni18n.yml itemi18n.yml and enchi18n.yml` to update your languages!
2. Added `Maximal decimals in the price`.
Update:
1. Add and update the languages [de, es-419, fr, ja, ko, pl, ru, zh-CN, zh-TW]
Fix:
1. Strange warning when booting QuickShop.
2. Database changes won't apply if somethings set connection autoCommit to false.
3. Exceptions still will report to Sentry.io even failed the boot
Common update
Add:
1. Mixed economy type.
2. Use LinkedList to replace ArrayList for debugLogger to improve performance in huge data writing.
3. Apply new fast algorithm for display items.
4. Async dupe item removing.
Fix:
1. Language system not release the specify language file in config.yml
Fix:
1. Fix some NPE
2. Set character and collate to utf8mb4 by default if using MySQL
3. Always use prettyPrint and disableHtmlEscaping to get better json output
Add:
1. New option allow QuickShop use hack util to force load downgrade ItemStack.
(Yay, no more stupid Spigot warning `Newer version! Server downgrades are not supported!`)
Fix:
1. Minor NPE.
2. Auto configuration fixer didn't working.
Add:
1. New option allow QuickShop use hack util to force load downgrade ItemStack.
(Yay, no more stupid Spigot warning `Newer version! Server downgrades are not supported!`)
Fix:
1. Minor NPE.
2. Auto configuration fixer didn't working.
This version is biggest update since QuickShop-Reremake born, even we have do a lot tests, but you still should BACKUP.
Last stable version: 2.4.9
Some languages not keep up the updates, it was removed from avaliable language list, but your custom language file still can use and will auto update to new format!
Add:
1. Switch to EngineHubPaster, UbuntuPaster now is a fallback.
2. New language system using JSON format.
3. Reduce Jar size.
4. Add more details to log.
@Ectabro
5. Shop container check now is run in queue to reduce lagg on main-thread.
6. Refactor and update the language system.
7. Potion effect show on ShopInfomation support.
Fix:
1. An error when user use 1.13 and 1.14 early build.
2. DoubleChest shop only update one sign, not all.
@Judgetread
3. DoubleChest shop didn't protect by Hopper minecart protection.
4. Database sometimes won't close correctly when shutting down, it may cause [DATABASE_BUSY] sql exception when reloading.
5. Formatted color symbol was saved to messages file.
6. File encoding in /qs paste.
Improve:
1. Performance in protections.
2. Performance for isLoaded().
3. Switch to async remove items to reduce lagg.
4. Performance in DisplayItem.
5. Improve performance in DisplayItem tools, it should solved the performance issue on display item.
6. Reduce the cost in ContainerShop class.
7. Optimize logic for ShopContainerWatcher, it now more performance friendly.
8. Optimize logic for InventoryCheck, it now more quickly and nolonger will check plugin GUI.
9. Performance for getSigns()
Changes:
1. latest.log file now nolonger will upload when you use /qs paste because it not safe.
Hoo! 1.15 get ready!
Add:
1. 1.15 compatibility
Fix:
1. Deciamlformat not working
2. QuickShop can't correct match the Enchant Book
3, Add special mark to ArmorStand
4. If item have lores, it will blocked by BlackList tools
5. QuickShop still load the shop with invaild shop owner
6. Shop staff will gone after server restart
Hoo! 1.15 get ready!
Add:
1. 1.15 compatibility
Fix:
1. Deciamlformat not working
2. QuickShop can't correct match the Enchant Book
3, Add special mark to ArmorStand
4. If item have lores, it will blocked by BlackList tools
5. QuickShop still load the shop with invaild shop owner
6. Shop staff will gone after server restart
Just fix another console spam....
Sometimes you can't believe git auto merge....
Fix console spamming.
Fix databaseBackup always failed.
Fix:
1. Ender-Chest shop feature is broken again.
2. Fix wrong tab completer.
3. Fix create command.
Optimize:
1. Plugin performance.
2. Async display check.
Try fix shop random reset problem,
If you find this issue appear on your server, please update to this version, And create a paste to us.
Just a hotfix for enderchest not working, if you didn't use this feature, this update can be ignored.
Just a hotfix for enderchest not working, if you didn't use this feature, this update can be ignored.
Add:
1. A command /qs cleanghost to allow you purge broken shops.
Fix:
1. Player can use EnderPortal to dupe displays.
Just a hotfix for display holo texts, now the bug is fixed and turn off for all users by default.
For some like STABLE server owner, if you didn't want break anything, you should stay on 2.4.7.2 version because it is stable but this may not.
Add:
1. Holo text feature, allow you add a holo text on display item. [Only support REALITEM display type]
2. Smart disable background debug recorder if it hurt the server perfomance.
3. Allow user manually disable the debug recorder.
4. Fix `all` feature to be more smart!
5. Add a option allow user see the shop owner UUID in Shop Contorl Panel if owner is AdminShop.
6. Add decimal format display support, you can turn on it in config, but it will force use qs built-in formater.
7. Allow server OP use Control Panel on other player's shop.
Fix:
1. Log-actions not log shop infomation in qs.log.
2. Changing Double-Chest inventory does not update the shop infomations sign.
Changes:
1. Added some new apis, don't write a lot of wheel, enjoy the life.
2. Some apis was changed, you may need update you addon.
I'm glad to wait you any advise, please report you want features or bug reports to our Issue Tracker, link in the overview tab

Fix:
1. `all` keyword for the unlimited shop
Did you know:
QuickShop support hot-reload, you can use PlugMan hot-reload the plugin after you replace the Jar or use OneKey update!
Add:
1. Free shop support (0$ for each), you can enable it in config (Experimental)
Fix:
1. QuickShop actions logger not working (qs.log stay empty)
2. `all` keyword not working at all
Change:
1. Update languages
Add:
1. New ongoine fee system, if owner no enough money to keep their store, the shop will auto-delete.
Dev changes:
1. New api ShopManager::getAllShops() to allow you can all shops as
Collection.
Add:
1. Permission to bypass Tax (quickshop.tax)
2. all keyword now is support for all trade type
Fix:
1. Fix bug when PlaceholderAPI loaded but disabled
2. Execute the SQL on Main-Thread when failed create Bukkit Runnable
3. Use CopyOnWriteArraySet to fix some thread-safe issue
Changes:
1. Ignore exception UnsupportedClassVersionError
2. Ignore LinkageError
3. More debug and some changes
4. Disable auto display despawn for all users, we default open it on 2.4.6.8 for all users :/
5. Apply InternalListener for ListenerHelper
New repo:
Are you enjoy want try the snapshot? We create a repo to storage all builds binary files, enjoy it!
[
BinaryRepository Repo ]
ONLY FOR TESTING, I NOT PROMISE THE STABILTY IN THERE FILES.
Nevermind for huge version number, i test some times to modify travis script so now it be so big like this...
Fix a small bug will cause random error if you enable auto spawn/despawn display, just noisy, won't effect anything.
Add:
1. PlaceHolderAPI support.
2. Holo preview for trade history.
3. Japanese language file.
Changes:
1. Some language files was updated.
2. [DEV] Trade history now was store as special format, you might need update your addon if you direct read from database.
Update ASAP!
This update fix the issue to allow player sell items but not taken item, make sure you are updated!
Fix:
1. Fix ItemMatcher bug to can't match items correctly.
Add:
1. Auto despawn/spawn display by player is close the shop.(Experimental)
2. Allow user switch between QuickShop matcher, Bukkit matcher and Java equals matcher for plugin item matcher.
Add:
New config allow user switch to bukkit item matcher.
Fix:
1. Display issue
2. Item name in anvil makes shop give money but do not take item from player
3. Admin can't break the shop
A mess day. I will let me force go sleep.
Night coding not a good idea

Switch to new Bukkit to check item, more stable, more quickly.
So i still not fixed this random display error and make performance explode, so i revert a part of display changes.
I need calmdown and check the code one by one, sorry for update spaming!
Fix another make display dupe bug.
Switch to new Bukkit storage api to DIRECT save data on Entity, so we nolonger need check stupid lores, save the many CPU TIME, improved performance on 1.14.(Maybe 1.13 performance will got small effect becuase it will fallback to old detect method.)
Make sure old display removed before spawn new display.
The a update only for OPTIMIZE PERFORMANCE!
Optimize:
1. Optimize performance for Inventory events for CustomInventoryListener.
2. Optimize ListenerHelper performance.
3. Optimize Inventory scan performance.
4. Some protection was removed cause them already useless.
5. Some protection now is turned off by default cause it not useful in current version, you still can turn on them in config.
[UPDATE ASAP]
Effect version: 2.3.x - 2.4.3.1
Fix:
1. Protection Checker is broken, everyone can bypass the protection create the shop.
2. DoubleChest can be passed the protection.
3. Shop locks can be passed when shop is DoubleChest.
4. Player can use Dyes to dye the shop infomations sign.
Remove:
1. SimplePermissionManager for ProtectionCheck was removed cause it not stable.
2. PermissionChecker filter was removed cause it not stable.
3. PermissionProviderSelector was removed cause many users modify it by wrong way.
Plugin is enough stable, it won't more update will post in next few weeks.
Fix:
1. getShopIncludeAttached non-crossed chunk bug (maybe cause some protection and others issue).
Improve:
1. Some performance.
2. More infomations in paste to help us can fix problem faster without ask you too many questions.
This build is a STABLE and LTS version cause we hadn't receive more bugs report in this version.
It means you can upgrade to this version in your Production Environment and can get Long Term Support.
Fix:
1. Protection checker not working cause filter, we turned off default in this version for everyone.
Fix:
QuickShop EventManager won't do any checks if filter list is empty.
Fix:
1. QuickShop permission checking manager not check anything.
2. QuickShop SimpleEventManager won't continue check other events if this plugin's a listener returned not matched the filter
Optimize:
1. Async SQL tasks
Add:
1. A option can let user use Bukkit event manager not QuickShop SimpleEventManager (If quickshop not correcrtlly detect your protection plugin, set shop.use-protection-checking-filter to true)
Add:
1. Built-in QSPluginManager, now quickshop can use this to calling listener registered in Bukkit so we can tracking which one plugin cancelled our event.
2. New language support : Spanish (Latin America)
Fix:
1. Set nothing drops in our custom BlockBreakEvent, make sure other plugin don't process the event incorrectly.
2. Set name invisble for our display item, solve the holo name a mess issue, Thanks a lot
@LoneDev
3. Fix NullPointerException when we cannot find matched shop type, (WTF, modifyed database by user?), anyway, now will set to SELLING by default.
Changes:
1. Reserve nolonger compile to in QuickShop and now it is provided, you must install Reserve plugin to use Reserve.
Clean:
1. Removed useless imports and comments.
2. Removed useless compiled libs.
3. Removed useless code.
4. Improve the some method code, now should faster.
Optimized huge performance for some high frequency method algorithm.
It should can solve the lagg after installed QuickShop hopper performance or other.
And i removed useless fependency
This build is built by myself cause travis-ci some reason nolonger accept my build requests, oops.
Fix:
1. NullPointerException in a lot events listener.
2. AttributeModifiers always return false so you can't sell and buy item with AttributeModifiers.
I forget remove a debug code so it will cause the errors...Dawm!
Fix:
1. Hopper can steal items from double-chest shop.
2. Shop random self-breaking.
3. Ghost shop/display.
4. Exploit detector not output the inventory holder location
Please update ASAP.
Fix possible permission bypass
Fix InventoryItemMoveEvent exception
Optimized performance for InventoryMoveItemEvent, You should update if your server have a lot hopper.
Fix broken lores matcher, Please update, this is important.
Pinned update:
1. Fix secuity issue in shop container content protection, it may allow bad player steal items in there.
Add:
1. New permission provider system, allow you switch which one permission plugin you want to use.
2. New "ShopProtectionCheckEvent" calling when quickshop do protection checks, 3rd party plugin can listen this event to ignore theif self listener and re-enable listener when calling STATUS END again.
3. Remove plugins addded possible space in chat when enter numbers to resolve some users can't use pluign issue.
4. Add "KaiNoMood edition" quickshop version detect, alert user remove old jar from their server.
5. Example config with full comments will save and replace in your plugin folder, now you can check the comments without open Github repo.
6. Add LangUtils plugin support, you can generate the i18n files use your language, follow the guide in example.config.yml!
7. Rewrite the ItemMatcher, now if REQUIRE ITEM doesn't have some data but GIVEN ITEM have, plugin will allow it.
7-1. If require damage, the given item damange must <= require damage.
7-2. If require displayname, the given item displayname must equals given item displayitem.
7-3. Add RepairCost check support.
Changes:
1. Tax calculation on buying shop was changed -> See there:
https://github.com/Ghost-chu/QuickShop-Reremake/commit/7b6693135c28803f6d4e93e8290e809f448db343
2. More friendly alert message for build check failed.
3. Updater use fork name + number, if you have custom fork, you need check it both.
Optimize:
1. ItemMatcher use Arrays.deepEquals, it should faster than old method and more stable.
2. Remove async move check, it enough fast and new Thread only will make it more slow and waste the RAM.
3. Tweak codes and it should more stable.
Fix:
1. Fix secuity issue in shop container content protection, it may allow bad player steal items in there.
2. Sentry error reporter may throw error sometimes, pfff.
3. Plugin still will continue try create shop if economy plugin not loaded.
4. Fix user reported ItemMatcher issue, i rewrite it.
5. Fix /qs sell command will say Can't run command in console. alert if not find shop.
Add:
1. NoCheatPlus support
Fix:
1. StackOverFlow when server shutting down.
Add:
1. New api in ShopManager allow devs get loaded shops.
2. Unload all loaded shops when server shutting down.
3. Add "Stupid Detector", if users download wrong jar from Github, plugin will told user.
4. Add "Database Fixer", if shop record in database is broken, plugin will skip that shop loading.
5. New "ShopClickEvent", allow you listen shop click!
Fix:
1. Some bugs.
2. Shop won't check their container exists, this may cause ghost shop on the world if use WorldEdit or /setblock remove the shop.
Changes:
1. Shops will save the changes when it unloading.
Fix register listener failed if your server no clearlagg pluginFix register listener failed if your server no clearlag plugin
Add:
1. ClearLagg support
2. Chinese Modern(zh_CN) language translate
Fix the event not working error, and it super-stable
1. Fix some NullPointerException
2. Fix event not working and throw IllegalPluginAccessException
3. Fix SentryErrorReporter and Paste not correctly get server basic data
Fix:
1. /qs help command only show /qs help one help for normal players
2. Some listener not unregister when plugin boot failed
Changes:
1. Use async to checkInventory and send task to sync queue to let plugin can do more checks and without effect the performance
2. Remove dupe checks to optimize the performance
Add:
1. Add a option to control player loan even economy return allow or trading-success.
2. Add a option to control displayProtection msgs visable or invisable.
3. A lot new events to allow you do more things.
Fix ItemMatcher huge issue, please update ASAP
Effect version: ALL
Thanks #4860 user in discord channel
Wow it is really good!
Fix:
1. Compatibility issue with SlimeFun.
2. Compatibility issue with ItemAdder.
3. Compatibility issue with other like above plugins.
4. Error protection method will cause other some plugin throw exception.
5. Staff feature a lot of bugs.
6. Sometimes /qs find is broken.
7. Player still get "You must looking one shop" alert when they already looking a shop and success execute the command.
8. QuickShop sometimes won't load the some economy plugin, e.g JEssentials.
9. Update will broken the plugin if user have internet trouble.
10. Error report throw the error and may make server crashes.
11. Fix hopper and hoppermincart protection not working.
12. Fix throw "Can't drop AIR" exception when player trying use fishrod to fishing the displayItem.
13. Fix NullPointerException when update checks failed.
14. Fix sometimes bukkit will throw exception when moveing checks.
Improve:
1. Remove some useless InventoryCheck to improve the performance.
2. Async send the messages to improve the performance.
3. Async process the some part tasks in displayCheck.
4. Async process the player move event.
5. Mark "ignoreCancelled" for some event on @EventHandler to make bukkit won't send us cancelled event to us to improve a little the performance.
Add:
1. Now InventoryMoveEvent can update the shop sign. (e.g Hopper), you can disable it in config if you feel it cause performance issue.
2. New command /qs supercreate can allow you bypass all protection checks to create the shop, this is helpful for some plugin wrong process the checks event to do wrong actions.
Fix /qs help wrong mapping to /qs unlimited, this allow user use /qs help to switch they shop to unlimited shop.
Fix:
1. /qs find command missing.
Changes:
1. Now we will check connection before execute sql tasks.
2. Now back to BlockBreakEvent to check protection, may solve some errors and strange actions in the game.
Add:
1. New updater can allow you use /qs update to update the plugin, or click the [OneKey Update] button when update notice appear.(Beta)
Fix:
1. Use wrong item amount to created the displayItem may cause display effect wrong and server lagg.
Fix:
1. Fix player can break other player's shop
2. Fix /qs create subcommand not registered
1. no message alert when not looking a shop
2. some internal command appear in the help
3. invaild message alert appear in help
new release
Fix:
1. Player can access to trade with shop even event was canceled.
2. Tab-complete system
3. NPE when disable the plugin
Improve:
1. Display protection performance
[This build not test completely, if you got any issues, please fallback to 2.1.2 and report them]
1. ArrayIndexOutOfBoundsException when use /qs silentbuy
2. ClassCastException when InventoryMoveItemEvent
[This build not test completely, if you got any issues, please fallback to 2.1.2 and report them]
Fix:
1. Fix excpetion when use command /qs without any args.
2. Fix hopper minecart steal item prevent notworking (patch it without tests).
[This build not test completely, if you got any issues, please fallback to 2.1.2 and report them]
Add:
1. New tabcomplete system.
2. Purchase now support loanse
3. Purchase steps rewrited.
4. empty and refill permission issue.
5. New permission `quickshop.create.cmd` to control player use command to create shop to bypass region protection issue.
Changes:
1. Owner skip feature was removed.
2. Move developing env Spigot API version to 1.14.3
3. Drop 1.13, 1.13.1 support, 1.13.2 still in support.
Fix:
1. Log feature notworking.
2. Allow user choose use Vault or Reserve.
Api changes:
1. ShopSuccessPurchaseEvent now contains more useful data.
Fix:
1.
DoubleChest utils bug can allow user steal items from doublechest shop .
2.
DoubleChest utils bug can allow user create DoubleChest shop without permission.
Add:
1. A permission node(quickshop.create.cmd) to allow administrator control /qs create commmand.
Fix NoSuchFieldError for 1.13 servers.
(1.13 no WALL_SIGNS tag)
Add:
1. Reserve support
Fix:
1. Sometimes, server will crashed.
2. Other bugs fix
Changes:
1. ShopLoadEvent was moved in event package, some addon may not working until the author update.
We are finding tester to help us test the plugin to find problem and fix the bug, if you want, please join us Discord.
For developers:
Javadoc:
[Portal]
Sources:
[Portal]
Fix
1. Display must spawn when have 2 air above the shop container.
2. Display can despawn after 5min(by minecraft)
3. MySQL data not protected in the paste.
4. Wrong exploit warning check and trigged.
For developer:
Javadoc:
[Portal]
Sources:
[Portal]
Fix:
1. Shop display's some bugs(disappear, dupes).
2.
Fix enchanment always can pass the check.
Fix plugin caught other plugins errors problem.
2.0.3
No new feature was added in this version, we want use a minor version to keep plugin can stable work.
Add:
1. /chestshop and /cshop for plugin.
2. DebugLogs for qs paste.
3. Auto fix database if possible.
Changes:
1. BoorError will print in console too.
2. Hook the global logger to get EventException.
Fix:
1. Plugin can't enable cause InputStream issue.
2. Log file not contain "\n"
3. Plugin won't process the shop in not loaded world, and cause shop not working and SQLException after that world loaded.
4. NPE when language file not contain update phrases.
5. Plugin not passed the runtimeCheck and still continue load.
6. Some commands not match in the plugin.
7. Connection Issue was reported to Sentry wrongly.
8. OutOfMemory error was reported to Sentry wrongly.
For developers:
Javadoc:
[Portal]
Sources:
[Portal]
Fix NPE for potion matcher
Release 2.0.1
Add:
1. Advanced Item Matcher
2. LocalizedName support for itemi18n new phrase generate. (need server support)
3. Enchantment Book support
Fix:
1. Item damage data always is "Error: NaN%"
2. SentryError class bug cause plugin.getSentryErrorReporter().ignoreThrow() throw NPE.
3. ItemMatcher matches potion may cause NPE.
4. Fix two selling/buying same item shops too close will cause have one shop displayItem missing.
5. In some server, bStats moudule will throw Connection Exception.
6. In long time, Plugin use wrong method to process the itemi18n/potioni18n/enchi18n, if you are using English language, i recommend you delete these file let them regenerate better one.
7. Improve performance.
Changes:
1. We disabled all users's queue feature, if you actually need that, please turn on by yourself.
2. Update the english language, thankyou,
@deadman96385 !
For developers:
Javadoc:
[Download]
Source:
[Download]
Operation Health v2 is basically one week period of time what we're going to be taking in order to fixing and repairing the plugin.
Add:
1. ArmorStand display.
2. New events.
3. Sounds when type qs's command and click the shop.
Fix:
1. RealDisplayItem cause huge lag.
2. RealDisplayItem wrong respawn the items.
3. RealDisplayItem not cleanup the dupes.
4. RealDisplayItem will lose control in special env.
5. ErrorReport will report some strange errors.
6. ContainerShop will accept wrong twice calls.
7. Plugin some feature lost control when use reload.
Changes:
1. API and Event system huge changes, some addon will not working.
2. Fully rewrited the DisplayItem system.
3. Now QuickShop have awesome javadoc for view.
Optimize:
1. SetSignText nolonger set texts when they are same.
2. When dupe call the methods, nolonger will run twice.
3. Optimize display lag.
4. Fully clear, remove many useless codes.
For developers:
2.0.0 extra resources
Javadoc(Jar):
[Download]
Source(Jar):
[Download]
UNSTABLE BUILD
Fixed our language system, now you can use built-in language system!
Follow the guide and don't forget delete message.yml let it regen!
UNSTABLE BUILD
Fix an NPE when open inventory
UNSTABLE BUILD
Fix displayItem bug, If you using 1.4.4.8/1.4.4.9, update pls!
Javadoc and source download:
here
I got serious problem on this build, please downgrades, wait next release
UNSTABLE BUILD
Fix error when checkDisplay
Fix error on 1.13 server
1.4.4.9
Fix:
1. EnchsBook/Tools/Weapon and Potion always not matched.
2. Tab complete not works well.
3. DisplayItem will spawned in the block and fly to everywhere.
4. Fix some exception.
Add:
1. fi language
Fix:
1. QUICKSHOP-A in Sentry (NPE for QueuedShopManager)
2, QUICKSHOP-B in Sentry (ISE for signBlockSetter)
Fix updater's bug.
Remove noisey alert.
You can ignore this update.
1.4.4.5 Release
Thank you support us and use this plugin on your server.
We want let you know, 1.14.x still have big performace issue, we already try our possible improve us codes to make lagg less.
But you know, still may cause lagg on your server, Mojang is sucks.
Add:
1. New bug reporter, now will auto-report happend errors.(Not catched)
2. New language: Danish
Changes:
1. Use hashCode chcker replace old obj checker. New checker is REALLY STUPID FAST, can improve the performance.
2. ContainerShop performance improve.
3. ShopManager performance improve.
4. RealDisplayItem performance improve.
5. Util.matches performance improve.
6. Loaded check performance improve.
7. Use original getStorageContents replace old compatible reflect getContents() to improve a little performance.
8. SafeGuard performance improve.
9. Remove some useless display protection checks, improve performance.
10. Only check main hand for protection, remove offhand checks,improve a little performance.
11. A little english grammer improve.
12. Queued Shop manager not working.
You Need To Know:
1. Now only small part exception trace will print in console, big part erros you will only got a Server ID and Error ID, you can use these ID to feedback.
2. You still can turn on debug mode to got full exception trace.
3. Errors now will auto-report to out Sentry, you can turn off it if you didn't want do that.
...I forgot change the version number...
Fix:
1. java.lang.IllegalStateException: ServiceRegisterEvent cannot be triggered asynchronously from another thread.
Fix:
1. / by Zero erros when loading shops. (If you got this bug, that's mean you server is really fast...
2. Create shop will active use action in your hand items.
Changes:
1. Protection permission checker now use BlockPlaceEvent to replace PlayerInteractEvent
Add:
1. Option to allow user disable protection permission check.
Huge code changes, backup your data before update.
Add:
1. Queue support for shop and database actions.
2. Unlocked the chars limit.
3. Stats for shop loading, now you can see how long time to load a shop(avg)
Fix:
1. A MySQL bug
2. Throw NullPointerException for update checks when SpigotMC.org server down.
3. Update message use WARNING log level.
4. parseColour called after some messages already printed out.
5. Multi called signSetText.
Optimize:
1. Queued shop and world actions can improve the performace on huge server.
2. Rewrited shop loader have better performace to load shops, they can let server boot speed faster.
3. Removed some dupe checks and setSignTexts, this can improve some performance.
4. Queued databases can caching the SQLs waiting some times flush in database in once not one one one and another one make server lag lag and lag.
Fix MySQL NullPointerException
disable compatibility tools (BETA) to fix the issues with openinv and lwc.
Fix:
1. Error when createing shop
2. useSSL error messages when use MySQL
3. Locale change doesn't work
Important Fix
You should update to this version as fast as possible.
Fix:
1. Security issues for double-chest shop.
2. Some messages not call the translates.
3. Tab only allow one player to auto-complete.
4. Throws exception when economy plugin given a not vaild formated price string.
5. Paste nolonger works in before some versions.
Add:
1. Compatibility LWC, not sure it works...
2. Languages files.
#ko - Korean
#ru - Russian
#pl - Polish
Fix cast exception when player trying sell potion
Fix an npe for LWC compatibiliy
Fix qs paste and add debug for blockprotect check
Same with 1.4.3.6, but i set a wrong version number....
Fix:
1. Incompatible with LWC Mondern
2. Incompatible with some stupid Economy plugin
3. Incompatible with OpenInv
Changes:
1. Nolonger use Base64 to encode somethings in qs paste
Haha, new update!
As you can see, this build was tagged
LTS, that mean this build can got
Long Term Support.
QuickShop's LTS build usually can got 1-2 months life-time, if it super stable, it will got more support time.
Add:
1. Shop blacklist worlds, shop can't create in blacklist worlds.
2. Allow user control lockette lock sign detect.
3. New GUI for preview item, now you can click the [Preview Item] in chat to open it!
4. Use PlayerInteractEvent to replace BlockBreakEvent to fix some plugin imcompatible issue.
5. Chinese Traditional language file.
6. BuiltInSolution can help you solve common boot errors.
Fix:
1. Config Updater will update brokend config in this build, backup your data (although it passed the tests).
Delay 1 tick to load shop, may can help fix server crash issue.
This may can fix server freeze and crash on Spigot 1.14 dev build.
Some users report plugin can running on Paper without crash, if crash happend on your server, you can try it!
Hot fix for server crashes. If you crashed when use 1.4.3.2, try this. Send reports to discord channel.
I can't promise to you this fully fixed it, this version is built by my phone and without any tests, sorry for this, but i'm in hospital with high fever.
PS. I need more crash-reports.
Fix auto backup will creation too many shops backup.
This update fix a important bug, Please update ASAP!
Exploit Level: HIGH
Exploit Effect Version: All reremake builds and all KaiNoMood builds
Fix:
1. Remove shop won't unload from memory
2. Exploit bug to allow player sell in shop with not shop's item
Add:
1. French language
2. More friendly errors alert
Change:
1. Update all languages file
2. Add auto-script to help me auto update project on dev.bukkit.org
Fix a important bug in 1.4.x, You should update it!
STAFF UPDATE
Add:
1. Staffs for shop

Command: /qs staff
Changes:
1. Database owner type, they may break your database, BACK UP!
Fix:
1. Remove shop won't remove from memory, but it already remove in database.
Fix:
1. Fix wrong SQL make shop won't remove in database and reappear when use
/qs reload
Improve:
1. A little performace improve on logger.
Change:
1. Use Spigot Tag system to check sign type.
Fix:
1. Player can't interact sign communicate with shop
Improve:
1. Plugin boot speed, Thanks @
Heffaklumpen
fix /qs clean throw console error in 1.4.2
COLORFUL SIGN UPDATE
Add:
1. A option allow user custom shop sign type on 1.14.
2. 1.14 full compatibility.
Fix:
1. 1.13 compatibility.
2. /qs paste no permission.
3. Delete Shop won't delete shop from database.
Changes:
1. Rewrite sign system, now use new BlockData API.
Fix:
1. ClassCastException
Fix:
1. Shop still remove when database failed to backup.
Change:
1. Backuper now use more stable Files.copy().
Fix Material not exist in 1.13 and throw exception issue.
Yeah, QSRR now support 1.13 and 1.14 completely.
If you found any compatibility issues, please report on Issue Tracker, thankyou !

New:
1. Compatible with 1.14-pre5
2. Add Swedish language
Changes:
1. Use Java's Base64 Encoder to replace sun.misc's Base64 Encoder
Fix:
1. Control Panel Refill command mixed with Price
Fix shop lock not working in 1.3.7, If you are using 1.3.7, high recommend update to this version.
Alert: Users reported this update deleted their shops data, I don't know is new shops loader issues or just shops not correctly deleted in legacy version, Make sure you already compeletely backup your data before you update to this version.
Alert: Users reported Database Engine may have issues cause their server stuck when boot ing server or shutting down server, If you got same errors, please report to me, thanks!
Add:
1. Built-in translation and language switcher
2. German translation
3. A option for disallow player create shop when info sign failed to place by system
4. Fix messages file updater can't save updated messages.yml
Changes:
1. Command in plugin help commands prefix will follow player called help's command prefix
2. ControlPanel auto-fill command now is translatable
3. Border line now is translatable
4. Nolonger direct delete shops if failed get shop's world, now should fix plot or not load world when server startup step load world's plugin's world can't use plugin issue.
Fix:
1. Control Panel's remove shop not will remove shop from database.
2. DoubleChest issue.
3. When break shop before /qs reload, shop will reappear.
Improve:
1. With some economy plugin compatibility
A beta version accident uploaded, Fallback update
CatServer Update:
Add:
1. CatServer Community Edition (A forge+bukkit server) support
(WARNING: Only CatServer Community Edition (1.12.2) will enable Forge module, do not use on CatServer Pro or other forge+bukkit)
2. 1.12.2 support (without test)
Fix:
1. Known bug
Add:
1.Add "disable-vault-format" to allow user use QSRR built-in format not Vault's format.
Fix:
1. Terrible server lagg when server have HUGE players joined before. Thanks
@Schneidertm
Fix:
1. Database prefix issue when clean the messages. Thanks
@Schneidertm
Fix:
1. Sneak-to-control and Sneak-to-create useless
Remove:
1. Float Filter (It should use addon to do not plugin core and actually nobody use it and i didn't want that)
This is a Critical Fix, Please update ASAP!
Pinned Fix:
1. Player can use fishrod to get DisplayItem
Compatibility:
1. Some chat plugin compatibility, turn on ignore-cancel-chat-event in config.yml
Compatibility Fix:
1. QuickShop ignore the cancelled event for click chest.
(This bug will cause Player can't access protected shop. e.g: LWC, LockettePro)
Add:
1. SuperTool(Golden Axe), ST can allow player use that break the shop
under creative mode!
2. /qs info command to allow Admins to look shops on server.
3. /qs debug commmand to allow Admins use command quickly switch
debuging or not-debuging.
Bug Fix:
1. Fix "Yay Tab" spam
2. Fix double spawnDisplayItem event call
Changes:
1. Some language file changes
2. API changes
Important Fix
Highly recommend all server update to this version ASAP!
Pinned Fix:
1. Fix the player can ignore permission limit and zone protect to delete a shop.
Add:
1. FetchMessage feature, If you disable `auto-fetch-shop-messages`, the shop messages will nolonger send when player joining the game and player can use `/qs fetchmessage` to fetch by manully (Permission: quickshop.fetchmessage).
2. Add TabComplete.
3. Improve the DisplayItem protection.
4. The command `/qs` now have alias `/qshop`, `/qsshop`, `/quickshop`.
5. Clear some useless code.
6. Update some code to compatible lastet spigot and paperspigot build.
Fix:
1. DisplayItem Protection will clear player/entity/block inventory when they picked up DisplayItem by some blackmagic.
2. The pinned fix content.
Add:
1. Add Special zone only bypass permission node
Fix:
1. Shop sign missing in CAVE_AIR and VOID_AIR
(Come on MOJANG, just air why make these many type?!)
If you are using 1.3.2 and 1.3.2.1, You MUST update to this version.
Fix:
1.Important issues cause player cannot trading shop.
Fix:
1. Protection check blocked by WorldGuard.
Add:
1. AreaShop support.
*Please click Read more... to learn how turn on it.
2. New option special-region-only to make player only can create shop in
AreaShop region.
Fix:
1. Warning logs abuse.
AreaShop Support:
This feature is disable by default, you can turn on it in config.yml
And you need AreaShop v2.5.0#271 or higher AS build.(
Click me download)
Then QS should support AreaShop.
* If you didn't want player create the shop out of AreaShop's area, you need turn on the special-region-only in config.yml
1.3.1.10 Update [STABLE]
Reremake 1.3.1.10 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1.Fix itemi18n bug
Reremake 1.3.1.9 UpdateLog
This is a
stable build, You use it on production environment.
New Features:
1. Add `anonymous-metrics`, you can turn on this if you didn't want
plugin collect your sever name.
Changes:
1.use-varchar now always turn on.
2.Drop ProtocolLib and BKCommonLib support.
3.Remove SignGUI
4.getVersion() now nolonger return double Reremake prefix
5.Drop older than 1.12.2 and 1.12.2 support.
6.Add alert when plugin running on CatServer and add 60seconds boot
delay time on CatServer.
7.Delete 160+ files for ProtocolLib support in plugin.
8.Revert DisplayItem some changes.
9.Remove `/qs debug`, cause it is a useless command
10.Remove all about `floatFilter` stats data collect, cause you collect
it and no any help for improve plugin.
11.CleanUp codes.
12.Improve some performance (a little bit).
13.Merge all shop owners setting in `pay-unlimited-shop-owners`.
14.Default Item i18n file call prettyText method and make default item
name looks great.
15.Project force use UTF-8 encoding.
Bug fixes:
1.Fix signs on chest placeing face wrong bug (Thanks @langwan).
Reremake 1.3.1.8 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1. Fix unlimited shop not working
WARNING: THIS VERSION FIX A IMPORTANT BUG, PLEASE UPDATE AS FAST AS POSSIBLE!
Reremake 1.3.1.7 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1.
Fix important ShopManager issues, it can cause shop in special status not withdraw owner money but pay player money (Exist all QSRR version before this update)
Thanks @xorgrin#9470 feedback!
Recommand all users update to this version.
Reremake 1.3.1.6 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1. Not should load support when OpenInv not installed(Sign not updated, shop doen't working).
Reremake 1.3.1.5 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1. Spelling error cuz language file sign.unlimited read failed. #37
1.3.1.4 Update
Reremake 1.3.1.4 UpdateLog
New Features:
1. none
Changes:
1.none
Bug fixes:
1. When click AIR block cause NullPointerException
1.3.1.3 Update
Reremake 1.3.1.3 UpdateLog
New Features:
1. EnderChest Shop (
Require plugin OpenInv)
Two videos for new features
Changes:
1.none
Bug fixes:
1. Database errors fixer not working.
Reremake 1.3.1.2 UpdateLog
New Features:
1.none
Changes:
1.none
Bug fixes:
1.Fix sneak-control
2.Improve protection plugin support
Reremake 1.3.1.1 UpdateLog:
If you are running 1.3.1, we highly recommand update to this update now.
1.2.0.5 Still is best stable version, you can find it in version history.
New features:
1. none.
Changes:
1. Core getRemainingStick and space switch back int.
Bugs fix:
1.
java.lang.NumberFormatException
2. ProtocolLib support will loaded when no PrototcolLib installed.
Reremake 1.3.1 UpdateLog
New Features:
1.pay-player-from-unlimited-shop-owner to make admin's adminshop still pay it owner.(Fair play)
2.ProtocolLib & Mutilverse-Core support.
3.Control Panel doesn't need look the shop and use it.
4.Control Panel some need input option now use Sign GUI(Need ProtocolLib and turn on ProtocolLib support
WARN: This feature in testing)
5.New algorithm for limits.(AdminShop not calc in limits, you switch back to old algorithm in config.yml)
6.Improve display-items protection.
Changes:
1.Some listener move to other places.
2.Trade processing nolonger all in handlechat(make code a mess)
Bug fixes:
1.Debug missing in messages.yml
2.Set price in controlpanel never will show.
3.
Many errors when use MySQL, now all is correctly working! (Don't forget switch use-varchar to true in config.yml)
4.
File messages.yml not saved for updated file.
5.Update resources links in update notify.
6.Right-Click sign not update shop infomation
7.Some listener will disabled when turn off display-items.
Removed:
1.The command /qs debug.
2.Support for 1.9,1.10,1.11 minecraft code.(Only support 1.12.2 and higher)
Greate advice always welcome!
Keep report your bugs and request features to make QSRR to be better!
Sorry everyone, QSRR was deleted cause download link issues, now reposted.